目录
用户管理基础知识
vim /etc/passwd 保存用户账号信息
vim /etc/shadow 保存用户密码信息
vim /etc/group 保存组账号文件信息
vim /etc/gshadow 保存组密码信息
用户分为:root用户、虚拟用户、真实用户。
1、root用户
2、虚拟用户:不具有登陆系统功能,是系统运行的必须用户。
3、真实用户:具有登陆系统功能,由root用户创建
用户组分为:基本组,附加组。
基本组:是用户创建文件或者目录,默认属于基本组。
附加组:可以通过系统命令来附加到现有的组中。
用户管理指令
useradd
useradd 添加用户
useradd -u 888 Jmilk 创建UID为888的用户Jmilk
useradd -d /fgj Jmilk 创建用户Jmilk并将其宿主目录指定为fgj,即在根目录下创建fgj目录
useradd -e 2080-01-17 Jmilk 指定账户失效时间
useradd -g caiwubu chuna 创建并指定用户组gid,主文件夹的属组为caiwubu,gid、groups均为caiwubu
useradd -G caiwubu kuaiji 创建并附加用户组 在/etc/group中显示kuaiji属于caiwubu的用户组(增加到caiwubu的用户列表中),groups增加caiwubu(同时属于自身的组,也附加到caiwubu的组中)
useradd test -s /sbin/nologin 指定用户的默认登录时,加载的Shell,常常用于限制特殊用户无法登录(nologin)。
userdel
userdel 删除用户
userdel qin
userdel -r qin 删除用户和用户的home目录
passwd
passwd 修改用户密码
passwd jmilk 修改jmilk的密码
passwd -l jmilk 锁定用户账号,会将/etc/shadow文件中的用户密码项目替换成!!号(禁用用户不能登录)
passwd -uf qin 解锁用户(解开用户锁,是用户可以登录)
passwd -S 查看用户账号状态
passwd -d 清空用户密码,使之不需要密码即可登录
usermod
usermod 修改用户属性
usermod -l 更改用户账号的登录名称
usermod -L jmilk 锁定用户账号,和passwd -l的作用一样
usermod -U jmilk 解锁用户账号
usermod -p 123456 jmilk
chage
chage -d 0 qin 指定自从1970年1月1日起,密码被改变的天数
su
su 切换身份
su qin
su - qin
id
id //查询用户uid、gid、groups
id jmilk 查询jmik用户的UID、GID、Groups
who
w who 查询已登录到主机的用户信息
chmod
chmod 设置用户对文件额目录的访问权限
chmod o+r /root/Desktop/qin 给普通用户增加r权限
chmod -R a+x /root/Desktop/qin qin目录下的所有文件的所有用户增加x权限
chmod g=rw /root/Desktop/qin/1 1文件的组权限为rw
chmod 750 /root/Desktop/qin 用数字表示权限设置
chmod 640 /root/Desktop/qin/1
chown
chown 修改文件或目录的属组和属主
chown jmilk:root /root/Desktop/jmilk/testFile 修改属主和属组
chown :jmilk /root/Desktop/jmilk/testFile 修改属组
chown -R root:root /root/Desktop/jmilk/
Example:
mkdir /jmilk
touch /jmilk/ok
su - jmilk
rm /jmilk/ok 会提示权限不够,需要把上级文件的权限都修改够来才行。
s权限、t权限
s权限:其他用户执行该文件时,将拥有属主或属组的权限;
SUID:表示对属主用户增加SET位权限;
SGID:表示对属组内的用户增加SET位权限(只能对设置u用户的s权限)
S表示文件或目录还没有x权限 s表示文件或目录已经拥有x权限
chmod u+s /root/Desktop/jmilk/testFile
u+s只对文件有效,可以用于对命令文件进行访问限制
g+s对文件或目录有效
t权限:也叫粘滞位,主要用于为目录设置特殊的附加权限,当目录被设置粘滞位权限后,即便用户对该目录有写入权限,也不能删除该目录中其他用户的文件数据。设置了粘滞位权限的目录,使用ls命令查看其属性时,其他用户权限处的“x”将变为“t”。
一般用于实现在公共目录下,用户不能删除该目录中其他用户创建的文件(例如,权限为1777的)设置,权限字符为“t”
注意:要对一个文件使用T权限,必须让文件的路径目录全加上T权限
Example:
chmod g+s /root/Desktop/jmilk/
ll /usr/bin/passwd
chmod u-s /usr/bin/passwd 令普通用户不能修改密码
chmod o+t /root/Desktop/jmilk/
chmod 4644 /root/Desktop/jmilk/testFile
acl
setfacl -m u:jmilk:rwx -R /root/Desktop/jmilk
setfacl -m g:jmilk:rw /root/Desktop/testFile
getfacl /root/Desktop/jmilk/testFile
Jmilk