useradd
useradd [OPTION]... USERNAME
useradd -D
添加用户
-u UID
:指定uid-g GID(基本组)
:指定gid-G GID,...(附加组)
:添加到附加组-c "COMMENT"
:添加备注信息-d /path/to/directory
:指定家目录-s SHELL
:指定使用的Shell-r
:添加系统用户-f<缓冲天数>
:指定在密码过期后多少天即关闭该帐号-D
: 显示添加用户默认设置,信息为/etc/default/useradd
1 | useradd -u 1002 -g 1100 -G root,liu -s /bin/csh -d /home/gg user1 |
usermod
usermod [OPTION] USERNAME
修改用户的基本信息,不允许你改变正在线上的使用者帐号名称
-u UID
:修改uid-g GID
:修改gid-a -G GID
:追加附加组,不使用-a选项,会覆盖此前的附加组-c <备注>
:用户备注信息-d -m
:将家目录移到新目录-s
:shell-l
:用户名-L
:锁定帐号,在/etc/shadow对应用户密码前加!-U
:解锁帐号
1 | usermod -G staff user2 # 将user2添加到staff组中 |
userdel
userdel [OPTION]... USERNAME
删除用户
-r
:同时删除帐号家目录
1 | userdel -r liu2 |
groupadd
groupadd [OPTION]... GROUPNAME
添加用户组
-g
:指定gid-r
:添加为系统组
groupmod
groupmod [OPTION]... GROUPNAME
用户组修改
-g
:修改gid-n
:修改组名
groupdel
groupdel GROUPNAME
删除用户组,该群组中仍包括某些用户,则必须先删除这些用户后,才能删除群组
passwd
passwd [OPTION]... [USERNAME]
修改密码,普通用户只能修改自己的密码,无需加参数,root用户可以修改任何密码,而且无需知道原不验证密码强度
-l
:锁定用户-d
:删除密码--stdin
:接收标准输入用来设置密码
1 | echo "passwd" | passwd --stdin user1 # 为user1设置密码"passwd" |
gpasswd
gpasswd [OPTION]...GROUP
修改组信息,同时还有添加删除组用户,作用在/etc/group和/etc/gshadow
-a <用户> <组>
:添加用户到组-d
:从组删除用户-A
:指定管理员-M
:指定组成员和-A的用途差不多-r
:删除密码-R
:限制用户登入组,只有组中的成员才可以用newgrp加入该组
1 | gpasswd -a allen users # 添加allen到user2组 |
newgrp
newgrp [OPTION]... FILE...
临时切换组,本身不是组的成员,使用newgrp需要输入密码即可
chage
chage [OPTION]... USER
修改密码的过期信息
-m
:密码可更改的最小天数。为零时代表任何时候都可以更改密码-M
:密码保持有效的最大天数-w
:用户密码到期前,提前收到警告信息的天数-E
:帐号到期的日期。过了这天,此帐号将不可用-d
:上一次更改的日期-i
:停滞时期。如果一个密码已过期这些天,那么此帐号将不可用-l
:例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期
id
id [OPTION]... USER
显示用户的uid,gid等信息
-g
:显示用户所属群组的ID-G
:显示用户所属附加群组的-n
:显示用户,所属群组或附加群组的名称-r
:显示实际ID-u
:显示用户ID
su
su [OPTION]... USER
用户切换,管理员切换其它用户无需密码
-c <command>
:仅以指定用户的身份执行命令-s SHELL
:指定shell
1 | su - root # 登录式切换到root用户 |
sudo
用来以其他身份来执行命令,预设的身份为root。在/etc/sudoers
中设置了可执行sudo指令的用户。若其未经授权的用户企图使用sudo,则会发出警告的邮件给管理员。用户使用sudo时,输入密码之后有5分钟的有效期限,超过期限则必须重新输入密码
-u USER
:以指定的用户作为新的身份。不加则默认以root作为新的身份-l
:可以查看sudo模式可以执行的命令-k
:将会强迫用户在下一次使用sudo命令时必须输入密码-e FILE
:修改文件,相当于sudoedit
chmod
chmod [OPTION]...MODE FILE
修改文件目录的权限
赋权=:u=rwx,g=r,o= a=r
授权+|-:ug+x,o-x a-x==-x +w==u+w
数字:754==rxwr-xr– (r=4,w=2,x=1)
引用:–refernce=/file_path
-R:递归修改目录下所有文件目录权限,通常在授权法中使用
1 | chmod u=rwx,o= file1 |
chown
chown [OWNER[:[GROUP]]] FILE...
修改文件目录的属主和属组
-R:递归修改目录下所有文件目录权限
1 | chown root file2 # 只修改属主 |
umask
umask [MASK]
查看和设置文件权限的反向掩码,新目录或文件被创建时,其最初的权限由文件创建掩码决定
对文件:666-umask,如有执行权限则加1,如:666-023=643–>644
对目录:777-umask
1 | # 设置umask值为023,设定只对当前shell进程有效,全局设定/etc/bashrc,用户设定~/.bashrc |
finger
finger [OPT]... [USERNAME]
显示本地与远端主机的用户信息,不加选项它会显示本地主机现在所有的用户的登陆信息,包括帐号名称,真实姓名,登入终端机,闲置时间,登入时间以及地址和电话。查询远程机上的用户信息,需要采用**用户名@主机名**0
的格式
chfn
chfn [OPTION]... USER
改变finger命令显示的信息,这些信息都存放在/etc/passwd文件里。不指定任何选项,则进入问答式界面
chsh
chsh [OPTION]... USER
用来更换登录系统时使用的shell
getfacl
查看文件acl权限
1 | getfacl FILE |
setfacl
setfacl [{-m|-x} acl_spec] [{-M|-X} acl_file] file
setfacl --restore=file
-m
:添加权限-x
:删除-M
,-X
:从文件中读取规则添加,删除
支持的acl_spec规则有:
- [d[efault]:] [u[ser]:]uid [:perms]
- [d[efault]:] g[roup]:gid [:perms]
- [d[efault]:] m[ask][:] [:perms]
- [d[efault]:] o[ther][:] [:perms]
1 | setfacl -m u:liu:r file1 # 设置liu用户对file1只读 |
备注
- 目录和文件的权限
读(read) | 写(write) | 执行(execute) | |
---|---|---|---|
对文件 | cat,more,head.. | vi,echo.. | ./**执行 |
对目录 | ls | touch,cp,mv,rm | cd |