gksu 手册页说它是 su 的前端,但是 su 不需要执行命令,而 gksu 需要。此外,gksu 似乎不会更改我的 shell 的用户 ID,而 su 会。是否有可能让 gksu 的工作方式与 su 完全相同,只需询问用户密码并更改 shell uid?
另外,gksu 和 gksudo 之间有什么区别?
答案1
gksu 通常会以 root 用户身份登录并在此会话上运行应用程序
在某些系统(例如 ubuntu)中,gksu 和 gksudo 是符号链接的,这基本上意味着无论使用哪个命令,您都只是使用 gksudo,因为 /apps/gksu/sudo-mode 已启用
通常,gksu 会以 root 用户身份登录并在该会话中运行应用程序。而 gksudo/sudo 会让用户保持登录状态,并将 root 级权限提升至该用户
您永远不应该使用普通的 sudo 来启动图形应用程序。您应该使用 gksudo。gksudo 设置 HOME=~root,并将 .Xauthority 复制到 tmp 目录。这可以防止您的主目录中的文件被 root 拥有。(据我所知,这就是使用 gksudo 与 sudo 启动进程的环境的所有特殊之处)。
答案2
Gksu 是一个允许用户以 root 身份运行 GUI 程序的工具。它对 X 程序的作用相当于 sudo 对命令的作用。据我所知,gksu 和 gksudo 是一样的。