注意:部分文章发布时间较长,可能存在未知因素,购买时建议在本站搜索商家名称,先充分了解商家动态。
交流:唯一投稿邮箱:hostvps@88.com。
SecureCRT中有以下文件传输协议:① ASCII: 最快的传输协议, 但只能传送文本文件;② Xmodem: 古老的传输协议, 速度较慢, 但使用了CRC错误侦测方法, 传输的准确率可高达99.6%;③ Ymodem: 是Xmodem的改良版, 使用了1024位区段传送, 速度比Xmodem快;④ Zmodem: Zmodem采用了串流式(streaming)传输方式, 传输速度较快, 而且还具有自动改变区段大小和断点续传、快速错误侦测等功能.Zmodem是目前最流行的文件传输协议, 下述的rz/sz命令就是通过Zmodem模式传输文件.1 通过rz/sz命令上传/下载1.1 安装lrzsz软件[root@host-10-0-20-50 ~]# sudo yum install -y lrzsz1.2 rz – 上传文件rz中的r是received(接收)的缩写, 意为服务器接收文件(received by client), 即上传本地文件到服务器.键入rz命令, 然后回车, 将弹出文件选择对话框, 选择需要上传的文件, 可选择多个文件.点击确定后即可上传文件, 文件接收路径为当前执行rz命令的路径.过程如下:[root@host-10-0-20-50 ~]# rzrz waiting to receive.Starting zmodem transfer. Press Ctrl+C to cancel.注意: 上传文件时, 如果Linux服务器接收文件的目录下有同名的文件, 将跳过上传过程. 信息如下:[root@host-10-0-20-50 elk]# rzrz waiting to receive.Starting zmodem transfer. Press Ctrl+C to cancel.Transferring elasticsearch-5.6.10.tar.gz…elasticsearch-5.6.10.tar.gz was skipped扩展: 使用rz会有两个问题: 上传中断、上传文件变化(md5不同). —— 尚未验证, 请存疑.解决办法: 上传时用rz -be, 并且不要勾选弹出的对话框中”Upload files as ASCII”前选框.-b: 用binary的方式上传下载, 不解释字符为ASCII.-e: 强制escape所有控制字符, 比如Ctrl+x, DEL等.1.3 sz – 下载文件sz中的s是send(发送)的缩写, 意为服务器发送文件到客户端(send to client), 即下载服务器文件到本地.键入sz download_files命令, 然后回车, 即可将服务器中的文件下载到SecureCRT配置的目录下:过程如下:[root@host-10-0-20-50 ~]# cd /data/elk[root@host-10-0-20-50 ~]# sz elasticsearch-5.6.10.tar.gz(1) sz的其他用法:sz filename # 下载一个文件sz filename1 filename2 # 下载多个文件sz dir/* # 下载dir目录下的所有文件, 不包含dir下的文件夹(2) 修改SecureCRT默认的上传/下载目录:选择菜单栏的[Options(选项)] –> [Session Options(会话选项)] –> [X/Y/Zmodem], 然后修改Upload/Download路径即可.2 通过sftp上传/下载文件为了数据和服务的安全, 很多生产环境中的Linux服务器不能使用外网环境. 在只有SSH连接的情况下, 传输文件变得很不方便.如果Linux服务器未安装用于上传和下载的lrzsz软件, 又不能现场安装, 此时可考虑使用sftp完成相关操作.2.1 关于SFTP的简介SFTP是Secure File Transfer Protocol(安全文件传输协议)的缩写, 可以为传输文件提供一种安全的网络的加密方法.不需要单独安装或配置sftp —— 支持SSH连接的服务器, 也就默认开启了SFTP.SFTP是SSH的一部分: 在SSH软件包中, 已经包含了SFTP安全文件信息传输子系统.SFTP本身没有单独的守护进程, 它必须使用sshd守护进程 (端口号默认是22) 来完成相应的连接和答复操作.所以从某种意义上来说, SFTP并不像一个服务器程序, 而更像是一个客户端程序.2.2 SFTP与FTP的区别① FTP是一种方便数据共享的文件传输协议, 包括一个FTP服务器和多个FTP客户端. FTP客户端通过FTP协议从服务器上下载资源.② SFTP协议是在FTP的基础上, 对数据采取了加密/解密技术, 使数据传输更安全.③ SFTP的传输效率比FTP的低很多.2.3 使用SFTP之前的工作Windows系统下, 可以使用Core FTP、FileZilla、WinSCP、Xftp等软件来连接SFTP进行上传/下载文件、建立/删除目录等操作.这里主要探讨Linux系统下的操作.(1) 软件环境:可以使用任意终端工具, 比如MacOS下的Terminal, 或iTerm(此处演示使用), 或SecureCRT.(2) sftp建立连接:在终端中进行操作, 若打开SecureCRT的sftp: 菜单栏的[File] –> [Connect SFTP Session]即可.# 在默认的SSH端口(22)下连接: # sftp username@remote_ip(or remote host name), 连接root用户, 则可省略”root@”. sftp root@10.0.20.51# 在其他端口下的连接sftp -o port=1000 username@remote_ip如果出现验证, 填入正确的密码后即可实现远程连接. 连接成功后终端信息如图:2.4 sftp – 上传文件sftp与ftp有着几乎相同的语法和功能:① ls, rm, cd, mkdir, pwd 等指令是对当前连接的远程端服务器的操作;② lls, lrm, lcd, lmkdir, lpwd 等指令是对本地端服务器的操作 —— 在上述指令前加l(local)即可.上传操作示例:# 默认连接的都是root目录, 查看本地和远端/root路径下的文件: sftp> lls # 本地anaconda-ks.cfg install.log install.log.syslog porc remote.sh test.shsftp> ls # 远端anaconda-ks.cfg install.log install.log.syslog myid remote.sh test.sh# 将本地的remote.sh文件上传至远端服务器的/home路径下: sftp> put remote.sh /home # 指定远端接收路径为/homeUploading remote.sh to /home/remote.shremote.sh 100% 538 0.5KB/s 00:00sftp> ls /home # 查看远端/home路径下的文件/home/remote.sh2.5 sftp – 下载文件下载操作示例:# 将远端/root路径下的myid文件下载至本地/home路径下: sftp> get /root/myid /home # 指定远端文件 + 本地接收路径Fetching /root/myid to /home/myidsftp> lls /home # 查看本地/home路径下的文件myid如果上传/下载的是文件夹, 在put/get命令后加上-r参数即可.上述操作截图如下:退出sftp:在终端输入quit或者exit, 然后回车, 就能退出sftp连接.