sudo改用pkexec的问题
-
- 帖子: 25
- 注册时间: 2014-02-15 17:04
- 系统: win10 11 ubuntu20
sudo改用pkexec的问题
一段脚本里,原来有两处sudo。现在想改用pkexec,怎么在第二处提权时免输密码?
登录时防机器人的问题真TM难。
我试了不下10次。答案包括:
20.04
20.04.3
LTS
18.04
16.04
等等等等
我试了不下10次。答案包括:
20.04
20.04.3
LTS
18.04
16.04
等等等等
- lanxing0821
- 帖子: 1
- 注册时间: 2015-07-04 20:13
- 系统: kubuntu 22.04
Re: sudo改用pkexec的问题
你可以换一种思路,比如你为什么用 pkexec 而不用 sudo ?是不方便在终端输入密码,还是纯粹地只想换个提升用户权限的程序?如果是前者,你完全可以用 sudo 的 -A 选项来替代。
举个例子,假设你的电脑已经安装了 ssh-askpass 辅助程序(如果没有,则可以通过如下命令来安装):
那么,你可以在脚本中添加如下内容:
这里解释一下所用到的 sudo 的两个环境变量:
SUDO_PROMPT 用于定义 sudo 的提示文本;
SUDO_ASKPASS 用于定义 sudo 的 askpass 辅助程序,它必须是一个绝对路径名。一些桌面环境可能自带了 askpass 辅助程序,例如, KDE 的 ksshaskpass (/usr/bin/ksshaskpass)。
举个例子,假设你的电脑已经安装了 ssh-askpass 辅助程序(如果没有,则可以通过如下命令来安装):
代码: 全选
command -v seahorse # 检测是否安装了 ssh-askpass
sudo apt install seahorse # 如果没有安装,则安装它
代码: 全选
export SUDO_PROMPT="检测到你所要进行的操作,需要更高的权限方可继续。
若要通过本次验证请求,请在下面输入你的用户密码!"
export SUDO_ASKPASS=/usr/libexec/seahorse/ssh-askpass
sudo -A 你要运行的程序
SUDO_PROMPT 用于定义 sudo 的提示文本;
SUDO_ASKPASS 用于定义 sudo 的 askpass 辅助程序,它必须是一个绝对路径名。一些桌面环境可能自带了 askpass 辅助程序,例如, KDE 的 ksshaskpass (/usr/bin/ksshaskpass)。
-
- 帖子: 25
- 注册时间: 2014-02-15 17:04
- 系统: win10 11 ubuntu20
Re: sudo改用pkexec的问题
我是写在一个.desktop脚本里,使用bash -c来执行的。脚本有进行分发给不同的人使用。之前适配的第三方发行版改过sudoers,默认sudo免密码。而现在装备兼容别的系统,默认sudo需要输入密码,而且sudoers还被爆改过。基本不可能修改sudoers或者使用sudo -A。至于ssh,更加不方便了。lanxing0821 写了: ↑2023-02-22 21:44 你可以换一种思路,比如你为什么用 pkexec 而不用 sudo ?是不方便在终端输入密码,还是纯粹地只想换个提升用户权限的程序?如果是前者,你完全可以用 sudo 的 -A 选项来替代。
举个例子,假设你的电脑已经安装了 ssh-askpass 辅助程序(如果没有,则可以通过如下命令来安装):那么,你可以在脚本中添加如下内容:代码: 全选
command -v seahorse # 检测是否安装了 ssh-askpass sudo apt install seahorse # 如果没有安装,则安装它
这里解释一下所用到的 sudo 的两个环境变量:代码: 全选
export SUDO_PROMPT="检测到你所要进行的操作,需要更高的权限方可继续。 若要通过本次验证请求,请在下面输入你的用户密码!" export SUDO_ASKPASS=/usr/libexec/seahorse/ssh-askpass sudo -A 你要运行的程序
SUDO_PROMPT 用于定义 sudo 的提示文本;
SUDO_ASKPASS 用于定义 sudo 的 askpass 辅助程序,它必须是一个绝对路径名。一些桌面环境可能自带了 askpass 辅助程序,例如, KDE 的 ksshaskpass (/usr/bin/ksshaskpass)。
PS,都是X86掌机的系统。
登录时防机器人的问题真TM难。
我试了不下10次。答案包括:
20.04
20.04.3
LTS
18.04
16.04
等等等等
我试了不下10次。答案包括:
20.04
20.04.3
LTS
18.04
16.04
等等等等
- lilydjwg
- 论坛版主
- 帖子: 4246
- 注册时间: 2009-04-11 23:46
- 系统: Arch Linux
- 联系:
Re: sudo改用pkexec的问题
那你开俩进程吧,一个 pkexec 里一个 pkexec 外。
-
- 帖子: 25
- 注册时间: 2014-02-15 17:04
- 系统: win10 11 ubuntu20
Re: sudo改用pkexec的问题
登录时防机器人的问题真TM难。
我试了不下10次。答案包括:
20.04
20.04.3
LTS
18.04
16.04
等等等等
我试了不下10次。答案包括:
20.04
20.04.3
LTS
18.04
16.04
等等等等