搭建過無數次 tftp 服務器。因爲自己不喜歡做筆記,每一次都認爲下一次就不用折騰了, 結果每一次都費勁周折。這一次狠狠心總結一下。
每一次搭建基本都是靠百度搜索,發現有時候搜出好用,有的搜出來就不好用。我想原因不過有二。
一、 每個人搭建的平臺肯定是不同的。
我用的Linux 版本是 ubuntu16.04.
二、安裝的 tftp server 不同。
我在安裝 tftp server 的時候,發現有好幾個版本的 ttftp server。一個是tftpd, 另外一個是 tftpd-hpa。
到底改用哪一個呢?
當然每個都能用,但是必須不能搞混了。而且網上的資料都是這兩個版本的混雜,所以想我這樣不熟悉配置的人,基本懵逼了。
這兩個有什麼區別?這個靠百度—S*B, 是甭想知道了。下面是我收到的一句話:“tftp-hpa is an enhanced version of the BSD TFTP client and server. It possesses a number of bugfixes and enhancements over the original.”。也就是說 tftp-hpa 是 tftp 的一個加強版,所以我們最好選用 tftp-hpa 。
好了,廢話這麼多,現在說說怎樣搭建服務器吧。
一、基於 tftpd-hpa
1. 安裝
sudo apt-get install tftpd-hpa xinetd tftp
安裝完成後,可以通過 netstate 來檢測是否正常工作
$ netstat -a | grep tftp udp 0 0 *:tftp *:* udp6 0 0 [::]:tftp [::]:*
tftpd-hpa 的默認配置目錄是, /etc/default/tftpd-hpa
2. 修改配置文件
sudo vi /etc/default/tftpd-hpa
TFTP_OPTIONS="--secure"
change to
TFTP_OPTIONS="--secure --create"
3. 修改共享文件,重啓服務器
cd ~/tftpboot
touch test
echo "hello tftp!" > tftpboot
cd ..
sudo chown -R tftp tftpboot/ chmod -R 777 tftpboot/ sudo chmod -R 777 tftpboot/ sudo service tftpd-hpa restart
4. 在另外一臺機器上測試(前提兩天機器網絡必須聯通啊。。)
$ tftp 10.238.233.60 tftp> get test Received 13 bytes in 0.0 seconds tftp> quit $ ls test $ cat test hello tftp!
二、基於tftpd
待完善
3. 修改共享文件,重啓服務器
cd ~
sudo chown -R tftp tftpboot/ chmod -R 777 tftpboot/ sudo chmod -R 777 tftpboot/ sudo service tftpd-hpa restart