服务器远程拷贝文件

使用情景描述:

有多台服务器A、B、C,每台服务器的程序每小时都生成大量的日志文件,日志处理程序部署在服务器A,服务器B和C生成的日志需要拷贝到远程服务器A上处理。那么B和C生成的日志文件如何以小时为单位拷贝到远程服务器上呢?
常用方法有ftp和scp,这里主要叙述scp(secure copy)的使用。

scp的使用

scp的命令格式如下:

scp local_file remote_username@remote_ip:remote_folder

使用scp命令,每次使用都需要手动输入远程主机用户remote_username的密码。但根据使用情景是要以shell脚本的方式来进行拷贝的crontab定时任务。如何使用shell脚本自动输入远程主机密码来执行scp命令?下面记录两种方式:

一.用expect 实现scp无密码拷贝

设置SSH,SCP不用输入密码
本地主机拷贝文件到远程主机

二.SSH建立密钥通道

1.在本地主机生成密钥对

ssh-keygen -t rsa

这个命令生成一个密钥对:id_rsa(私钥文件)和id_rsa.pub(公钥文件)。默认被保存在~/.ssh/目录下

2.将公钥添加到远程主机的 authorized_keys 文件中 

将文件上传到远程主机中 

scp ~/.ssh/id_rsa.pub root@192.168.1.23:/root/ 

SSH到登陆到远程主机,将公钥追加到 authorized_keys 文件中 

cat /root/id_rsa.pub >> /root/.ssh/authorized_keys

3.测试使用,无须输入密码可使用scp命令

转载于:https://www.cnblogs.com/xrong/p/4204287.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值