Як запустити додаток GUI як корінь для входу користувача?


12

Я хотів би запустити додаток Gnome з привілеями root при вході.

Я спробував додати сценарій для запуску з використанням update-rc.d myscript.sh defaults.

Схоже, що програма запускається, але її вже немає до моменту прибуття гнома-гуї.

Як я можу це зробити?

Відповіді:


12

Запуск графічних речей як кореня - погана ідея для безпеки, але я припускаю, що ви це знаєте, і що ви вичерпали будь-які інші методи. Вам потрібно зробити дві речі:

  1. Дозвольте користувачеві запускати команду через sudoбез редагування пароля /etc/sudoers. Тут ви можете знайти коротке пояснення, але шукаєте щось подібне:

    username ALL=(ALL:ALL) NOPASSWD:/path/to/command 
    

    Очевидно, замініть usernameі /path/to/commandсправжніми значеннями, вставте це там, а потім спробуйте sudo -k /path/to/command( -kсправедливий означає, що він запитає ваш пароль, якщо він не знає кращого - він не запитає, чи правильне редагування ваших судорів).

  2. Автоматично запустити свою програму через стандартні "Запуск програми", зателефонувавши sudo /path/to/command

І це все.


Якщо ввести ім'я користувача ALL = (ALL: ALL) NOPASSWD: / path / to / command in / etc / sudoers, sudo виходить з помилки розбору. ALL = NOPASSWD: / шлях / до / команда, здається, розбирається, але запитує мене, коли я запускаю команду.
бенлад

1
Отже, видається, що "ім'я користувача ALL = (ВСЕ) NOPASSWD: / шлях / до / команда" має бути останнім у файлі sudoers, а також "ім'я користувача ALL = (ALL: ALL) NOPASSWD: / path / to / command" не працює з Ubuntu 8.04.
бенлад

5

Ви можете спробувати створити користувальницьку програму запуску ( .desktopфайл) із gksudo <command>командою для запуску та додати цей лаучер до налаштувань автозапуску ( System - Settings - Autostartабо Startup). Іншим способом було б ввести .desktopфайл безпосередньо в ~/.config/autostart(або для всіх користувачів) /etc/xdg/autostart.

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