Linux添加用户和管理员权限

Linux 的添加用户和赋予管理员权限命令以后会时不时用到,故专门开一期博客来记录一下(以下全部基于 Ubuntu 系统)。

添加新用户

1
2
3
4
5
6
7
8
# 添加一个名为newuser的新用户,并自动在/home/下创建用户目录
sudo useradd -m newuser

# 指定home目录位置则添加-d
sudo useradd -m -d /path/to/home/newuser newuser

# 设置初始密码(会要求输入两次密码)
sudo passwd newuser

管理员权限操作

1
2
3
4
5
6
7
8
9
10
# 查看当前管理员权限用户
grep -Po '^sudo.+:\K.*$' /etc/group

# 添加newuser管理员权限,参数“-aG”表示追加到指定组,不移除原有成员
sudo usermod -aG sudo newuser
# 或者
sudo adduser newuser sudo

# 删除newuser管理员权限
sudo deluser newuser sudo

注:管理员权限在指定用户账户下终端重启后生效。

其他操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 删除用户user及其家目录
sudo userdel -r user

# 查看用户user信息
id user

# 切换为用户user,加“-”表示带环境变量一起切换(若user为管理员,也可以使用sudo登录)
su - user

# 查看当前用户名
whoami

# 修改当前用户密码
passwd

# 使用sudo更改其他用户密码
sudo passwd username

# 创建root密码
sudo passwd root

补充1——修改用户路径权限

使用 ls -l 命令查看文件与目录的详细信息。

以 drwxr-xr-x 为例:

  • d 代表这是目录
  • rwx 代表所有者的权限是:读、写、执行
  • r-x 代表所属组的权限是:读、执行
  • r-x 代表其他用户的权限是:读、执行

基本概念

角色 符号 描述
所有者 u 创建者或指定用户
所属组 g 关联的用户组
其他用户 o 系统中除所有者和所属组外的用户
所有用户 a u + g + o

权限一共三种:读(r)、写(w)、执行(x)

基本语法

符号模式

1
2
3
chmod [选项] 权限模式 文件名/目录名
# 选项:-R,递归修改目录下的所有文件及子目录
# 权限模式:角色&操作(增、减、等于),例如u+w、o-x、g=rx等

八进制模式

读 r = 4、写 w = 2、执行 x = 1,累加起来就是权限。

1
2
3
chmod [选项] 权限组合 文件名/目录名
# 选项:-R,递归修改目录下的所有文件及子目录
# 例如 chmod 755 path,意为path路径下,所有者可读写执行,其他用户仅可读和执行。

补充2——修改所有者和所属组

1
2
chown [选项] 新所有者:新所属组 文件名/目录名
# 选项:-R,递归修改目录下的所有文件及子目录