Назад | Перейти на главную страницу

Выполнение команды как пользователь без логина

Я недавно настроил свой сервер, чтобы мои виртуальные пользователи suPHP не могли войти в систему с помощью Эта статья

Моя проблема сейчас в том, что раньше, когда я запускал rake для моего приложения Ruby on Rails, запущенного на сервере, я использовал su идти в www-data и выполните команду оттуда - очевидно, я больше не могу этого делать из-за nologin.

Итак, как пользователь root, как я могу выполнять команды от имени другого пользователя, даже если они не логин?

Один из способов - запустить оболочку для этого пользователя (явно указав оболочку):

sudo -u www-data bash 

Это запустит оболочку (bash) от имени указанного пользователя. Затем вы можете выполнить свои команды и выйти из системы (чтобы вернуться в предыдущую оболочку)

В качестве root вы можете использовать su -s /bin/sh $user- в -s опция отменяет настроенную оболочку для пользователя.