暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Linux系统日志每日备份脚本

DevOps架构实战 2024-05-11
167

1脚本功能

日常开发中会有很多场景需要我们去备份系统的配置文件、日志数据等等,本脚本可以定时备份linux的某个文件夹。自动删除X天前的备份数据,灰常的好用。

[root@backup syslog]# more syslog.sh

#!/bin/bash

#bakup system logs

yesterday=`date -d -1day +%Y-%m-%d`

cat /backup/syslos/ip.txt|grep -v ^#|while read ip;

do

   log_dir=`echo $ip|awk '{print $1}'`

   if [ ! -d "/backup/syslog/$log_dir/$yesterday" ];then

        mkdir -p /backup/syslog/$log_dir/$yesterday

   fi

   rsync -avz -e ssh root@$ip:/var/log/messages  /backup/syslog/$log_dir/$yesterday

   rsync -avz -e ssh root@$ip:/var/log/secure  /backup/syslog/$log_dir/$yesterday

   rsync -avz -e ssh root@$ip:/var/log/boot.log  /backup/syslog/$log_dir/$yesterday

   rsync -avz -e ssh root@$ip:/var/log/cron  /backup/syslog/$log_dir/$yesterday

   rsync -avz -e ssh root@$ip:/var/log/lastlog  /backup/syslog/$log_dir/$yesterday

   rsync -avz -e ssh root@$ip:/var/log/audit/audit.log  /backup/syslog/$log_dir/$yesterday

 

    cd /backup/syslogs/$log_dir/$yesterday && tar -zcvf syslog.tar.gz  .

       find . -type f -not -name '*.tar.gz' -exec rm -f {} +

done

find /backup/syslogs/  -type f  -name  "*.tar.gz"  -mtime +90 -exec rm -f {} \;

 

2定时执行

通过linux自带的corntab来实现脚本的定时备份这里我们定义每天0点备份一次日志

0 0 * * * cd /backup/syslog && bash syslog.sh

----------------------end---------------------

推荐阅读

1.实战-k8s监控MySQL

2.实战-Prometheus监控域名证书时间

3.实战-Prometheus监控Mysql

4.实战-Prometheus监控Redis

5.MySQL8.0 DBA存储架构+存储引擎+SQL优化+InnoDB的存储架构

6.企业级Elasticsearch 8.X技术来临!性能优化与集群部署 基础与进阶全面实战

7.Nginx通过Lua+Redis实现WAF动态封禁IP

8.运维必备的MySQL+Python运维实战课程

9.运维不会Python Web就落伍了!

10.企业级微服务API网关架构实战Nginx+Lua+Openresty

11.高级运维工程师的打怪升级之路 Docker+Jenkins+Kubernetes

12.下载链接-Docker+K8S的高可用集群+自建集群实战

13.Kubernetes持久化实战 K8S集群部署+Jenkins自动化构建

14.企业级Redis入门到精通 Redis基础+进阶+实战应用+项目实战

如果本文对你有帮助的话,欢迎点赞&在看&转发,这对我继续分享&创作优质文章非常重要。感谢🙏🏻,需要学习资料的私信留言!

请点赞→点亮“在看”→分享

↓↓↓

文章转载自DevOps架构实战,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论