天天看點

Ubuntu12.04安裝配置tftp服務,以及錯誤解決

tftp服務,安裝起來很簡單,但是由于配置起來時的粗心導緻出現一些錯誤,Error code 0: Permission denied,Error code 1: File not found

經過探索,tftpd-hpa 是一個功能增強的TFTP伺服器。它提供了很多TFTP的增強功能,它已經被移植到大多數的現代UNIX系統

安裝tftp-hpa(用戶端),   tftpd-hpa(服務端), xinetd(是什麼)

1、安裝

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

2、在建立檔案夾/tftpboot (這個是伺服器的檔案交換目錄,将來客戶機擷取伺服器檔案時就是從這個檔案夾中擷取的,并且修改這個檔案夾的權限為777)

sudo mkdir tftpboot
sudo chmod 777 -R tftpboot
           

3、修改tftp配置檔案,如果沒有就建立

sudo vim /etc/xinetd.d/tftp

檔案内容為:

service tftp

{

disable = no

socket_type = dgram

protocol = udp

wait = yes

user = root

server = /usr/sbin/in.tftpd

server_args = -s /tftpboot -c   -c參數是允許上傳用的,參數/tftpboot則是你的tftp目錄,修改成你的目錄即可

source = 11

cps = 100 2

flags =IPv4

}

4、修改inetd.conf檔案

sudo vim /etc/inetd.conf

一般這個檔案在打開的時候裡面是有内容的,隻要在最後添加下面内容即可:

tftp dgram udp wait nobody /usr/sbin/tcpd

/usr/sbin/in.tftpd /tftpboot //此處檔案目錄就是上面說道的伺服器檔案交換目錄

5、修改tftpd-hpa檔案

sudo vim /etc/default/tftpd-hpa

内容為:

#RUN_DAEMON="no"

#OPTIONS="-s /home/zyp/tftpboot -c -p -U tftpd"

TFTP_USERNAME="tftp"

TFTP_DIRECTORY="/tftpboot"       //此處檔案目錄就是上面說道的伺服器檔案交換目錄

TFTP_ADDRESS="0.0.0.0:69"

TFTP_OPTIONS="-l -c -s"    //這裡是選項

6、重新開機服務

sudo service tftpd-hpa restart

sudo /etc/init.d/xinetd reload

sudo /etc/init.d/xinetd restart

7、測試服務tftp是否啟動

  netstat -a|grep tftp

  顯示 :

  udp 0 0 *:tftp *:*

  則啟動服務了

8、測試tftp

出現下面成功

Ubuntu12.04安裝配置tftp服務,以及錯誤解決

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:重新開機服務或者重新開機系統

10、xinetd是什麼?

xinetd即extended internet daemon,xinetd是新一代的網絡守護程序服務程式,又叫超級Internet伺服器。經常用來管理多種輕量級Internet服務。xinetd提供類似于inetd+tcp_wrapper的功能,但是更加強大和安全。

繼續閱讀