文章目录
1、sudo
-
全名:super user do
-
用途:以系统管理员的身份(即root)执行指令,第一次执行sudo命令后,在系统规定时间内再执行sudo命
令,不用输入密码 -
常用选项
sudo [选项] <命令>
-l
:显示当前用户的权限-k
:用户下一次执行sudo时,必须输入密码,无论是否在规定时间内-u <user_name|UID>
:指定该命令的执行者,不加默认为root用户执行
-
已root权限执行上一条命令
sudo !!
- 以特定用户身份进入文本编辑
sudo -u <user_name> vim <file>
2、useradd
-
全名:user add
-
用途:添加新用户,执行权限为root
-
常用选项
useradd [选项] <user_name>
-d <directory>
:指定该用户的家目录-g <group_name>
:指定该用户所属的用户组-G <group_name>
:指定该用户所属的附加组-u <group_name>
:指定该用户的用户号,若同时有-o
选项,可以和其它用户重复
-
系统用户的信息存放在
/etc/passwd
-
如果不加任何选项,则按照系统默认信息创建用户,系统默认信息存放在
/etc/default/useradd
[root@172 home]# cat /etc/default/useradd # useradd defaults file GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/bash SKEL=/etc/skel CREATE_MAIL_SPOOL=yes
-
useradd和adduser的配置文件为
/etc/login.defs
,主要内容如下MAIL_DIR /var/spool/mail # 邮箱目录。修改或删除用户账户时需要处理邮箱,如果没有指定,将使用编译时指定的默认值。 MAIL_FILE .mail # 定义用户邮箱文件的位置(相对于主目录)。 PASS_MAX_DAYS 99999 # 一个密码可以使用的最大天数。如果密码比这旧,将会强迫更改密码。如果不指定,就假定为 -1,这会禁用这个限 # 制。 PASS_MIN_DAYS 0 # 两次更改密码时间的最小间隔。将会拒绝任何早于此的更改密码的尝试。如果不指定,假定为 -1,将会禁用这个限 # 制。 PASS_MIN_LEN 5 PASS_WARN_AGE 7 # 密码过期之前给出警告的天数。0 表示只有只在过期的当天警告,负值表示不警告。如果没有指定,不会给警告。 # 设置普通用户的UID和系统用户的UID取值范围 UID_MIN 1000 UID_MAX 60000 SYS_UID_MIN 201 SYS_UID_MAX 999 # 同上,设置用户组的GID GID_MIN 1000 GID_MAX 60000 SYS_GID_MIN 201 SYS_GID_MAX 999 CREATE_HOME yes # 指示是否应该为新用户默认创建主目录。 UMASK 077 # 设置该用户的umask值 USERGROUPS_ENAB yes # 如果设置为 yes,如果组中没有成员了,userdel 将移除此用户组,useradd 创建用户时,也会创建一个同名的默 # 认组。 ENCRYPT_METHOD SHA512 # 使用SHA512加密密码
-
例子如下,当前系统已有用户组test1
[root@172 ~]# useradd -d /home/user1 -g test1 user1
[root@172 ~]# users
dream dream dream dream
[root@172 ~]# cat /etc/passwd | grep user1
user1:x:1001:1001::/home/user1:/bin/bash
[root@172 ~]# cd /home/
[root@172 home]# ls
dream user1
3、adduser
- 同useradd
4、userdel
- 全名:delete user
- 用途:删除用户账号和相关文件
- 常用选项:
-r
,表示把用户的家目录和用户一起删除
[root@172 home]# ls
dream user1 user2
[root@172 home]# userdel -r user2
[root@172 home]# ls
dream user1
5、usermod
- 全名:modify user
- 用途:修改用户的信息
- 常用选项:和useradd一样
usermod [选项] <user_name>
6、passwd
-
全名:password
-
用途:为用户设置密码
-
常用选项
passwd [选项] [user_name]
-l
:锁定用户,即禁止用户-u
:解锁用户-d
:使用户密码为空-f
:强制用户下次登入时修改密码
-
root权限可为所有用户设置密码,且root权限下可任意设置密码
-
普通用户只能设置自己的密码,且密码过于简单时系统不允许
-
刚创建的新用户被系统锁定,无法使用,必须用passwd指定口令后才能使用
7、groupadd
-
全名:add group
-
用途:增加一个新的用户组,方便Linux管理员管理用户
-
常用选项
groupadd [选项] <group_name>
-g <GID>
:指定新用户组的组标示号-o
:表示新用户组的GID可以和已有的用户组的GID一样
-
例子:添加用户组test1
[root@172 ~]# groupadd test1
- 用户组的信息存放在
/etc/group
[root@172 home]# cat /etc/group | grep test1
test1:x:1001:
8、groupdel
- 全名:delete group
- 用途:删除一个用户组
- 常用选项
groupdel <group_name>
9、groupmod
-
全名:modify group
-
用途:类似于usermod,修改用户组的信息
-
常用选项
groupmod [选项] <group_name>
-g
和-o
选项作用与groupadd相同-n <new_group_name>
:为用户组起一个新名字
10、chown
-
全名:change owner
-
用途:改变文件或目录的所有者,需要有root权限
-
常用选项
chown <user_name> <文件或目录>
-
例子:
[root@172 home]# mkdir user1_pub
[root@172 home]# ls -ld user1_pub
drwxr-xr-x 2 root root 6 2月 13 02:20 user1_pub # 此时目录的所有者为root
[root@172 home]# chown user1 user1_pub
[root@172 home]# ls -ld user1_pub
drwxr-xr-x 2 user1 root 6 2月 13 02:20 user1_pub # 现在目录的所有者为user1
11、chgrp
-
全名:change group
-
用途:改变文件或目录的所属组,root和(文件或目录的)所有者均可以更改所属组
-
常用选项
chgrp <group_name> <文件或目录>
-
例子:
[root@172 home]# ls -ld user1_pub
drwxr-xr-x 2 user1 root 6 2月 13 02:20 user1_pub
[root@172 home]# chgrp test1 user1_pub
[root@172 home]# ls -ld user1_pub
drwxr-xr-x 2 user1 test1 6 2月 13 02:20 user1_pub
12、chmod
-
全名:change mode
-
用途:改变目录或文件权限
-
Linux系统下文件或目录的权限解释
- 一个文件或目录有三个与用户相关的信息
- 所有者:创建该文件或目录的用户的权限
- 所属组:文件所属用户组的权限
- 其它:所有者和所属组以外的用户的权限
- 文件或目录的权限:r(读)w(写)x(执行)
- 对于文件
- r:可以查看文件内容, cat/more/less/head/tail
- w:可以修改文件内容, vim
- x:可以执行文件, script/command
- 对于目录
- r:可以列出目录内容, ls
- w:可以在目录中创建/删除文件或目录, touch/rm/mkdir/rmdir
- x:可以进入目录, cd
- 对于文件
- 一个文件或目录有三个与用户相关的信息
-
常用选项:
-R
,表示修改目录权限时,递归修改目录下所有文件权限,否则只修改目录权限
chmod <权限值> <file>
# 权限值:权限有rwx,用一个3位二进制数来表示它,如111表示有rwx权限,101表示有r-x权限,将二进制转换为十进制
# 如755表示:所有者的权限为111,即rwx;所属组权限为101,即r-x;其他用户权限也为101
-
注意:
- chmod除了使用权限值修改权限以外,还有其它方法,但我认为都不如这个简单
- 一定不要给目录或文件777权限,这样很不安全
-
例子
[root@172 home]# ls -ld user1_pub
drwxr-xr-- 2 user1 test1 6 2月 13 02:20 user1_pub
[root@172 home]# chmod -R 755 user1_pub/
[root@172 home]# ls -ld user1_pub
drwxr-xr-x 2 user1 test1 6 2月 13 02:20 user1_pub
13、umask
-
全名:user mask
-
用途:显示或改变文件或目录默认权限
-
常用选项
umask [选项] [new_umask]
-S
:显示默认权限,不加该选项以数字形式(即umask值)显示
-
umask值的解释:
- umask确定文件权限,用默认最大权限与umask相减,得到的结果即为文件权限
- 例如:umask为022,文件默认最大权限为666,相减后为644,即该文件权限为644(rw-r–r--)
-
例子:下面umaks=0022中第一个0为特殊值,不管,即该用户的umask值为022
[root@172 home]# umask -S
u=rwx,g=rx,o=rx
[root@172 home]# umask
0022
- 参考教程
- B站:兄弟连视频