Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/nextcloudpi.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'etc/ncp-config.d/nc-restore.sh')
-rw-r--r--etc/ncp-config.d/nc-restore.sh25
1 files changed, 14 insertions, 11 deletions
diff --git a/etc/ncp-config.d/nc-restore.sh b/etc/ncp-config.d/nc-restore.sh
index 25910e46..ee1bd731 100644
--- a/etc/ncp-config.d/nc-restore.sh
+++ b/etc/ncp-config.d/nc-restore.sh
@@ -34,10 +34,11 @@ DBPASSWD="$( grep password /root/.my.cnf | sed 's|password=||' )"
DIR="$( cd "$( dirname "$BACKUPFILE" )" &>/dev/null && pwd )" #abspath
-[[ $# -eq 0 ]] && { echo "missing first argument" ; exit 1; }
-[[ -f "$BACKUPFILE" ]] || { echo "$BACKUPFILE not found" ; exit 1; }
-[[ "$DIR" =~ "/var/www/nextcloud" ]] && { echo "Refusing to restore from /var/www/nextcloud"; exit 1; }
-[[ -d /var/www/nextcloud ]] && { echo "INFO: overwriting old instance"; }
+[[ -f /.docker-image ]] && NCDIR=/data/app || NCDIR=/var/www/nextcloud
+
+[[ $# -eq 0 ]] && { echo "missing first argument" ; exit 1; }
+[[ -f "$BACKUPFILE" ]] || { echo "$BACKUPFILE not found" ; exit 1; }
+[[ "$DIR" =~ "$NCDIR" ]] && { echo "Refusing to restore from $NCDIR"; exit 1; }
TMPDIR="$( mktemp -d "$( dirname "$BACKUPFILE" )"/ncp-restore.XXXXXX )" || { echo "Failed to create temp dir" >&2; exit 1; }
TMPDIR="$( cd "$TMPDIR" &>/dev/null && pwd )" || { echo "$TMPDIR not found"; exit 1; } #abspath
@@ -66,8 +67,8 @@ tar -xf "$BACKUPFILE" -C "$TMPDIR" || exit 1
## RESTORE FILES
echo "restore files..."
-rm -rf /var/www/nextcloud
-mv "$TMPDIR"/nextcloud /var/www || { echo "Error restoring base files"; exit 1; }
+rm -rf "$NCDIR"
+mv -T "$TMPDIR"/nextcloud "$NCDIR" || { echo "Error restoring base files"; exit 1; }
# update NC database password to this instance
sed -i "s|'dbpassword' =>.*|'dbpassword' => '$DBPASSWD',|" /var/www/nextcloud/config/config.php
@@ -96,14 +97,14 @@ mysql -u root nextcloud < "$TMPDIR"/nextcloud-sqlbkp_*.bak || { echo "Error res
## RESTORE DATADIR
-cd /var/www/nextcloud
+cd "$NCDIR"
### INCLUDEDATA=yes situation
NUMFILES=$(( 2 + COMPRESSED ))
if [[ $( ls "$TMPDIR" | wc -l ) -eq $NUMFILES ]]; then
- DATADIR=$( grep datadirectory /var/www/nextcloud/config/config.php | awk '{ print $3 }' | grep -oP "[^']*[^']" | head -1 )
+ DATADIR=$( grep datadirectory "$NCDIR"/config/config.php | awk '{ print $3 }' | grep -oP "[^']*[^']" | head -1 )
[[ "$DATADIR" == "" ]] && { echo "Error reading data directory"; exit 1; }
echo "restore datadir to $DATADIR..."
@@ -129,7 +130,7 @@ if [[ $( ls "$TMPDIR" | wc -l ) -eq $NUMFILES ]]; then
else
echo "no datadir found in backup"
- DATADIR=/var/www/nextcloud/data
+ DATADIR="$NCDIR"/data
sudo -u www-data php occ maintenance:mode --off
sudo -u www-data php occ files:scan --all
@@ -149,8 +150,10 @@ sed -i "s|^;\?upload_tmp_dir =.*$|upload_tmp_dir = $DATADIR/tmp|" /etc/php/7.0/f
sed -i "s|^;\?sys_temp_dir =.*$|sys_temp_dir = $DATADIR/tmp|" /etc/php/7.0/fpm/php.ini
# update fail2ban logpath
-sed -i "s|logpath =.*|logpath = $DATADIR/nextcloud.log|" /etc/fail2ban/jail.conf
-pgrep fail2ban &>/dev/null && service fail2ban restart
+[[ ! -f /.docker-image ]] && {
+ sed -i "s|logpath =.*|logpath = $DATADIR/nextcloud.log|" /etc/fail2ban/jail.conf
+ pgrep fail2ban &>/dev/null && service fail2ban restart
+}
# refresh nextcloud trusted domains
bash /usr/local/bin/nextcloud-domain.sh