前几天我像往常一样使用 Vim,当我注意到一些奇怪的事情时。这是我所做的:
~$ touch testfile
~$ ls -l | grep testfile
-rw-r--r-- 1 username groupname 0 Jul 23 10:00 testfile
~$ vim testfile
Run Code Online (Sandbox Code Playgroud)
然后我进行了更改,并保存并退出:wq。很正常。然后,然而:
~$ sudo chown root:root testfile
~$ sudo chmod 644 testfile
~$ sudo -k
~$ ls -l | grep testfile
-rw-r--r-- root root 0 Jul 23 10:02 testfile
~$ vim testfile
Run Code Online (Sandbox Code Playgroud)
所以 root 应该有 r/w 访问权限,其他人应该只有读权限。编辑文件,尝试保存 - 你不能。太棒了,按预期工作。但是,如果您使用 保存:w!,vim 会以某种方式将文件所有权更改回 username:usergroup 并保存文件。即使你这样做:
~$ sudo chmod 444 testfile
~$ sudo -k
~$ ls -l …Run Code Online (Sandbox Code Playgroud)