Linux系統配置檔案簡易shell備份指令碼

安全劍客發表於2019-12-10
在電腦科學中, 俗稱殼(用來區別於核),是指“為使用者提供操作介面”的軟體( 解析器)。它類似於DOS下的command.com和後來的cmd.exe。它接收使用者 ,然後呼叫相應的應用程式。

線上的配置檔案以及應用配置檔案是非常有必要進行備份的,不排除能夠上伺服器的朋友沒有備份就直接修改出錯或者其他人員誤操作的情況。現在花了十分鐘簡單寫了一個備份 ,另外也可以自己加上其他備份 進去。

雖簡單,但有了這個東西還是放心了不少,再也不用擔心原始配置檔案找不到了。

#!/bin/bash
# bakup configfile  for system 、nginx 、 php 、ELK and so on
#author:21yunwei
#date:2017.4.22
time=`date +%Y%m%d`
LOGFILE=/backup/configbak/configbak.log
 [ ! -e /backup/configbak/elkbak/$time  ] && mkdir -p /backup/configbak/elkbak/$time
 [ ! -e /backup/configbak/nginxbak/$time  ] && mkdir -p /backup/configbak/nginxbak/$time
 [ ! -e /backup/configbak/phpbak/$time  ] && mkdir -p /backup/configbak/phpbak/$time
 [ ! -e /backup/configbak/etcbak/$time  ] && mkdir -p /backup/configbak/etcbak/$time
 
function etcbak() {
 tar  zcf /backup/configbak/etcbak/$time/etc$time.tar.gz  /etc/* 
}
 
function nginxbak() {
cp  -rfpu  /usr/local/nginx/conf/*  /backup/configbak/nginxbak/$time/
}
function phpbak() {
cp  -rfpu  /usr/local/php/etc/*  /backup/configbak/phpbak/$time/
}
function elkbak() {
cd  /backup/configbak/elkbak/$time && mkdir es logstash kibana
cp -rfpu /usr/local/ELK/elasticsearch-5.1.1/config/*  /backup/configbak/elkbak/$time/es/
cp -rfpu /usr/local/ELK/logstash-5.1.1/config/*  /backup/configbak/elkbak/$time/logstash/
cp -rfpu /usr/local/ELK/kibana-5.1.1/config/*  /backup/configbak/elkbak/$time/kibana/
}
 
#start bak working:
etcbak
nginxbak
phpbak
elkbak
#bakwork end
 
ret=$?
FINISHTIME=`date +%Y%m%d_%H%M%S`
 
[ $ret -eq 0 ] && echo  "configbak  finished, time: $FINISHTIME">>  $LOGFILE || echo "configbak  failed,please check time:$FINISHTIME" >>  $LOGFILE
find  /backup/configbak/ -type d  -mtime +15  |xargs rm -rf

原文地址:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31559985/viewspace-2667655/,如需轉載,請註明出處,否則將追究法律責任。

相關文章