相关疑难解决方法(0)

Arch Linux 上的默认 Polkit 权限是什么,用于关闭、暂停等,为什么会这样?

在 Arch Linux 上,使用 systemd,以下命令都是指向 的符号链接systemctl

/usr/bin/telinit
/usr/bin/poweroff
/usr/bin/runlevel
/usr/bin/reboot
/usr/bin/halt
/usr/bin/shutdown
Run Code Online (Sandbox Code Playgroud)

我发现他们在授权方面的行为令人困惑:

$ shutdown
Must be root.
$ halt
Must be root.
$ telinit 3
# Asks for Polkit authorization
Run Code Online (Sandbox Code Playgroud)

既不poweroff也不reboot要求授权。poweroff实际上并没有关闭我的系统,笔记本电脑保持开机状态,屏幕上有文字说明它正在关闭 - 无限期。

我没有修改过 Polkit 规则,所以我想知道为什么他们的行为是这样。

  • 我的非 root 管理员用户尝试了所有命令,他是wheel.
  • /etc/polkit-1/rules.d 似乎只包含一个默认规则集:

    # tail /etc/polkit-1/rules.d/*
    // DO NOT EDIT THIS FILE, it will be overwritten on update
    //
    // Default rules for polkit
    //
    // See the polkit(8) man page …
    Run Code Online (Sandbox Code Playgroud)

arch-linux polkit systemd

5
推荐指数
1
解决办法
3828
查看次数

标签 统计

arch-linux ×1

polkit ×1

systemd ×1