linux备份

************linux服务器操作系统备份方法:

1、进老毛桃官网http://www.laomaotao.net/下载最新U盘启动制作工具

2、制作U盘启动,并用U盘启动要备份的LINUX系统,启动网络,配置IP,映射10.10.14.197

3、开启克隆工具Acronis truemiage,进行克隆


************linux服务器应用系统配置文件及系统重要配置文件自动备份方法:

一、ssh、scp、sftp密钥对的生成

1、命令ssh-keygen -t rsa后一路回车

2、chmod 755 ~/.ssh

3、scp ~/.ssh/id_rsa.pub [email protected]:~/.ssh/

4、cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 特别注意此步骤不能复制粘贴,会出现换行符导致失败

5、再用ssh scp sftp 之类的访问10.10.14.197时,就不用输入密码

6、以上操作脚本在passwd.sh中

ssh-keygen -t rsa

chmod 755 ~/.ssh

scp ~/.ssh/id_rsa.pub [email protected]:~/.ssh/

ssh 10.10.14.197

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

exit

二、在/root/linuxbak/目录下建立批处理脚本

先mkdir /root/linuxbak建立目录,copy以下四个文件到该目录

a、linux.sh

#!linux系统的计划任务配置文件:/var/spool/cron/root

#!自启动配置文件/etc/rc.d/rc.local

#!linux服务配置文件chkconfig --list |grep 3:启用 >>/root/linuxbak/serviceslist

#!IP配置文件(含网卡绑定情况)/etc/sysconfig/network-scripts/ifcfg-eth* /etc/sysconfig/network-scripts/ifcfg-bond* /etc/modprobe.conf

#!DNS配置文件/etc/resolv.conf

#!主机名配置文件/etc/sysconfig/network /etc/hosts

#!linux版本配置文件/etc/issue

#!linux内核版本配置文件/proc/version

#!linux同步配置文件/etc/rsyncd.conf

#!linux共享配置文件/etc/samba

#!linux SSH配置文件/etc/ssh/sshd_config

#!linux http配置文件/etc/httpd/conf/httpd.conf /var/www/html /var/www/scripts

#!需要其他配置文件继续添加便可。

chkconfig --list |grep 3:启用 >>/root/linuxbak/serviceslist

cd /root

tar -zcvf /root/linuxbak/baklinux.tar.gz /var/spool/cron/root /etc/rc.d/rc.local /root/linuxbak/ /etc/sysconfig/network-scripts/ifcfg-eth* /etc/sysconfig/network-scripts/ifcfg-bond* /etc/modprobe.conf /etc/resolv.conf /etc/sysconfig/network /etc/hosts /etc/issue /proc/version /etc/rsyncd.conf /etc/samba /etc/ssh/sshd_config /etc/httpd/conf/httpd.conf /var/www/html /var/www/scripts

rm -rf /root/linuxbak/serviceslist

b、tar.sh

#!打包要备份的文件及目录(以下是核新系统需要备份的配置文件及linux系统部分系统文件包)

#!备份文件名格式bak+IP+RQ.tar.gz

tar -zcvf /root/linuxbak/bak`ifconfig  | grep 'inet addr:'| grep -v '127.0.0.1' |cut -d: -f2 | awk '{ print $1}'`-`date +%y%m%d`.tar.gz /hxapp/hqserver/conf /hxapp/hqserver/bin/E*.dat /hxapp/hqserver/etc/ /hxapp/hqserver/sync/ /root/linuxbak/baklinux.tar.gz

c、scp.sh

#!将备份文件copy到14.197

scp /root/linuxbak/bak`ifconfig  | grep 'inet addr:'| grep -v '127.0.0.1' |cut -d: -f2 | awk '{ print $1}'`-`date +%y%m%d`.tar.gz  [email protected]:/data/dump/jzjy/lys/linuxbak/

d、delbak.sh

#!删除本地备份文件

rm -rf /root/linuxbak/bak`ifconfig  | grep 'inet addr:'| grep -v '127.0.0.1' |cut -d: -f2 | awk '{ print $1}'`-`date +%y%m%d`.tar.gz 

rm -rf /root/linuxbak/baklinux.tar.gz

三、设置定时任务,每周五备份一次,根据tar时间设置,核新设置5分钟间隔。

执行如下脚本crond.sh:

echo "25 16 * * 5 /bin/sh /root/linuxbak/linux.sh" >> /var/spool/cron/root

echo "30 16 * * 5 /bin/sh /root/linuxbak/tar.sh" >> /var/spool/cron/root

echo "35 16 * * 5 /bin/sh /root/linuxbak/scp.sh" >> /var/spool/cron/root

echo "40 16 * * 5 /bin/sh /root/linuxbak/delbak.sh" >> /var/spool/cron/root

或命令crontab -e编辑加入:crontab -l查看

25 16 * * 5 /bin/sh /root/linuxbak/linux.sh

30 16 * * 5 /bin/sh /root/linuxbak/tar.sh

35 16 * * 5 /bin/sh /root/linuxbak/scp.sh

40 16 * * 5 /bin/sh /root/linuxbak/delbak.sh

四、配置过程只需以上三步便可,检查时根据定时任务每周五下午4:50分检查14.197对应目录文件情况,并定期删除历史备份。

五、备份恢复

1、将备份文件从14.197复制到本地目录,注:*代表要恢复的文件

scp  [email protected]:/data/dump/jzjy/lys/linuxbak/bak*.tar.gz  /root/linuxbak/

2、解包tar -zxvf /root/linuxbak/bak*.tar.gz --exclude=tmp/linuxbak/baklinux.tar.gz -C / 解压核新系统配置文件到根目录,linux配置文件用于对照设置用。tar -tzvf bak*.tar.gz为查看文件列表

3、如ssh端口变化,命令相应变化,如:scp -P 6789 [email protected]:/root/lys /root/linuxbak

4、scp命令不能在底版本上执行copy高版本文件,如14.197是AS5,核新服务器是AS5,会报错

5、配置备份还可以安装第三方linux同步软件,如rsync,但这会增加linux负担,不建议采用。

6、linux重新安装时最好与初始安装时版本一致,补丁升级做好配置变更说明。

7、建议配置打包前关闭相关进程。

8、以上步骤均通过本人测试。

六、延伸使用

1、根据以上实现方式,可做好日常linux的监控脚本,监控的内容都导入到/root/monitor.log,同时copy到14.197,再在14.197上进行各服务器log文件合并,再在一台windows监控机上安装一提醒程序定时开启合并的log文件,供日常检查。

该程序在工作时段(8:00-22:00),每隔一个小时执行一次;在其他时段每隔两小时执行一次。

如:*  8-22/1,22-7/2  *  *  *  sh  /monitor.sh

2、


你可能感兴趣的:(备份)