2018-11-22 :-|
_ 労
ストレージ労です。
_ [TFTP]TFTP を使う
サーバーをセットアップし、クライアントからファイルを設置/取得する。
サーバーセットアップ
NetBSD 8.0
ディレクトリを作ります。クライアントからファイルを設置できるように chmod します(他に設定が無いので chmod するしかなさそう)
mkdir -p /tftpboot chmod 777 /tftpboot
テキトーにファイルを設置。
cp /usr/pkgsrc/mk/bsd.pkg.mk /tftpboot/
/etc/inetd.conf の以下の行がコメントされてるので外します。
-c を追加します。これを追加しないとクライアントからファイルを新規に設置できません。
tftp dgram udp wait root /usr/libexec/tftpd tftpd -c -l -s /tftpboot
再起動
/etc/rc.d/inetd restart
クライアントからファイルを取得
テキトーな Linux です。tftp をインストールしておくこと。Arch Linux は tftp-hpa をインストールしました。
tftp 192.168.1.10 tftp> get bsd.pkg.mk tftp> quit
ファイルが正しいことを確認します。
サーバーで実行。
# openssl md5 /tftpboot/bsd.pkg.mk MD5(/tftpboot/bsd.pkg.mk)= 9bb2c92b9a13f3ab27b4184837c872b0
クライアントで実行。ダイジェストは同じですね。OK
% openssl md5 bsd.pkg.mk MD5(bsd.pkg.mk)= 9bb2c92b9a13f3ab27b4184837c872b0
クライアントからファイルを設置
% openssl md5 test.txt MD5(test.txt)= d8e8fca2dc0f896fd7cb4cb0031ba249
% tftp 192.168.1.10 tftp> put test.txt tftp> quit
サーバー側で実行。ダイジェストは同じですね。OK
# openssl md5 /tftpboot/test.txt MD5(/tftpboot/test.txt)= d8e8fca2dc0f896fd7cb4cb0031ba249
クライアントから tftp プロンプトに入らずに実行する
設置。
% tftp 172.19.200.136 -c put test.txt
取得。
% tftp 172.19.200.136 -c get test.txt
オプションはクライアントによって異なるので man で確認しましょう。ちなみに BSD tftp クライアントは必ずプロンプトに入らないといけないようです。tftp - NetBSD Manual Pages
また、busybox tftp もオプションが異なるもよう。Windows・Busyboxのtftpクライアントの使い方 - 新・日々録 by TRASH BOX@Eel