thers аналогичный вопрос. Как я могу определить, работает ли shell-скрипт как root или нет?
У меня такое же сомнение с другим результатом
Возможно ли, , в рамках сценария BASH перед тем, что выполняется, проверьте, запущен ли сценарий как суперпользователь, а если нет, напечатайте сообщение, в котором вы должны быть суперпользователем, чтобы использовать этот скрипт, а затем
получить пропуск от пользователь, используя askpass или что-то в этом роде, выполняет тот же скрипт, что и суперпользователь?
это не работает, хотя Лекенштейн прав.
вы должны установить переменную равную выходу id -u
ID=$(id -u) if [ $ID != 0 ] then sudo "$0" "$@" exit fi
, если вы используете echo для вывода this script requires root permissions, который будет отображаться каждый раз, когда пользователь, отличный от root (начиная с id = 0), запускает скрипт независимо от того, нужны ли ему права root, поэтому просто сохраняйте его простым.