Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

  1. Создать файл /etc/polkit-1/rules.d/10-default.rules с правилом:
    Блок кода
    polkit.addRule(function(action, subject) {
        if (action.id == "org.freedesktop.policykit.exec") {
            polkit.log("action=" + action);
            polkit.log("subject=" + subject);
        }
    });
    где org.freedesktop.policykit.exec – название действия, соответствующего команде pkexec.
  2. Разрешить службе polkitd выводить в системный журнал отладочные сообщения.
    Для этого в файле systemd-юнита /usr/lib/systemd/system/polkit.service убрать из значения параметра ExecStart опцию --no-debug:
    Блок кода
    [Unit]
    Description=Authorization Manager
    Documentation=man:polkit(8)
    
    [Service]
    Type=dbus
    BusName=org.freedesktop.PolicyKit1
    ExecStart=/usr/lib/polkit-1/polkitd  --min-ilev-auth-admin=max
  3. Перечитать настройки системного менеджера systemd, чтобы служба polkitd "подхватила" удаление опции --no-debug:
    Command

    sudo systemctl daemon-reload

  4. Перезапустить службу polkitd, чтобы она начала выводить отладочные сообщения в системный журнал:
    Command

    sudo systemctl restart polkit

  5. Запустить команду:
    Command

    pkexec -u administrator echo "test"

  6. В системном журнале появятся записи о действии "action=..." и о пользователе "subject=...":
    Блок кода
    сен 22 12:51:44 astra-28739 polkitd[7867]: action=[Action id='org.freedesktop.policykit.exec' program='/usr/bin/echo' user.display='administrator' command_line='/usr/bin/echo test' user='administrator' polkit.message='Authentication is needed to run `$(program)' as user $(user.display)' polkit.gettext_domain='polkit-1' user.gecos='']
    сен 22 12:51:44 astra-28739 polkitd[7867]: subject=[Subject pid=4297 user='administrator' groups=administrator,tty,dialout,cdrom,floppy,audio,dip,video,plugdev,users,netdev,lpadmin,scanner,astra-admin,astra-console seat=null session='7' local=false active=true]

...