Подтвердить что ты не робот

Capistrano висит при запросе пароля SUDO в поле Ubuntu

У меня есть рецепт развертывания capistrano, который я использовал в течение некоторого времени для развертывания своего веб-приложения, а затем перезапустите apache/nginx, используя команду sudo. В последнее время развертывание оболочки развертывается, когда я пытаюсь выполнить эти команды sudo. Я вижу результат: "[sudo] пароль для" С именем моего сервера и удаленным входом в систему, но это не безопасное приглашение для входа в систему. Крышка оболочки просто висит, ожидая большего выхода и не позволяет мне вводить мой пароль для завершения команды удаленного sudo.

Есть ли способ исправить эту или достойную работу? Я не хотел удалять запрос пароля sudo моего удаленного пользователя для команд веб-перезапуска.

4b9b3361

Ответ 1

Это, похоже, происходит при подключении к компьютерам CentOS. Добавьте в файл развертывания capistrano следующую строку:

default_run_options[:pty] = true

Также не забудьте использовать sudo помощник вместо выполнения sudo в ваших командах запуска напрямую. Например:

# not
run "sudo chown root:root /etc/my.cnf"

# but
sudo "chown root:root /etc/my.cnf"

Ответ 2

Другие советы могут звучать, но я обнаружил, что как только я обновился до Capistrano 2.5.3, проблема исчезла. Я должен удостовериться, что перестаю использовать стандартные версии инструментов, которые поставляются с моим O/S.

Ответ 3

# prevent sudo prompting for password
set :sudo_prompt, ""