大约10%的时间,当我尝试在Emacs中保存文件时,出现以下错误:
Opening output file: resource temporarily unavailable,
我目前正在使用Emacs GNU Emacs 24.3.1(x86_64-pc-linux-gnu,GTK +版本3.4.2) Ubuntu 12.04。我还验证了此问题是以其他用户身份登录并使用Emacs 23.3.1。
当我进行修复,尝试保存,然后想知道为什么我的修复没有发生时,这个问题真的很痛苦......后来才发现Emacs保存从未成功过。 如果我发现它发生了,我会一直按Ctrl-x Ctrl-s直到保存实际执行(需要几次)。
有谁知道为什么会发生这种情况以及如何预防?
更新: (每个请求更多信息)
更新2: 多个用户在多个Emacs版本中遇到问题。
更新3: 这似乎不是Emacs特定的问题,因为我现在偶尔会出现#34;无法保存"尝试在Sublime-text编辑器中保存文件时弹出窗口。
答案 0 :(得分:1)
这可能是来自emacs(M-x report-emacs-bug
)的错误,您的文件系统存在一些问题(我认为情况并非如此,因为您很可能检查了其他编辑器是否出现问题),或者您当地的某些进程设置弄乱你的文件。
如果测试后者是否属于这种情况,您可以尝试对此进行评估,然后重现问题:
(defadvice save-buffer (around find-shenanigan activate)
(condition-case ()
ad-do-it
(error
(shell-command (format "lsof -V %s" (buffer-file-name)) "*debug-issue*"))))
这样做的每次保存操作失败时,它都会执行一个命令,用于记录打开文件的进程。如果您看到任何流程,您就知道谁在调查。男人lsof将帮助细节。
注意:问题是否也发生在emacs -Q?
上 编辑:如果您可以使用没有密码的sudo(/ etc / sudoers中的NOPASSWD),请将“lsof”替换为“sudo lsof”
编辑:我将lsof的输出重定向到名为*debug-issue*
的缓冲区;检查缓冲区是否有错误。