当我运行时sudo gedit /path/to/some/random/file
出现以下错误
** (gedit:6262): WARNING **: Command line `dbus-launch --autolaunch=7f8731869e1c690b8205727e0000000a --binary-syntax --close-stderr' exited with non-zero exit status 1: Autolaunch error: X11 initialization failed.
Cannot open display:
Run 'gedit --help' to see a full list of available command line options.
使用gksudo
也无济于事,返回
Cannot open display:
Run 'gedit --help' to see a full list of available command line options.
大家帮帮忙吧。我需要有这个功能才能以 root 身份在 Gedit 中打开文件。
我发现这个问题有同样的错误,但没有解决方案无法使用 sudo 启动 gedit
编辑
我发现这个帖子Ubuntu 论坛。
以下是说明:
- echo $DISPLAY # 你将需要下面 3 行中的这个值
- sudo -i # 或旧版 Slackwares 上的“su -”
- xauth merge ~alien/.Xauthority # 在这里使用你自己的用户名而不是“alien”
- export DISPLAY=:0.0 # 使用之前 3 行中看到的 DISPLAY 值
当我执行命令#3时,出现了这个错误
xauth: file /root/.Xauthority does not exist
也许这个新信息可以提供更多信息。
答案1
终于找到了答案。从这个问题使用 sudo 运行应用程序时无法连接到 X 服务器尤其是这个问题尝试使用 sudo 或 gksudo 运行应用程序时出错。
我将该行添加到文件Defaults env_keep+="DISPLAY"
末尾。 visudo
/etc/sudoers
耶,我的sudo gedit
又回来了!
编辑
一段时间后再次出现同样的错误。
做了一些研究,特别是这个答案https://askubuntu.com/a/137584/163331然后意识到我必须向visudo
文件中添加更多选项。我没有使用 ,而是Defaults env_keep+="DISPLAY"
使用了以下行:
Defaults env_keep="XAUTHORIZATION XAUTHORITY TZ PS2 PS1 PATH LS_COLORS KRB5CCNAME HOSTNAME HOME DISPLAY COLORS"
答案2
以 root 身份运行任何图形界面应用程序都可能导致文件损坏,尤其是当图形界面应用程序是文本编辑器时。除此之外,gksu
在gksudo
Ubuntu 17.10 中的 Wayland 中以 root 身份启动图形应用程序时不起作用:为什么 gksu/gksudo 不能与 Wayland 一起使用?并且 gksu 包已从 Ubuntu 18.04 及更高版本的默认 Ubuntu 存储库中删除。
Nautilus 管理员 (nautilus 管理员)是 Nautilus 文件管理器的一个简单 Python 扩展,它在右键菜单中添加了一些管理操作:
- 以管理员身份打开:在以管理员(root)权限运行的新 Nautilus 窗口中打开一个文件夹。
- 以管理员身份编辑:在以管理员(root)权限运行的 Gedit 窗口中打开文件。
要在所有当前支持的 Ubuntu 版本中安装 Nautilus Admin,请打开终端并输入:
sudo apt install nautilus-admin
虽然有命令可以以 root 身份运行图形应用程序,但强烈建议您使用通常从终端运行的 nano 文本编辑器以 root 身份编辑文件。Nano 文本编辑器包含在默认的 Ubuntu 安装中。
Nano 非常易于使用。使用 nano 编辑器的说明总是位于每页的底部。您需要知道的唯一两个 nano 键盘快捷键是 WriteOut 和 Exit。按下键盘组合键Ctrl+ O,然后按下Enter保存正在编辑的文件。按下键盘组合键Ctrl+X退出 nano。
如果您养成以 root 身份正确编辑文件的习惯,那么您将减少犯错误的可能性,而纠正这些错误可能非常耗时。
答案3
至少在 Ubuntu 17.10 中,你可以执行以下操作:
gedit admin:///path/to/some/random/file
系统将提示您输入密码,然后文件将以 root 身份打开进行编辑。
答案4
我正在尝试总结此页面上其他答案中的所有信息:
韦兰:
唯一的选择似乎是使用nano
或vi/vim
Xorg:
尝试这个
sudo -H env DISPLAY=:0 gedit
如果它有效,可能意味着你需要在 sudo 配置文件中添加一些选项
sudo visudo
尝试在最后添加这一行
Defaults env_keep="XAUTHORIZATION XAUTHORITY TZ PS2 PS1 PATH LS_COLORS KRB5CCNAME HOSTNAME HOME DISPLAY COLORS"`