介绍
ftp(文件传输协议) : ftp是文件服务器,可实现文件的上传下载,存储等功能。
sftp(安全文件传输协议):作用同ftp,但突出一个安全。
scp(secure copy): scp能够将不同主机的文件进行相互传输,使用简单方便。此方法会加密传输文件,安全性提升,但是相对于的速度会慢些。
rz : 用于linux与windows之间的文件上传(需要在window安装xshell)
sz : 用于linux与windows之间的文件下载(需要在window安装xshell)
ftp和sftp
查看是否安装ftp:
redHat、centos、Fedora系统 rpm -qa|grep vsftpd
ubuntu系统 dpkg -l|grep vsftpd
在使用前需安装对应的服务,此处就不做介绍了。
由于ftp和sftp用法相似,在这里我着重写下sftp的用法。
命令格式:sftp (选项) (参数)
实例:sftp 172.24.5.12
或者 sftp wsupport@172.24.5.12
,然后输入密码后进入,如下图:
当左边显示“SFTP”时表示连接成功。此时可对远程的机器进行操作。
上传文件到远程命令格式:put [本机要上传的目录或文件] [上传到目标机器地址]
下载文件到本地命令格式:get [目标文件或目录路径] [下载到目标机器地址路径]
实例:get -r test /home/wsupport/
小技巧:在sftp的环境下的操作就和一般ftp的操作类似,ls,rm,mkdir,dir,pwd,等指令都是对远端进行操作,如果要对本地操作,只需在上述的指令上加‘l’变为:lls,lcd, lpwd等。
注意:使用完后退出:“exit”或者“bye”命令
rz、sz
rz sz指令可以实现linux和windows之间的文件传输,但要求在windows客户端要安装Xshell或SecureCRT远程连接工具。rz指令和sz指令是一对上传与下载的指令。它们的软件包名为lrzsz。
linux安装命令如下
redHat、centos、Fedora系统 yum install lrzsz -y
ubuntu系统 dpkg -i lrzsz -y
上传命令格式:rz
回车后会弹出windows窗口,然后选择文件。默认下载到当前目录
下载命令格式:sz 文件名
注意:当遇到rz 、sz无法上传或者下载,已经存在的文件的时候,可以使用rz -y
是覆盖上传sz -y
则是覆盖下载
scp
scp的安装:文件传输的两端机器都需要安装
redHat、centos、Fedora系统 yum install openssh-clients -y
ubuntu系统 dpkg -i openssh-clients -y
命令格式:scp [参数] [本地主机文件路径] [远程主机路径]
参数选项:
-1 强制scp命令使用协议ssh1
-2 强制scp命令使用协议ssh2
-4 强制scp命令只使用IPv4寻址
-6 强制scp命令只使用IPv6寻址
-B 使用批处理模式(传输过程中不询问传输口令或短语)
-C 允许压缩。(将-C标志传递给ssh,从而打开压缩功能)
-p 保留原文件的修改时间,访问时间和访问权限。 (建议使用,传输时保留属性时间信息,否则会导致时间发生改变无法进行增量传输)
-q 不显示传输进度条。 (很适合crontab任务计划中使用)
-r 递归复制整个目录。
-v 详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。
-c cipher 以cipher将数据传输进行加密,这个选项将直接传递给ssh。
-F ssh_config 指定一个替代的ssh配置文件,此参数直接传递给ssh。
-i identity_file 从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。
-l limit 限定用户所能使用的带宽,以Kbit/s为单位。
-o ssh_option 如果习惯于使用ssh_config(5)中的参数传递方式,
-P port 注意是大写的P, port是指定数据传输用到的端口号
-S program 指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。
从目标主机copy到本地实例:scp -rp 172.24.5.12:/home/wsupport /home/wsupport/
从本地copy到目标实例:scp spm.war 172.24.5.12:/home/wsupport