不止一次,由于某些关键文件的权限突然发生变化(有时需要很长时间才能找到罪魁祸首),系统出现了问题-rw-------
。一旦我做了chmod 777 filename
,那么一切似乎都很好。
例如,我尝试在 Ubuntu 计算机上安装 vncserver。不管出于什么原因,vncserver 无法启动,所以我重新启动了机器,然后。然后我无法登录 Xcfe 会话,因为/home/user/.Xauthority
是文件-rw-------
而不是-rwxrwxrwx
.做了chmod 777 /home/user/.Xauthority
并且它纠正了我的问题。
这并不是我唯一一次经历类似的事情。所以我的问题是,是什么导致这种情况发生?我需要注意安装什么吗?
答案1
导致文件失去权限的原因要么是程序更改了权限(罕见),要么是程序重新创建了具有相同名称和不同权限的新文件。后者就是这里发生的情况。
该.Xauthority
文件是通过该xauth
实用程序维护的。每当xauth
更改文件时,它首先创建一个新版本,然后将其移动到位。如果xauth
由于任何原因(磁盘已满、电源故障等)在中间失败,这可以避免出现格式错误的半写入文件。
该.Xauthority
文件始终以模式 600(仅具有读写权限的所有者可以访问,即 )(重新)创建,rw-------
因为这些权限对文件有意义。该文件包含机密数据,因此其他用户不得访问该文件。该文件不可执行,因此没有任何执行权限。
无论你想解决什么问题,你都做错了。 777 上的权限.Xauthority
是无意义的。在大多数常见情况下,.Xauthority
会自动获得正确的数据。有时,您可能需要使用xauth merge
(有时前面带有 )将权限从一个 cookie 文件复制到另一个 cookie 文件xauth extract
。我建议你问一个问题找出你应该做什么;请务必准确描述您的问题。
总结一下:在这种情况下,您的权限不会保留,因为它们没有意义,因此通常操作文件的程序不会费心去复制它们。
答案2
在不了解所有细节的情况下很难说,但有时罪魁祸首是某些安装程序为其认为需要的内容设置了权限。