某些时刻我们在linux不同的服务器上需要做些文件拷贝,当然如果windows端都开启smb共享,那么这篇记录也就显得没存在的价值.复制文件或目录,粘贴... 完事,难道除了这种操作就没更好的方式吗,因为毕竟有些时候这个速度是相当的感人.
我们在同服务器上拷贝文件时,都是采用cp命令,那此刻需要介绍的主角就是"SCP"
SCP的介绍
scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。可能会稍微影响一下速度。当你服务器硬盘变为只读 read only system时,用scp可以帮你把文件移出来。另外,scp还非常不占资源,不会提高多少系统负荷,在这一点上,rsync就远远不及它了。虽然 rsync比scp会快一点,但当小文件众多的情况 下,rsync会导致硬盘I/O非常高,而scp基本不影响系统正常使用。
用法
此处先默认我们能同时访问两台不同的服务器,如果我现在在s1服务器上
拷贝单个文件
scp workspace/sourcefile/file.txt username@10.0.0.215:/home/username
通常如果目标服务器设置了密码,在执行命令后自动弹出输入正确的密码即可开始拷贝
拷贝整个目录
scp -r workspace/filedir username@10.0.0.215:/home/username
当然,对于目录也可以先用tar压缩下,再拷贝相当于单个文件,个人感觉更好.
记录一下,以防忘记,linux的实用命令太多了,keep in mind!!!