标签:影响 修改 本地 mic ftp print 文件 属性 加密传输
在使用Linux系统服务器时,我们经常使用命令来上传文件到远程服务器的指定地址。虽然目前有很多流行的工具,比如XShell、XFTP、WinSCP、CRT等等,可是实际中,我们并不是经常使用工具来上传。主要是实际处理文件时,需要使用代码来操作文件,使用工具来上传文件不能准确的解决寻找问题,所以需要使用命令式上传文件。
下面是主要的操作命令本文记录linux系统中文件传输的多种方式,linux中文件传输的方式有ftp,scp,rsync,rz,sz等
scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的,可能会稍微影响一下速度。当你服务器硬盘变为只读 read only system时,用scp可以帮你把文件移出来。另外,scp还非常不占资源,不会提高多少系统负荷,在这一点上,rsync就远远不及它了。虽然 rsync比scp会快一点,但当小文件众多的情况下,rsync会导致硬盘I/O非常高,而scp基本不影响系统正常使用。scp在跨机器复制的时候为了提高数据的安全性,使用了ssh连接和加密方式,如果机器之间配置了ssh免密码登录,那在使用scp的时候密码都不用输入。
[root@yufu ~]# yum install 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)的选项。
scp的使用:将本地A主机文件复制到B主机: A:192.168.214.190 B:192.168.214.187
[root@localhost tmp]#scp -p ./files/yum.log 192.168.214.187:/tmp/demo/ The authenticity of host ‘192.168.214.187 (192.168.214.187)‘ can‘t be established. RSA key fingerprint is SHA256:BwJdXsDA6F5976fKx1cSxkGJ9/uYYI4zVJ2rd+/Cvj0. RSA key fingerprint is MD5:85:87:8b:17:d2:79:c7:91:11:46:78:b3:4d:9d:dd:5a. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added ‘192.168.214.187‘ (RSA) to the list of known hosts. root@192.168.214.187‘s password: yum.log 100% 0 0.0KB/s 00:00
检查B主机文件:
[root@yufu demo]# ls f3.log yum.log [root@yufu demo]# ll 总用量 0 -rw-r--r--. 1 root root 0 3月 31 22:38 f3.log -rw-------. 1 root root 0 3月 31 22:36 yum.log
将远程主机复制到本地
[root@localhost files]#scp -p 192.168.214.187:/tmp/demo/f3.log /tmp/files/ root@192.168.214.187‘s password: f3.log 100% 0 0.0KB/s 00:00 [root@localhost files]#ls f3.log ff.txt yum.log
复制目录
[root@localhost tmp]#scp -rp ./files/ 192.168.214.187:/tmp/demo root@192.168.214.187‘s password: f3.log 100% 0 0.0KB/s 00:00 yum.log 100% 0 0.0KB/s 00:00 ff.txt 100% 5 7.3KB/s 00:00 [root@localhost tmp]#
检查远程主机目录
[root@yufu demo]# tree . └── files ├── app ├── f3.log ├── ff.txt └── yum.log 2 directories, 3 files
rz sz指令可以实现linux和windows之间的文件传输,但要求在windows客户端要安装Xshell或SecureCRT远程连接工具。rz指令和sz指令是一对上传与下载的指令。它们的软件包名为lrzsz。rz sz指令使用很简单,执行rz 指令,远程连接工具会弹出windows文件选择窗口,只要选择要上传的文件即可
工具的安装:
yum install lrzsz -y
文件上传:
文件下载:
rsync是可以实现增量备份的工具。配合任务计划,rsync能实现定时或间隔同步,配合inotify或sersync,可以实现触发式的实时同步。rsync可以实现scp的远程拷贝,cp的本地拷贝、rm删除和"ls -l"显示文件列表等功能。关于rsync的使用将单独写文章学习介绍。
标签:影响 修改 本地 mic ftp print 文件 属性 加密传输
原文地址:https://www.cnblogs.com/qtiger/p/13846070.html