MediaWiki per script kopieren (USB)

Aus CyberWiki
Zur Navigation springen Zur Suche springen

Ausführung auf Diskstation
./wikibackusb.sh

#!/bin/bash
# Abfrage ob USB-Stick vorhanden ---------------------
echo "USB-Stick muss eingesteckt sein!"
DEVICE=/dev/sds1
mount | grep -q "${DEVICE}"
if [ $? -eq 0 ] ; then
	echo "${DEVICE} ist mounted!"
	read -s -p "Datenbank-Password: " dbpassword
	# echo $dbpassword
	# Mit Backup beginnen ----------------------------
	echo ""
	echo "Backup wikidb"
	sudo mysqldump -uUSER -p$dbpassword wikidb > /volumeUSB2/usbshare/wikidb_dmp.sql
	echo "Backup CYBERDB"
	sudo mysqldump -uUSER -p$dbpassword CYBERDB > /volumeUSB2/usbshare/CYBERDB_dmp.sql
	echo "Backup Ordner images in MEdiaWiki"
	sudo tar -czf /volumeUSB2/usbshare/WI_images.tgz /volume1/web/MediaWiki/images
	echo "Backup Ordner images in CyberWiki"
	sudo tar -czf /volumeUSB2/usbshare/CY_images.tgz /volume1/web/CyberWiki/images
	echo "Backup beendet!"
else
	# Sicherung kann nicht durchgefuehrt werden ------
	echo "${DEVICE} ist nicht mounted!"
	# Script wird beendet ----------------------------
fi
echo "Script beendet"

Ausführung auf Raspberry Pi
./wikirestusb.sh

#!/bin/bash
# USB-Stick muss eingesteckt sein!  -----------------------
DEVICE=/dev/sda1
mount | grep -q "${DEVICE}"
if [ $? -eq 0 ] ; then
	echo "${DEVICE} ist mounted!"
	if [ -f /media/usb0/wikidb_dmp.sql ] \
	  && [ -f /media/usb0/CYBERDB_dmp.sql ] \
	  && [ -f /media/usb0/WI_images.tgz ] \
	  && [ -f /media/usb0/CY_images.tgz ]; then
		echo "Backup Files existieren"
		read -s -p "Datenbank-Password: " dbpassword
		# echo $dbpassword
		echo ""
		# Mit Restore beginnen ---------------------
		# Datenbanken loeschen
		echo "Datenbanken loeschen"
		mysqladmin -uUSER -p$dbpassword drop WIKIDB
		mysqladmin -uUSER -p$dbpassword drop CYBERDB
		echo "Leere Datenbanken erstellen"
		mysql -uUSER -p$dbpassword -e "create database WIKIDB"
		mysql -uUSER -p$dbpassword -e "create database CYBERDB"
		echo "Restore WIKIDB"
		mysql -uUSER -p$dbpassword WIKIDB < /media/usb0/wikidb_dmp.sql
		echo "Restore CYBERDB"
		mysql -uUSER -p$dbpassword CYBERDB < /media/usb0/CYBERDB_dmp.sql
		# images aus mediawiki auf USB-Stick entpacken und kopieren
		echo "MediaWiki: Ordner loeschen, entpacken und neu kopieren"
		tar -xzf /media/usb0/WI_images.tgz -C /media/usb0/
		sudo rm -r /var/www/mediawiki/images
		sudo cp -R /media/usb0/volume1/web/MediaWiki/images /var/www/mediawiki/
		sudo chown -R www-data:www-data /var/www/mediawiki/images
		rm -R /media/usb0/volume1
		# images aus cyberwiki auf USB-Stick entpacken und kopieren
		echo "CyberWiki: Ordner loeschen, entpacken und neu kopieren"
		tar -xzf /media/usb0/CY_images.tgz -C /media/usb0/
		sudo rm -r /var/www/cyberwiki/images
		sudo cp -R /media/usb0/volume1/web/CyberWiki/images /var/www/cyberwiki/
		sudo chown -R www-data:www-data /var/www/cyberwiki/images
		rm -R /media/usb0/volume1
		# Files auf USB-Stick loeschen
		echo "Backup Files von USB-Stick loeschen"
		rm /media/usb0/CYBERDB_dmp.sql
		rm /media/usb0/CY_images.tgz
		rm /media/usb0/wikidb_dmp.sql
		rm /media/usb0/WI_images.tgz
		echo "Restore beendet!"
	else
		echo "Mindestens eine Datei fehlt auf USB-Stick!"
		echo "wikidb_dmp.sql, CYBERDB_dmp.sql, WI_images.tgz, CY_images.tgz"
	fi
else
	# Sicherung kann nicht durchgefuehrt werden
	echo "${DEVICE} ist nicht mounted!"
	# Script wird beendet
fi
echo "Script beendet"