From a14f410fc9a0b2b02fa62c6d138cd743ff579a05 Mon Sep 17 00:00:00 2001 From: Ben Peddell Date: Sat, 18 Jul 2015 08:33:19 +1000 Subject: [PATCH] Add last-ditch backup attempt --- tools/arkmanager | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/tools/arkmanager b/tools/arkmanager index 2f86567..f382c21 100755 --- a/tools/arkmanager +++ b/tools/arkmanager @@ -429,6 +429,11 @@ doBackup(){ sleep 2 cp -p "${arkserverroot}/ShooterGame/Saved/SavedArks/${serverMap}.ark" "${backupdir}/${serverMap}.ark" fi + # If both attempts fail, server may have + # crashed between unlink and rename + if [ ! -f "${backupdir}/${serverMap}.ark" ]; then + cp -p "${arkserverroot}/ShooterGame/Saved/SavedArks/${serverMap}.tmp" "${backupdir}/${serverMap}.ark" + fi if [ -f "${backupdir}/${serverMap}.ark" ]; then echo -e "${NORMAL}[ ${GREEN}OK${NORMAL} ]" else @@ -447,6 +452,11 @@ doBackup(){ sleep 2 cp -p "${f}" "${backupdir}/${f##*/}" fi + # If both attempts fail, server may have + # crashed between truncate and write + if [ ! -s "${backupdir}/${f##*/}" ]; then + cp -p "${f%.arkprofile}.tmpprofile" "${backupdir}/${f##*/}" + fi if [ -s "${backupdir}/${f##*/}" ]; then echo -e "${NORMAL}[ ${GREEN}OK${NORMAL} ]" else @@ -463,6 +473,11 @@ doBackup(){ sleep 2 cp -p "${f}" "${backupdir}/${f##*/}" fi + # If both attempts fail, server may have + # crashed between truncate and write + if [ ! -s "${backupdir}/${f##*/}" ]; then + cp -p "${f%.arktribe}.tmptribe" "${backupdir}/${f##*/}" + fi if [ -s "${backupdir}/${f##*/}" ]; then echo -e "${NORMAL}[ ${GREEN}OK${NORMAL} ]" else