ubuntu12.04 ubuntu14.04安裝tftp,配置

ubuntu12.04 ubuntu14.04安裝tftp,配置

1:安裝服務,共3個服務

1 sudo apt-get install tftp-hpa tftpd-hpa xinetd 

2:新建配置文件 /etc/xinetd.d/tftp

1 sudo vim /etc/xinetd.d/tftp

注意:如果不是root用戶,則加sudo,否則系統不允許tftp,出現錯誤

"/etc/xinetd.d/tftp" E212: Can't open file for writing

修改/etc/xinetd.d/tftp內容爲:

複製代碼

 1 service tftp
 2 {
 3     disable = no
 4     socket_type = dgram
 5     protocol = udp
 6     wait = yes
 7     user = root
 8     server = /usr/sbin/in.tftpd
 9     server_args = -s /tftpboot -c
10     per_source = 11
11     cps = 100 2
12 }

複製代碼

注意:第九行中

server_args = -s /tftpboot -c

-c參數是允許上傳用的,參數/tftpboot則是你的tftp目錄,修改成你的目錄即可,但是筆者建議在根目錄下,方便

3:修改配置文件/etc/default/tftpd-hpa

 

1 sudo vim /etc/default/tftpd-hpa

 

 修改爲:

1 # /etc/default/tftpd-hpa
2 TFTP_USERNAME="tftp"
3 TFTP_DIRECTORY="/tftpboot " //改成你想要的那個tftpboot
4 TFTP_ADDRESS="0.0.0.0:69"
5 TFTP_OPTIONS="-l -c -s"        //這裏是選項

 

4:在根目錄下新建tftpboot目錄,並修改權限

1 mkdir /tftpboot
2 sudo chmod 777 -R  /tftpboot 

5:在/tftpboot中新建一個測試文件test

1 touch  test

6:【重要】重啓服務,修改配置文件的任何地方都要重啓服務

1 sudo /etc/init.d/xinetd reload
2 sudo /etc/init.d/xinetd restart
注意1,2針對ubuntu12.04(only), 
3 sudo service tftpd-hpa restart (need by ubuntu 14.04)

 

 7:測試服務tftp是否啓動

netstat -a|grep tftp

 

顯示 :

udp        0      0 *:tftp                  *:* 

 

則啓動服務了

8:測試tftp

進入另一個目錄【不是/tftpboot目錄,比如用戶jyg目錄】

cd /home/jyg

 

測試如圖:

9:出現錯誤:

  【錯誤】Error code 0: Permission denied,是因爲tftpboot文件夾沒有權限,或者是要上傳和下載的文件沒有權限。

  【解決】修改權限

sudo chmod 777 -R  /tftpboot

 

  【錯誤】Error code 1: File not found,原因1:指定的文件不存在;原因2:tftpd啓動參數中沒有指定-c選項;原因3:目錄有問題,因爲安裝的時候默認的tftp目錄是【/var/lib/tftpboot】,您可以把test文件放在這個目錄中重新測試一下,如果正確說明猜想是正確的。

  【解決】原因1和原因2都好解決,這裏只解決原因3:重啓服務或者重啓系統

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章