UNPKG

2.06 kBMarkdownView Raw
1pkexec
2===
3
4以其他用户身份执行命令
5
6## 补充说明
7
8**pkexec** 允许授权用户以另一个用户的身份执行 PROGRAM。如果未指定
9PROGRAM,则将运行默认 shell。如果未指定用户名,则程序将以管理超级用户 root
10的身份执行。
11
12### 语法
13
14```shell
15pkexec [--version] [--disable-internal-agent] [--help]
16pkexec [--keep-cwd] [--user username] PROGRAM [ARGUMENTS...]
17```
18
19### 选项
20
21```shell
22PROGRAM 运行的程序
23ARGUMENTS... 传递给程序的参数
24
25--version 输出版本号然后退出
26--disable-internal-agent 避免将注册自己的文本身份验证代理
27--help 输出帮助文本然后退出
28--keep-cwd 运行位置,默认在 /home/<username>/
29--user <username> 需要运行的用户名
30```
31
32### 返回值
33
34成功完成后,返回值为 PROGRAM 的返回值。
35
36- `127`: 在未获得授权或者身份验证发生错误
37- `126`: 用户关闭身份验证对话框而无法获得授权
38
39### 示例
40
411. 运行具有管理员权限的命令:
42
43```
44pkexec command
45```
46
47`command` 替换为你要以管理员权限运行的命令。例如,`pkexec ls` 将以管理员权限运行 `ls` 命令。
48
492. 以图形界面运行具有管理员权限的命令:
50
51```
52pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY command
53```
54
55这个命令用于在图形界面中运行需要管理员权限的命令。将 `command` 替换为你要以管理员权限运行的命令。
56
573. 运行具有特定身份验证代理的命令:
58
59```
60pkexec --user username command
61```
62
63`username` 替换为你要作为哪个用户运行命令的用户名,将 `command` 替换为你要运行的命令。
64
654. 查看 `pkexec` 的帮助信息:
66
67```
68pkexec --help
69```
70
71这个命令将显示 `pkexec` 的使用说明和选项列表。
72
73请注意,使用 `pkexec` 运行命令时,系统会提示你输入管理员密码进行身份验证。确保只在必要时使用 `pkexec` 来运行需要管理员权限的命令,并小心谨慎地处理管理员权限。
74
75### 参考资料
76
77- https://man.archlinux.org/man/pkexec.1.en