Centos 备份常用命令

在CentOS上备份,经常使用tar进行打包,备份到远程目录可以使用rsync或mount映射远程目录,删除过期备份可以使用find,rm,自动执行可以使用sh脚本和crontab配合。

提醒大家,所有脚本请在CentOS下编辑,请勿在windows下编辑后上传,容易出现格式问题,不能正常执行。


现在已一台CentOS 7服务器,需要备份的目录,/var/backup 。备份到SMB共享作为例子说明


首先安装SMB共享支持,不然mount会出错

yum install cifs-utils

通过 mount ,将远程windowns域环境的SMB共享映射到本地目录

建立映射目录

mkdir /home/backup

映射远程目录

mount -t cifs -o username="用户名",domain="域名",password="密码" //远程服务器/目录  /home/backup


测试备份命令

进入需要备份目录的上级目录

cd /var

使用tar打包需要备份的目录到映射目录,tar 格式,tar -参数 /备份文件存放地址 /备份目录。

tar 参数,j 使用bzip2压缩,p 保留文件属性,c 创建新的存档,v 显示过程,脚本化时去除。

备份文件名增加生成日期时间的参数,$(date +%Y-%m-%d-%H%M%S)。

tar -jpcf  /home/backup/backup.$(date +%Y-%m-%d-%H%M%S).tar.bz2 backup

自动删除七天前的备份文件,find /路径 -type f -mtime +7 -exec rm -f {} \;

-type f是指定文件类型为普通文件,-mtime +7是指7天之前的文件,#-exec rm -f指执行静默删除匹配出来的文件。

find /home/backup -type f -mtime +7 -exec rm -f {} \;



如果都测试成功,我们就可以开始编写备份脚本,记得将脚本更改为可执行文件

#!/bin/bash
mount -t cifs -o username="用户名",domain="域名",password="密码" //远程服务器/目录  
cd /var
    tar -jpcf  /home/backup/mrcrm.$(date +%Y-%m-%d-%H%M%S).tar.bz2 mrcrm
cd /home/backup
    find /home/backup -type f -mtime +7 -exec rm -f {} \;
unmount /home/backup

脚本测试成功,我们可以使用自动执行命令让脚本自动在指定时间执行。

crontab -l 查看清单 -e 编辑


参考文章:

http://linux.vbird.org/linux_basic/0610hardware.php

推荐鸟哥的第二十章、基础系统设定与备份策略。里面描写更详细和清晰。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章