Fal*_*rri 10 kde arch-linux sudo
例如,当我使用 kubuntu 时,我总是可以使用 sudo 打开 X 应用程序sudo kate。现在我已经切换到不起作用的拱形。我知道我一直被告知要使用 kdesu,但是 kubuntu 中有什么设置可以让我在 X 应用程序上使用 sudo 以防止我在 arch 上执行此操作?
编辑:
对不起,我做了我最讨厌的事情>_<
这就是我想要做的:
[falmarri@falmarri-z-arch 下载]$ sudo kate 密码: 未指定协议 凯特:无法连接到 X 服务器:0.0
请注意,这只是使用 konsole 的常规终端会话,我没有使用 SSH
/etc/sudoers:
## sudoers 文件。 ## ## 必须以 root 身份使用“visudo”命令编辑此文件。 ##不使用'visudo'可能会导致语法或文件权限错误 ## 阻止 sudo 运行。 ## ## 有关如何编写 sudoers 文件的详细信息,请参阅 sudoers 手册页。 ## ## ##主机别名规范 ## ## 机器组。这些可能包括主机名(可选带通配符), ## IP 地址、网络号或网络组。 # Host_Alias WEBSERVERS = www1, www2, www3 ## ## 用户别名规范 ## ## 用户组。这些可能包括用户名、uid、Unix 组、 ## 或网络组。 # User_Alias ADMINS = millert, dowdy, mikef ## ## Cmnd 别名规范 ## ##命令组。通常用于将相关命令组合在一起。 # Cmnd_Alias PROCESSES = /usr/bin/nice, /bin/kill, /usr/bin/renice, \ # /usr/bin/pkill, /usr/bin/top ## ##默认规范 ## ##您可能希望保留以下一些环境变量 ## 通过 sudo 运行命令时。 ## ##区域设置 # 默认 env_keep += "LANG LANGUAGE LINGUAS LC_* _XKB_CHARSET" ## ##通过sudo运行X个应用程序;HOME 用于查找 ## .Xauthority 文件。注意其他程序使用HOME查找 ## 配置文件,这可能会导致权限提升! 默认值 env_keep += "HOME" ## ## X11 资源路径设置 默认值 env_keep += "XAPPLRESDIR XFILESEARCHPATH XUSERFILESEARCHPATH" ## ##桌面路径设置 默认值 env_keep += "QTDIR KDEDIR" ## ## 允许 sudo-run 命令继承调用者的 ConsoleKit 会话 # 默认 env_keep += "XDG_SESSION_COOKIE" ## ## 取消注释以启用特殊输入法。应注意作为 ## 这可能允许用户通过 sudo 破坏正在运行的命令。 默认值 env_keep += "XMODIFIERS GTK_IM_MODULE QT_IM_MODULE QT_IM_SWITCHER" ## ## 取消注释以启用命令输出的日志记录,除了 ## sudoreplay 并重新启动。使用 sudoreplay 回放记录的会话。 # 默认日志输出 # 默认值!/usr/bin/sudoreplay !log_output # 默认值!/usr/local/bin/sudoreplay !log_output # 默认值!/sbin/reboot !log_output ## ## Runas 别名规范 ## 默认值:falmarri timestamp_timeout=10 ## ## 用户权限规范 ## 根 ALL=(ALL) ALL ##取消注释以允许组wheel的成员执行任何命令 %wheel ALL=(ALL) ALL ##同样的事情没有密码 # %wheel ALL=(ALL) NOPASSWD: ALL ## 取消注释以允许组 sudo 的成员执行任何命令 # %sudo ALL=(ALL) ALL ## 取消注释以允许任何用户在知道密码的情况下运行 sudo ##他们运行命令的用户(默认为root)。 # Defaults targetpw # 询问目标用户的密码 # ALL ALL=(ALL) ALL # 警告:只能与“默认目标pw”一起使用 ## 从 /etc/sudoers.d 读取插入文件 ##(此处的“#”不表示注释) #includedir /etc/sudoers.d
不应使用 sudo 运行图形程序。正确的方法是kdesudo在 KDE 中使用以 root 身份运行 GUI 程序,或者gksu在 GNOME 中使用。
以 root 身份运行图形程序有可能导致严重的问题,这就是提供包装器的原因。阅读这个 Arch 邮件列表线程,了解一个严重的问题,你可能会遇到试图欺骗sudo启动 GUI 应用程序的问题。
这看起来像是 Arch Linux 中的一个有意配置。有关解决方案链接的讨论,请参阅此内容。
最好的提示似乎是将“DISPLAY XAUTHORITY”添加到 .env 中的“env_keep”默认值/etc/sudoers。
Fedora 具有/etc/sudoers以下功能,这允许 sudo somexapp 成功。
Defaults env_reset
Defaults env_keep = "COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS"
Defaults env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE"
Defaults env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"
Defaults env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"
Defaults env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY"
Run Code Online (Sandbox Code Playgroud)