/bin /etc /home /lib /root /sbin /usr /var /wwwをハックキットへのシンボリックリンクにしてみることにする。
/dev /lost+found /mnt /proc /tmpはオリジナルのまま使う。
# rm -fr /bin # ln -s /mnt/Hackkit/bin /binと、
心配してても仕方ないので、とりあえず手操作でやってみる。
まずは、不要なプロセスの終了から
root@SECO:~# cd / root@SECO:/# /etc/rc.d/init.d/atalk stop Stop servecies: atalkd afpd Can't unregister SECO:Workstation@* Can't unregister SECO:netatalk@* /etc/rc.d/rc2.d/S90atalk: line 7: 150 Terminated /usr/sbin/atalkd -f /etc/atalk/atalkd.conf root@SECO:/# /etc/rc.d/init.d/smb stop Stop services: smbd nmbd root@SECO:/# /etc/rc.d/init.d/cron stop Stopping periodic command scheduler: cron. root@SECO:/# /etc/rc.d/init.d/thttpd stop Stop services: thttpd root@SECO:/# /etc/rc.d/init.d/inetd stop Stopping internet superserver: inetd. root@SECO:/# /etc/rc.d/init.d/syslog stop Stopping system log daemon: klogd syslogd. root@SECO:/# kill `cat /var/run/apservd-eth0.pid ` root@SECO:/# /etc/rc.d/init.d/networking stop Deconfiguration network interface: lo eth0 dhcpcd[73]: terminating on signal 1 root@SECO:/# /etc/rc.d/init.d/atalk stop Stop servecies: atalkd afpd Can't unregister SECO:Workstation@* Can't unregister SECO:netatalk@* root@SECO:/# ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 5.4 1.0 1448 644 ? S 01:05 0:05 init root 2 0.0 0.0 0 0 ? SW 01:05 0:00 [keventd] root 3 0.0 0.0 0 0 ? SWN 01:05 0:00 [ksoftirqd_CPU0] root 4 0.0 0.0 0 0 ? SW 01:05 0:00 [kswapd] root 5 0.0 0.0 0 0 ? SW 01:05 0:00 [bdflush] root 6 0.0 0.0 0 0 ? SW 01:05 0:00 [kupdated] root 35 0.0 0.0 0 0 ? SW 01:05 0:00 [kreiserfsd] root 157 0.0 0.7 1408 480 ? S 01:05 0:00 /usr/sbin/ppc_uar root 160 0.1 2.5 2756 1604 ttyS0 S 01:05 0:00 -bash root 243 0.0 1.4 2800 920 ttyS0 R 01:07 0:00 ps aux続いてシステムの置き換え
root@SECO:/# rm -fr /bin root@SECO:/# ln -s /mnt/HackKit/bin / bash: ln: command not found/bin を mv してしまったので、/bin/ln がない。 ハックキット内の ln を使う
root@SECO:/# /mnt/HackKit/bin/ln -s /mnt/HackKit/bin / root@SECO:/# rm -fr etc root@SECO:/# ln -s /mnt/HackKit/etc / root@SECO:/# rm -fr home root@SECO:/# ln -s /mnt/HackKit/home / root@SECO:/# rm -fr lib root@SECO:/# ln -s /mnt/HackKit/lib / bash: /bin/ln: No such file or directory root@SECO:/# ls bash: /bin/ls: No such file or directory/lib を消してしてしまったので、共有ライブラリがない。
root@SECO:~# export LD_LIBRARY_PATH=/mnt/HackKit/lib
root@SECO:~# /mnt/HackKit/usr/bin/ldd /bin/ln
libc.so.6 => /mnt/HackKit/lib/libc.so.6 (0x0fe9e000)
/lib/ld.so.1 => /lib/ld.so.1 (0x30000000)
root@SECO:~#
/lib/ld.so.1 を要求している。これではだめ。[root@SECO root]# file /mnt/HackKit/sbin/ln /mnt/HackKit/sbin/ln: can't stat `/mnt/HackKit/sbin/ln' (No such file or directory).だった、、、、、でも、/sbin/sln というのを見つけた。
[root@SECO root]# file /mnt/HackKit/sbin/sln /mnt/HackKit/sbin/sln: ELF 32-bit MSB executable, PowerPC or cisco 4500, version 1, for GNU/Linux 2.2.5, statically linked,strippedこれは使えそう
root@SECO:/# /mnt/HackKit/sbin/sln /mnt/HackKit/lib /lib
root@SECO:/# rm -fr root
root@SECO:/# /mnt/HackKit/sbin/sln /mnt/HackKit/root /root
root@SECO:/# rm -fr sbin
root@SECO:/# /mnt/HackKit/sbin/sln /mnt/HackKit/sbin /sbin
root@SECO:/# rm -fr usr
root@SECO:/# /mnt/HackKit/sbin/sln /mnt/HackKit/usr /usr
root@SECO:/# rm -fr var
root@SECO:/# /mnt/HackKit/sbin/sln /mnt/HackKit/var /var
root@SECO:/# rm -fr www
root@SECO:/# /mnt/HackKit/sbin/sln /mnt/HackKit/www /www
root@SECO:/# touch /fastboot
root@SECO:/# ls -l /
total 6
lrwxrwxrwx 1 root root 16 Jun 18 02:52 bin -> /mnt/HackKit/bin
drwxrwxr-x 3 root root 3072 Jun 18 02:52 dev
lrwxrwxrwx 1 root root 16 Jun 18 02:52 etc -> /mnt/HackKit/etc
-rw-r--r-- 1 root root 0 Jun 18 02:52 fastboot
lrwxrwxrwx 1 root root 17 Jun 18 02:52 home -> /mnt/HackKit/home
lrwxrwxrwx 1 root root 16 Jun 18 02:52 lib -> /mnt/HackKit/lib
drwxr-xr-x 2 root root 1024 Feb 20 2002 lost+found
drwxr-xr-x 6 root root 200 Jun 18 02:39 mnt
dr-xr-xr-x 23 root root 0 Jun 18 02:52 proc
lrwxrwxrwx 1 root root 17 Jun 18 02:52 root -> /mnt/HackKit/root
lrwxrwxrwx 1 root root 17 Jun 18 02:52 sbin -> /mnt/HackKit/sbin
drwxrwxrwx 2 root root 1024 Jun 18 02:52 tmp
lrwxrwxrwx 1 root root 16 Jun 18 02:52 usr -> /mnt/HackKit/usr
lrwxrwxrwx 1 root root 16 Jun 18 02:52 var -> /mnt/HackKit/var
lrwxrwxrwx 1 root root 16 Jun 18 02:52 www -> /mnt/HackKit/www
oot@SECO:/# /etc/rc.d/rc.sysinit
Welcome to Vine Linux
Press 'I' to enter interactive startup.
Mounting proc filesystem: mount: proc already mounted
[FAILED]
Configuring kernel parameters: [ OK ]
hwclock: ioctl() to /dev/rtc to turn on update interrupts failed unexpectedly, errno=515: Unknown error 515.
Setting clock (localtime): Fri Jun 18 03:04:09 JST 2004 [ OK ]
Activating swap partitions: [ OK ]
Setting hostname hackkit: [ OK ]
modprobe: Can't open dependencies file /lib/modules/2.4.17_mvl21-sandpoint/modules.dep (No such file or directory)
modprobe: Can't open dependencies file /lib/modules/2.4.17_mvl21-sandpoint/modules.dep (No such file or directory)
modprobe: Can't open dependencies file /lib/modules/2.4.17_mvl21-sandpoint/modules.dep (No such file or directory)
Mounting local filesystems: mount: none already mounted or /dev/pts busy
[FAILED]
Enabling local filesystem quotas: [ OK ]
Enabling swap space: [ OK ]
/sbin/mkkerneldoth: /boot/kernel.h: No such file or directory
/bin/cat: /proc/modules: No such file or directory
/bin/cat: /proc/ksyms: No such file or directory
root@SECO:/# telinit 3
INIT: Switching to runlevel: 3
root@SECO:/# Setting network parameters: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface eth0: [ OK ]
Starting system logger: [ OK ]
Starting kernel logger: [ OK ]
Initializing random number generator: [ OK ]
Mounting other filesystems: mount: none already mounted or /dev/pts busy
[FAILED]
Starting INET services: [ OK ]
Starting keytable: [ OK ]
Starting crond: [ OK ]
Starting atd: [ OK ]
root@SECO:/#
いっぱいエラーは出ているけど、いけたっぽい!
#と、簡単に書いているけど、
#このページを書くのに数十回の電源リセットが必要だったことは内緒
| ← | LinkStation/玄箱 をハックしよう | → HD-120LAN samba の rebuild でテスト |