XiaowenBlog/source/_posts/Linux用户与权限.md
wenyongda 57e553807d docs: 添加Linux相关技术文档
新增多篇Linux技术文档,涵盖基础命令、文件操作、用户权限、网络配置、进程管理、软件安装、系统监控和磁盘管理等主题。每篇文档包含详细命令示例和使用说明,适合作为Linux系统管理参考手册。

文档内容包含:
1. Linux基础命令与快捷键
2. 文件操作与查找技巧
3. 用户管理与权限配置
4. 网络配置与防火墙管理
5. 进程与服务管理方法
6. 软件包管理与安装
7. 系统资源监控命令
8. 磁盘分区与LVM管理
2026-04-16 13:02:54 +08:00

226 lines
3.6 KiB
Markdown
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.

---
title: Linux用户与权限
date: 2021-04-07 16:04:58
author: 文永达
top_img: https://gcore.jsdelivr.net/gh/volantis-x/cdn-wallpaper/abstract/00E0F0ED-9F1C-407A-9AA6-545649D919F4.jpeg
tags: [Linux, Shell, 用户管理]
categories: [操作系统, Linux]
---
# Linux用户与权限
## 用户管理
### 查看用户
```shell
# 查看当前用户
who am i
# 查看当前登录用户数量
who --count
```
### 用户组管理
```shell
# 创建用户组
groupadd groupname
# 删除用户组
groupdel groupname
```
### 用户管理
```shell
# 创建用户并指定用户组
useradd username -g usergroup
# 设置用户密码
passwd username
# 切换用户
# 从 root 切换到其他用户不需要输入密码
# 从其他用户切换到 root 需要输入密码
su username
# 退出登录
exit
```
---
## 权限管理
### Linux文件权限
Linux 文件有三种权限:
| 权限 | 说明 |
|-----|------|
| `r` | 可读 |
| `w` | 可写 |
| `x` | 可执行 |
### chmod 命令
修改文件权限。
```shell
# 数字方式设置权限
chmod 755 file
```
**权限数字说明**
| 数字 | 权限 | 说明 |
|-----|------|------|
| 7 | rwx | 读、写、执行 |
| 6 | rw- | 读、写 |
| 5 | r-x | 读、执行 |
| 4 | r-- | 只读 |
| 0 | --- | 无权限 |
**755 权限含义**`rwxr-xr-x`
- 所有者:读、写、执行
- 所属组:读、执行
- 其他用户:读、执行
---
## sudo权限
### 开启sudo权限
#### 1. 添加sudoers文件写权限
```shell
chmod u+w /etc/sudoers
```
#### 2. 编辑sudoers文件
```shell
vim /etc/sudoers
```
找到 `root ALL=(ALL) ALL` 这行,在其下面添加:
```
username ALL=(ALL) ALL
```
#### 3. sudoers配置选项
```shell
# 允许用户执行sudo命令需要输入密码
username ALL=(ALL) ALL
# 允许用户组里的用户执行sudo命令需要输入密码
%usergroup ALL=(ALL) ALL
# 允许用户执行sudo命令不需要输入密码
username ALL=(ALL) NOPASSWD: ALL
# 允许用户组里的用户执行sudo命令不需要输入密码
%usergroup ALL=(ALL) NOPASSWD: ALL
```
#### 4. 撤销sudoers文件写权限
```shell
chmod u-w /etc/sudoers
```
---
## ACL权限
> ACL访问控制列表提供更细粒度的权限控制允许为特定用户或组设置特定权限。
### 安装ACL工具
```shell
# Ubuntu/Debian
sudo apt install acl -y
# Fedora/AlmaLinux
sudo dnf install acl -y
```
### 设置ACL权限
```shell
# 为指定用户设置读写权限
sudo setfacl -m u:user:rwx /OLAP
```
### 验证ACL权限
```shell
getfacl /OLAP
```
**输出示例**
```
getfacl: Removing leading '/' from absolute path names
# file: OLAP
# owner: user
# group: user
user::rwx
group::r-x
other::r-x
```
### 设置默认ACL权限
让新创建的文件和子目录自动继承特定权限:
```shell
sudo setfacl -dm u:user:rwx /OLAP
```
---
## 目录权限修改
### 查看目录权限
```shell
sudo ls -ld /OLAP
```
**输出示例**
```
drwxr-xr-x 5 root root 4096 Aug 5 08:27 /OLAP
```
### 修改目录权限
```shell
# 设置权限为775rwxrwxr-x
sudo chmod 775 /OLAP
```
这样目录的所有者和所属组的用户都可以读写,其他用户只有读取和执行权限。
### 将用户加入目录所属组
```shell
# 将用户加入root组不推荐root组权限过高
sudo usermod -aG root user
```
重新登录或重启系统以使组变更生效。
### 更改目录所有者
```shell
# 将目录所有者更改为指定用户
sudo chown user:user /OLAP
```
这样用户将拥有对目录的完全控制权。