導入

ぷらっとホームのディスクイメージには本当に最小限のものしか入ってないし、 入ってても中途半端なbuildの仕方をしてたり(apacheとか)で、結局ソースから コンパイルしている。作業自体は問題無いのだが、後になってわけわからん。やはりきちんとパッケージ管理してもらわないと。

ということで、調べてみると、 Debianのディスクイメージを発見。 早速これをもらってきてインストール。つーか、ディスクイメージだから 展開して、カーネルをフラッシュ・メモリに書き込むだけだ。フラッシュ・ メモリ書き換えちゃうとinitrdから起動できなくなっちゃわないのかなー、 という一抹の不安があるが、構わず続行。rcを見るとちゃんとネットワーク 初期化してるし、inetdも起動してるし、まぁ、OSさえ上がれば後はどうにでも なるでしょ。ダメだったら工場出荷時に戻せばいいんだし。んで、reboot。 LEDの6が異様に長いが、やがて反復横飛びに。OSは立ち上がったらしい。 試してみるか。おっ、pingは通る。telnetは?

 Connection refused

ん? へ? あ゛ーーー、telnetポートが開いてないーーー! 何度rebootしても一緒だ。仕方ない、リセットして工場出荷時に戻すか。 う、え゛、戻らないの? フラッシュ書き換えたせい? しょぼーん...

ますます引き返せない状況にはまりまくりだが、とにかく現状復帰しないと 二日間の作業どころかOpenBlockSの投資自体が無駄になってしまう。 考え得る復旧策は、

1)TFTPでファームウェアを書き戻す
完全に作業前に戻すにはこれが確実。でもTFTPの環境を用意する必要あり。
2)OSは正常に起動しているであろうと仮定しコンソールからログインして環境設定
家にはRS-232Cのクロスケーブルなんか無い。会社にもあるかどうか... そもそもOSが立ち上がってない可能性も。
3)ディスクをノートPCに入れて直接書き換える
これもOSは起動している前提。

というわけで、今すぐ試せるのは3しかない。

ディスクを取り出してThinkPadに取り付け、Knoppixで起動する、ディスクを マウントして中身を見る。/mnt/usr/sbin/*telnet*, /mnt/sbin/*telnet*, find /mnt -print | grep telnet... 無い。そもそもtelnetdが入ってないのだ。 何で? コンソールの作業前提か? んがーーー。いきなりtelnetdが動くと セキュリティ的にまずいってこと? telnetdくらい入れといてくれよ... 仕方ないので、バックアップしておいた元々の環境をディスクに戻す。 当然ファームウェアはDebian用のものに書き変わったままなので 確実に動くという見込みは無かったのだが、もはや試せることはそれしかない。 結果は無事に復旧。クロスのシリアルケーブルを手にいれないといけないのか?

気をとりなおして作業続行。 telnetdさえ動けば後はどうにでもなるはずってことで、もらってきた ディスクイメージにtelnetdだけインストールしてみることにした。telnetdだけ とは言え、せっかくのパッケージ管理は壊したくないので、chrootして きちんとパッケージでインストール。

 # mkdir root; cd root
 # tar zxpf ../debian-obss-2002-04-05.tar.gz
 # export PATH=/usr/sbin:/sbin:/usr/local/sbin:$PATH
 # mount -t proc /proc /proc
 # echo "nameserver 192.168.253.1" > /etc/resolv.conf
 # apt-get update
 # apt-get install telnetd

rootログインは拒否してるかもしれないのでログインできるユーザと home directoryを追加。これでリモートログインできると思うのだが...

帰宅後、再びディスクをThinkPadにmountして、Debianイメージをboot diskに 展開、電源を入れる。起動成功。リナザウからtelnet...

Debian GNU/Linux 3.0 obs
LinuxServer login: 

やったーー!!! 苦節3日、ついにOpenBlockSのDebian化に成功。

この時点でのパッケージは以下の通り。

adduser        3.47           
apt            0.5.4          
apt-utils      0.5.4          
at             3.1.8-11       
base-config    1.33.13        
base-files     3.0.2          
base-passwd    3.4.1          
bash           2.05a-9        
bsdmainutils   5.20020211-4   
bsdutils       2.11n-4        
console-common 0.7.13         
console-data   1999.08.29-24  
console-tools  0.2.3-23.3     
console-tools- 0.2.3-23.3     
cpio           2.4.2-39       
cron           3.0pl1-72      
debconf        1.0.31         
debianutils    1.16           
dhcp-client    2.0pl5-7       
diff           2.7-29         
dpkg           1.9.20         
e2fsprogs      1.27-2         
ed             0.2-19         
exim           3.35-1         
fileutils      4.1-10         
findutils      4.1.7-2        
gettext-base   0.10.40-4      
grep           2.4.2-3        
groff-base     1.17.2-15.wood 
gzip           1.3.2-3        
hostname       2.09           
ifupdown       0.6.4-4        
info           4.1-2          
ipchains       1.3.10-14      
iptables       1.2.5-7        
klogd          1.4.1-10       
libc6          2.2.5-4        
libcap1        1.10-12        
libdb2         2.7.7.0-5      
libdb3         3.2.9-15       
libgdbmg1      1.7.3-27       
libident       0.22-2         
libldap2       2.0.23-3       
liblockfile1   1.03           
libncurses5    5.2.20020112a- 
libnewt0       0.50.17-9.5    
libpam-modules 0.72-35        
libpam-runtime 0.72-35        
libpam0g       0.72-35        
libpcap0       0.6.2-2        
libpcre3       3.4-1.1        
libperl5.6     5.6.1-7        
libpopt0       1.6.2-7        
libreadline4   4.2a-5         
libsasl7       1.5.27-3       
libstdc++2.10- 2.95.4-5       
libwrap0       7.6-9          
login          20000902-8     
logrotate      3.5.9-7        
mailx          8.1.2-0.200109 
makedev        2.3.1-58       
man-db         2.3.20-18      
manpages       1.39-1.1       
mawk           1.3.3-8        
modconf        0.2.42         
modutils       2.4.15-1       
mount          2.11n-4        
nano           1.0.6-2        
ncurses-base   5.2.20020112a- 
ncurses-bin    5.2.20020112a- 
net-tools      1.60-4         
netbase        4.07           
netkit-inetd   0.10-9         
netkit-ping    0.10-9         
nvi            1.79-20        
passwd         20000902-8     
pciutils       2.1.9-4        
perl-base      5.6.1-7        
ppp            2.4.1.uus-4    
pppconfig      2.0.14         
pppoe          3.3-1.1        
pppoeconf      0.9.10.5       
procps         2.0.7-8        
psmisc         20.2-2.1       
sed            3.02-8         
setserial      2.17-24        
shellutils     2.0.11-11      
slang1         1.4.4-7.2      
sysklogd       1.4.1-10       
sysvinit       2.84-2         
tar            1.13.25-2      
tasksel        1.18           
tcpd           7.6-9          
telnet         0.17-17        
telnetd        0.17-18woody2  
textutils      2.0-12         
util-linux     2.11n-4        
whiptail       0.50.17-9.5    
Last modified: 2011-03-20 by Unknown