用户管理和文件权限管理
用户管理
添加用户
格式: useradd [参数] 用户名
常用参数:
-c:指定用户的描述信息
-u:指定用户的UID
-d:指定用户的家目录
-g:指定用户的起始组,起始组只能有一个
-G:指定用户的附加组,附加组可以有多个
-s:指定用户登录时的shell
示例:
[root@cfzhu-63 ~]# useradd -u 8888 -G root -s /bin/nologin tony
# 查看添加的用户名
[root@cfzhu-63 ~]# tail -n 1 /etc/passwd
tony:x:8888:8888::/home/tony:/bin/nologin
修改用户
格式: usermod [参数] 用户名
参数: 跟 useradd
参数类似,可使用 -h
查看
示例:
[root@cfzhu-63 ~]# usermod -c "这是一个测试账号不能登录" tony
[root@cfzhu-63 ~]# tail -n 1 /etc/passwd
tony:x:8888:8888:这是一个测试账号不能登录:/home/tony:/bin/nologin
删除用户
格式: userdel [参数] 用户名
常用参数:
-r:连同家目录和邮件目录一起删除,即删除该用户的一切有关信息
示例:
[root@cfzhu-63 ~]# userdel -r tony
用户信息说明
用户信息文件 /etc/passwd 字段说明
密码文件 /etc/shadow 字段说明
详细说明:
cfzhu:用户名
$6$9fVO…aV6TFzE/:用户加密后的密码
18914:最近一次修改密码的日期,从1900年01月01日开始计算的天数,即19000101 + 19014 天
0:密码修改过后,不能再次更改的天数,0表示随时都可以修改
99999:密码过期时间,即密码多少天后必须修改
7:密码需要更改期限到来前7天发出警告
5:宽限天数,即密码到期后还能使用5天
30:账号过期时间,即30天后无法登录
保留:目前未使用
组管理
添加组
格式: groupadd [参数] 组名
参数:
-g: 给组指定 GID
-p: 给组指定密码,密码是经过加密后的密码
修改组
格式: groupmod [参数] 组名
参数:
-g: 修改组的 GID
-p: 修改组密码,密码是经过加密后的密码
删除组
格式: groupdel [参数] 组名
参数:
-f: 强制删除组,即使他是一个用户的主组
组信息说明
文件的权限
文件权限与数字的对应关系: r: 4
、 w: 2
、 x: 1
、 -: 0
需要注意的是,x权限对应在目录上是指能否进入目录
文件有三组权限,分别对应,所有者,所属组和其他人,增加权限用 +
删除权限用 -
参数:
a:所有的权限(即所有者,所属组,其他人三组权限)
u:所有者权限
g:所属组权限
o:其他人权限
修改文件权限
格式: chmod 权限 文件名
示例1:
[root@cfzhu-63 ~]# ll
总用量 0
-rw-r--r-- 1 root root 0 5月 17 21:21 test.sh # 修改前,文件644
# 修改权限
[root@cfzhu-63 ~]# chmod 660 test.sh
[root@cfzhu-63 ~]# ll
总用量 0
-rw-rw---- 1 root root 0 5月 17 21:21 test.sh # 修改后,文件664
示例2:
# 给所有人增加执行权限
[root@cfzhu-63 ~]# ll
总用量 0
-rw-rw---- 1 root root 0 5月 17 21:21 test.sh # 修改前,文件644
# 所有的权限增加执行权限
[root@cfzhu-63 ~]# chmod a+x test.sh
[root@cfzhu-63 ~]# ll
总用量 0
-rwxrwx--x 1 root root 0 5月 17 21:21 test.sh # 修改后,文件771
修改文件拥有者
格式: chown 拥有者:所属组 文件名
参数:
-R:如果文件名是目录,递归更改目录下的所有文件
- 当拥有者为空时,不会更改拥有者
示例:
[root@cfzhu-63 ~]# ll
总用量 0
-rwxrwx--x 1 root root 0 5月 17 21:21 test.sh
# 修改文件所属组
[root@cfzhu-63 ~]# chown :cfzhu test.sh
[root@cfzhu-63 ~]# ll
总用量 0
-rwxrwx--x 1 root cfzhu 0 5月 17 21:21 test.sh # 所属组变成了cfzhu
- 当所属组为空时,不省略分号,默认与拥有者相同
示例:
[root@cfzhu-63 ~]# ll
总用量 0
-rwxrwx--x 1 root root 0 5月 17 21:21 test.sh
# 指定拥有者,所属组为空,不省略 分号
[root@cfzhu-63 ~]# chown cfzhu: test.sh # 等价于 chown cfzhu:cfzhu test.sh
[root@cfzhu-63 ~]# ll
总用量 0
-rwxrwx--x 1 cfzhu cfzhu 0 5月 17 21:21 test.sh # 结果所属组默认为拥有者相同的组
- 当所属组为空时,省略分号
示例:
[root@cfzhu-63 ~]# ll
总用量 0
-rwxrwx--x 1 root root 0 5月 17 21:21 test.sh
# 指定拥有者,省略分号,只改变拥有者
[root@cfzhu-63 ~]# chown cfzhu test.sh
[root@cfzhu-63 ~]# ll
总用量 0
-rwxrwx--x 1 cfzhu root 0 5月 17 21:21 test.sh # 仅改变文件拥有者,不改变所属组