在 Ubuntu 22.04 VM 上,当我查看我的文件时,我发现它们已经为root
和正确设置了读/写/执行权限vboxsf
:
$ ls -lrt foo.pvs bar.pvs
-rwxrwx--- 1 root vboxsf 23492 Jan 24 12:08 foo.pvs
-rwxrwx--- 1 root vboxsf 1328 Apr 4 09:50 bar.pvs
用户(我)被设置为该组的成员vboxsf
。但是,当我在 中加载这两个文件时emacs
,它们的行为有所不同。第一个文件(我foo.pvs
在这里调用,但这不是它的真实名称)工作正常,但第二个文件(我调用bar.pvs
)由于某种原因以只读方式打开。在 Ubuntu(或 VirtualBox)的其他地方是否有一些隐藏的设置正在影响这个?如果重要的话,这是在带有 Windows 11 主机的已安装文件夹中。
我在写这个问题时发现的其他事实:当我打开bar.pvs
using时vi
,它不是只读的。但是,进行更改并保存它不会更改emacs
. 我需要在 中打开文件emacs
,因为我实际上是在(SRI 的原型验证系统)中打开文件pvs
,它是emacs
.
简短回答:删除隐藏文件
.#bar.pvs
当我试图为我的问题添加更多细节时,我收集了解决问题所需的信息。
做的时候
ls -lart
发现有个隐藏文件叫.#bar.pvs
file,但是没有.#foo.pvs
。当我试图删除这个文件时,我无法从 Ubuntu 中删除它(至少不容易,甚至不使用sudo
),所以我从 Windows 中删除了它。据我所知,该.#bar.pvs
文件似乎是在我在 PVS 中编辑文件时创建的,但系统在打开时崩溃了,因此在退出时没有正确删除。这样做之后,打开它
emacs
不再将文件设置为只读。