用户创建
创建新用户:使用useradd 用户名
命令来创建一个新用户 ;-r 创建系统用户
指定用户ID:使用useradd -u 用户ID 用户名
命令来创建一个指定用户ID的新用户
指定用户组:使用useradd -g 用户组 用户名
命令来创建一个属于指定用户组的新用户
指定用户主目录:使用useradd -d 用户主目录 用户名
命令来创建一个指定用户主目录的新用户
创建用户同时指定向导信息:使用useradd -c "注释" 用户名
命令来创建一个新用户,并在创建时添加一些额外的注释信息
示例:
创建一个 系统用户 指定id为50 所属nginx组并注释为nginx用户主目录为/opt/nginx
useradd -r -u 50 -g nginx -c "nginx" -d /opt/nginx nginx
批量创建用户
创建一个包含用户信息的passwd
格式文件(例如,users.txt
)写入信息 ,七个字段分别为:
用户名:要创建的用户名。
密码:用户的初始密码。可以使用openssl passwd -1
命令生成已加密的密码。
用户ID:用户的ID。
组ID:用户所属组的ID。
注释:对用户的描述或注释。
主目录:用户的主目录路径。
登录shell:用户的默认登录shell
user1:password1:1001:1001:user 1:/home/user1:/bin/bash
user2:password2:1002:1002:user 2:/home/user2:/bin/bash
user3:password3:1003:1003:user 3:/home/user3:/bin/bash
使用newusers
命令和passwd
格式文件来创建用户:
newusers < users.txt
创建用户后,可以使用passwd命令来为用户设置新的密码
passwd <username>
切换用户
su: 即 switch user,命令可以切换用户身份,并且以指定用户的身份执行命令
切换用户的方式:
su UserName:非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录,即不完全切换
su – UserName:登录式切换,会读取目标用户的配置文件,切换至自已的家目录,即完全切换
查看用户
id 命令可以查看用户的UID,GID等信息
常见选项:
-u: 显示UID
-g: 显示GID
-G: 显示用户所属的组的ID
-n: 显示名称,需配合ugG使用
删除用户
userdel 可删除Linux 用户
常见选项
-f, --force 强制
-r, --remove 此命令将删除用户及其相关文件,包括家目录中的所有文件和文件夹。
文件权限管理
设置文件的所有者chown
chown [新的所有者用户名] [文件或目录]
递归设置所有者
chown -R [新的所有者用户名] [目录]
示例:
文件权限
--- 000 0
--x 001 1
-w 010 2
wx 011 3
r-- 100 4
r-x 101 5
rw- 110 6
rwx 111 7
修改文件权限chmod
chmod [权限] [文件或目录]
使用 -R
选项,可以递归地设置目录及其子目录中的所有文件的权限。
符号 | 含义 |
---|---|
u | 所有者 |
g | 所属组 |
o | 其他用户 |
a | 所有用户 |
使用 +
表示添加权限,-
表示删除权限,=
表示设置权限为指定的值。
示例:
给li.txt的组添加写权限
ACL权限功能
除了文件的所有者,所属组和其它人,可以对更多的用户设置权限
ACL相关命令:
setfacl 可以设置ACL权限
getfacl 可查看设置的ACL权限