1.1搭建tftp伺服器
tftp(trivial file transfer protocol,簡單檔案傳輸協議),是乙個基於udp協議實現的用於在客戶機和伺服器之間進行簡單檔案傳輸的協議,適合於開銷不大、不複雜的應用場合。tftp協議專門為小檔案傳輸而設計,只能從伺服器上獲取檔案,或者向伺服器寫入檔案,不能列出目錄,也不能進行認證。
在嵌入式linux開發中,tftp協議在很多場合都被用到,甚至是必不可少的,特別是在核心除錯階段,在u-boot下通過tftp協議從伺服器上載入核心並執行,既方便又快捷。
一般的發行版預設都沒有安裝tftp服務以及tftp伺服器。tftp服務依賴於網路守護程序服務程式,可選擇安裝inetd或者公升級版的xinetd,然後安裝tftp和tftp-server,接著修改或者建立/etc/xinetd.d/tftp配置檔案,最後重啟xinetd,啟動tftp服務。無論採用什麼發行版,tftp伺服器的安裝都是這樣的流程,只不過不同發行版的安裝命令不同而已,下面以ubuntu為例進行說明。
安裝xinetd:
ky@ubuntu:~$sudoapt-get install xinetd
安裝tftp和tftpd:
ky@ubuntu:~$sudoapt-get install tftp tftpd
或者安裝tftp的增強版本tftp-hpa:
ky@ubuntu:~$sudo apt-get install tftp-hpa tftpd-hpa
建立配置檔案。建立/etc/xinetd.d/tftp檔案,寫入如下內容:
service tftp
socket_type = dgram
protocol = udp
wait = yes
user = root
server =/usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot/
disable = no
per_source = 11
cps = 100 2
flags =ipv4
其中server_args設定的/var/lib/tftpboot目錄是tftp伺服器的目錄,設定其訪問許可權為777:
ky@ubuntu:~$sudochmod 777 /var/lib/tftpboot/
啟動或者重啟xinetd服務:
ky@ubuntu:~$sudo/etc/init.d/xinetd start或者restart
本機測試。在/tftpboot目錄下建立乙個ky檔案,啟動另外乙個終端,輸入:
ky@ubuntu:~$ tftp 127.0.0.1
tftp> get ky #獲取ky檔案
tftp> q #退出tftp
在終端輸入ls命令,可以看到當前目錄下看到ftp獲取到的ky檔案。
用開發板來驗證tftp伺服器是否可用。啟動開發板,進入u-boot命令列,用tftp命令載入tftp伺服器中的檔案,如:
u-boot$tftp80008000 zimage
enet:auto-negotiation complete
enet:link status up
enet:full duplex
enet:100mbase
mac: 00:61:62:69:6e:67
tftp from server 192.168.1.3; our ip address is192.168.1.5
filename 'zimage'.
load address: 0x80008000
loading: #################################
done
bytes transferred = 479927 (752b7 hex)
說明:(1)使用開發板與虛擬機器安裝的客戶系統進行tftp通訊,需要將虛擬網絡卡設定為bridged模式,並建議使用靜態ip位址。
(2)如果以上設定都確認無誤,但tftp還是不成功,請檢查主機的防火牆是否已經關閉。
Ubuntu下建立tftp伺服器
1 安裝程式 sudo apt get install tftp tftpd sudo apt get install openbsd inetd 2 新建資料夾 cd sudo mkdir tftpboot sudo chmod 777 tftpboot 3 修改存放目錄 sudo vi etc ...
ubuntu下搭建tftp伺服器
1.1 搭建tftp 伺服器tftp trivial file transfer protocol 簡單檔案傳輸協議 是乙個基於 udp協議實現的用於在客戶機和伺服器之間進行簡單檔案傳輸的協議,適合於開銷不大 不複雜的應用場合。tftp 協議專門為小檔案傳輸而設計,只能從伺服器上獲取檔案,或者向伺服...
Ubuntu下建立tftp伺服器
安裝tftp的服務端和客戶端 sudo apt get install tftpd hpa 安裝tftp服務端 sudo apt get install tftp hpa 安裝tftp客戶端 2.安裝xinetd sudo apt get install xinetd 3.在 下建立tftpboot...