当我尝试/etc/hostname
使用sudo nano /etc/hostname
(或任何其他编辑器)编辑文件时,我得到以下信息:
Error writing /etc/hostname: Permission denied
然后我尝试:
sudo chmod u+w ./hostname
并收到错误:
chmod: changing permissions of `./hostname': Operation not permitted
当我尝试向任何用户或组添加写权限时,出现了同样的错误。
这表明ls
:
-rw-r--r-- 1 root root 22 2012-06-18 12:25 /etc/hostname
知道原因是什么吗?我该怎么办?
我正在运行 Ubuntu 11.10。
答案1
听起来你的/etc/hostname
文件是“不可变的”,因为它具有不可变的文件系统属性。你可以检查lsattr
,应该看到类似这样的内容:
[jk@pecola ~]$ lsattr /etc/hostname
-------------e- /etc/hostname
如果其中有一个i
,则您的文件是不可变的。您可以使用以下方法更改此设置:
sudo chattr -i /etc/hostname
然后你就可以编辑它了。
有关文件系统属性以及可用属性的更多信息,请参阅的手册页chattr
:
man chattr
本文也很有用。
答案2
这可能会引起很大的不满,但以下方法对我有用:
$ sudoedit /etc/hostname
我们相信您已经收到了本地系统管理员的常规讲座。它通常归结为以下三件事:
#1) Respect the privacy of others. #2) Think before you type. #3) With great power comes great responsibility.