ssh-agent недоступен внутри schroot
Я использую schroot для создания некоторых пакетов развертывания, и между средой хоста и средой schroot много времени. Внутри schroot ssh-agent, похоже, недоступен, поэтому каждый раз, когда требуется ssh-ключ, меня просят ввести пароль.
Насколько я могу судить по этому http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=574723 ssh-agent должен работать.
Я пытался установить такие вещи, как SSH_AUTH_SOCK а также SSH_AGENT_PID, но хотя файл можно увидеть внутри chroot, ssh по-прежнему запрашивает ключевую фразу-пароль.
Я также попытался добавить скрипт сценария монтирования ssh в мой файл setup.d, но опять-таки он запрашивает фразу-пароль:
sudo cp /usr/share/doc/schroot/contrib/setup.d/10mount-ssh /etc/schroot/setup.d/
sudo chmod +x /etc/schroot/setup.d/10mount-ssh
Я также пытался переименовать 10mount-ssh сценарий для 11mount-ssh так что я знаю, что это произойдет после 10mount скрипт работает, но он все еще спрашивает.
Я нахожусь на raring, так что есть довольно актуальная версия Schroot.
2 ответа
Изменение вручную SSH_AUTH_SOCK у меня не работает, но флаг -p помогло в моем случае.
шаги:
- копия
10mount-sshкак ты. ssh-addна хостеschroot -p -c <chroot> --automatic-session, такchrootдолжны иметь те же переменные среды, что и хост (из-за-pфлаг).hg clone ssh://<login>@<host>:<repo>- команда (отchroot) не спрашивает пароль.
У меня была та же проблема, глядя на скрипт mount-ssh, он показывает, что ему нужны переменные среды, переданные либо с -p аргумент или установив preserve-environment=true в соответствующем профиле в schroot.conf,
Я также должен был раскомментировать /run привязать запись из /etc/schroot/[profile name]/fstab файл.