Unix 文件系统深入解析
1. 访问控制列表(ACLs)
部分 Unix 系统支持访问控制列表(ACLs)这一特性,它能够对访问权限进行更精细的控制,可给特定用户或用户组分配非默认的权限。然而,不同系统用于设置和显示 ACLs 的工具差异很大,这使得 ACLs 在异构环境中用处不大,情况较为复杂。若想深入了解,可使用 man -k acl 或 man -k 'access control list' 命令来识别系统中相关的命令。
2. 文件时间戳
Unix 文件的索引节点(inode)包含三个重要的时间戳:访问时间、索引节点更改时间和修改时间。这些时间通常从纪元(epoch)开始以秒为单位计量,对于 Unix 系统而言,纪元是 1970 年 1 月 1 日 00:00:00 UTC。部分 Unix 实现提供了更精细的计时粒度。采用 UTC(协调世界时)计量意味着时间戳与本地时区无关。
- 访问时间 :多个系统调用(包括读写文件的调用)会更新该时间。不过,使用 mmap() 将文件映射到内存并读取时,访问时间可能不会更新。
- 索引节点更改时间 :文件创建以及索引节点元数据修改时会设置该时间。它服务于两个不同目的,应分开记录,这导致无法判断文件在 Unix 文件系统中首次创建的时间。
- 修改时间 :文件块发生更改时该时间会改变,但元数据(文件名、用户、用户组、链接计数或权限)更改时不会改变。文件复制命令通常会将输出文件的修改时间重置为当前时间,
超级会员免费看
订阅专栏 解锁全文
2万+

被折叠的 条评论
为什么被折叠?



