新建用户,用户组及新用户分权限
1 用户组
1.1 groupadd
- 语法
用法:groupadd [选项] 组
- 选项
-f, --force 如果组已经存在则成功退出
并且如果 GID 已经存在则取消 -g
-g, --gid GID 为新组使用 GID
-h, --help 显示此帮助信息并推出
-K, --key KEY=VALUE 不使用 /etc/login.defs 中的默认值
-o, --non-unique 允许创建有重复 GID 的组
-p, --password PASSWORD 为新组使用此加密过的密码
-r, --system 创建一个系统账户
-R, --root CHROOT_DIR chroot 到的目录
- 示例
group gz
1.2 groupmod
- 语法
groupmod [选项] 组
- 选项
-g, --gid GID 将组 ID 改为 GID
-h, --help 显示此帮助信息并推出
-n, --new-name NEW_GROUP 改名为 NEW_GROUP
-o, --non-unique 允许使用重复的 GID
-p, --password PASSWORD 将密码更改为(加密过的) PASSWORD
-R, --root CHROOT_DIR chroot 到的目录
1.3 groupdel
- 语法
groupdel [选项] 组
- 选项
-h, --help 显示此帮助信息并推出
-R, --root CHROOT_DIR chroot 到的目录
2 用户
2.1 useradd
- 语法
useradd(选项)(参数)
- 选项
-c<备注>:加上备注文字。备注文字会保存在passwd的备注栏位中;
-d<登入目录>:指定用户登入时的启始目录;
-D:变更预设值;
-e<有效期限>:指定帐号的有效期限;
-f<缓冲天数>:指定在密码过期后多少天即关闭该帐号;
-g<群组>:指定用户所属的群组;
-G<群组>:指定用户所属的附加群组;
-m:自动建立用户的登入目录;
-M:不要自动建立用户的登入目录;
-n:取消建立以用户名称为名的群组;
-r:建立系统帐号;
-s:指定用户登入后所使用的shell;
-u:指定用户id。
- 示例
创建gz1用户,该用户组为group1 ,并在/home目录下创建gz1目录
useradd -m -g group1 gz1
2.2 userdel
- 语法
userdel 选项 用户名
- 选项
-r:把用户的主目录一起删除
- 示例
此命令删除用户sam在系统文件中(主要是/etc/passwd, /etc/shadow, /etc/group等)的记录,同时删除用户的主目录。
userdel gz1
2.3 修改帐号
- 语法
usermod(选项)(参数)
- 选项
-c<备注>:修改用户帐号的备注文字;
-d<登入目录>:修改用户登入时的目录;
-e<有效期限>:修改帐号的有效期限;
-f<缓冲天数>:修改在密码过期后多少天即关闭该帐号;
-g<群组>:修改用户所属的群组;
-G<群组>;修改用户所属的附加群组;
-l<帐号名称>:修改用户帐号名称;
-L:锁定用户密码,使密码无效;
-s:修改用户登入后所使用的shell;
-u:修改用户ID;
-U:解除密码锁定
- 示例
将newuser2添加到组staff中
usermod -G staff newuser2
修改newuser的用户名为newuser1:
usermod -l newuser1 newuser
2.4 passwd
- 语法
passwd(选项)(参数)
- 选项
-d:删除密码,仅有系统管理者才能使用;
-f:强制执行;
-k:设置只有在密码过期失效后,方能更新;
-l:锁住密码;
-s:列出密码的相关信息,仅有系统管理者才能使用;
-u:解开已上锁的帐号。
- 示例
与用户、组账户信息相关的文件
存放用户信息:
/etc/passwd#用户
/etc/shadow#passwd里面用户对应的密码
存放组信息:
/etc/group#组信息
/etc/gshadow#组加密信息
用户信息文件分析(每项用:隔开)
例如:jack:X:503:504:::/home/jack/:/bin/bash
jack //用户名
X //口令、密码
503 //用户id(0代表root、普通新建用户从500开始)
504 //所在组
: //描述
/home/jack/ //用户主目录
/bin/bash //用户缺省Shell
组信息文件分析
例如:jack: ! ! !:???:13801:0:99999:7:::
jack //组名
! ! ! //被加密的口令
13801 //创建日期与今天相隔的天数
0 //口令最短位数
99999 //用户口令
7 //到7天时提醒
* //禁用天数
* //过期天数
3 新用户分权限
3.1 chown
用来更改某个目录或文件的用户名和用户组的
- 语法
chown [选项]… [所有者][:[组]] 文件…
- 示例
chown root:root /tmp/tmp1#就是把tmp下的tmp1的用户名和用户组改成root和root(只修改了tmp1的属组)
chown -R root:root /tmp/tmp1#就是把tmp下的tmp1下的所有文件的属组都改成root和root。
3.2 chmod
用来修改某个目录或文件的访问权限
- 语法
chmod [选项]… 模式[,模式]… 文件…
- 示例
chmod 777 file