Polkitの使用

Polkitの使用

Ubuntu 14.04 の最後のアップデート以降、ラップトップのスリープ ボタンを押すと、「システムをサスペンドするには認証が必要です」というポップアップ ウィンドウが表示されます。

カバーを閉じるときにパスワードは要求されません。ただし、別のモニターが接続されている場合は機能しません。

このパスワードプロンプトを回避するために設定できるものはありますか (sudoers または他の場所で)?

答え1

  1. コマンドラインで以下を実行します:

    locate -b org.freedesktop.login1.policy
    

    見つかったファイルは

    /usr/share/polkit-1/actions/org.freedesktop.login1.policy
    
  2. ファイル内の行の近く

    <action id="org.freedesktop.login1.suspend">
    

    これらを確認してください:

    <defaults>
        <allow_any>yes</allow_any>
        <allow_inactive>yes</allow_inactive>
        <allow_active>yes</allow_active>
    </defaults>
    

ソース

答え2

Polkitの使用

users自分をグループに追加する

sudo usermod -aG users "$USER"

必要があるリブート以下の手順に従ってコンピューターを再起動してください。

1. PolKitバージョンが0.106以上の場合

Polkit のバージョンは次の方法で確認できます:pkaction --version

PolKitバージョン<0.106の場合、いいえ .rulesこれらの Polkit バージョンには Javascript インタープリターがないため、ファイルは保存されますが、古いファイル .pklaとファイルのみ保存されます。.conf

次のファイル/etc/polkit-1/rules.d/85-suspend.rulesを追加するだけです:

polkit.addRule(function(action, subject) {
    if (action.id == "org.freedesktop.login1.suspend" &&
        subject.isInGroup("users")) {
        return polkit.Result.YES;
    }
});

ターミナルで次のように入力します:

sudo chmod 755 /etc/polkit-1/rules.d
sudo chmod 644 /etc/polkit-1/rules.d/85-suspend.rules

2. PolKitバージョン<0.106の場合

この場合、次/var/lib/polkit-1/localauthority/50-local.d/50-enable-suspend-on-lockscreen.pklaのファイルを追加します:

[Allow suspending in lockscreen]
Identity=unix-group:users
Action=org.freedesktop.login1.suspend
ResultAny=yes
ResultInactive=yes
ResultActive=yes

bash で次のように入力します:

sudo chmod 644 /var/lib/polkit-1/localauthority/50-local.d/50-enable-suspend-on-lockscreen.pkla

pklocalauthority の詳細

電源マネージャー設定を使用する(動作するかどうかは不明)

XFCE パワーマネージャーの場合:

  1. タブの下Security:

    • Automatically lock the sessionに設定一度もない
    • チェックLock the screen when the system is going for sleep
  2. タブの下でDisplay、15 分後に画面を空白にします。無効にする (グレー表示する) 時間をSleep 設定します。Switch off
  3. タブの下でSystem、システムのスリープ モードをSuspend30 分後に設定します。

参考文献:

関連情報