基础
Linux特点
- 免费
- 开源
- 安全
- 高效
- 稳定
- 处理高并发能力强
Linux发行版
基于Linux的内核,进行了二次开发,即在内核上包裹了一层便于使用Linux的应用程序。
平时我们实际使用的Linux一定是某一个发行版。
Linux是基于Unix开发的
Linux(特指内核部分)是GNU计划(open code and free)的一部分
虚拟机
- VM软件下载安装
- 在VM软件上创建一个虚拟空间,即一个逻辑上的“物理机”。(可以创建多个)
- 在虚拟空间上安装具体的Linux发行版
- 虚拟机进入命令行
- 虚拟机 联网
- 安装vmtools(菜单–install vmware tools)实现windows与linux之间直接复制粘贴
- 指定共享文件夹(在虚拟机设置里设置)
Linux7个运行级别
在/etc/inittab中设置
- 0:关机
- 1:单机(找回密码)
- 2:多用户无网络
- 3:多用户有网络
- 4:系统使用保留给用户
- 5:图形界面
- 6:系统重启
命令及命令相关的那些事
通用命令
man 命令:查看命令的使用文档
logout:退出当前连接,即退出用户登录,在远程登录时有效
id 用户名:查看用户信息
su - 用户名:切换用户(!!高用户到低用户不需要密码)
exit:退出返回到原来用户
whoami/who am i:查看我是哪个用户
init [0123456]:切换运行级别
文件属组和属主命令(只能改变)
chgrp [-R] 组名 文件名/目录:修改文件或者目录的属组,改目录时R表示该目录下所有文件和目录的属组也改了
chown [-R] 主名:[组名] 文件/目录:修改文件或者目录的属主
chmod [-R] xyz 文件/目录:修改文件或者目录的9个属性
- a:eg a-x 9个属性都有,只是去除执行的权限
- -:除去
- +:加上
- =:设定
- u:user u=a-x
- g:group
- o:other
文件与目录操作命令
ls:列出目录以及文件名
cd 相对路径/绝对路径:切换目录
pwd [-LP]:显示当前的目录
mkdir 目录名:创建一个新的目录
rmdir 目录名:删除一个空目录
rm 文件名/目录名:删除文件或者目录
mv 存在目录/文件名 存在目录名:将文件/目录移动到目录下
mv 已存目录/文件 新目录/文件:将目录/文件改名
cat [-AbEnTv] 文件名:从头开始显示文件内容
tac 文件名:从尾开始显示文件内容
head [-n 数字] 文件名:显示文件前数字行内容
tail [-n 数字] 文件名:显示文件的最后数字行内容
touch 文件名:创建一个文件
ln 连接文件名:创建一个硬连接文件
ln -s 连接文件名:创建一个软连接文件,也叫符号连接文件
more 文件名:一页一页显示文件内容,只能向后翻
less 文件名:一页一页显示文件内容,可以向前翻页
cp 文件/文件夹 文件夹:复制
\cp -r 文件/文件夹 文件夹:递归复制且不提醒覆盖
参数
- a:全部文件和目录,包括隐藏文件(以.开头的文件)
- l:列出内容包括文件/目录的属性等信息
- ./:当前目录的上一级目录
- ~:根目录
- ..:上一级目录
- LP:显示确实目录,而非link路径
- m:配置权限,不使用默认的 eg:-m 711
- p:递归创建删除文件夹, eg:-p java/bin/lib
- b:在cat时为非空白行的列出行号
- n:在cat时列出行号,包括空白行
- r:递归创建删除文件
- i:互动模式设置,执行前进行询问
- f:强制执行,不会出现任何提示警告之类的信息
- v:列出一些看不出来的特殊字符
- T:将tab键以^|显示
- E:将结尾的断行字节$显示出来
- A:vET的组合
more操作:空格下一页,回车下一行、/字串 代表向下搜索字串 ,q退出文件显示
less操作:/字串 代表向下搜索字串,?字串 代表向上搜索字串
用户和用户组管理命令
- 登录进入Linux系统必须有身份,没身份是不可以进入的。用户的身份=注册了的用户名+密码来识别。用户具有什么样的权限是通过他属于哪个用户组来确定的,用户组就是用来管理用户权限的。一个用户可以属于多个用户组。
- 创建用户时没有指定用户组,那么会新创建一个同用户名同名的组,并把其放入该组中
- 创建的用户会在/home目录下对相应创建一个用户名文件夹,/home/用户名是该用户登录后直接进入的文件目录落脚点
- 删除用户一般不删除该用户家目录,公司员工离职后我们只是删除了他的身份,但是要保留他的工作,以便其他人接着使用
- 配置文件
- 用户:/etc/passwd 记录用户信息
- 用户组:/etc/group 记录组信息
- 口令/密码登录(加密):/etc/shadow
- 用户:/etc/passwd 记录用户信息
useradd [-cdgGsuo] 用户名:添加用户
userdel [-r] 用户名:删除用户
usermod [-cdgGsuo] 用户名:修改用户
passwd [-ludf] 用户名:超级用户指定用户口令命令,普通用户修改自己口令
groupadd [-og] 用户组:增加用户组
groupdel 用户组:删除用户组
groupmod [-ong] 用户组:修改用户组
newgrp 用户组:切换用户组 如果用户属于多个用户组
passwd:修改口令
参数
- c 描述:指定一段注释性表述
- d:指定用户主目录——用户工作的起始目录(不以默认的方式 /home/用户名 创建该目录)
- g:指定用户属组 组id
- G:指定用户附加属组
- s:shell文件 指定用户的登录shell——用于启动一个进程,将用户操作传个内核
- u:用户号 参数uo表示可以重复使用其它用户标识号 u在passwd中表示口令解锁
- 用户名:登录名
- r:删用户同时删除其主目录,以及系统文件的记录
- l:锁定用户,禁止用账号
- f:强迫用户下次登录时修改口令
- n 新用户组名:更改用户组名
增加用户账号就是在/etc/passwd文件中新增一条用户记录,同时更新/etc/group和/etc/shadow
磁盘管理命令
df [-ahikHtm] [文件名/目录名]:列出文件系统的整体使用量
du [-ahskm] [文件名/目录名]:检查磁盘空间使用量
fdisk [-l] [装置名称]:用于磁盘分区
mkfs [-t 文件系统格式] 装置文件名:磁盘格式化
fsck [-t 文件系统格式] [-ACay] 装置文件名:检查和维护不一致文件系统
mount [-t 文件系统] [-L Label名] [-o 额外选项] [-n] 装置文件名 挂载点
umount [-fn] 装置文件名或挂载点:磁盘卸载命令
参数:
- f:强制
- n:不升级的情况下卸载
- a:所有文件系统,包括系统特有的/proc文件系统
- k:KB显示
- m:MB显示
- h:人们易懂的方式显示
- H:M=1000k代替1024K
- T:显示文件系统类型
- i:不用磁盘容量,以inode数量显示
- s:列出总量,不列出各个目录占用量
- S:不包括子目录
- l:输出所有分区内容
- fsck中:y自动在需要地方输入yes V详细显示模式 C显示完整进度 a有错自动修复 A所有
与df不一样,du会直接到文件系统内搜索所有文件数据
fdisk命令下,q退出不保存,w退出并保存即动作生效
磁盘分区过后要格式化
关机命令
shutdown -r/h 时间
参数
- r:表示重启
- h:表示停止
- 时间
- 数字 表示数字分钟后怎样
- 几点:几分 表示几点几分怎样
- now 表示立刻怎样
- reboot=shutdown -r now
- halt=shutdown -h now=poweroff
!!sync是关机命令前必须执行的命令,其表示将内存中的数据写入磁盘
rpm相关命令
rpm -qa:查询所有安装的软件包
rpm -q 软件名:查询具体某个软件包
rpm -qa|grep 软件名:查询具体某个软件包
rpm -ql 软件名:查询某个软件包相关的所有文件
rpm -qi 软件名:查询某软件包的信息
rpm -qf 文件名:查询某文件是哪个软件包的
rpm -e 软件名:卸载删除某软件
rpm -e --nodeps 软件名:强制删除
rpm -ivh 软件包名:安装
yum相关命令
yum list|grep 软件名:查询软件包
yum install 软件名:安装软件包