60 lines
1.3 KiB
Bash
Executable File
60 lines
1.3 KiB
Bash
Executable File
#! /usr/bin/bash
|
|
|
|
if [[ $UID != 0 ]]; then
|
|
echo "Please run this using sudo"
|
|
exit
|
|
fi
|
|
|
|
prefix=backup_Gitea
|
|
targetFolder=/mnt/data0/
|
|
target=gitea
|
|
|
|
#Database info
|
|
dbname="giteadb"
|
|
dbhost="localhost"
|
|
dbuser="gitea"
|
|
dbpw="gitea"
|
|
|
|
|
|
fileName=$prefix-$(date +'%Y%m%d').tar.gz
|
|
dir=$(pwd)
|
|
|
|
echo "====== backup Gitea from $targetFolder/$target"
|
|
echo " /etc/gitea/app.ini"
|
|
echo " /etc/systemd/system/gitea.service"
|
|
|
|
echo "====== check number of old backup"
|
|
nBackup=$(ls -1 $prefix-* | wc -l)
|
|
echo "number of backup : ${nBackup}"
|
|
if [[ $nBackup -gt 3 ]]; then
|
|
oldFile=$(ls -t $prefix-* | tail -1)
|
|
echo "removing the old backup $oldFile"
|
|
rm -f $oldFile
|
|
fi
|
|
|
|
echo "====== dump the database to $targetFolder/$target"
|
|
cd $targetFolder/$target
|
|
mysqldump --user=$dbuser --password=$dbpw --add-drop-table $dbname > dbcontent.sql
|
|
|
|
|
|
echo "====== cp /etc/gitea/app.ini to /mnt/data0/gitea"
|
|
cp /etc/gitea/app.ini .
|
|
|
|
echo "====== cp /etc/systemd/system/gitea.service to /mnt/data0/gitea"
|
|
cp /etc/systemd/system/gitea.service .
|
|
|
|
echo "====== cd to /mnt/data0"
|
|
|
|
cd $targetFolder
|
|
tar -cf - $target -P | pv -s $(du -sb $target | awk '{print $1}') | gzip > $fileName
|
|
|
|
ls -l $fileName
|
|
mv $fileName $dir/.
|
|
|
|
echo "backup saved to ${fileName}"
|
|
|
|
echo "===== ssh to newton.physics.fsu.edu"
|
|
cd $dir
|
|
scp -rp $fileName ryan@128.186.111.52:/backupHome/.
|
|
|