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> :锁定用户,使其无法登录
5.添加用户到组
添加0xls这个用户 添加到test管理组 在当前目录把dir目录所有者改成test
groupadd test //添加管理组
useradd -g test 0xls //创建用户并且添加test组 -g是指定组 不指定的画 默认创建
passwd oxls //给用户创建密码
id 0xls //查看下用户信息
chgrp test dir //改变dir目录的所有者
附加0xls账户到root组
gpasswd -a 0xls root 或 usermod -G root ls
删除用户0xls,删除组test
userdel 0xls //删除用户
groupdel test //删除组
三.文件属主管理
1.更改属主
chown –R <username>.<groupname>file
-R:表示递归更改
e.g.
chown –R testuser.newgroup testpath
上面的命令将testpath路径下的所有文件的拥有者都改为testuser,拥有组都改为newgroup。
2.设置文件掩码
umask [a~1~ a~2~ a~3~ ]
用户可以使用umask命令设置文件默认的生成掩码。默认的生成掩码告诉系统创建一个文件或目录不应该赋予哪些权限。如果用户将umask命令放在环境文件.bash_profile中,就可以控制所有新建的文件和目录的访问权限。
a1 表示的是不允许属主的权限,a2 表示的是不允许同组人的权限,a3 代表不允许其他人的权限。
umask 022 : 表示设置不允许同组用户和其他用户有写的权限。
umask : 显示当前的默认生成掩码。