在linux 下scp 命令主要用来在不同主机之间做数据的安全拷贝的。scp 命令可以将文件从本地的计算机中拷贝到远程的主机中,或者从远程计算机中拷贝文件到本地主机,scp命令使用的安全加密的协议,所以在远程拷贝数据的时候会比较安全,不会被黑客截取。
如果服务器之间配置了ssh免密码登录,那在使用scp的时候密码就不用输入了(配置ssh免登录的方法)。和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。可能会稍微影响一下速度。当你服务器硬盘变为只读 read only system时,用scp可以帮你把文件移出来。另外,scp还非常不占资源,不会提高多少系统负荷,rsync就远远不及它了。虽然 rsync比scp会快一点,但当小文件众多的情况下,rsync会导致硬盘I/O非常高,而scp基本不影响系统正常使用。
例如:有两台服务器
A:192.168.140.110
B:192.168.140.120
当前登录A服务器,需要B服务器上 /root/xin.txt 文件。可以通过以下命令:
[root@center1 ~]# scp -r [email protected]:/root/xin.txt /root/
输入密码就可以把B服务器上的文件复制到A服务器上。
如果B服务器防火墙有为scp命令设置了指定的端口,就需要使用 -P 参数来设置命令的端口号,命令如下:
[root@center1 ~]# scp -r -P 6661 [email protected]:/root/xin.txt /root/
一.命令格式
sc