tftp サーバの引っ越し

Debian

これまで LinkStation を tftp ブートするための tftp サーバとして、旧形 LS-GL をを使っていた。

ファームウェアサーバを Squeeze をインストールした LS-QL に引っ越しするにあたり、 tftp サーバも LS-QL に引っ越しする。

ファイルの引っ越し

LS-GL の /srv を LS-QL に rsync でコピーする。

/etc/rsyncd.conf の修正

LS-GL の /etc/rsyncd.conf を修正する。
[srv]
        path = /srv
        hosts allow = 192.168.2.0/24

引っ越し

yasunari@qube:~$ cd /mnt/disk1/
yasunari@qube:/mnt/disk1$ mkdir srv
yasunari@qube:/mnt/disk1$ cd srv
yasunari@qube:/mnt/disk1/srv$ rsync -rtuvpogDtlH rsync://ude/srv .
	:
	:

192.168.11.1 の引っ越し

Buffalo の tftp サーバのデフォルト IP アドレスを LS-GL から LS-QL に引っ越しする。

LS-GL で設定をはずす

ude:~# cd /etc/network
ude:/etc/network# diff interfaces.orig interfaces
25a26,31
>
> auto eth0:0
> iface eth0:0 inet static
>       address 192.168.11.1
>       network 192.168.11.0
>       netmask 255.255.255.0
ude:/etc/network# mv interfaces.orig interfaces
ude:/etc/network#
LS-GL はシャットダウン

LS-QL に設定

root@qube:~# cd /etc/network
root@qube:/etc/network# mv interfaces{,.orig}
root@qube:/etc/network# cp interfaces{.orig,}
root@qube:/etc/network# vi interfaces
	:
	:
root@qube:/etc/network# !cp:s/cp/diff -c/
diff -c interfaces{.orig,}
*** interfaces.orig     Tue Jan 11 23:51:34 2011
--- interfaces  Fri Jan 21 22:46:30 2011
***************
*** 23,25 ****
--- 23,31 ----
        netmask 255.255.255.0
        broadcast  192.168.2.255
        gateway 192.168.2.1
+
+ auto eth0:0
+ iface eth0:0 inet static
+       address 192.168.11.1
+       network 192.168.11.0
+       netmask 255.255.255.0
root@qube:/etc/network# cd
root@qube:~# ifup eth0:0
root@qube:~# ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:1d:73:a5:32:33
          inet addr:192.168.2.50  Bcast:192.168.2.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:251335 errors:0 dropped:0 overruns:0 frame:0
          TX packets:93751 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:256
          RX bytes:366678187 (349.6 MiB)  TX bytes:6845510 (6.5 MiB)
          Interrupt:21

eth0:0    Link encap:Ethernet  HWaddr 00:1d:73:a5:32:33
          inet addr:192.168.11.1  Bcast:192.168.11.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:21

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:20 errors:0 dropped:0 overruns:0 frame:0
          TX packets:20 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:1608 (1.5 KiB)  TX bytes:1608 (1.5 KiB)

root@qube:~#

tftpd のインストール

root@qube:~# apt-get install tftpd
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
  tftpd
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 16.7 kB of archives.
After this operation, 81.9 kB of additional disk space will be used.
Get:1 http://ftp.jp.debian.org/debian/ squeeze/main tftpd armel 0.17-18 [16.7 kB]
Fetched 16.7 kB in 0s (29.5 kB/s)
Selecting previously deselected package tftpd.
(Reading database ... 11477 files and directories currently installed.)
Unpacking tftpd (from .../tftpd_0.17-18_armel.deb) ...
Processing triggers for man-db ...
Setting up tftpd (0.17-18) ...
/var/run/inetd.pid does not have a valid pid!Please investigate and restart inetd manually.!root@qube:~#
/var/run/inetd.pid が変?
root@qube:~# cat /var/run/inetd.pid
808
root@qube:~# ps ax | grep 808
  808 ?        S      0:00 /usr/sbin/inetutils-inetd
 1336 pts/0    R+     0:00 grep 808
root@qube:~#
おかしくないように見えるけど、、、
root@qube:~# kill -HUP `cat /var/run/inetd.pid `
root@qube:~#

inetd.conf の確認

root@qube:~# grep tftp /etc/inetd.conf
tftp            dgram   udp     wait    nobody  /usr/sbin/tcpd  /usr/sbin/in.tftpd /srv/tftp
root@qube:~#
OK

/srv の用意

root@qube:~# ln -s /mnt/disk1/srv/ /
ln: creating symbolic link `/srv': File exists
root@qube:~# ls /srv/
root@qube:~# mv /srv{,.orig}
root@qube:~# !ln
ln -s /mnt/disk1/srv/ /
root@qube:~#

確認

LS-XHL を tftp boot してみる

boot ファイルの準備

yasunari@qube:~$ cd /mnt/disk1/srv/tftp/
yasunari@qube:/mnt/disk1/srv/tftp$ ls
HS-DHGL_1.20   LS-CL_1.11         LS-QL_1.10b         SheevaPlug_1.2
LS-CHL_1.10    LS-GL_1.15         LS-WSGL_1.06        TS-WXL_1.06
LS-CHL_1.20    LS-HGL_1.07b       LS-XHL_1.02         initrd.buffalo
LS-CHL_1.21    LS-LGL_2.01        LS-XHL_1.02+telnet  uImage.buffalo
LS-CL+HackKit  LS-QL_1.05+telnet  LS-XHL_1.04b
LS-CL_1.07     LS-QL_1.07b        LS-XHL_1.10
yasunari@qube:/mnt/disk1/srv/tftp$ rm initrd.buffalo uImage.buffalo
yasunari@qube:/mnt/disk1/srv/tftp$ ln LS-XHL_1.10/* .
yasunari@qube:/mnt/disk1/srv/tftp$ ls -l
total 10776
drwxr-sr-x 2 yasunari yamasita      48 Mar 22  2009 HS-DHGL_1.20
drwxr-sr-x 2 yasunari yamasita      48 May 27  2009 LS-CHL_1.10
drwxr-sr-x 2 yasunari yamasita      48 Oct 21  2009 LS-CHL_1.20
drwxr-sr-x 2 yasunari yamasita      48 Oct  4  2009 LS-CHL_1.21
drwxrwxr-x 2 yasunari yamasita      48 Jan 24  2009 LS-CL+HackKit
drwxr-sr-x 2 yasunari yamasita      48 Mar 23  2009 LS-CL_1.07
drwxr-sr-x 2 yasunari yamasita      48 Oct 22  2009 LS-CL_1.11
drwxrwsr-x 2 yasunari yamasita      48 Mar 20  2009 LS-GL_1.15
drwxr-sr-x 2 yasunari yamasita      48 Mar 23  2009 LS-HGL_1.07b
drwxr-sr-x 2 yasunari yamasita      48 Mar 23  2009 LS-LGL_2.01
drwxrwxr-x 2 yasunari yamasita      48 Feb 20  2009 LS-QL_1.05+telnet
drwxr-sr-x 2 yasunari yamasita      48 Mar 27  2009 LS-QL_1.07b
drwxr-sr-x 2 yasunari yamasita      48 Jun  6  2009 LS-QL_1.10b
drwxr-sr-x 2 yasunari yamasita      48 Mar 25  2009 LS-WSGL_1.06
drwxrwxr-x 2 yasunari yamasita      48 Jan 24  2009 LS-XHL_1.02
drwxrwxr-x 2 yasunari yamasita      64 Jan 24  2009 LS-XHL_1.02+telnet
drwxr-sr-x 2 yasunari yamasita      48 Mar 27  2009 LS-XHL_1.04b
drwxr-sr-x 2 yasunari yamasita      48 May 22  2009 LS-XHL_1.10
drwxr-sr-x 2 yasunari yamasita      54 Oct  4  2009 SheevaPlug_1.2
drwxr-sr-x 2 yasunari yamasita      48 Jan 17  2010 TS-WXL_1.06
-rw-r--r-- 2 yasunari yamasita 8944729 May 22  2009 initrd.buffalo
-rw-r--r-- 2 yasunari yamasita 2088760 May 22  2009 uImage.buffalo
yasunari@qube:/mnt/disk1/srv/tftp$

LS-XHL を boot

LS-XHL にパーティションを削除した HDD をセットして 電源 ON.
E06 で止まる。

ファンクションSWを押す
LS-XHL の LED が 青の速点滅になり、 LS-QL の 192.168.11.1 側にアクセスしに来る。

Jan 21 23:26:00 qube in.tftpd[1487]: connect from 192.168.11.150 (192.168.11.150)
Jan 21 23:26:00 qube tftpd[1488]: tftpd: trying to get file: uImage.buffalo
Jan 21 23:26:00 qube tftpd[1488]: tftpd: serving file from /srv/tftp
Jan 21 23:26:01 qube in.tftpd[1489]: connect from 192.168.11.150 (192.168.11.150)
Jan 21 23:26:01 qube tftpd[1490]: tftpd: trying to get file: initrd.buffalo
Jan 21 23:26:01 qube tftpd[1490]: tftpd: serving file from /srv/tftp

LS-XHL の LED は青点灯に変った。

いけてそう





Squeeze のインストール(25)lenny からのバージョンアップ
ハックの記録
LinkStation/玄箱 をハックしよう

地デジ化(1)リモコンの学習

Copyright (C) 2003-2011 Yasunari Yamashita. All Rights Reserved.
yasunari @ yamasita.jp 山下康成@京都府向日市