ubuntu 12.04搭建tftp服務器的安裝、設置、調試
第一步:先說明一下ubuntu默認root是禁用的,所以先要創建root用戶,這樣以後不用再sudo了:
$ su root
輸入密碼獲取獲取管理員賬戶操作
www.2cto.com
第二步:安裝服務
安裝tftp-hpa tftpd-hpa xinetd
# apt-get install tftp-hpa tftpd-hpa xinetd
第三步:在創建文件夾/tftpboot (這個是服務器的文件交換目錄,將來客戶機獲取服務器文件時就是從這個文件夾中獲取的),並且修改這個文件夾的權限為777
#mkdir /tftpboot
#chmod -R 777 /tftpboot
www.2cto.com
第四步:修改tftp配置文件,如果沒有就創建,我喜歡用vim
#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 //此處文件目錄就是上面說道的服務器文件交換目錄
source = 11
cps = 100 2
flags =IPv4
}
第五步:修改inetd.conf文件
# vim /etc/inetd.conf
一般這個文件在打開的時候裡面是有內容的,只要在最後添加下面內容即可:
tftp dgram udp wait nobody /usr/sbin/tcpd
/usr/sbin/in.tftpd /tftpboot //此處文件目錄就是上面說道的服務器文件交換目錄
第六步:修改tftpd-hpa文件
# 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"
第七步:重啟服務
# service tftpd-hpa restart
# sudo /etc/init.d/xinetd reload
# sudo /etc/init.d/xinetd restart
第八步:本地測試
(1)在/tftpboot 下創建測試文件test,並修改test的文件權限
#cd /tftpboot
#touch test
#chmod 777 test
(2)測試一下 tftp服務:
#cd /
#tftp 127.0.0.1
tftp>get test
tftp>q
#ls
查看當前目錄,發現test 文件已在當前目錄,此時tftp搭建成功!
附:tftp與ftp的區別
TFTP是一個傳輸文件的簡單協議,它其於UDP協議而實現,但是我們也不能確定有些TFTP協議是基於其它傳輸協議完成的。此協議設計的時候是進行小文件傳輸的。因此它不具備通常的FTP的許多功能,它只能從文件服務器上獲得或寫入文件,不能列出目錄,不進行認證,它傳輸8位數據。傳輸中有三種模式:netascii,這是8位的ASCII碼形式,另一種是octet,這是8位源數據類型;最後一種mail已經不再支持,它將返回的數據直接返回給用戶而不是保存為文件。