您的位置:首页 > 运维架构 > Linux

使用scp在Linux主机之间进行定时备份

2017-06-13 16:47 423 查看

  

一、scp在建立连接中是需要密码认证的,所以我们第一步就是添加ssh公匙。

ssh终端运行

ssh-keygen -t rsa

  结果如下

  Generating public/private rsa key pair.

  Enter file in which to save the key (/home/.username/ssh/id_rsa):#回车

  Enter passphrase (empty for no passphrase):#回车

  Enter same passphrase again:#回车

  Your identification has been saved in /home/.username /.ssh/id_rsa.

  Your public key has been saved in /home/.username /.ssh/id_rsa.pub.

  The key fingerprint is:

  38:25:c1:4d:5d:d3:89:bb:46:67:bf:52:af:c3:17:0c username@localhost

  Generating RSA keys:

  Key generation complete.

  会在用户目录~/.ssh/产生两个文件,id_rsa,id_rsa.pub

第二是把本地(10.1.1.1)主机上的id_rsa.pub文件拷贝到远程linux(10.1.1.2)主机的root用户主目录下的.ssh目录下,并且改名为authorized_keys

  即:

scp /root/.ssh/id_rsa.pub root@10.1.1.2:/root/.ssh/authorized_keys

  这样在本地linux(10.1.1.1)主机上使用scp命令复制文件到远程linux主机(10.1.1.2)上将不提示输入密码了,直接复制了。反之亦然!

二、把命令放入脚本,如以下的脚本事例(请根据自己的具体情况修改)

#!/bin/sh
backpath=/var/ftp/backup/
date=`date +%y%m%d`
site=sitename
tar -zcvf ${backpath}${site}"-"${date}.tar.gz /var/www/${site}
scp ${backpath}${site}"-"${date}.tar.gz root@backupserver:/var/backup
find ${backpath} -mtime +30 -exec rm {} \;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  备份 linux scp