サブジェクト変えました。 # リプライが付いていますがリプライになっていないようです。 T.Kikuchi wrote: > vine linux 2.5で、SSH-2で、繋がるようにできたのですが、クライアントでパスフレ-ズを入力するのが面倒で > す。 > > 手持ちの本に、 > $ ssh-agent /bin/bash (SSHエ-ジェントを起動) > $ ssh-add ~/.ssh/id_dsa (SSHエ-ジェントにあらかじめ、復号化した鍵を記憶させる) > と、あり、上記2行目のコマンドで、Enter passphrase for /home/~/.ssh/id_dsa: > と出るので、パスフレ-ズを入力しました。 > > 以降は、パスフレ-ズを入力しなくても繋げる事が出来るようになりました。 > > しかし、ssh-add で記憶しているのは、このシェルの中のみ(あまりこの意味が良く分かりませんが)、との事 > で、$ su root などとした後、 > ~に戻ったときに、また最初からやり直さなければなりません。 そのようなことはありません。 su を抜けたら元のシェルに戻るのですから。 そのシェル (とその子孫) から起動したのではないアプリケーションには 有効にならないということです。 正確には、そのシェルとは、 ssh-agent で起動したシェルです。 > この為に、持っているこの本には、.xinitrcファイルに > ssh-add ~/.ssh/id_dsa < /dev/null > と記述しておけば良い、と書かれているのですが、この.xinitrcというファイルがどこに有るのか、findで探し > たのですが無いようなのです。 > > このファイルはどこに有るのでしょうか? > 宜しくお願いいたします。 ホームディレクトリにあるべき (というかそこにないと意味がない) ものです。なければ作ればいいのです。ないときに使われる デフォルトのファイル (/etc/X11/xinit/xinitrc) をコピーすれば 良いでしょう。 ですが、 Vine の xinitrc は、 .xsession か .Xclients があれば それを実行するようになっているので、ないときに使われるファイル (/etc/X11/xinit/Xclients) を .Xclients にコピーすれば良いです。 ところで、 X はどのようにして使っていますか? つまり、 run level 3 でテキストログインしてから startx しているのか、 run level 5 でグラフィカルログイン (wdm を使用) しているのか、です。 後者なら、 ssh-agent は自動的に使ってくれるようになっているので、 GNOME を使っている場合は、スクリプトを書き換えなくても、 [設定]-[セッション]-[Session Properties & Startup Programs] の「自動起動プログラム」タブで「追加」して ssh-add と入れれば、 ログイン時にパスフレーズ入力ダイアログが出てきて 鍵を追加してくれるようになります。 この方法がお薦めです。 それとも、 .xinitrc とか言っているということは前者なのでしょうか。 この場合は、 ssh-agent startx のように起動することになりますね。 GNOME の場合は同様にセッションの設定をすれば良いはずです。 特に理由がないなら wdm を使った方が良いと思いますが。 結論は、 GNOME なら自動起動プログラムに追加、 それ以外はわかりません。 # xinit 用と wdm 用の Xclients は全然違うのね…。 -- 西村 大介 <nishi@xxxxxxxxxxxxxxxxxxxxx> 東京大学大学院総合文化研究科広域システム科学系