Как выполнить скрипт в качестве суперпользователя, сначала проверив пользователя и получив пропуск от askpass, если не суперпользователь

thers аналогичный вопрос. Как я могу определить, работает ли shell-скрипт как root или нет?

У меня такое же сомнение с другим результатом

Возможно ли, , в рамках сценария BASH перед тем, что выполняется, проверьте, запущен ли сценарий как суперпользователь, а если нет, напечатайте сообщение, в котором вы должны быть суперпользователем, чтобы использовать этот скрипт, а затем

получить пропуск от пользователь, используя askpass или что-то в этом роде, выполняет тот же скрипт, что и суперпользователь?

1
задан 13 April 2017 в 15:23

1 ответ

это не работает, хотя Лекенштейн прав.

вы должны установить переменную равную выходу id -u

ID=$(id -u) if [ $ID != 0 ] then sudo "$0" "$@" exit fi

, если вы используете echo для вывода this script requires root permissions, который будет отображаться каждый раз, когда пользователь, отличный от root (начиная с id = 0), запускает скрипт независимо от того, нужны ли ему права root, поэтому просто сохраняйте его простым.

-1
ответ дан 25 May 2018 в 22:34

Другие вопросы по тегам:

Похожие вопросы: