2012年10月4日木曜日

tftp サーバー on Ubuntu12.04.1

Ubuntu 12.04.1 に tftp サーバーを入れた時のメモ。

$ sudo apt-get install tftpd

設定ファイルが /etc/xinetd.d/tftp にあるはず、、なのに何も作ってくれてない。

そこで、 RHEL マシンから設定ファイルを持ってきた。

/etc/xinetd.d/tftp


# default: off
# description: The tftp server serves files using the trivial file transfer \
#       protocol.  The tftp protocol is often used to boot diskless \
#       workstations, download configuration files to network-aware printers, \
#       and to start the installation process for some operating systems.
service tftp
{
        disable = no
        socket_type             = dgram
        protocol                = udp
        wait                    = yes
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -s /var/lib/tftpboot
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}


一箇所ハマった点。
tftp はデフォルトではクライアントからの put での新規ファイル作成はできないようになっている。
(すでに存在するファイルへの上書きはできる。)
そこで、以下のように -c をつけておくと、新規作成もできるはず、、

        server_args             = -c -s /var/lib/tftpboot
RHEL ではこれでうまくいったが、Ubuntu だと、 -c がついていると、get も put も 「Transfer timed out」になってしまって、さっぱり動きません。
セキュリティ上の配慮なんでしょうか。。

というわけで、新規作成はあきらめることにしました。
とりあえず一番やりたいことは、 u-boot からの kernel ダウンロードだから、get さえできれば、ひとまずはOKです。

0 件のコメント:

コメントを投稿