为什么尽管我有权限却无法编辑文件?

为什么尽管我有权限却无法编辑文件?

这些是权限:

$ ls -l | grep view.tmpl
-rw-rw-r-- 1 apache devel 1057 2009-04-30 00:39 view.tmpl

我 (lexsys) 属于开发人员小组:

$ cat /etc/group | grep devel
devel:x:503:anthony,lexsys

但是当我打开该文件时,它显示为只读:

“view.tmpl” [只读]​​ 31L,1057C

当我尝试使用 w 命令写入它时,出现错误:

“view.tmpl” E212:无法打开文件进行写入

我如何设置权限以允许 lexsys 编辑该文件?

答案1

  1. 您 (lexsys) 最近被添加到 devel 组了吗?如果您是在当前登录会话后被添加的,那么您需要注销然后重新登录。

  2. 包含 view.tmpl 的文件系统是否以只读方式挂载?这可能是设计使然(检查 /etc/fstab),也可能是因为它是使用“errors=remount-ro”挂载的 ext3 fs,如果在访问 fs 时检测到任何错误,则会导致 fs 以只读方式重新挂载。

  3. 有人使用 chattr 在 vi​​ew.tmpl 上设置了不可变标志吗?使用 lsattr 检查一下。如果已设置,请使用“chattr -I view.tmpl”将其清除(以 root 身份)。

    使用 lsattr 后,不可变文件看起来会像这样:

    $ lsattr /tmp/foo
    ----我----------- /tmp/foo
    

相关内容