上面我们说了,与用户和组相关的配置文件,分别为/etc/passwd,/etc/shadow/,/etc/group,下面我们就来说一下,管理用户和组的相关命令管理用户: useradd, passwd, usermod, userdel
管理组: groupadd, groupmod, groupdel
那我们就一个个说:
(1). useradd 命令useradd [-u UID] [-g 初始群组] [-mM] [-c 说明栏] [-d 家目录绝对路径] [-s shell] 使用者账号名 选项与参数:
-u :后面接的是 UID ,是一组数字。直接指定一个特定的 UID 给这个账号
-g :后面接的那个组名,该群组的 GID 会被放置到 /etc/passwd 的第四个字段内
-G :后面接的组名则是这个账号还可以加入的群组。 这个选项与参数会修改 /etc/group 内的相关数据
-M :强制,不要创建用户家目录!(系统账号默认值)
-m :强制,要创建用户家目录!(一般账号默认值)
-c :这个就是/etc/passwd 的第五栏的说明内容啦,可以随便我们配置的
-d :指定某个目录成为家目录,而不要使用默认值。务必使用绝对路径
-r :创建一个系统的账号,这个账号的 UID 会有限制 (参考 /etc/login.defs)
-s :后面接一个 shell ,若没有指定则默认是 /bin/bash 的啦~
-e :后面接一个日期,格式为『YYYY-MM-DD』此项目可写入 shadow 第八字段, 亦即账号失效时间的配置
-f :后面接 shadow 的第七字段项目,指定口令是否会失效。0为立刻失效, -1 为永远不失效(口令只会过期而强制于登陆时重新配置而已)
(2). passwd 命令passwd [-l] [-u] [--stdin] [-S] [-n 日数] [-x 日数] [-w 日数] [-i 日期] 账号 <==root 功能 选项与参数:
--stdin :可以通过来自前一个管道的数据,作为口令输入,对 shell script 有帮助
-l :是 Lock 的意思,会将 /etc/shadow 第二栏最前面加上 ! 使口令失效
-u :与 -l 相对,是 Unlock 的意
-S :列出口令相关参数,亦即 shadow 文件内的大部分信息
-n :后面接天数,shadow 的第 4 字段,多久不可修改口令天数
-x :后面接天数,shadow 的第 5 字段,多久内必须要更动口令
-w :后面接天数,shadow 的第 6 字段,口令过期前的警告天数
-i :后面接日期,shadow 的第 7 字段,口令失效日期
例: echo "123456" | passwd --stdin test
(3). usermod 命令usermod [-c d e g G l s u L U] username 选项与参数:
-c :后面接账号的说明,即 /etc/passwd 第五栏的说明栏,可以加入一些账号的说明
-d :后面接账号的家目录,即修改 /etc/passwd 的第六栏
-e :后面接日期,格式是 YYYY-MM-DD 也就是在 /etc/shadow 内的第八个字段数据
-f :后面接天数,为 shadow 的第七字段
-g :后面接初始群组,修改 /etc/passwd 的第四个字段,亦即是 GID 的字段
-G :后面接次要群组,修改这个使用者能够支持的群组,修改的是 /etc/group
-a :与-G 合用,可添加次要群组的支持而非配置
-l :后面接账号名称。亦即是修改账号名称, /etc/passwd 的第一栏
-s :后面接 Shell 的实际文件,例如 /bin/bash 或 /bin/csh ……
-u :后面接 UID 数字,即 /etc/passwd 第三栏的数据
-L :暂时将用户的口令冻结,让他无法登陆。其实仅改 /etc/shadow 的口令栏
-U :将 /etc/shadow 口令栏的 ! 拿掉,解冻
(4). userdel 命令