dwm – сессия polkit

Вопрос или проблема

Я действительно испытываю трудности с настройкой сессии polkit. Я не совсем знаком с тем, как это работает, но я использовал gnome до перехода на dwm, и в gnome это работало идеально, поэтому я хотел бы воспроизвести это. Прежде всего: Насколько я понял, polkit отвечает за предоставление временного повышения привилегий пользователю, требуя у него пароль суперпользователя. Это правильно? Как я могу воспроизвести это поведение без DE, но с WM, таким как dwm?

Я тоже использую dwm, у меня в файле .xinitrc есть polkit для автоматического запуска при входе в систему. Я использую xfce-polkit.

/usr/lib/xfce-polkit/xfce-polkit &

Например, я также использую Thunar в качестве файлового менеджера и настроил действие, которое вызывает сессию root Thunar с помощью pkexec.

Использование polkit даст вам такое же поведение DE с dwm.

Я не совсем понимаю ваш вопрос. Я также использую dwm, чтобы использовать программы polkit, такие как pkexec, насколько я знаю, сначала должен запуститься dbus-daemon. Согласно документации, polkitd не нужно запускать вручную. Так что не стоит волноваться об этом.

polkitd предоставляет сервис org.freedesktop.PolicyKit1 D-Bus на системной шине сообщений. Пользователям или администраторам никогда не нужно запускать этот демон, так как он будет автоматически запущен dbus-daemon(1) или systemd(1) всякий раз, когда приложение вызывает данный сервис.

Источник: https://www.freedesktop.org/software/polkit/docs/latest/polkitd.8.html

Просто добавляю еще один случай к ответу @Dobbie03.

В моем случае я перешел с KDE Plasma на DWM, поэтому у меня уже был установлен polkit-kde-authentication-agent.

Поскольку я использовал патч под названием “cool autostart”, мне нужно было просто добавить одну строку в конфигурацию и пересобрать DWM:

// config.def.h

// ... вырезано ...

static const char *const autostart[] = {
  "feh", "--bg-scale", "/home/snail/.local/wallpaper.png", NULL,
  // Эта строка!
  "/usr/lib/polkit-kde-authentication-agent-1", NULL,
    NULL /* завершение */
};

// ... вырезано ...

После этого запрос на ввод пароля появился в Dolphine так же, как это было в KDE.

Ответ или решение

Gnome и DWM: Настройка polkit для управления привилегиями

Если вы только что перешли с рабочего окружения Gnome на менеджер окон DWM, вы, возможно, столкнулись с трудностями в настройке системы управления привилегиями polkit. Данная система отвечает за временное повышение привилегий в Linux-системах, например, через запрос пароля администратора для выполнения определенных действий.

Что такое polkit?

polkit (PolicyKit) — это механизм, который позволяет управлять доступом к системным функциям, связанным с правами пользователей. Как правило, это подразумевает запрос пароля при попытке выполнения действий, требующих повышенных прав. В отличие от графических окружений, таких как Gnome или KDE, где эта функциональность интегрирована в систему, в DWM и других легковесных менеджерах окон необходимо выполнить несколько дополнительных шагов для ее настройки.

Настройка DWM для работы с polkit

  1. Убедитесь, что dbus-daemon запущен: Прежде всего, убедитесь, что dbus-daemon запущен при старте вашей сессии. Это можно сделать, добавив строку запуска в ваш файл .xinitrc. Например:

    eval $(dbus-launch --sh-syntax)
  2. Запустите агент аутентификации polkit: вам необходимо запустить соответствующий агент аутентификации polkit в вашей сессии. Если вы используете xfce, добавьте следующую строку в .xinitrc:

    /usr/lib/xfce-polkit/xfce-polkit &

    Если вы пользовались KDE Plasma, возможно, у вас уже установлен polkit-kde-authentication-agent. В этом случае вы можете добавить его в конфигурацию DWM, используя патч "cool autostart". Пример:

    static const char *const autostart[] = {
     "feh", "--bg-scale", "/home/user/.local/wallpaper.png", NULL,
     "/usr/lib/polkit-kde-authentication-agent-1", NULL,
     NULL /* terminate */
    };
  3. Используйте pkexec или другие инструменты: После настройки polkit, вы сможете пользоваться командами вроде pkexec для повышения привилегий. Например, если вы используете файловый менеджер Thunar и настроили пользовательское действие для открытия Thunar с правами суперпользователя, оно должно работать без проблем.

Убедитесь в функциональности

После внесения всех изменений стоит перезагрузить систему или перезапустить X11-сессию, чтобы убедиться в том, что всё работает корректно. Попробуйте выполнить действие, требующее прав администратора (например, открыть Thunar с помощью pkexec), и убедитесь, что появляется диалоговое окно для ввода пароля.

Заключение

Настройка polkit в DWM может показаться сложной, но следуя вышеуказанным шагам, вы сможете воспроизвести привычное поведение, которое вы имели в Gnome. Это позволит вам безопасно выполнять команды с повышенными правами, не беспокоясь о необходимости вручную запускать polkitd, так как он запускается автоматически с dbus-daemon.

Если будут возникать дополнительные вопросы или трудности, не стесняйтесь обращаться к сообществу или документации, чтобы получить необходимую поддержку.

Оцените материал
Добавить комментарий

Капча загружается...