1.1 簡介
rz/sz工具是通過Zmodem協(xié)議傳輸文件的命令,常用于Linux與windows之前的數(shù)據(jù)傳輸。
這篇文章就介紹如何在交叉編譯rz/sz命令,并在Linux開發(fā)板上完成測試。
1.1.1 什么是rz/sz (lsz/lrz)
rz/sz 通過Zmodem協(xié)議傳輸數(shù)據(jù)的命令,通過串口協(xié)議傳輸,速度較慢,只是適合小文件,如果大文件不適合用這個方法,大文件一般使用NFS或者FTP網(wǎng)絡(luò)方式傳輸。
1.1.2 為什么要用rz/sz
普通Linux和Windows之間的文件共享方法,主要有建立nfs實現(xiàn)文件共享,和tftp之類的方法,但是都很麻煩,而如果只是小文件(幾十 K,幾百K),那么直接用rz/sz,就顯得極其地方便了。大文件的話,還是要考慮上面說得,其他的共享方法了,畢竟,rz/sz速度只有10K左右。
1.1.3 如何使用
(1)在Windows下,用SecureCRT(或者Windows自帶的超級終端)連接Com端口到開發(fā)板,或者ssh等協(xié)議連接到Linux服務(wù)器上。
(2)在Linux端,安裝了rz/sz (lrz/lsz)工具后(嵌入式開發(fā)中,多數(shù)已經(jīng)將編譯好的rz/sz工具放到rootfs中了,普通的Linux系統(tǒng),如果沒有,可以下載源碼,自己安裝),就可以直接運(yùn)行rz/sz,實現(xiàn)和Windows之間的文件傳輸了:
A、從windows中拷貝/下載文件到Linux(開發(fā)板):
運(yùn)行rz后,會自動彈出WIndows下的文件選擇對話框,選擇對應(yīng)文件后,添加,然后確定,就開始傳輸,將windows中的文件,拷貝到Linux中了。
B、將Linux中的文件拷貝到Windows中某個文件夾:
執(zhí)行sz file_name 就可以將Linux當(dāng)前文件夾下的文件file_name拷貝到Windows的對應(yīng)目錄中了,其中,Windows目錄是由你當(dāng)前運(yùn)行的工具中設(shè)定的。
此處我用的是SecureCRT,具體的更改 rz上傳/sz下載 的默認(rèn)的路徑的方法:
點(diǎn)擊選項 -> 會話選項 -> Xmodem/Zmodem ->配置下載和上傳目錄:
1.2 移植
1.2.1 源碼獲取
rz,sz是Linux/Unix同Windows進(jìn)行ZModem文件傳輸?shù)拿钚泄ぞ?/p>
windows端需要支持ZModem的telnet/ssh客戶端(比如SecureCRT)
下載軟件 rzsz-3.48.tar.gz地址:
ttp://freeware.sgi.com/source/rzsz/rzsz-3.48.tar.gz
1.2.2 解壓
將源碼包拷貝到linux系統(tǒng)下解壓。
[root@xiaolong usart_down]# ls
rzsz-3.48.tar.gz
[root@xiaolong usart_down]# tar xvf rzsz-3.48.tar.gz
1.2.3 修改Makefile
進(jìn)入到解壓后的src目錄。
[root@xiaolong src]# gedit Makefile
?
修改:CC=arm-linux-gcc
1.2.4 編譯安裝
[root@xiaolong src]# make posix
注意:這個軟件安裝與常規(guī)的GNU軟件不同,沒有configure(配置)及make install (安裝過程)。
1.2.5 拷貝生成的命令
編譯成功后在頂層目錄下就可以看到生成的可執(zhí)行文件。
這些可執(zhí)行文件對應(yīng)不同的傳輸協(xié)議。如:ZMODEM / YMODEM / XMODEM協(xié)議
將綠色的文件全部拷貝到開發(fā)板根文件系統(tǒng)的bin目錄下。
示例:
[root@xiaolong src]# cp rb rc rx rz sb sx sz zcommand zcommandi /work/rootfs/bin/
如果在終端執(zhí)行命令提示缺少庫文件,需要到交叉編譯器的安裝路徑下去拷貝。
路徑:
/work/arm-linux-gcc/opt/FriendlyARM/toolschain/4.5.1/arm-none-linux-gnueabi/sys-root/lib/
1.2.6 測試命令
sz命令: 將選定的文件發(fā)送(send)到本地機(jī)器。
rz命令: 運(yùn)行該命令會彈出一個文件選擇窗口,從本地選擇文件上傳到服務(wù)器(receive)。
(在哪個目錄下執(zhí)行rz指令,那么文件就放在哪個目錄下)
1.2.6.1 rz命令測試示例:
1.2.6.2 sz命令測試
將文件傳輸?shù)絯indow下。(文件接收的目錄可以通過CRT軟件進(jìn)行配置)。
審核編輯:湯梓紅
-
Linux
+關(guān)注
關(guān)注
87文章
11292瀏覽量
209322 -
串口
+關(guān)注
關(guān)注
14文章
1551瀏覽量
76421 -
編譯
+關(guān)注
關(guān)注
0文章
657瀏覽量
32852
發(fā)布評論請先 登錄
相關(guān)推薦
評論