文件系统权限丢失或看不见

文件系统权限丢失或看不见

好的,我这里有一个明显 WTF 的问题。

我以 root 身份登录,然后运行:

# ls /var/lib/gitolite3/.gitolite/logs/ -l
-rw-rw-rw-. 1 gitolite3 gitolite3 5570 Aug  2 21:00 gitolite-2013-08.log

没问题?我以 gitolite3 身份登录,再次运行相同的操作:

# su gitolite3
$ ls /var/lib/gitolite3/.gitolite/logs/ -l
-????????? ? ? ? ?            ? gitolite-2013-08.log

怎么回事?其他地方也报错说无法访问日志。FS 是 EXT4。OS 是 Centos6.4。之前,我不得不更改 gitolite3 的 uid 和 gid 以让 suexec 在该用户和组下运行命令,结果我不得不再次 chown -R gitolite3:gitolite3 该文件夹树。Fsck 不让我这么做,FS 已经挂载了。

有什么提示吗?

答案1

问题是用户 gitolite3 没有权限执行该目录,因此它无法读取 inode(存储权限的位置)。您必须授予 gitolite3 执行您所在目录的权限,如下所示:

chmod o + x /var/lib/gitolite3/.gitolite/logs

相关内容