对拷 使用scp命令在两台linux上对拷文件或者文件夹
以前一直是在服务器上tar打包压缩,下载到本地电脑上,再上传到另外一台服务器上,再解压。
其实使用scp命令就可以直接对拷文件或者文件夹了。
scp就是secure copy,是用来进行远程文件拷贝的.数据传输使用ssh1,并且和ssh1使用相同的认证方式,提供相同的安全保证.与rcp不同的是,scp会要求你输入密码如果需要的话.
最简单的应用如下:
scp 本地用户名@IP地址:文件名1 远程用户名@IP地址:文件名2
[本地用户名@IP地址:] 可以不输入,可能需要输入远程用户名所对应的密码.
可能有用的几个参数:
-v 和大多数linux命令中的-v意思一样,用来显示进度.可以用来查看连接,认证,或是配置错误.
-C 使能压缩选项.
-P 选择端口.注意-p已经被rcp使用.
-4 强行使用IPV4地址.
-6 强行使用IPV6地址.
scp中很多参数都和ssh1有关,需要的话在看.
例如拷贝单个文件命令:
scp file
说明:
file: 要拷贝的文件名
username: 远程登录的用户名,
ip:远程服务器ip
filepath:远程文件路径
拷贝文件夹命令如下(多加上一个-r 参数即可):
scp -r file
=================================================================================
不同的Linux之间copy文件常用有3种方法:
第一种是在其中一台Linux安装ftp Server,这样可以在另外一台使用ftp的client程序来进行copy。
第二种方法就是采用samba服务,类似Windows文件copy的方式来操作,比较简洁方便
第三种就是利用scp命令来进行文件复制。
scp是有Security的文件copy,基于ssh登录。操作起来比较方便,比如要把当前一个文件copy到远程另外一台主机上,可以如下命令。
scp /home/1.gif root@172.19.2.75:/home/root
然后会提示你输入另外那台172.19.2.75主机的root用户的登录密码,接着就开始cp和ungzip了
如果想反过来操作,把文件从远程主机copy到当前系统,也很简单:
scp root@172.19.2.75:/home/abc.gif
复制文件夹的格式是 scp -r root@192.168.1.1:/home/ /本地目录
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
对拷文件夹 (包括文件夹本身)
scp -r /home/wwwroot/www/charts/util root@192.168.1.65:/home/wwwroot/limesurvey_back/scp
对拷文件夹下所有文件 (不包括文件夹本身)
scp /home/wwwroot/www/charts/util/* root@192.168.1.65:/home/wwwroot/limesurvey_back/scp
对拷文件并重命名
scp /home/wwwroot/www/charts/util/a.txt root@192.168.1.65:/home/wwwroot/limesurvey_back/scp/b.text
——————————————————————————————————————————————————————
2台服务器对拷用SCP提速
今天测试了2台服务器对拷,SAS盘,千兆网络,使用scp命令测试,加-c arcfour这个参数比不加参数速度快一半,以下是测试过程
1、不加参数测试结果
#scp -rp 3G
3G 100% 3000MB 31MB/s 99s
2.加参数-c arcfour测试结果,速度快了一倍
#scp -rp -c arcfour 3G
3G 100% 3000MB 64MB/s 46s
-c arcfour:表示加密算法多谢l分布式文件系统群里兄弟“三办门牙”
=========================
scp报错:not a regular file
linux 本地文件上传到服务器
scp /home/liujia/file.1txt liujia@172.16.252.32:/user/liujia
从服务器下载文件
scp liujia@172.16.252.32:/user/liujia/file1.txt /home/liujia
命令
scp liujia@172.16.252.32:/user/liujia/ /home/liujia
cp报错:not a regular file
原因是 这样是相当于下载文件夹,而非文件。
解决办法是 加参数 -r
scp -r liujia@172.16.252.32:/user/liujia/ /home/liujia
这样就可以了