玄箱HGのdebian化
ホームストレージとして使われていた玄箱HGがメインサーバの入れ替えに伴って使えなくなっていたが、やっと時間ができたので復活。
当初80GByteでデフォルトのまま適当に使っていたが、いろいろと企んでいた事をそろそろ決行すんべと、Debian化。
フラッシュメモリも入れ替えようかと思っていたのだが、シリアルもJTAGも製作が面倒なので、ふつーのDebian化で妥協。
作業は90Hさんところの記録を参考に(というかそのまま)行った。
HDD換装
当初の稼動から1年くらい経過して埃をだいぶ吸い込んでいるので完全分解。やっばり潮風の影響かUSBコネクタは錆の予感。インジケータが黄ばんでいる感じだったのでイソプロピルアルコールで清浄。HDDは250GByteのものに交換。HGSTだったかな。
Debianイメージの確保
Genbako kernel collectionから取得したイメージがどうも壊れているっぽくて(MD5が違う)こっちの環境の問題かもしれないけど、ミラーサイトから取得しなおし。
EMモードでの玄箱HG起動
電源を入れ、Powerが点灯に変わるのを待ってから、付属CD-ROMのファームウェアアップデータを起動。正常にEMモードで、DHCPを参照して、まともなIPアドレスで起動できている事を確認。
何も考えずにHDDを交換してしまったが、無事EMモードで起動できていて良かった。
ハック開始。
telnetにてroot/kuroadminでログイン。
# /sbin/mfdisk -e /dev/hda # sh /sbin/mkfilesystem.sh
無事にフォーマットもできたので、telnetはそのままftpで取得しておいたイメージファイルを/mnt2/shareに転送。
debian-sarge-2.6.17.3-kuroHG-20060702.tgz
kernelimage-2.6.20-kuroHG.tgz
modules-2.6.20-kuroHG.tgz
続いてそれを展開
# cd /mnt # tar zxvf /mnt2/share/debian-sarge-2.6.17.3-kuroHG-20060702.tgz
で、すぐに再起動せずにIPアドレスとかはまともなものを設定しておく。具体的には
- /etc/network/interfaces
- /etc/hosts
- /etc/hosts.allow
- /etc/resolv.conf
を修正する。それから再起動。
# /usr/bin/write_ok # reboot
そして祈る。
sarge化確認、カーネル2.6.20化
とりあえずtelnetでtmp-kun/tmp/kunでアクセスきる事を確認したら、rootのパスワード(root)を変更、tmp-kunユーザ削除。
ちなみにtelnetなのでrootはアクセスできず、tmp-kunユーザでしかアクセスできない状態。だからadduserして、そのユーザでログインしてsuしないとtmp-kunは削除できない。めんどー。
で、カーネルを更新。
# cd /boot # tar zxvf /mnt/share/kernelimage-2.6.20-kuroHG.tgz # reboot
# cd /lib/modules # tar zxvf /mnt/share/modules-2.6.20-kuroHG.tgz # depmod -a # reboot
パッケージ更新
/etc/apt/sources.listを修正。
deb http://security.debian.org sarge/updates main contrib non-free deb http://cdn.debian.or.jp/debian/ sarge main contrib non-free deb-src http://cdn.debian.or.jp/debian/ sarge main contrib non-free
個人的好みでプライオリティレベルをlowに。(質問が増えるけど)
# dpkg-reconfigure debconf
で、アップデート。と思ったが、下界にアクセスできん。30分悩んでファイアウォールの設定を修正。(自分でセキュリティのためにアクセス禁止してたんだったよ)
# apt-get update # apt-get upgrade # reboot
etch化
/etc/apt/sources.listを修正。
deb http://security.debian.org etch/updates main contrib non-free deb http://cdn.debian.or.jp/debian/ etch main contrib non-free deb-src http://cdn.debian.or.jp/debian/ etch main contrib non-free
# apt-get update # apt-get -u dist-upgrade
いくつか聞かれるが、基本デフォルトでいいはず。ただ、/etc/init.d/haltと/etc/init.d/rebootの上書きについて聞かれるので、これは「新しいファイルで上書き」としておく。更新後にそれを修正。
/etc/init.d/halt
PATH=/sbin:/usr/sbin:/bin:/usr/bin + # KURO-BOX AVR force shutdown + echo -n "EEEE" > /dev/ttyS1 + [ -f /etc/default/halt ] && . /etc/default/halt
/etc/init.d/reboot
PATH=/sbin:/usr/sbin:/bin:/usr/bin + # KURO-BOX AVR force reboot + echo -n "CCCC" > /dev/ttyS1 + [ -f /etc/default/halt ] && . /etc/default/halt
# reboot
祈る。
etch基本設定
一通りetch化を祝った後、環境設定。
- /etc/sysctl.conf
- net.ipv4.ip_local_port_rangeあたりを設定しておく
- /etc/default/rcS
- 好みだがUTC=noに。
- /etc/networks
- localnetとか追加。
最低限必要なツールをインストール。
- ssh
- PasswordAuthentication yesに修正
- sudo
- visudoでユーザの設定をしておく
- vim
- /etc/vim/vimrc.localに俺設定を追加。
- ntpdate, ntpd
- 適当に設定
- locales
- en_US ISO-8859-1, ja_JP.EUC-JP EUC-JP, ja_JP.UTF-8 UTF-8を追加。UTF-8をデフォルトに。
その他の設定。
# update-alternatives --all
時間切れなので、後日に持ち越し。あとはsambaとかftpとかcvsとかpamとかldapとかbindとかhttpとかdavとかだけかな。(多いって)