Linux常用命令---groupadd,useradd(一)

新建用户,用户组及新用户分权限

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

你可能感兴趣的:(linux,linux)