Linux系統下傳輸方式很多,比如:通過FTP SFTP … 等等。linux服務器大多是通過ssh客戶端來進行遠程的登陸和管理的,使用ssh登陸linux主機以後,如何能夠快速的和本地機器進行文件的交互呢,也就是上傳和下載文件到服務器和本地,根據RZSZ特性,這裡我們通過SecureCRT提供ZModem配合RZSZ傳輸工具進行講解
首先先了解與ssh有關的兩個命令可以提供很方便的操作:
sz:將選定的文件發送(send)到本地機器
rz:運行該命令會彈出一個文件選擇窗口,從本地選擇文件上傳到Linux服務器
rz,sz是Linux/Unix同Windows進行ZModem文件傳輸的命令行工具
windows端需要支持ZModem的telnet/ssh客戶端,例如:SecureCRT
優點:比ftp命令方便,而且服務器不用打開FTP服務。
安裝rzsz軟件包
[root@localhost soft]# wget http://freeware.sgi.com/source/rzsz/rzsz-3.48.tar.gz
--2010-01-07 21:52:51-- http://freeware.sgi.com/source/rzsz/rzsz-3.48.tar.gz
正在解析主機 freeware.sgi.com... 192.48.178.134
Connecting to freeware.sgi.com|192.48.178.134|:80... 已連接。
已發出 HTTP 請求,正在等待回應... 200 OK
長度:65566 (64K) [application/x-gzip]
Saving to: `rzsz-3.48.tar.gz'
100%[======================================>] 65,566 20.2K/s in 3.2s
2010-01-07 21:52:56 (20.2 KB/s) - `rzsz-3.48.tar.gz' saved [65566/65566]
[root@localhost soft]# ll
總計 72
-rw-r--r-- 1 root root 65566 2004-05-19 rzsz-3.48.tar.gz
[root@localhost soft]# tar zxvf rzsz-3.48.tar.gz
src/
src/COPYING
src/Makefile
src/README
src/crc.c
src/crc.doc
src/crctab.c
src/gz
src/mailer.rz
src/minirb.c
src/minirb.doc
src/rbsb.c
src/rz.c
src/rz.doc
src/sz.c
src/sz.doc
src/undos.c
src/undos.doc
src/zm.c
src/zmodem.h
src/zmr.c
src/zupl.t
[root@localhost soft]# cd src/
[root@localhost src]# ll
URL:http://www.bianceng.cn/OS/Linux/201410/45759.htm
總計 256
-rw-rw-r-- 1 10127 wheel 891 1998-05-30 COPYING
-rw-r--r-- 1 10127 wheel 8815 1998-05-30 crc.c
-rw-r--r-- 1 10127 wheel 1492 1998-05-30 crc.doc
-rw-r--r-- 1 10127 wheel 8764 1998-05-30 crctab.c
-rw-r--r-- 1 10127 wheel 22 1998-05-30 gz
-rw-rw-r-- 1 10127 wheel 3617 1998-05-30 mailer.rz
-rw-r--r-- 1 10127 wheel 8657 1998-05-30 Makefile
-rw-r--r-- 1 10127 wheel 2868 1998-05-30 minirb.c
-rw-r--r-- 1 10127 wheel 2727 1998-05-30 minirb.doc
-rw-r--r-- 1 10127 wheel 10537 1998-05-30 rbsb.c
-rw-r--r-- 1 10127 wheel 6164 1998-05-30 README
-rw-r--r-- 1 10127 wheel 29902 1998-05-30 rz.c
-rw-rw-r-- 1 10127 wheel 19264 1998-05-30 rz.doc
-rw-r--r-- 1 10127 wheel 37258 1998-05-30 sz.c
-rw-rw-r-- 1 10127 wheel 25679 1998-05-30 sz.doc
-rw-r--r-- 1 10127 wheel 7312 1998-05-30 undos.c
-rw-rw-r-- 1 10127 wheel 4282 1998-05-30 undos.doc
-rw-r--r-- 1 10127 wheel 17736 1998-05-30 zm.c
-rw-r--r-- 1 10127 wheel 6577 1998-05-30 zmodem.h
-rw-r--r-- 1 10127 wheel 4519 1998-05-30 zmr.c
-rw-r--r-- 1 10127 wheel 738 1998-05-30 zupl.t
修改Makefile
將第四行OFLAG= -O 修改為 OFLAG= -O -DREGISTERED
理由:如果不修改的話,編譯後,在上傳下載完成後都會提示,每次都有5-10秒等待,挺蛋疼的:
**** UNREGISTERED COPY *****
Please read the License Agreement in rz.doc
rzsz的軟件包比較特別,沒有configure及make install 文件。執行make命令可以看到一些提示
[root@localhost src]# make
Please study the #ifdef's in crctab.c, rbsb.c, rz.c and sz.c,
make any necessary hacks for oddball or merged SYSV/BSD systems,
then type 'make SYSTEM' where SYSTEM is one of:
posix POSIX compliant systems
aix AIX systems
next NeXtstep v3.x (POSIX)
odt SCO Open Desktop
everest SCO Open Desktop (elf, strict)
sysvr4 SYSTEM 5.4 Unix
sysvr3 SYSTEM 5.3 Unix with mkdir(2), COHERENT 4.2
sysv SYSTEM 3/5 Unix
sysiii SYS III/V Older Unix or Xenix compilers
xenix Xenix
x386 386 Xenix
bsd Berkeley 4.x BSD, Ultrix, V7
tandy Tandy 6000 Xenix
dnix DIAB Dnix 5.2
dnix5r3 DIAB Dnix 5.3
amiga 3000UX running SVR4
POSIX POSIX compliant systems (SCO Open Desktop, strict)
undos Make the undos, todos, etc. program.
doc Format the man pages with nroff
URL:http://www.bianceng.cn/OS/Linux/201410/45759.htm
根據自己的需求選擇make參數,一般選posix就可以
[root@localhost src]# make posix
cc -O -DPOSIX -DMD=2 rz.c -o rz
size rz
text data bss dec hex filename
31339 1088 10640 43067 a83b rz
rm -f rb rx rc
ln rz rb
ln rz rx
ln rz rc
cc -O -DPOSIX sz.c -o sz
size sz
text data bss dec hex filename
37316 1224 43344 81884 13fdc sz
rm -f sb sx zcommand zcommandi
ln sz sb
ln sz sx
ln sz zcommand ===============》提示安裝成功
ln sz zcommandi
[root@localhost src]# cp rz sz /usr/bin/ 復制到/usr/bin下方便使用
[root@localhost src]# rz 上傳本地文件到linux系統下
rz ready. Type "sz file ..." to your modem program
提示如下圖片:
Starting zmodem transfer. Press Ctrl+C to cancel.
Transferring 1.txt...
Transferring 1.txt...
?rz 3.48 01-27-98 finished.
**** UNREGISTERED COPY *****
Please read the License Agreement in rz.doc
提醒:如果Upload files as ASCII打√的話,你上傳的文件的MD5值會有問題,那麼應用文件也就不能運行.
[root@localhost ~]# ll
總計 56
-rw-r--r-- 1 root root 0 01-06 16:07 1.txt
-rw------- 1 root root 894 12-02 19:22 anaconda-ks.cfg
-rw-r--r-- 1 root root 1585 12-02 19:22 init.sh
-rw-r--r-- 1 root root 20758 12-02 19:22 install.log
-rw-r--r-- 1 root root 3497 12-02 19:22 install.log.syslog
drwxr-xr-x 3 root root 4096 01-07 21:53 soft
URL:http://www.bianceng.cn/OS/Linux/201410/45759.htm
上傳文件所在的位置是執行rz命令時所在的目錄
[root@localhost ~]# sz soft/rzsz-3.48.tar.gz 下載linux下文件到本地
rz
Starting zmodem transfer. Press Ctrl+C to cancel.
Transferring rzsz-3.48.tar.gz...
100% 64 KB 64 KB/s 00:00:01 0 Errors
rzsz 3.48 01-27-98 finished.
**** UNREGISTERED COPY *****
Please read the License Agreement in sz.doc
下載文件所在的位置是在SecureCRT--Options—session options--X/Y/Zmodem項
默認路徑是:C:\Users\Administrator\Downloads 這個自己定義修改
見下圖所示:
總結:一個小小的插件可以給我們的工作帶來不少歡喜,大家要好好利用哦!