178 lines
2.7 KiB
Markdown
Executable File
178 lines
2.7 KiB
Markdown
Executable File
# Ubuntu 用户管理
|
||
|
||
## 用户组操作
|
||
|
||
```bash
|
||
# 创建用户组
|
||
sudo groupadd groupname
|
||
|
||
# 创建用户组并指定 GID
|
||
sudo groupadd -g 1002 groupname
|
||
|
||
# 删除用户组
|
||
sudo groupdel groupname
|
||
|
||
# 修改用户组名
|
||
sudo groupmod -n newname oldname
|
||
```
|
||
|
||
---
|
||
|
||
## 用户操作
|
||
|
||
### 创建用户
|
||
|
||
```bash
|
||
# 创建用户
|
||
sudo useradd username
|
||
|
||
# 创建用户并创建家目录
|
||
sudo useradd -m username
|
||
|
||
# 创建用户并指定 UID
|
||
sudo useradd -u 1003 username
|
||
|
||
# 创建用户并指定 GID
|
||
sudo useradd -g 1002 username
|
||
|
||
# 创建用户并添加到多个组
|
||
sudo useradd -G group1,group2 username
|
||
|
||
# 创建系统用户(无家目录)
|
||
sudo useradd -r username
|
||
```
|
||
|
||
### 设置密码
|
||
|
||
```bash
|
||
# 设置当前用户密码
|
||
passwd
|
||
|
||
# 设置指定用户密码
|
||
sudo passwd username
|
||
```
|
||
|
||
### 修改用户
|
||
|
||
```bash
|
||
# 修改用户名
|
||
sudo usermod -l newname oldname
|
||
|
||
# 修改用户家目录
|
||
sudo usermod -d /new/home username
|
||
|
||
# 修改用户默认 shell
|
||
sudo usermod -s /bin/bash username
|
||
|
||
# 添加用户到组
|
||
sudo usermod -aG groupname username
|
||
|
||
# 修改用户 UID
|
||
sudo usermod -u 1500 username
|
||
```
|
||
|
||
### 删除用户
|
||
|
||
```bash
|
||
# 删除用户(保留家目录)
|
||
sudo userdel username
|
||
|
||
# 删除用户及家目录
|
||
sudo userdel -r username
|
||
```
|
||
|
||
---
|
||
|
||
## 权限管理
|
||
|
||
### 添加 sudo 权限
|
||
|
||
```bash
|
||
# 方法一:添加到 sudo 组(Ubuntu 默认)
|
||
sudo usermod -aG sudo username
|
||
|
||
# 方法二:添加到 adm 组
|
||
sudo usermod -aG adm username
|
||
|
||
# 方法三:直接编辑 sudoers 文件
|
||
sudo visudo
|
||
|
||
# 添加行:
|
||
# username ALL=(ALL:ALL) ALL
|
||
```
|
||
|
||
### 权限说明
|
||
|
||
```
|
||
username ALL=(ALL:ALL) ALL
|
||
| | | |
|
||
| | | └── 运行所有命令
|
||
| | ------- 以所有用户身份
|
||
| ------------ 以所有终端
|
||
--------------------- 允许的用户
|
||
```
|
||
|
||
---
|
||
|
||
## 查看用户信息
|
||
|
||
```bash
|
||
# 查看所有用户
|
||
cat /etc/passwd
|
||
|
||
# 查看所有用户组
|
||
cat /etc/group
|
||
|
||
# 查看用户详细信息
|
||
id username
|
||
|
||
# 查看用户所属组
|
||
groups username
|
||
|
||
# 查看当前登录用户
|
||
whoami
|
||
|
||
# 查看用户登录历史
|
||
last
|
||
lastlog
|
||
```
|
||
|
||
---
|
||
|
||
## 用户配置文件
|
||
|
||
| 文件 | 说明 |
|
||
|------|------|
|
||
| `/etc/passwd` | 用户账号信息 |
|
||
| `/etc/shadow` | 密码(加密) |
|
||
| `/etc/group` | 组信息 |
|
||
| `/etc/sudoers` | sudo 权限配置 |
|
||
|
||
---
|
||
|
||
## 常用场景
|
||
|
||
```bash
|
||
# 1. 创建开发用户并授权
|
||
sudo groupadd -g 1002 dev
|
||
sudo useradd -m -g 1002 -u 1003 devuser
|
||
sudo passwd devuser
|
||
sudo usermod -aG sudo devuser
|
||
|
||
# 2. 锁定用户
|
||
sudo passwd -l username
|
||
|
||
# 3. 解锁用户
|
||
sudo passwd -u username
|
||
|
||
# 4. 禁止用户登录 Shell
|
||
sudo usermod -s /usr/sbin/nologin username
|
||
|
||
# 5. 查看用户创建时间
|
||
grep username /etc/passwd
|
||
```
|
||
|
||
---
|
||
|
||
> 参考:[Ubuntu 用户管理](https://www.cnblogs.com/vincedotnet/p/4017574.html)
|