做站,数据最重要,定时备份是王道。想要实现自动备份vps网站内容到远程linux主机,需要做以下两方面的工作。
1、ssky-keygen + ssh-copy-id 无密码登陆远程LINUX主机
使用下例中ssky-keygen和ssh-copy-id,仅需通过3个步骤的简单设置而无需输入密码就能登录远程Linux主机。
ssh-keygen 创建公钥和密钥。
ssh-copy-id 把本地主机的公钥复制到远程主机的authorized_keys文件上。
ssh-copy-id 也会给远程主机的用户主目录(home)和~/.ssh, 和~/.ssh/authorized_keys设置合适的权限 。
步骤1: 用 ssh-key-gen 在本地主机上创建公钥和密钥(只写命令)
ssh-keygen -t rsa
接下来3个回车,如下图所示
步骤2: 用 ssh-copy-id 把公钥复制到远程主机上
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.0.3
输入远程主机的密码,回车后,如下所示,表示成功。
Now try logging into the machine, with ―ssh ?remote-host‘‖, and check in:
.ssh/authorized_keys to make sure we haven‘t added extra keys that you weren‘t expecting.
[注: ssh-copy-id 把密钥追加到远程主机的 .ssh/authorized_key 上.]
步骤3: 直接登录远程主机
ssh 192.168.0.3 (remote-host )
Last login: Sat Nov 21 15:22:33 2014 from 192.168.1.2
[注: SSH 不会询问密码.]
[注: 你现在已经登录到了远程主机上]
OK,第一步已经完成。
2、安装 RSync ,实现文件备份同步
如果你的vps没有 Rsync,那么需要你自己安装一下,方法如下:
# sudo apt-get install rsync 注:在debian、ubuntu 等在线安装方法;
# yum install rsync 注:Fedora、Redhat 等在线安装方法;
# rpm -ivh rsync 注:Fedora、Redhat 等rpm包安装方法;
接下来,使用Rsync实现远程备份。
新建一个backup.sh,内容如下:
#!/bin/bash rsync -avuz /home/wwwroot/ root@192.168.0.3:/home/backup/
关于rsync的使用,可以自行GG一下,至于怎么上谷歌,可以参考《分享一个上Google的方法》。
最后,就是用crontab新建一个定时任务,可以每天执行一下backup.sh .
此至,大功告成,再也不担心网站的数据了。
要勤备份
让软件帮咱自动备份 不是更好。
我的做法是某天想起来了,直接zip一份到邮箱
呵呵 ,这样也好啊。