小智 115
取自这里:
您永远不应该使用 normal
sudo以 root 身份启动图形应用程序。您应该使用gksudo(kdesudo在 Kubuntu 上)来运行此类程序。gksudo设置HOME=/root,并复制.Xauthority到一个tmp目录。这可以防止您的主目录中的文件被 root 拥有。
请注意,这主要是关于配置文件。如果您运行的鹦鹉螺root,即使有gksu/ gksudo,和您创建一个文件或它的任何地方文件夹(包括你的主目录),该文件或文件夹将所拥有root。但是,如果你运行的Nautilus(或其他大多数图形应用)作为root与sudo,他们可能挽救他们的配置文件在你的home目录(而不是root主目录)。root当您不是以 root 身份运行时,这些配置文件可能归您所有且无法访问,这会严重弄乱您的设置,甚至可能使某些应用程序完全无法运行。
一旦你犯了这个错误,解决方案是找到配置文件并删除它们或chown它们回到属于你的非root用户。许多这样的文件以.或 开头的目录包含在以.. 有些位于.config您的主目录中的文件夹内。要查看.Nautilus 中以 a 开头的文件和文件夹,请按Ctrl+ H(这会显示隐藏文件。)要查看它们ls,请使用-a(或-A) 标志。
要查找主目录中是否存在不属于您的文件,您可以在终端中使用以下命令:
find $HOME -not -user $USER -exec ls -lad {} \;
Run Code Online (Sandbox Code Playgroud)
这将列出主目录下不属于用户的所有文件。
sudo -H GUI-application-program在 Ubuntu (17.10) 17.10.1 以及可能的 Ubuntu 未来版本中,gksu和gksudo已被弃用。他们在 Xorg 中工作,但不在 Wayland 中工作。但您可以用来sudo -H运行 GUI 应用程序,而不会损坏您的配置文件。不要使用普通的sudo.
如果您正在运行 Wayland(取代 Xorg 的新图形系统),您还需要一个命令xhost。
xhost +si:localuser:root # if Wayland
sudo -H nautilus --no-desktop
Run Code Online (Sandbox Code Playgroud)
请参阅以下链接了解更多详细信息,
为什么 gksu/gksudo 或使用 sudo 启动图形应用程序不能与 Wayland 配合使用?
| 归档时间: |
|
| 查看次数: |
56780 次 |
| 最近记录: |