CloudWays - bash script för att ladda ner lokala säkerhetskopior för alla applikationer på en server
bin/bash|
|# CloudWays - Ladda ner lokala säkerhetskopior för alla applikationer|
|#
|# * Lokala säkerhetskopior måste vara aktiverade och tillgängliga. Se httpssupport.cloudways.com/how-to-download-a-full-backup/|
|# * Lägg till din maskins SSH-nyckel till din server så att det här skriptet inte behöver inmatas.|
|# * Säkerhetskopior kommer att sparas i en ny mapp med dagens datum i din nominerade säkerhetskopieringskatalog. (Detta kanske inte är det datum då säkerhetskopian togs
|# * Endast testad på Digital Ocean VPS hittills.|
|# Konfiguration|
|username='DIN_MASTER_CREDENTIALS_USERNAME'|
|serverIp='DIN_SERVER_IP'|
|backupDir='LOCAL_BACKUP_DIRECTORY_PATH'# Exempel: CloudWays/Backups'|
|# Hämta program-ID:n för säkerhetskopiering|
|echo "Hämtar applikations-ID:n
|appsssh $användarnamn@$serverIp ls /home/master/applikationer
|appCountapps
|om! appCount >0)); sedan|
|echo "ðÃÂÃÂñ Nedladdning misslyckades. Det gick inte att hämta program-ID:n
|avsluta|
|fi|
|echo "$appCount-applikationer hittades
|# Skapa och byt till backupkatalogen|
|dirbackupDirdate F
|om! mkdir "$dir"; sedan|
|echo "ðÃÂÃÂñ Nedladdning misslyckades. Kunde inte skapa backupkatalog
|avsluta|
|fi|
|cd "$dir"|
|# Kopiera varje appbackup separat. Inte lika elegant som ett enda scp-kommando men borde vara bra.|
|doneCount=0|
|för i i appar
|gör|
|appIdapps[$i
|numi + 1
|echo num of $appCount] Laddar ner $appId
|if scp "$användarnamn@$serverIp:/home/master/applications/$appId/local_backups/backup.tgz"appId.tgz"; sedan|
|echo "ðÃÂÃÂàKlar
|doneCountdoneCount + 1
|annat|
|echo "ðÃÂÃÂàKunde inte ladda ner $appId
|fi|
|klar|
|# Slutrapport|
|if doneCount == 0)) ; sedan|
|echo "ðÃÂÃÂñ Alla nedladdningar misslyckades
|elif doneCount == $appCount)) ; sedan|
|echo "ðÃÂÃÂàAlla nedladdningar lyckades
|annat|
|echo "ðÃÂäè Vissa nedladdningar misslyckades
|fi|