运行 sudo gedit 时“设置文档元数据失败”

alo*_*007 23 gedit command-line sudo metadata 16.04

我已将 14.04 升级到 16.04 。现在我试图通过传递命令从终端打开 gedit:

sudo gedit /some/where/file.txt
Run Code Online (Sandbox Code Playgroud)

但它抛出一个错误,指出:

(gedit:2090): Gtk-WARNING : Calling Inhibit failed: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown:
  The name org.gnome.SessionManager was not provided by any .service files**
Run Code Online (Sandbox Code Playgroud)

但是,它正在打开文件。当我尝试保存任何修改时,保存文件后显示此错误:

(gedit:2090): WARNING : Set document metadata failed: Setting attribute metadata::gedit-position not supported
Run Code Online (Sandbox Code Playgroud)

我不明白为什么这只会在 16.04 中发生;它不是在 14.04。

Eld*_*eek 8

您可以通过从启动器而不是按预期从命令行启动 gedit 来停止看到这种行为。

如果您确实需要一个可以从命令行启动而不会看到这些错误的编辑器,您可以尝试nanopico(一个简单易用的编辑器)从命令行启动或vi(一个更高级的编辑器)也从命令行启动。

有关这些编辑器的更多信息,请分别参见man nanoman vi

大多数人爱一个人恨另一个人,但你有选择的自由

资料来源:经验


小智 5

您可以忽略这些警告。如果它困扰你,只需输入:

sudo -H gedit /some/where/file.txt &>/dev/null
Run Code Online (Sandbox Code Playgroud)