Я використовую Trisquel GNU / Linux-Libre, який поставляється з Gnome3 Flashback Desktop Environment.
Я знаю, що я можу запустити програму GUI як root на sudo&, gksudoале я хочу знати, що як запустити програми GUI як root за допомогою pkexec?
Коли я намагаюся запустити gedit(або будь-яку іншу програму на зразок nautilus:), pkexec geditтоді він запитає пароль для автентифікації: -

Після введення пароля вихід із помилкою: -
$ pkexec gedit
error: XDG_RUNTIME_DIR not set in the environment.
(gedit:6135): Gtk-WARNING **: cannot open display:
Тож, здається, щось не вдається із середовищем відображення.
Я також пробував, DISPLAY=:0 pkexec geditале не працює.
Наступна інформація доступна від man pkexec: -
Навколишнє середовище, в якому його запустить PROGRAM, буде встановлено на мінімально відоме та безпечне середовище, щоб уникнути введення коду через LD_LIBRARY_PATH або подібні механізми. Крім того, змінна середовища PKEXEC_UID встановлюється ідентифікатором користувача процесу, що викликає pkexec. Як результат, pkexec не дозволить запускати програми X11 як інший користувач, оскільки змінні середовища $ DISPLAY та $ XAUTHORITY не встановлені. Ці дві змінні будуть збережені, якщо анотація org.freedesktop.policykit.exec.allow_gui про дію встановлена на порожнє значення; це, однак, не перешкоджає використанню лише для застарілих програм.
Зараз я не знаю, що робити для цього.
Таким чином, допоможіть мені з'ясувати, як запускати програми GUI як root за допомогою pkexec. Або це можливо чи ні?
BTW, натхненний gparted-pkexecкомандою, яка чудово працює. Як gpartedкористуватися pkexec?