server服務器配置
方法1:
# mkdir /gliethttp_tftpd_dir
# cp /bin/busybox /gliethttp_tftpd_dir
# udpsvd -vE 0 69 tftpd -c /gliethttp_tftpd_dir &
// 上面的0表示對所有ip地址都進行偵聽
// 如果設置為127.0.0.1那麼只能開發板本地arm可以進行ftp
// 比如開發板eth0的的ip地址設為192.168.1.102,那麼就不能通過該ip登錄
// 所以上面指定ip等於0,那麼無論來自127.0.0.1還是192.168.1.102網絡地址的
// 數據都能使用tftpd服務器.
// 參數-c表示允許client客戶端上傳文件到/gliethttp_tftpd_dir根目錄[luther.gliethttp]
方法2:
# mkdir /gliethttp_tftpd_dir
# cp /bin/busybox /gliethttp_tftpd_dir
# vi /etc/inetd.conf
69 dgram udp nowait root tftpd tftpd -c /gliethttp_tftpd_dir
# inetd                 // inetd會執行/etc/inetd.conf腳本中的命令行,這樣ftpd就作為daemon運行到起來了
(注意:以上2種方式運行的tftpd都不會在ps中看到tftpd進程的運行)


在pc上執行如下測試 (注意:必須使用i386版本busybox的tftp程序才可以進行數據傳輸,
ubuntu 8.10上默認的tftp因為封包協議問題不能工作,將提示:Error code 0: malformed packet)

1.將pc上的gliethttp.c文件put到arm開發板tftpd的根目錄下,並且重命名為gliethttp.pc.c
luther@gliethttp:~$ busybox tftp -l gliethttp.c -r gliethttp.pc.c -p 192.168.1.102
2.將arm開發板tftpd根目錄下的busybox拷貝到pc上,重命名為busybox.arm
luther@gliethttp:~$ busybox tftp -l busybox.arm -r busybox -p 192.168.1.102
luther@gliethttp:~$ ll busybox.arm
-rw-r--r-- 1 ubuntu ubuntu 808K 2009-08-21 12:41 busybox.arm


# tftp
BusyBox v1.14.3 (2009-08-10 10:13:59 UTC) multi-call binary

Usage: tftp [OPTION]... HOST [PORT]

Transfer a file from/to tftp server

Options:
        -l FILE Local FILE
        -r FILE Remote FILE
        -g      Get file
        -p      Put file
-b SIZE Transfer blocks of SIZE octets

 

 


依照上網址所教的

我實際測試方法如下

 

 

host

//先測網路
ifconfig eth0 192.168.5.230

ping 192.168.5.231

 
//啟動TFTPD
ln -s /bin/busybox /usr/bin/tftpd
/bin/busybox udpsvd -vE 0 69 tftpd -c /home &

 


target

//先測網路

ifconfig eth0 192.168.5.231

ping 192.168.5.230

 

//傳檔 ... 睡五秒純粹 轉接 UART 用

//sleep 5 only test
sleep 5 && tftp -p -l file_name 192.168.5.230

 
arrow
arrow
    全站熱搜

    立你斯 發表在 痞客邦 留言(0) 人氣()