답변:
그래픽 세션에 로그인하는 경우 세션 시작 ssh-agent
중에 시작하도록 준비 하십시오. 일부 배포판은 이미이를 수행합니다. 그렇지 않은 경우 ssh-agent
세션 시작 스크립트 또는 창 관리자에서 실행되도록 준비 하십시오. 이를 수행하는 방법은 데스크탑 환경과 창 관리자에 따라 다릅니다. 수동으로 윈도우 매니저를 시작하는 경우 예를 들어, 단순히 전화를 대체 my_favorite_wm
하여 ssh-agent my_favorite_wm
.
시작하지 마십시오 ssh-agent
에서 .bashrc
또는 .zshrc
이 파일은 각각의 새로운 대화 형 쉘에 의해 실행되기 때문에,. 시작하는 장소는 ssh-agent
같은 세션 시작 파일에 .profile
또는 .xsession
.
로그인 한 위치에 관계없이 모든 프로세스에서 동일한 SSH 에이전트를 사용하려면 임의로 이름이 지정된 소켓을 사용하는 대신 항상 동일한 소켓 이름을 사용하도록 할 수 있습니다. 예를 들어, 이것을 다음에 넣을 수 있습니다 ~/.profile
.
export SSH_AUTH_SOCK=~/.ssh/ssh-agent.$HOSTNAME.sock
ssh-add -l 2>/dev/null >/dev/null
if [ $? -ge 2 ]; then
ssh-agent -a "$SSH_AUTH_SOCK" >/dev/null
fi
이 정확한 목적을 위해 설계된 Keychain 과 같은 프로그램을 원할 것입니다. 매뉴얼 페이지에서 :
DESCRIPTION
keychain is a manager for ssh-agent, typically run from ~/.bash_profile.
It allows your shells and cron jobs to share a single ssh-agent process.
데스크탑 환경 또는 창 관리자에 적용하십시오. 과거에 custom을 사용하여 수동 으로이 작업을 수행했을 때 ~/.Xclients
마지막 행으로 사용했습니다.
ssh-agent mywindowmanger
KDE가 그렇지 않은 것처럼 보이지만 여기에는 자체 설정 옵션이있는 일부 DE가있을 수 있습니다. 현재는 광산에서 코드를 통해 실행 된 것으로 보인다 /etc/X11/xinit/xinitrc-common
관계없이 DE / WM의 모든 사용자에 대해 활성화되고 부모 프로세스의 명령이기 때문에, (페도라에 의해 수행 아마도 뭔가) $HOME/.Xclients
하지만 파일 참조를하지 않습니다 ssh-agent
(반면 /etc/X11/xinit/xinitrc-common
않습니다).
이 없으면 ~/.Xclients
한 줄로만 만들 수 있지만 DE / WM을 시작하는 명령을 알아야합니다.
$? -ge 2
종료 코드 1은 ssh-agent에 키가 없지만 ssh-agent가 이미 실행 중이기 때문입니다.