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