3. chown 命令

chown(Change Owner)是 Linux/Unix 系统中用于修改文件或文件夹的所有者和所属组的命令,其核心作用是管理文件的归属关系,确保正确的用户或组拥有访问权限。

命令格式

chown [选项] [新所有者][:新所属组] 文件或文件夹

示例:

weimingze@mzstudio:~$ ls -l hello.py
-rw-rw-r-- 1 weimingze weimingze 23 May 22 11:57 hello.py
weimingze@mzstudio:~$ sudo chown root hello.py  # 将拥有者改改成 root
[sudo] password for weimingze:
weimingze@mzstudio:~$ ls -l hello.py
-rw-rw-r-- 1 root weimingze 23 May 22 11:57 hello.py
weimingze@mzstudio:~$ sudo chown weimingze hello.py  # 将拥有者改成 weimingze
weimingze@mzstudio:~$ ls -l hello.py
-rw-rw-r-- 1 weimingze weimingze 23 May 22 11:57 hello.py
weimingze@mzstudio:~$ sudo chown root:root  hello.py    # 同时修改拥有者和属组
weimingze@mzstudio:~$ ls -l hello.py
-rw-rw-r-- 1 root root 23 May 22 11:57 hello.py
weimingze@mzstudio:~$ sudo chown 1000:1000  hello.py  # 使用 UID和GID 来代替用户名和组名
weimingze@mzstudio:~$ ls -l hello.py
-rw-rw-r-- 1 weimingze weimingze 23 May 22 11:57 hello.py

常用选项

选项
说明
-R
递归修改文件夹及其子文件夹/文件的所有权。
--reference=参照文件
使目标文件的所有权与参照文件相同。
-v
显示详细操作信息(verbose)。
-c
仅显示发生更改的文件信息。

练习:

  1. 在 根文件夹下创建文件 /temp.txt
  2. /temp.txt 的属主和属组都设置为当前登录的用户。
  3. 退出 root 用户权限,使用 当前登录用户权限修改/temp.txt 文件。
  4. 使用 root 用户权限删除 /temp.txt 文件。