如何以root身份运行GUI应用程序

UPDATE


我想知道哪个是以root身份运行GUI应用程序的推荐方式,主要是因为我正在尝试的不能顺利运行。 我收到一些恼人的警告,让我想到我是否做错了。

我正在使用gksudosudo -i ,据我所知,它正在做同样的事情。 如果它们之间存在细微差别,请告诉我。

关于我遇到的问题,我想从nautilus开始(以root身份运行)。 我无法编辑首选项文件,因为程序无法创建自己的配置文件。 警告说必须创建文件夹/root/.config/nautilus 。 当您第一次启动应用程序时,程序负责创建它可能需要的配置文件。 所以,当你以root身份运行时,应该会发生相同的情况,不是吗?

此外,在shell中运行此应用程序时会出现一些奇怪的警告,例如:

(nautilus:3406):Gtk-WARNING **:无法注册客户端:GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown:任何.service文件都没有提供名称org.gnome.SessionManager Nautilus-Share-消息:称为“net usershare info”但失败:“共享网络”返回错误255:net usershare:无法打开usershare目录/ var / lib / samba / usershares。 错误文件或文件夹不存在请让系统管理员启用用户共享。

其他应用程序,如gedit或firefox以这种方式抱怨:

(gedit:3444):Gtk-WARNING **:调用禁止失败:GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown:任何.service文件都没有提供名称org.gnome.SessionManager

(gedit:3444):GLib-GIO-WARNING **:无法解析翻译的字符串”Monospace 12”,用于schema’org.gnome.gedit.preferences.editor’中的键’editor-font’:0:期望值

(gedit:3444):GLib-GIO-WARNING **:改为使用未翻译的默认值。

(firefox:2719):Gtk-CRITICAL **:IA__gtk_clipboard_set_with_data:断言’目标!= NULL

我想尽快安装一个干净的系统,但在此之前,我想了解它是如何工作的,以防我将来需要这些东西用于特定的事情。 虽然我知道在命令行中使用直接sudo更安全。

为什么会这样? 提前致谢

使用直接sudo nautilus的问题是它有时会尝试使用用户主目录中的配置文件。 这可能导致root(superpriviledged用户)更改主目录中文件的权限。 这通常不会长期有害; 它可能导致令人讨厌的问题,如拒绝登录到您的桌面,但您通常可以通过键入“sudo chown -R user:user~ /”来恢复以前的配置。

那么gksudo和sudo -i所做的只是告诉程序使用.Xauthority和其他配置文件的副本或实际属于root的文件运行。 我个人更喜欢sudo -i,因为我不必每次都输入我的密码,但这完全是首选。 这两个命令正在做同样的事情。