su
#"实实在在"的用户切换
su - 用户名
#切换用户未切换目录与环境变量
su 用户名
用户
要使用linux系统的资源的用户必须向系统申请一个账户以进入系统(类似于使用QQ软件必须注册QQ账户)
(1)用户的分类:
- root用户——拥有所有权限,UID为0;(类似于手机中的root权限,刷机其实就是夺取手机的root权限)
- 普通用户——root用户创建,有家目录可以登录,权限由root分配拥有指定的shell环境;CentOS6的UID范围为500-60000
- 系统用户——常用于运行服务,此用户无家目录、不能登录系统;(安装某一服务后会自动创建同名用户和用户组)UID为1-499
(2)用户的查看:
#显示用户ID以及所属群组的ID
id 用户名
#显示用户ID
id -u 用户名
(3)相关文件查看:
- 账户信息:/etc/passed
- 密码信息:/etc/shadow
(4)添加用户:
#指定用户UID
useradd -u UID 用户名
#指定用户主目录
useradd -d 主目录 用户名
#指定用户所属组
useradd -g 组名/组id 用户名
#指定用户是系统用户
useradd -r 用户名
#用户登录shell解释器
useradd -s 用户名
#不创建主目录添加用户
useradd -M 用户名
注:添加a用户时候因未删干净故出现上述提示
(5)删除用户:
#删除用户(不完全删除)
userdel 用户名
#删除用户(完全删除连同家目录一同删除)
userdel -r 用户名
(6)修改用户:
#指定用户UID
usermod -u UID 用户
#指定用户主目录
usermod -d 主目录 用户
#指定用户所属组
usermod -g 组名/组id 用户
(7)设置用户密码:
#修改用户密码
passwd 用户名
组
个人简单理解为组是将具有相同权限的人放到一块,以方便权限管理
(1)组的分类:
- 私有用户组——在添加用户时用户自己会归在只有自己的组里,也叫基本组
- 普通用户组——不止用户本身的组称为普通用户组,也叫附加组
(2)组的相关文件:
cat /etc/group
(3)添加用户组操作:
groupadd 用户名
(4)删除用户组命令:
groupdel 用户组名
(5)显示用户所属组:
#显示当前登录用户所属组
groups
#显示指定用户所属组
groups 用户名
组相关示例如下:
文件权限
- ll命令中信息相关解读
(1)第一位代表文件类型也可以叫做标识结点类型;-代表文件、d代表目录、l代表软链接、b代表块设备、c代表硬件设备(键盘、鼠标等)
(2)-xr-xr-x代表权限从左至右为第一个-xr代表文件所有者权限,第二个代表所属组所拥有权限,-x表示其他用户所拥有权限;x代表可执行w代表可写r代表可读
(3)2代表inodes,用户可以简单理解为该数值为磁盘中存储该文件数据的块,该数值为0时,该文件不存在
(4)第一个root代表文件所有者
(5)第二个root代表该文件所有者所在组名
(6)4069代表所占空间大小(属性下的文件大小)
(7)8月 14 08:03代表最后修改该文件的时间
(8)bin代表文件名或目录名
若上述解释不清晰,请看下图(该图来源于菜鸟教程https://www.runoob.com/linux/linux-file-attr-permission.html):
- chmod——修改文件或目录的权限
首先请读者记忆以下四个英文单词user——使用者、group——组、others——其他、all——所有
数字也可代替权限:4——读、2——写、1——执行;读写执行用7,读写用6,以此类推…(数字代表权限与字符代表权限规则略有不同)
#修改文件或目录所有者权限
chmod u{+|-|=}rwx 文件名或目录名
#修改所属组权限
chmod u{+|-|=}rwx 文件名或目录名
#修改其他用户权限
chmod u{+|-|=}rwx 文件名或目录名
#修改权限,n表示特殊数字
chmod nnn 文件名或目录名
试思考?如何修改所有用户权限
chmod a{+|-|=}rwz 文件名或目录名
chmod 000 文件名或目录名
chmod ugo{+|-|=}rwz 文件名或目录名
注:-R选项代表递归修改权限,简单的说就是把要修改的目录和目录里的东西的权限都设置成用户指定的
- chown——更改文件或目录的所有组和所有者
#更改文件或目录所有者
chown 用户名 {文件名|目录名}
#更改文件或目录所属组
chown :组名 {文件名|目录名}
#更改文件或目录所有者和所属组
chown 用户名:组名 {文件名|目录名}
- chgrp——更改文件或目录的组
#更改文件或目录所属组
chgrp 组名 {文件|目录}
拓
- 文件压缩与解压缩
(1)gzip——压缩文件后缀为.gz
#不保留源文件压缩
gzip 要压缩文件名
#保留源文件压缩
gzip -c 要压缩文件>压缩后产生文件名
#不保留源文件解压-d就是使用了gunzip
gunzip 压缩包名
gzip -d 压缩包名
#保留源文件的解压
gzip -c 压缩包名>解压后文件名
部分示例如下:
(2)bzip2——压缩文件后缀为.bz2
#不保留源文件压缩
bzip2 要压缩的文件名
#保留源文件压缩
bzip2 -c 要压缩的文件名>压缩的文件名
bzip2 -k 要压缩的文件名
#解压文件但不保留源文件
bzip2 -d 要解压的文件
bunzip2 -d 要解压的文件
#解压文件但保留源文件
bzip2 -cd 要解压文件>解压缩后文件
bzip2 -dk 要解压文件
#-d就是使用bunzip2
部分示例如下:
(3)xz——压缩文件后缀为.xz
#不保留源文件压缩
xz 要压缩的文件名
#保留源文件压缩
xz -c 要压缩文件>压缩后的文件
#保留源文件解压
xz -dk 压缩文件名
#不保留源文件解压
unxz 压缩文件名
xz -d 压缩文件名
#-d就是使用unxz
部分示例如下:
(4)tar——常见的后缀为.tar.gz、.tar.bz2、.tar.xz
#压缩(不显示过程)
tar -cf 压缩包名 要压缩文件或目录名
#压缩(显示过程v)
tar -cvf 压缩包名 要压缩文件或目录名
#解压缩
tar -xvf 压缩包名
#以gzip压缩z
tar -zcvf 压缩包名 要压缩文件或目录名
#以bzip2压缩j
tar -jcvf 压缩包名 要压缩文件或目录名
#以xz压缩J
tar -Jcvf 压缩包名 要压缩文件或目录名
#指定解压路径C
tar -zxvf 要解压文件名 -C 解压路径
部分示例如下:
注:cf为以指定格式创建新文件
(5)zip——压缩文件后缀为zip
#压缩目录此处-r用户仍然可以理解为递归
zip -r 压缩后文件名 要压缩的目录名
#压缩文件
zip 压缩文件名 要压缩的文件名
#解压缩
unzip 要解压文件
#指定解压路径解压
unzip 要解压文件 -d 解压路径
部分示例如下:
规律总结如下:
(1)-c——为保留文件,相当于重定向
(2)-d——在gzip、bzip2、xz中均为使用解压缩模式,在zip下意为指定解压路径
(3)-k——在bzip2、xz中解压模式下均为保留源文件
- 软链接与硬链接
软链接可以理解为快捷方式(可以理解为某一文件的替身能影响真身的替身),硬链接可以立即为镜像备份(可以理解为某一时刻某一文件的复刻能影响源文件)
#创建软链接
ln -s 指向文件名 硬链接名
#创建硬链接
ln 指向文件名 硬链接名
下图说明:
示例如下: