Все мы прекрасно знаем, что для переключения пользователя есть su и sudo. Но не все знают про команду runuser.

Эта команда используется в скриптах, системных процессах, cron-задачах и в контексте служб, которые запускаются с привилегиями root. А самое главное — не требует ввода пароля.

Пример:

runuser -u roman -- id

Ну и важно посмотреть help, чтобы жонглировать ключами. Там тебе и проброс shell, сохранение или очистка переменных, псевдотерминалы и т. п.

В скриптах предпочтительнее использовать именно runuser, чем везде пихать su.

Роман Шубин
Роман Шубин
CEO & CTO, Главред в «Цифровой улей»
Задать вопрос
Если у тебя нет привилегий root и нужно выполнить команду от имени другого пользователя, su для этого подходит лучше.

А чем отличается su от sudo — плюс это двойное тире — я писал в этом посте.

Такие дела, изучайте…