OpenSSH のRPM を作って入れ替え

Fedora のSRPM からOpenSSL をリビルドしてRHL9 に」 の後処理その1。うかつなことをするとどうなるか、というお話。
OpenSSL 入れ替え後、さてお次はOpenSSH の入れ替えしますか...、と思っていたのですが、ふとWinSCP でsftp 接続しようとしたところ、繋がりません。...ええっ!? なんかおかしいと思いつつ、sshd を再起動...しない。事態はさらに深刻に。つまり、今繋がってるセッションが切れたら最後、ってことですか? というわけで急遽予定を大幅に早めて入れ替え決行。
"openssh-3.9p1-chroot.tar.gz" をもらってきて...って、...えーと、wget も死んでます。幸い、FTPd が生きてたので、PC 側で落としてFTP で転送。wget 自体は適当にSRPM をもらってきてビルドしたら治ったので割愛。
SPEC ファイルは"contrib/redhat/openssh.spec" を使用しました。適当に、編集。Filezilla にはEUC<->SJIS 変換パッチ があるので、sftp-server SJISパッチ は不要になりました。フォルダ名を変えるためだけにいったん解凍して再度固めています。


# tar xvzf openssh-3.9p1-chroot.tar.gz
# mv openssh-3.9p1-chroot openssh-3.9p1
# cp openssh-3.9p1/contrib/redhat/openssh.spec /usr/src/redhat/SPECS/
# tar cvzf openssh-3.9p1.tar.gz openssh-3.9p1/
# emacs /usr/src/redhat/SPECS/openssh.spec
# rpmbuild -ba --target i686 /usr/src/redhat/SPECS/openssh.spec

で、アップグレードしてsshd を再起動。


# rpm -Uvh /usr/src/redhat/RPMS/i686/openssh-3.9p1-1rh9.i686.rpm /usr/src/redhat/RPMS/i686/openssh-clients-3.9p1-1rh9.i686.rpm /usr/src/redhat/RPMS/i686/openssh-server-3.9p1-1rh9.i686.rpm
# /etc/rc.d/init.d/sshd restart

ここで強制的にウィンドウが閉じるので、再度接続...繋がりませんようわー。半泣きになりながらコンソールからログイン、sshd を起動させて事なきを得る。ほっ。SSH の入れ替えもなかなかスリリングですなぁ。