linux scp用法
scp==secure
copy字面意思为安全拷贝,其实质为远程文件拷贝命令,基于SSH协议认证,文件拷贝时需提供密码做验证。
语法如下,具体可参考man手册:
scp
[-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
[-l
limit] [-o ssh_option] [-P port] [-S program]
[[user@]host1:]file1
[...] [[user@]host2:]file2
一般那些参数到是没怎么去使用,只是简单的做了些了解,这里就主要说如何去使用吧!
scp [[user@]host1:]file1 [...]
[[user@]host2:]file2
例: scp catalina.out root@10.10.71.24:/root/download/
将本机的catalina.out文件拷贝到10.10.71.24服务器的download目录
由于公司内部服务器都采用的SSH形式来登录多台服务器,并且并为开通对FTP功能的支持,故需使用scp命令。
情景:
A B C 三台服务器,A为登录机,B
C单独与A有SSH登录协议,要从B机拷贝文件到C机,之前由于记不住要拷贝的路径,经常以A机做为跳板,如下:
在B机上 scp xx.log root@A:/opt/logs/
然后登录到A机,执行
scp
/opt/logs/xx.log root@C:/opt/logs/
感觉以A机做跳板时,比较麻烦,就想是否可以直接拷贝,比如在A机进行如下操作:
scp
root@B:/xx.log
root@C:/opt/logs/
在执行时提示无权限,经查看,发现如下:
B机配置
SSH_CLIENT= A 39016 22
SSH_CONNECTION=A 39106 B 22
C机配置
SSH_CLIENT= A 42049 22
SSH_CONNECTION=A 42049 C 22
B C 并不存在直接通信,故不成,所以需要修改SSH配置来完成。
注:A B C 为服务器IP
如若转载,请说明出处,谢谢!