Update nodemgmt-scripts.sh
This commit is contained in:
@@ -6,102 +6,20 @@ FOLDER='/opt/nodemgmt'
|
|||||||
VERS='1.01272019'
|
VERS='1.01272019'
|
||||||
CERT_DAEMON='/usr/bin/certbot'
|
CERT_DAEMON='/usr/bin/certbot'
|
||||||
|
|
||||||
source /opt/mysqlbu/settings.conf
|
source ${folder}/settings.conf
|
||||||
source /dev/stdin <<< "$(curl -sL https://git.schroedercity.com/voltron/Misc-Scripts/raw/master/colors.inc)"
|
source ${folder}/ids-defaults/colors.conf
|
||||||
source /dev/stdin <<< "$(curl -sL https://git.schroedercity.com/voltron/Misc-Scripts/raw/master/default.inc)"
|
source ${folder}/ids-defaults/default.conf
|
||||||
|
|
||||||
# ========================================================= #
|
# ========================================================= #
|
||||||
|
|
||||||
if [ $(id -u) != "0" ]; then
|
|
||||||
echo "Sorry, I need root privileges!"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
MYSQLDATA="`grep --perl-regexp --only-match '(?<=datadir=).+' "$MYSQLCFG"`"
|
|
||||||
DAY_BACKUP_DIR="${BACKUP_PATH}`date +%Y-%m-%d`/"
|
|
||||||
BASE_BACKUP="`ls -1 $DAY_BACKUP_DIR 2> /dev/null | grep --max-count=1 --perl-regexp '^.+_BASE'`"
|
|
||||||
|
|
||||||
LIST_BACKUPS(){
|
|
||||||
mysqlbu list
|
|
||||||
read -n 1 -s -p "Press any key to continue"
|
|
||||||
}
|
|
||||||
RUN_BACKUP(){
|
|
||||||
mysqlbu backup
|
|
||||||
echo ""
|
|
||||||
read -n 1 -s -p "Press any key to continue"
|
|
||||||
}
|
|
||||||
ADD_CRONTAB(){
|
|
||||||
(crontab -l ; echo "0 */3 * * * /usr/local/bin/mysqlbu backup")| crontab -
|
|
||||||
echo ""
|
|
||||||
echo -e "${idsCL[Green]}The crontab entry has been made${idsCL[Default]}"
|
|
||||||
echo ""
|
|
||||||
read -n 1 -s -p "Press any key to continue"
|
|
||||||
}
|
|
||||||
DELETE_BACKUP() {
|
|
||||||
if [ "$1" = "M" ] || [ "$1" = "m" ]; then MAIN_MENU;
|
|
||||||
elif [ "$1" = "Q" ] || [ "$1" = "q" ]; then EXIT1; fi
|
|
||||||
declare -A tbus
|
|
||||||
tba=1
|
|
||||||
for day in $BACKUP_PATH* ; do
|
|
||||||
tbus[${tba}]=$day
|
|
||||||
tbb=0
|
|
||||||
for hour in $day/* ; do
|
|
||||||
tbus[${tba}${abet[${tbb}]}]=$hour
|
|
||||||
tbb=`expr $tbb + 1`
|
|
||||||
done
|
|
||||||
tba=`expr $tba + 1`
|
|
||||||
done
|
|
||||||
|
|
||||||
[ ! ${tbus[$1]+abc} ] && {
|
|
||||||
echo -e -n "${idsCL[LightRed]}Incorrect entry, please try again... (press any key)${idsCL[Default]}";
|
|
||||||
read -n 1
|
|
||||||
DELETE_MENU
|
|
||||||
}
|
|
||||||
|
|
||||||
sbu1=${tbus[$1]}
|
|
||||||
thr=`echo ${sbu1//_BASE/} | sed 's/.*\///'`
|
|
||||||
bsz=`du -sh ${sbu1} | awk '{print $1}'`
|
|
||||||
IFS=/
|
|
||||||
sbu1a=(${tbus[$1]})
|
|
||||||
unset IFS
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
if [ ${#1} = 1 ] ; then
|
|
||||||
echo -e "Backup selected: ${idsST[Bold]}${idsCL[Red]}`date -d"${sbu1a[4]}" +"%A, %B %d, %Y"` - (Entire Day) - (${bsz})${idsST[Reset]}"
|
|
||||||
echo -e "${idsCL[Red]}(This will DELETE the entire days worth of backups for the date selected.)"${idsCL[Default]}
|
|
||||||
delbu=${sbu1}
|
|
||||||
elif [ "${sbu1a[5]: -5}" = "_BASE" ]; then
|
|
||||||
echo -e "Backup selected: ${idsST[Bold]}${idsCL[Red]}`date -d"${sbu1a[4]} ${thr//-/:}" +"%A, %B %d, %Y - %I:%M %P"` - Full Backup - (${bsz})${idsST[Reset]}"
|
|
||||||
echo -e "${idsCL[Red]}(This is a daily base backup, and will result in the full day being DELETED.)"${idsCL[Default]}
|
|
||||||
delbu="/${sbu1a[1]}/${sbu1a[2]}/${sbu1a[3]}/${sbu1a[4]}"
|
|
||||||
else
|
|
||||||
echo -e "Backup selected: ${idsST[Bold]}${idsCL[Red]}`date -d"${sbu1a[4]} ${thr//-/:}" +"%A, %B %d, %Y - %I:%M %P"` - Incremental - (${bsz})${idsST[Reset]}"
|
|
||||||
delbu=${sbu1}
|
|
||||||
fi
|
|
||||||
read -p "Are you sure you wish to DELETE this backup (y/N)?" choice
|
|
||||||
case "$choice" in
|
|
||||||
[Yy])
|
|
||||||
rm -rf $delbu
|
|
||||||
#echo "rm -rf $delbu"
|
|
||||||
echo ""
|
|
||||||
echo -e "${idsCL[LightRed]}Backup has been deleted${idsCL[Default]}"
|
|
||||||
read -n 1 -s -p "Press any key to continue";;
|
|
||||||
|
|
||||||
* ) DELETE_MENU;;
|
|
||||||
esac
|
|
||||||
}
|
|
||||||
MAIN_MENU() {
|
MAIN_MENU() {
|
||||||
while :
|
while :
|
||||||
do
|
do
|
||||||
clear
|
clear
|
||||||
echo ""
|
echo ""
|
||||||
echo -e "${idsCL[LightGreen]} MySQL-BU - M y S Q L B A C K U P S C R I P T S${idsCL[Default]} ${idsCL[DarkGray]}(ver-${VERS})${idsCL[Default]}"
|
echo -e "${idsCL[LightGreen]} NodeMgmt - G a l e r a / N G I N X N o d e M a n a g e m e n t${idsCL[Default]} ${idsCL[DarkGray]}(ver-${VERS})${idsCL[Default]}"
|
||||||
echo -e "${idsCL[LightGreen]}---------------------------------------------------------------------------${idsCL[Default]}"
|
echo -e "${idsCL[LightGreen]}---------------------------------------------------------------------------${idsCL[Default]}"
|
||||||
echo -e "Backups Location: ${idsCL[LightBlue]}${BACKUP_PATH}${idsCL[Default]}"
|
echo -e "Node hostname: ${node_hostname}"
|
||||||
echo -e "MySQL User: ${idsCL[LightBlue]}${MYSQLUSER}${idsCL[Default]}"
|
|
||||||
echo -e "MySQL Password: ${idsCL[LightBlue]}****${idsCL[Default]}"
|
|
||||||
echo -e "MySQL Config File: ${idsCL[LightBlue]}${MYSQLCFG}${idsCL[Default]}"
|
|
||||||
echo -e "# of Days to Keep: ${idsCL[LightBlue]}${BACKUPSTOKEEP}${idsCL[Default]}"
|
|
||||||
echo -e "${idsCL[LightGreen]}---------------------------------------------------------------------------${idsCL[Default]}"
|
echo -e "${idsCL[LightGreen]}---------------------------------------------------------------------------${idsCL[Default]}"
|
||||||
echo ""
|
echo ""
|
||||||
echo " [1] Change Backup Location"
|
echo " [1] Change Backup Location"
|
||||||
@@ -146,47 +64,6 @@ MAIN_MENU() {
|
|||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
DELETE_MENU() {
|
|
||||||
while :
|
|
||||||
do
|
|
||||||
clear
|
|
||||||
echo ""
|
|
||||||
echo -e "${idsCL[LightGreen]} MySQL-BU - M y S Q L B A C K U P S C R I P T S${idsCL[Default]} ${idsCL[DarkGray]}(ver-${VERS})${idsCL[Default]}"
|
|
||||||
echo -e "${idsCL[LightGreen]}---------------------------------------------------------------------------${idsCL[Default]}"
|
|
||||||
echo ""
|
|
||||||
echo -e "${idsCL[LightYellow]}========== Select Which Backup to Delete ==========${idsCL[Default]}"
|
|
||||||
tba=1
|
|
||||||
for day in $BACKUP_PATH* ; do
|
|
||||||
#tdt=`sed 's/.*\///' <<< $day`
|
|
||||||
tdt=`echo $day | sed 's/.*\///'`
|
|
||||||
bsz=`du -sh ${day} | awk '{print $1}'`
|
|
||||||
echo -e "${idsBG[Blue]}${idsCL[LightYellow]}(${tba})${idsCL[White]} -> `date -d"${tdt}" +"%A, %B %d, %Y"` - ${bsz} ${idsCL[Default]}${idsBG[Default]}"
|
|
||||||
tbb=0
|
|
||||||
for hour in $day/* ; do
|
|
||||||
#thr=`sed 's/.*\///' <<< ${hour//_BASE/}`
|
|
||||||
thr=`echo ${hour//_BASE/} | sed 's/.*\///'`
|
|
||||||
bsz=`du -sh ${hour} | awk '{print $1}'`
|
|
||||||
if [ ${hour: -5} = "_BASE" ]; then
|
|
||||||
echo -e "${idsCL[LightYellow]}(${tba}${abet[${tbb}]^^})${idsCL[LightGreen]}${idsST[Bold]} -> `date -d"${tdt} ${thr//-/:}" +"%I:%M %P"` - FULL BACKUP${idsST[Reset]}${idsCL[LightGreen]} - ${bsz}${idsCL[Default]}"
|
|
||||||
else
|
|
||||||
echo -e "${idsCL[LightYellow]}(${tba}${abet[${tbb}]^^})${idsCL[Cyan]} -> `date -d"${tdt} ${thr//-/:}" +"%I:%M %P"` - Incremental - ${bsz}${idsCL[Default]}"
|
|
||||||
fi
|
|
||||||
tbb=`expr $tbb + 1`
|
|
||||||
done
|
|
||||||
tba=`expr $tba + 1`
|
|
||||||
done
|
|
||||||
echo -e "${idsCL[Yellow]}===================================================${idsCL[Default]}"
|
|
||||||
echo ""
|
|
||||||
echo "[M] Main Menu"
|
|
||||||
echo "[Q] Quit"
|
|
||||||
echo ""
|
|
||||||
echo ""
|
|
||||||
echo -e -n "${idsCL[LightYellow]}Please select a backup from above from above:${idsCL[Default]} "
|
|
||||||
read -n 2 opt
|
|
||||||
echo ""
|
|
||||||
DELETE_BACKUP $opt
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
case $1 in
|
case $1 in
|
||||||
'backup')
|
'backup')
|
||||||
@@ -314,7 +191,7 @@ case $1 in
|
|||||||
DELETE_MENU
|
DELETE_MENU
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
echo "Usage: $0 { backup | backup-base | backup-incremental | restore | list | gui }"
|
echo "Usage: $0 { gui | backup | backup-base | backup-incremental | restore | list }"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user