# 快速教程：用户及权限管理


## 添加用户

```shell
useradd [选项] 用户名
	-u 指定uid
	-g 组名
	-G 附加组
	-c 说明
	-d 家目录
	-s shell
```

## 密码设定

```shell
passwd [选项] 用户名
	-l: 暂时锁定
	-u: 解锁用户
```

## 用户信息修改

`usermod [选项] 用户名`

## 删除用户

```shell
userdel [-r] 用户名
	-r: 同时删除家目录
```

## 切换用户身份

```shell
su [选项] 用户名
	-:连用户环境变量一起切换
```

## 添加组

```shell
groupadd [选项] 组名
	-g:指定组id
```

## 删除组

```shell
groupdel 组名
将用户添加/删除到组: gpasswd [选项] 组名
	-a 用户名: 加入组
	-d 用户名: 移除组
```

## acl授权

```shell
查询文件acl权限: getfacl 文件名

设定acl权限: setfacl 选项 文件名
		-m: 设定acl权限
		-b: 删除acl权限
		-x:用户 : 删除单个用户的acl权限
		setfacl -m u:用户名:权限 文件名
		setfacl -m g:组名:权限 文件名
```

## sudo授权:

给普通用户赋予部分管理员权限


```shell
例:授权用户user1可以重启服务器, 则由root用户添加如下
visudo
user1 ALL=/sbin/shutdown -r now
```

## 文件特殊权限

- SetUID
- SetGID
- Sticky BIT

