Существует сценарий оболочки (/ bin / sh, а не bash), для выполнения которого требуются права root.
Если он запускается обычным пользователем, он должен запросить пароль у пользователя, чтобы получить root-права, и перезапустить себя.
Теперь он использует следующий код:
if [ $(id -u) -ne 0 ]; then su root -- $0 $@ ; ... fi
Это прекрасно работает, но есть такие ОС, как Ubuntu, у которых вообще нет пароля root. С другой стороны, многие системы используют sudo для корневых разрешений.
Вопрос в том, как скрипт может определить, использовать ли su
или sudo
, не прося пользователя ввести слишком много паролей (например, введите sudo
пароль, если не получится - запустите su
).