CentOS用户和组管理

一.组管理

1.       添加用户组

groupadd

 

2.       删除用户组

groupdel

 

3.       修改用户组

groupmod

 

4.       切换用户组

newgrp <groupname>

如果一个用户同时属于多个用户组,可以用 newgrp 命令切换至目的组,以便能够拥有该组的权限。

 

5.       查看所有组

所有组其实就是 /etc/group 文件的内容做一些过滤。

cat /etc/group | awk -F: '{print $1}'

 

6.       查看用户所在组

groups <username>

 

二.用户管理

1. 添加用户

useradd <username> -d <path> -m -g –G –p

常用的就是上面几个参数,意思分别为:

-d :指定用户主目录。如果此目录不存在,同时使用 -m 就会创建此目录。

-m :创建用户主目录

-g :用户所属组 ID

-G :用户所属组名

-p :登录密码。注意这个登录密码不是明文,是指加密后的密码。

 

e.g.

useradd testuser –m –G mygroup

将会创建一个 testuser 的用户,并自动创建 /home/testuser 的用户主目录,并将用户添加至 mygroup 组中。

 

2. 删除用户

userdel –f –r <username>

-r :删除用户主目录以及邮箱中的邮件

-f :强行删除文件,即使属主不是该用户

 

3. 修改用户

usermod <username> -d <path> -m -g –G –p

参数意思与 useradd 大致相同

 

4. 用户密码

passwd <username>        :修改密码

passwd –d <username> :命令将用户的密码删除,即下次登录无须密码。

passwd –l <username>   :锁定用户,使其无法登录

 

 

三.文件属主管理

1. 更改属主

chown –R <username>.<groupname> file

-R :表示递归更改

 

e.g.

chown –R testuser.newgroup testpath

上面的命令将 testpath 路径下的所有文件的拥有者都改为 testuser ,拥有组都改为 newgroup

 

2. 设置文件掩码

umask [a1 a2 a3 ]

用户可以使用 umask 命令设置文件默认的生成掩码。默认的生成掩码告诉系统创建一个文件或目录不应该赋予哪些权限。如果用户将 umask 命令放在环境文件 .bash_profile 中,就可以控制所有新建的文件和目录的访问权限。

a1 表示的是不允许属主的权限, a2 表示的是不允许同组人的权限, a3 代表不允许其他人的权限。

umask 022          表示设置不允许同组用户和其他用户有写的权限。

umask                显示当前的默认生成掩码。