Я створив новий обліковий запис користувача для друга на Kubuntu 12.04. Під час використання sshвін отримує цю помилку:
Не вдалося відкрити з'єднання з вашим агентом аутентифікації
Ми працюємо sshв деяких сценаріях bash.
Оглянувши широке розмаїття речей, які можуть призвести до цієї помилки, я натрапив на таке рішення:
$ eval `ssh-agent -s`
$ ssh-add ~/.ssh/some_id_rsa
Тоді він може запускати sshкоманди (та скрипки скриптів), як очікувалося.
Перед запуском цих двох команд змінні env не встановлюються в терміналі:
$ echo $SSH_AGENT_PID
$ echo $SSH_AUTH_SOCK
$
Після запуску команд змінні env встановлюються як очікувалося. Однак вони не залишаються встановленими (наприклад, в іншій оболонці або після перезавантаження).
Я хочу знати, як налаштувати його комп’ютер, щоб він не мав запускати ці дві команди для встановлення змінних env. Мені не потрібно запускати їх на своєму комп’ютері (ніколи). Поки що я не бачу, що відрізняється між нашими машинами.
Я бачу цю інформацію на сторінці "man", але вона не говорить мені про те, як Ubuntu зазвичай автоматично налаштовує агент або що відбувається на машині мого друга, так що це не працює для нього.
Є два основні способи налаштування агента: Перший полягає в тому, що агент запускає нову підкоманду, в яку експортуються деякі змінні середовища, наприклад, ssh-agent xterm &. Друга полягає в тому, що агент друкує необхідні команди оболонки (може бути сформований синтаксис sh (1) або csh (1)), які можуть бути отримані в оболонці виклику, наприклад, eval
ssh-agent -sдля оболонок типу Bourne, таких як sh (1) або ksh (1) та evalssh-agent -cдля csh (1) та похідних.
Після встановлення acctта перезавантаження це вихід lastcomm:
ssh-agent F newuser __ 0.12 secs Wed Aug 7 11:02
ssh-agent F newuser __ 0.00 secs Wed Aug 7 20:34
ssh-agent F newuser __ 0.02 secs Wed Aug 7 20:02
ssh-agent F newuser __ 0.01 secs Thu Aug 8 12:39
ssh-agent F newuser __ 0.02 secs Thu Aug 8 07:45
На чоловіковій сторінці:
F - команда, що виконується після вилки, але без наступного виконання
Я не впевнений, чи це важливо.
X11/Xsession.options:use-ssh-agentі X11/Xsession.d/90x11-common_ssh-agent:SSHAGENT=/usr/bin/ssh-agent. Спробую acctі lastcommдалі. Спасибі
lastcommдля повного сеансу, а не лише ssh-agentпроцесу. Сенс полягає в тому, щоб побачити в якому порядку запускаються різні програми.
ssh-agentяк правило, починається з/etc/X11/Xsession.d/90x11-common_ssh-agent. Це можна придушити, видалившиuse-ssh-agentз/etc/X11/Xsession. Правильні ці файли? Агент запускається, а потім вбивається чи ніколи не починається? (Встановітьacctта запустітьlastcommпісля входу в систему, щоб побачити, які програми запущені.)