![如何从菜单项中获取要执行的别名命令?](https://linux22.com/image/944758/%E5%A6%82%E4%BD%95%E4%BB%8E%E8%8F%9C%E5%8D%95%E9%A1%B9%E4%B8%AD%E8%8E%B7%E5%8F%96%E8%A6%81%E6%89%A7%E8%A1%8C%E7%9A%84%E5%88%AB%E5%90%8D%E5%91%BD%E4%BB%A4%EF%BC%9F.png)
我为一家小型非营利组织翻新电脑,我们使用通过 clonezilla 克隆的 xubuntu。我在设置别名时遇到问题:
alias pkexec='pkexec /usr/bin/env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY'
这在命令行和我工作设备上编辑的菜单项中运行良好。从我的工作设备上,我得到了密码提示:
Authentication is required to run '/usr/bin/env'
我输入密码,/usr/bin/hardinfo 以超级用户身份打开。
但是,当我在任何“克隆”上尝试执行此操作时,pkexec 都会显示密码提示:
Athentication is required to run /usr/bin/hardinfo
我输入密码后 top show hardinfo 启动,然后崩溃或不再显示为正在执行的程序。我知道我的设备和克隆设备之间有些不同。我不知道是什么。我在这里发帖征求您的意见和建议。
提前致谢,
@熏肉,
我在.bashrc
pkexec() { command pkexec /usr/bin/env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY "$@" }
当我运行源 .bashrc 时出现语法错误 语法错误 意外的标记:
bash: .bashrc: line 146: syntax error near unexpected token `('
bash: .bashrc: line 146: `pkexec(){"command pkexec /usr/bin/env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY "$@" "}'
@muru
我对其进行了修改并且现在可以工作了。
pkexec(){ /usr/bin/pkexec /usr/bin/env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY "$@" } source .bashrc 然后 boom。它可以在我家里的设备上从命令行运行 mint。但如果我编辑菜单项 pkexec /usr/bin/hardinfo,我会得到密码窗口,提示 /usr/bin/hardinfo 需要身份验证才能以 root 身份运行。hardinfo 崩溃。
但即使在您提供所有帮助之后,我的问题仍然存在,我的工作设备可能发生了哪些变化,导致克隆的映像无法按预期工作。哪些故障排除步骤可以帮助我深入研究可能/可能不会影响未来映像机器的问题。
感谢您所有的帮助。