pkexec
以其他用户身份执行命令
补充说明
pkexec 允许授权用户以另一个用户的身份执行 PROGRAM。如果未指定 PROGRAM,则将运行默认 shell。如果未指定用户名,则程序将以管理超级用户 root 的身份执行。
语法
1pkexec [--version] [--disable-internal-agent] [--help]
2pkexec [--keep-cwd] [--user username] PROGRAM [ARGUMENTS...]
选项
1PROGRAM 运行的程序
2ARGUMENTS... 传递给程序的参数
3
4--version 输出版本号然后退出
5--disable-internal-agent 避免将注册自己的文本身份验证代理
6--help 输出帮助文本然后退出
7--keep-cwd 运行位置,默认在 /home/<username>/
8--user <username> 需要运行的用户名
返回值
成功完成后,返回值为 PROGRAM 的返回值。
127
: 在未获得授权或者身份验证发生错误126
: 用户关闭身份验证对话框而无法获得授权
示例
- 运行具有管理员权限的命令:
1pkexec command
将 command
替换为你要以管理员权限运行的命令。例如,pkexec ls
将以管理员权限运行 ls
命令。
- 以图形界面运行具有管理员权限的命令:
1pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY command
这个命令用于在图形界面中运行需要管理员权限的命令。将 command
替换为你要以管理员权限运行的命令。
- 运行具有特定身份验证代理的命令:
1pkexec --user username command
将 username
替换为你要作为哪个用户运行命令的用户名,将 command
替换为你要运行的命令。
- 查看
pkexec
的帮助信息:
1pkexec --help
这个命令将显示 pkexec
的使用说明和选项列表。
请注意,使用 pkexec
运行命令时,系统会提示你输入管理员密码进行身份验证。确保只在必要时使用 pkexec
来运行需要管理员权限的命令,并小心谨慎地处理管理员权限。
参考资料
- https://man.archlinux.org/man/pkexec.1.en 来源:https://github.com/jaywcjlove/linux-command
最后修改于: Wednesday, January 31, 2024
版权申明:
- 未标注来源的内容全部为原创,未经授权请勿转载(因转载后排版往往错乱、内容不可控、无法持续更新等);
- 非营利为目的,演绎本博客任何内容,请以'原文出处'或者'参考链接'等方式给出本站相关网页地址(方便读者)。