summaryrefslogtreecommitdiffstats
path: root/abs/core-testing/LinHES-system/bin/mythrestore
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core-testing/LinHES-system/bin/mythrestore')
-rwxr-xr-xabs/core-testing/LinHES-system/bin/mythrestore137
1 files changed, 0 insertions, 137 deletions
diff --git a/abs/core-testing/LinHES-system/bin/mythrestore b/abs/core-testing/LinHES-system/bin/mythrestore
deleted file mode 100755
index 447b0b8..0000000
--- a/abs/core-testing/LinHES-system/bin/mythrestore
+++ /dev/null
@@ -1,137 +0,0 @@
-#!/bin/bash
-
-#----------------------------------------------------------------------------
-. /usr/LH/bin/backupcommon || {
- echo 1>&2 "Can not load common settings!"
- exit 1
-}
-
-. /etc/osd_cat.cfg || {
- color=yellow
- outline=2
- outlinecolour=black
- shadow=0
- shadowcolour=black
- font="-adobe-helvetica-bold-*-*-*-34-*-*-*-*-*-*-*"
-}
-#----------------------------------------------------------------------------
-
-# Function to display status onscreen
-osd()
-# Arg_1 = display text Arg_2 = delay time Arg_3 = line num
-{
- TEXT=$1
- killall -9 osd_cat
- if [ $3 -gt 1 ]; then
- for ((i=2; i <= $3 ; i++))
- do
- TEXT="\n"$TEXT
- done
- fi
- printf "$TEXT" | osd_cat --lines=6 --pos=middle --align=center --delay=$2 --color=$color --outline=$outline --outlinecolour=$outlinecolour --shadow=$shadow --shadowcolour=$shadowcolour --font=$font &
-}
-
-do_file_updates() { # A function because we need to do this in two places
- echo "Doing any needed file updates..."
- [ -n "$UPDATE_FILES" -a -f "$UPDATE_FILES" -a -x "$UPDATE_FILES" ] &&
- "$UPDATE_FILES"
-}
-
-do_db_updates() {
- # We need to redo this since we just restored the old settings...
- lock_myth
- # This is gross, but makes sure that the lock count has a sane value...
- mysql_cmd "update settings set data = '1' where value = 'MythShutdownLock'"
-
- # Clean up ambiguous schema version settings...
- for val in $(mysql_cmd "select distinct value from settings where value like '%SchemaVer'") ; do
- # Find the numeric maximum version for this schema
- max_ver=$(mysql_cmd "select max(0 + ifnull(data, 0)) from settings where value = '$val'")
- # Wipe out all the existing ones
- mysql_cmd "delete from settings where value = '$val'"
- # Insert a nice clean unique one.
- mysql_cmd "insert into settings set value = '$val', data = '$max_ver'"
- done
-
- # This table causes problems with mythweb on upgrades...
- mysql_cmd "update settings set data = '0' where value = 'WebDBSchemaVer'"
- mysql_cmd "drop table mythweb_sessions" >/dev/null 2>&1
-}
-
-# Let's prevent mythshutdown from shutting down the system.
-lock_myth
-
-# Play a sound to let you know I'm starting.
-play_sound restore.wav
-export DISPLAY=:0.0
-
-# Doing this while the backend is active could be BAD.
-stop_mythbackend
-
-# If the standard backup file exists we try to restore the files based
-# on our restore list.
-if compression=$(compression_type "$BACKUP_TAR") ; then
- osd "Restoring files..." 0 1
- echo "Starting the restore of files..."
- cd /
- expand -c $BACKUP_TAR$compression |
- $TAR xpvf - $RESTORE_LIST $EXCLUSION 2>&1 |
- $SED -e '/Error exit delayed from previous errors/d'
- echo "Completed the restore of files."
-fi
-
-# If the db backup file exists start the DB restore and upgrade
-if compression=$(compression_type "$BACKUP_SQL") ; then
- echo "Starting the DB restore, this can take a while..."
- echo "Clearing out the existing skeleton..."
- #mysql_stdin < $DROP_SQL
- osd "Recreating database..." 0 2
- echo "Recreating the db..."
- sleep 1
- $MYSQLADMIN -u root create $DATABASE
- osd "Restoring database..." 0 3
- echo "Restoring the data (long)..."
- expand -c $BACKUP_SQL$compression | mysql_stdin
- echo "Doing any needed db updates..."
- [ -n "$UPDATE_SQL" -a -f "$UPDATE_SQL" ] &&
- mysql_stdin < $UPDATE_SQL
- echo "Completed the DB restore."
-fi
-
-osd "Testing restore..." 0 4
-echo "Sanity checking your restore..."
-play_sound vr.wav
-# Play a sound to let you know the outcome.
-if check_files_and_tables $RESTORE_LIST ; then
- osd "Restore completed successfully." 5 5
- echo "Restore passes all checks."
- COMPLETE_MSG="Last restore completed on `date '+%D @ %-I:%M %p'`"
- play_sound restored.wav
- STATUS=0
-else
- osd "Restore FAILED." 5 5
- echo "The restore failed or was already modified!"
- COMPLETE_MSG="Last restore FAILED on `date '+%D @ %-I:%M %p'`"
- play_sound rf.wav
- STATUS=1
-fi
-
-# Add Last restore status to menu item
-if grep "<description>" /usr/share/mythtv/themes/defaultmenu/mythrestore.xml >/dev/null 2>&1
-then
- sed -i "s_\<description\>.*\<description\>_description\>$COMPLETE_MSG\<\/description_" /usr/share/mythtv/themes/defaultmenu/mythrestore.xml
-else
- sed -i.orig " /NONE/ i\ \<description\>$COMPLETE_MSG\<\/description\>" /usr/share/mythtv/themes/defaultmenu/mythrestore.xml
-fi
-
-# Make any updates _after_ we verify the backup...
-do_db_updates
-do_file_updates
-
-#post restore fixup for sshd
-/usr/MythVantage/bin/systemconfig.py -m user
-
-# Now it's more or less safe to restart the backend.
-start_mythbackend
-
-exit $STATUS