проблема
При работе apt-get install
в неинтерактивном сеансе SSH сеанс никогда не закрывается. Пример:
ssh user@target "sudo apt-get -y install my_package"
Он my_package
действительно установлен правильно, но сессия SSH просто болтается.
Вопрос
Есть ли флаг для прохождения SSH, чтобы попасть apt-get
на работу?
Дополнительная информация
контекст
Удаленная установка используется для автоматического развертывания пакета на сервере интеграции. Как только мы вносим некоторые изменения кода в репозиторий, задание извлекает код, создает пакет и развертывает его при интеграции, чтобы проверить, что все работает хорошо (с точки зрения развертывания).
Уже пробовал и заметки
- Тот же самый сеанс SSH, выполняющийся,
apt-get update
закрывается чисто. Обратите внимание, чтоapt-get update
не является интерактивным, аapt-get install
есть. Это может свидетельствовать о том, что интерактивность является проблемой. - Команда как
ssh user@target "sudo apt-get install my_package && echo Hello"
никогда не достигаетecho
. debconf
жалуется, что не может найти хороший внешний интерфейс (Display, Readline) и возвращается к Teletype (хотя Readline доступен).- Что касается внешнего интерфейса debconf, переход
-t
на TTY с SSH не помогает. Ни одинDEBIAN_FRONTEND=noninteractive
. - Все было сделано на Ubuntu 12_04 LTS.
ssh user@target
команды из оболочки), она работает правильно?