-
查看当前所有用户组:
cat /etc/group
得到
haldaemon:x:68:haldaemon mail:x:12:mail,postfix www:x:501:
分别表示 group_name:passwd:GID:user_list #GID 用户组ID,密码由于移动到 /etc/gshadow了所以只会有x
-
查看当前所有用户:
cat /etc/passwd
得到
root:x:0:0:root:/root:/bin/bashwww:x:501:501::/home/www:/bin/bash
分别表示 username:password:UID:GID:说明栏:home目录:SHELL #UID 0为root,1~499系统账号,500~65535可登入账号
-
whoami 当前登录用户
finger luca #查看相关的账号登陆信息 id www #查看相关账号的组名等 uid=501(www) gid=501(www) groups=501(www)
who查看当前在线用户
last查看系统登陆的账号列表信息
lastlog查看每个账号最后一次登陆的信息
-
用户新增管理
useradd luca #新增一个luca账号,包括在/etc/passwd,shadow,groups和/home目录下建立文件夹。这时新建的用户的用户组属于同名的新建的用户组 useradd -g mysql mysql #-g后接已建好的群组名,把新增的用户加入某群组 useradd -r apache #-r后接系统预设账号,这时其UID不会超过500且不会建立home子目录 useradd -D #查看useradd参考档 passwd #修改当前用户的密码 passwd luca #修改luca的账号密码,当前第一次建立luca账号后,需要passwd来建立密码才可用 echo "abc543CC" | passwd --stdin luca #使用管道加入密码 passwd -l luca #把luca的账号暂时lock passwd -u luca #unlock luca的账号
此外还有usermod,userdel进行操作
userdel luca #删掉luca账号 userdel -r luca #连同luca的home目录一起删掉
-
群组管理
groupadd www #添加www群组 groupadd -r apache #添加一个系统群组
此外还有groupmod,groupdel等功能
-
用户的默认群组
一个用户可以同时存在多个群组中,在/etc/passwd中用户却只有一个GID,就是他的初始群组。
登陆后使用groups命令可以查看当前用的群组,第一个就是当前的有效群组。
当以此账号新建目录时,该目录归属的群组就是有效群组。
比如当前的用户同时归属users,root
要使有效群组变为root,则需使用
newgrp root
此时root变成了有效群组。
在使用newgrp的时候其实是使用了新shell,可以使用exit退出当前新shell
-
改变档案所在组
chgrp root tmp #给tmp改成root组 chgrp -R root ./source #给source文件夹所有文件改为root组
-
改变档案所属用户
chown www tmp #给tmp文件改为www所属 chown -R www ./source #给source文件夹所有文件赋予www用户 chown -R www:www ./source #给source文件夹遍历赋予www用户www组
-
chmod
r:4 w:2 x:1 数字含义
u g o a 分别代表user,group,other,all
chmod u=rwx,og=rx .bashrc #给文件的user赋予rwx,og赋予rx权限 chmod a+w .bashrc #给文件赋予所有人w权限 chmod a-x .bashrc #给所有人去掉执行权限 chmod -R 777 ./data #给data目录遍历赋予777权限