使用 ls -l
命令(最常用)
命令示例:
ls -l 文件名
输出解析:
-rw-r--r-- 1 alice developers 1024 Jan 1 10:00 example.txt
- 第三列
alice
:文件所有者(用户) - 第四列
developers
:文件所属用户组 - 第一列
-rw-r--r--
:权限标识(r
=读,w
=写,x
=执行)
查看目录的所有者:
ls -ld 目录名 # 注意 `-d` 参数避免列出目录内容
使用 stat
命令(查看详细信息)
命令示例:
stat 文件名
关键输出:
File: example.txt
Size: 1024 Blocks: 8 IO Block: 4096 regular file
Access: (0644/-rw-r--r--) Uid: ( 1000/ alice) Gid: ( 1001/developers)
Uid
:用户ID及用户名(如1000/alice
)Gid
:组ID及组名
使用 find
命令(批量查看)
查看当前目录下所有文件的所有者:
find . -maxdepth 1 -exec ls -ld {} \;
递归查看目录及其子目录:
find /path/to/dir -exec ls -ld {} \; # 替换路径
特殊场景处理
-
文件被删除或权限不足
- 若提示
No such file or directory
,检查路径是否正确。 - 权限不足时使用
sudo
(需管理员权限):sudo ls -l /root/secure_file
- 若提示
-
用户ID未解析为用户名
当系统无用户信息时,ls -l
可能显示数字ID(如1000
而非alice
)。
解决方案:检查/etc/passwd
文件:grep 1000 /etc/passwd # 替换为实际ID
-
ACL(访问控制列表)权限
若文件设置了扩展权限(如setfacl
),用getfacl
查看完整信息:getfacl 文件名
用户与权限的关系
- 所有权意义:
文件所有者可通过chown
修改文件属性(如sudo chown bob file.txt
)。 - 权限影响:
用户需具备读权限(r--
)才能查看文件内容,写权限(-w-
)才能编辑。
- 首选命令:
ls -l
快速查看所有者及权限。 - 深度分析:
stat
获取用户ID、时间戳等元数据。 - 批量操作:
find
结合ls -ld
处理多文件。 - 权限基础:理解用户-组-其他(UGO)模型是管理Linux系统的核心。
引用说明基于Linux核心工具(GNU coreutils)的官方文档及POSIX标准,命令兼容主流发行版(Ubuntu, CentOS, Fedora等),更多细节可查阅:
man ls
,man stat
,man find
- Linux手册页:https://man7.org/linux/man-pages/
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/7142.html