Mig*_*ork 5 linux sudo systemd
我的问题是如何配置 systemd(?) 以在我忘记键入 sudo 时停止打开这个烦人的弹出窗口。只需给我一个基于文本的 sudo 提示或显示错误,我就可以快速纠正错误。
这是 Arch Linux,最新版本(systemd 238.133)。
这不是“sudo”提示,而是“polkit”提示。避免它的一种方法 - 对所有软件都是全局的,而不仅仅是 systemctl - 是编写一个 polkit 规则,立即拒绝(或立即允许)该操作。
polkit.addRule(function(action, subject) {
if (subject.user !== "root") {
if (/^org\.freedesktop\.systemd1\./.test(action.id)) {
return polkit.Result.NO;
}
}
});
Run Code Online (Sandbox Code Playgroud)
(subject.user可以省略测试,因为 root 绕过 polkit 调用的操作会完全检查。)
polkit 规则存储在 中/etc/polkit/rules.d/*.rules,通常命名为 like 80-custom.rules(按升序处理)。有关更多信息,请参阅polkit(8)。
(也就是说,如果您的 sudo 配置是无密码的,那么使用 'sudo' 与让 polkit 立即允许该操作之间没有实际的安全区别。反之亦然,如果您的 sudo需要密码......那为什么不直接输入密码呢? polkit 对话框?这是相同的密码。)