Відповіді:
su
не є користувачем , програма для запуску наступних команд / програм під іншою ідентифікацією іншого користувача, ніж той, що виконує команду. Це дуже схоже на sudo
те, що стосується.
Якщо інший користувач не вказаний, обидві команди за замовчуванням виконують команду під альтернативною ідентифікацією root
користувача, суперпользователя / адміністратора.
Основна відмінність su
і sudo
полягає в тому, що:
su
вимагає, щоб ви знали пароль цього альтернативного користувача, деsudo
запропонує sudo
ввести пароль користувача, який виконує команду, і вимагає налаштування, щоб користувач міг запускати запитувані команди / програми.(Коли root
запускається su
або sudo
не потрібен пароль.)
Як і будь-який сценарій ініціалізації, то /etc/rc.local
скрипт виповнюється root
користувачем , і вам не потрібно препендом або su
або sudo
до команд / програм , які потрібно запускати з правами адміністратора.
Можливо, вам потрібно буде використовувати su
або sudo
у своїх сценаріях init, якщо ці команди потрібно виконувати не якroot
інший обліковий запис користувача / послуги ...
su -
oracle
/do/something/as/oracle/user
Так, всі сценарії та програми безпосередньо викликаються коренем.
Викликається /etc/rc.local
файл безпосередньо методом init.
sudo
перед командами /etc/rc.local
?