Коли я повинен використовувати pkexec, а коли sudo -i?


21

Я написав відповідь, радивши використовувати sudo -i nautilus. Я знаю, що gksuце застаріло , і в мене склалося враження, що sudo -iми повинні запускати графічні програми як корінь, не вбиваючи кошенят , але хтось прокоментував " pkexecце нове gksu". Я розумію, що pkexecце не те саме, що використовувати будь-яку форму sudo:

Коли використовувати pkexec vs gksu / gksudo?

і вимагає налаштування, особливо для використання з графічними програмами:

Як налаштувати pkexec?

Коли я sudo -iвсе роблю, завжди працює, то чому я повинен іти на проблему з налаштуванням pkexec? Я бачу, що для написання сценарію, який запускає щось як root, мені потрібно це зробити:

Чи можу я використовувати pkexec у файлі Python Script або .desktop?

Але в іншому випадку, що я отримую від використання pkexec? Коли я повинен використовувати ці команди? Яка на даний момент найкраща практика для відкриття графічних додатків як root?

(Я вже читав ... manсторінки, але я не відчуваю себе мудрішим.)


5
Я особисто ігнорую депресію і завжди встановлюю gksuв будь-якій системі для запуску програм GUI, gksudoякщо потрібно. Більш нічого.
Командир байтів

1
Пов’язано: Ця стара публікація з мета пройшла відповідну дискусію, і найпопулярніша відповідь запропонована sudo -i- безпечне рішення; Але не дуже пояснено pkexec.
clearkimura

1
У разі використання текстових редакторів GUI для редагування файлів як root, а як щодо використання sudoedit(AKA sudo -e)?
edwinksl

1
@edwinksl ти мав на увазі, що ти можеш встановити графічний редактор за замовчуванням sudoedit? Цікава ідея
Zanna

1
@Zanna Так, див ., Наприклад , unix.stackexchange.com/a/356443/6949
edwinksl

Відповіді:


2

Основне використання те саме - ці програми дозволяють запускати інші програми як інший користувач, як правило, root. Однак різниця між sudoваріантами і в pkexecтому, що sudoдає програмі повний контроль над усім, тоді як у pkexecвас є набагато більш тонкий контроль за допомогою визначення політики для кожної програми.

Якщо ви довіряєте запущеним програмам, судо ідеально чудово. Якщо ви хочете дійсно заблокувати все та дозволити програмам робити лише те, що ви їм дозволяєте, тоді використовуйте pkexecце разом із polkit .

Хоча ідея позаду pkexecприємна, я б не пішов так далеко, як називати її наступною gksu, через необхідний складний настрій.

Довідка: різниця між sudo та pkexec у Quora .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.