来讲讲:Centos网站办事器利用DropBox准时备份计划
小知识:CentOS完全免费,不存在REDHATAS4需要序列号的问题。前不久由于DS的成绩,之前的很多数据都丧失了,固然不是很主要的,但是也让我明白到了数据备份的主要性。做为一位站长,不论用的假造主机、vps大概独服也好,有优秀的数据备份习气那长短常主要的。
自己也纯属小白一个,在前次丢数据以后仓卒也往网上网罗进修了一番,这里摘录一个对照不错的VPS数据备份计划:
起首先容下这里的配角–Dropbox,DropBox是一款十分好用的收费收集文件同步工具大概说是办事,相似于国际的金山快盘,可让你轻松备份你电脑上的文件,大概是同步到别的一台电脑。不赘述,间接进进正题:
1、安拆卸置Dropbox:
Dropbox供应了分歧操纵体系的客服端,win下的话间接安装设置对照复杂,而我们年夜部分的VPS都是linux操纵体系,以是起首我们得在我们的VPS上安装dropbox,依据vps的体系位数选择以下下令下载dropbox:
32位:
wget-Odropbox.tar.gzhttp://www.dropbox.com/download?plat=lnx.x86
64位:
wget-Odropbox.tar.gzhttp://www.dropbox.com/download?plat=lnx.x86_64
然后解压:
tarxzvfdropbox.tar.gz
解压完成后经由过程以下下令运转dropbox:
~/.dropbox-dist/dropboxd&
一样平常情形下由于我们是第一次运转,vps未与你的dropbox账户联系关系,以是其实不会举行同步而是会呈现以下提醒:
Thisclientisnotlinkedtoanyaccount…
Pleasevisithttps://www.dropbox.com/cli_link?host_id=XXXXXXXXXX&cl=en_UStolinkthismachine.
这里dropbox已为你的vps天生的一个host_id,复制上述提醒中https://www.dropbox.com/cli_link?host_id=XXXXXXXXXX&cl=en_US这个网址在扫瞄器翻开,然后输出你的帐号暗码,dropbox就主动帮你的账户绑定到你的VPS了.
2、创建备份
起首进进dropbox目次:
cd~/Dropbox
在入手下手备份之前,我们起首要经由过程ln软链接你一切要备份的目次,比方:
ln-s/home/wwwroot/abc
ln-s/home/wwwroot/bcd
详细目次能够依据本人的实践情形选择增加。
好了,运转以下下令,dropbox便入手下手同步了:
~/.dropbox-dist/dropboxd&
3、创建准时备份剧本
dropbox默许是举行及时同步的,这一定十分耗资本,而我们的vps老是越能节俭资本越好,以是我们要设置下dropbox只距离性的一次性同步然后封闭步伐节俭资本。
起首关失落同步:
killalldropbox
创建并编写准时同步剧本:
vibackup.sh
将以下代码写进剧本:
#!/bin/sh
start(){
echostartingdropbox
/root/.dropbox-dist/dropboxd&
}
stop(){
echostopingdropbox
pkilldropbox
}
case“$1″in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
esac
保留后我们要给backup.sh增加实行权限:
chmod+xbackup.sh
然后在varspoolcron目次下创建root文件或间接运转crontab-e下令增加准时运转:
02***sh/root/backup.shrestart
03***sh/root/backup.shstop
这里指的是2点入手下手同步,3点停止同步,详细运转工夫能够依据间接的实践情形调剂。而距离工夫也能够依据间接要同步的数据量来举行变动。
4、增加数据库备份
起首创建并编纂备份下令:
vibackupdb.sh
将以下剧本写进,详细必要变动的剧本中已正文得很分明了:
#!/bin/bash
DBName=修正为数据库名
DBUser=修正为数据库用户名
DBPasswd=修正为数据库暗码
BackupPath=/root/Dropbox/
LogFile=/root/db.log
DBPath=/usr/local/mysql/var/#备份的数据库目次
#BackupMethod=mysqldump
#BackupMethod=mysqlhotcopy
#BackupMethod=tar
NewFile=”$BackupPath”db$(date+%y%m%d).tgz
DumpFile=”$BackupPath”db$(date+%y%m%d)
OldFile=”$BackupPath”db$(date+%y%m%d–date=’5daysago’).tgz#主动删除5天前的备份
echo“——————————————-”>>$LogFile
echo$(date+”%y-%m-%d%H:%M:%S”)>>$LogFile
echo“————————–”>>$LogFile
#DeleteOldFile
if[-f$OldFile]
then
rm-f$OldFile>>$LogFile2>&1
echo“[$OldFile]DeleteOldFileSuccess!”>>$LogFile
else
echo“[$OldFile]NoOldBackupFile!”>>$LogFile
fi
if[-f$NewFile]
then
echo“[$NewFile]TheBackupFileisexists,Can’tBackup!”>>$LogFile
else
case$BackupMethodin
mysqldump)
if[-z$DBPasswd]
then
mysqldump-u$DBUser–opt$DBName>$DumpFile
else
mysqldump-u$DBUser-p$DBPasswd–opt$DBName>$DumpFile
fi
tarczvf$NewFile$DumpFile>>$LogFile2>&1
echo“[$NewFile]BackupSuccess!”>>$LogFile
rm-rf$DumpFile
;;
mysqlhotcopy)
rm-rf$DumpFile
mkdir$DumpFile
if[-z$DBPasswd]
then
mysqlhotcopy-u$DBUser$DBName$DumpFile>>$LogFile2>&1
else
mysqlhotcopy-u$DBUser-p$DBPasswd$DBName$DumpFile>>$LogFile2>&1
fi
tarczvf$NewFile$DumpFile>>$LogFile2>&1
echo“[$NewFile]BackupSuccess!”>>$LogFile
rm-rf$DumpFile
;;
*)
servicemysqlstop>/dev/null2>&1
tarczvf$NewFile$DBPath$DBName>>$LogFile2>&1
servicemysqlstart>/dev/null2>&1
echo“[$NewFile]BackupSuccess!”>>$LogFile
;;
esac
fi
echo“——————————————-”>>$LogFile
保留后一样要先给backupdb.sh增加实行权限:
chmod+xbackupdb.sh
然后在varspoolcron目次下的root文件或间接运转crontab-e下令增加准时运转:
01***sh/root/backupdb.sh
一样平常我喜好在dropbox运转前创建数据库备份,而详细工夫能够本人调剂。
最初附上删除卸载dropbox的***:
killalldropbox
rm-rf.dropbox.dropbox-distDropboxdropbox.tar.gzdbmakefakelib.pydbreadconfig.py
以上部分代码由houstloc的helps供应,自己仅编纂并别的加了些闲言碎语,只供条记~
小知识:CentOS完全遵守上游供应商的再发行政策,并且以百分之百的软件兼容性为目标。 Linux操作系统这个名词记得在很早以前就听过,但当时并不知道具体是什么样的操作系统,只知道是一个与嵌入式密切相关的操作系统。 如果你有庞大而复杂的测试条件,尽量把它剪裁得越小越好。可能你会遇到这种情况,对于一个问题会出现不同内容回答,这时你需要通过实践来验证。 选择一些适于初学者的Linux社区。 这种补充有助于他人在邮件列表/新闻组/论坛中搜索对你有过帮助的完整解决方案,这可能对他们也很有用。 主流Linux发行版都自带非常详细的文档(包括手册页和FAQ),从系统安装到系统安全,针对不同层次的人的详尽文档,仔细阅读文档后40%问题都可在此解决。 其实老师让写心得我也没怎么找资料应付,自己想到什么就写些什么,所以不免有些凌乱;很少提到编程,因为那些在实验报告里已经说了,这里再写就多余了。 一定要学好命令,shell是命令语言,命令解释程序及程序设计语言的统称,shell也负责用户和操作系统之间的沟通。
页:
[1]