ubuntu下搭建tftp伺服器

2021-06-28 11:12:52 字數 1845 閱讀 1188

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:~$ sudo apt-get install xinetd

安裝tftp和tftpd:

ky@ubuntu:~$ sudo apt-get install tftp tftpd

或者安裝tftp的增強版本tftp-hpa:

ky@ubuntu:~$ sudo apt-get install tftp-hpa tftpd-hpa

建立配置檔案。建立/etc/xinetd.d/tftp檔案,寫入如下內容:

service tftp

其中server_args設定的/var/tftpboot目錄是tftp伺服器的目錄,設定其訪問許可權為777:

ky@ubuntu:~$ sudo mkdir -pv  /var/tftpboot/

ky@ubuntu:~$ sudo chmod 777 /var/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$ tftp 80008000 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 is 192.168.1.5

filename 'zimage'.

load address: 0x80008000

loading: #################################

done

bytes transferred = 479927 (752b7 hex)

說明:(1)使用開發板與

虛擬機器安裝的客戶

系統進行tftp通訊,需要將虛擬網絡卡設定為bridged模式,並建議使用靜態ip位址。

(2)如果以上設定都確認無誤,但tftp還是不成功,請檢查主機的防火牆是否已經關閉。

ubuntu下搭建tftp服務

tftp安裝與建立 1.安裝xinetd sudo apt get install xinetd xinetd是乙個系統守護程式,它取代inetd用於控制tcp,udp的連線。2.安裝tftp,tftpd sudo apt get install tftp hpa tftpd hpa linux下的...

Ubuntu下tftp服務搭建

1 安裝軟體包 sudo apt get install tftpd tftp xinetd 2 建立配置檔案 在 etc xinetd.d 下建立乙個配置檔案tftp sudo vi etc xinetd.d tftp 內容如下 service tftp socket type dgram pro...

Ubuntu下tftp服務搭建

1 安裝軟體包 sudo apt get install tftpd tftp xinetd 2 建立配置檔案 在 etc xinetd.d 下建立乙個配置檔案tftp sudo vi etc xinetd.d tftp 內容如下 service tftp 3 建立tftp服務檔案目錄 sudo m...