Files
chill_notes/Linux/Ubuntu/Ubuntu用户管理.md
2026-04-21 20:30:23 +08:00

178 lines
2.7 KiB
Markdown
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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)