mirror of
https://github.com/flynx/proxmox-utils.git
synced 2025-10-28 18:50:08 +00:00
experimenting...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
parent
802923994a
commit
2ca1aabf3b
10
.pct-helpers
10
.pct-helpers
@ -38,6 +38,16 @@ function @ (){
|
|||||||
return $?
|
return $?
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function @@ (){
|
||||||
|
if [ -z $DRY_RUN ] ; then
|
||||||
|
! [ $QUIET ] \
|
||||||
|
&& echo -e "${ECHO_PREFIX}$@"
|
||||||
|
eval "$@"
|
||||||
|
else
|
||||||
|
echo -e $@
|
||||||
|
fi
|
||||||
|
return $?
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#----------------------------------------------------------------------
|
#----------------------------------------------------------------------
|
||||||
|
|||||||
@ -22,33 +22,79 @@ readConfig
|
|||||||
# see:
|
# see:
|
||||||
# https://docs.nextcloud.com/server/latest/admin_manual/maintenance/backup.html
|
# https://docs.nextcloud.com/server/latest/admin_manual/maintenance/backup.html
|
||||||
if [ $1 == 'backup' ] ; then
|
if [ $1 == 'backup' ] ; then
|
||||||
# XXX maintenance mode:
|
# XXX confirm vars...
|
||||||
# turnkey-occ maintenance:mode --on
|
# XXX
|
||||||
# XXX files:
|
|
||||||
# rsync -Aavx nextcloud/ nextcloud-dirbkp_`date +"%Y%m%d"`/
|
DATE=$(date +%Y%m%d%H%M)
|
||||||
|
DIR=${DATE}-${CTHOSTNAME}-${ID}
|
||||||
|
|
||||||
|
mkdir "${DIR}"
|
||||||
|
cd "${DIR}"
|
||||||
|
|
||||||
|
@ lxc-attach $ID -- turnkey-occ maintenance:mode --on
|
||||||
|
|
||||||
|
# sql...
|
||||||
# XXX db:
|
# XXX db:
|
||||||
# mysqldump --single-transaction \
|
# mysqldump --single-transaction \
|
||||||
# -h [server] -u [username] -p[password] [db_name] \
|
# -h [server] -u [username] -p[password] \
|
||||||
|
# [db_name] \
|
||||||
# > nextcloud-sqlbkp_`date +"%Y%m%d"`.bak
|
# > nextcloud-sqlbkp_`date +"%Y%m%d"`.bak
|
||||||
# or:
|
# or:
|
||||||
# mysqldump --single-transaction --default-character-set=utf8mb4 \
|
# mysqldump --single-transaction --default-character-set=utf8mb4 \
|
||||||
# -h [server] -u [username] -p[password] [db_name] \
|
# -h [server] -u [username] -p[password] \
|
||||||
|
# [db_name] \
|
||||||
# > nextcloud-sqlbkp_`date +"%Y%m%d"`.bak
|
# > nextcloud-sqlbkp_`date +"%Y%m%d"`.bak
|
||||||
# XXX maintenance mode:
|
@ lxc-attach $ID -- mysqldump --single-transaction nextcloud > nextcloud.sql
|
||||||
# turnkey-occ maintenance:mode --off
|
|
||||||
|
# files...
|
||||||
|
pct mount $ID
|
||||||
|
rsync -Aavx /var/lib/lxc/$ID/rootfs/var/www/nextcloud-data .
|
||||||
|
pct unmount $ID
|
||||||
|
|
||||||
|
@ lxc-attach $ID -- turnkey-occ maintenance:mode --off
|
||||||
exit
|
exit
|
||||||
|
|
||||||
# Restore backup...
|
# Restore backup...
|
||||||
# see:
|
# see:
|
||||||
# https://docs.nextcloud.com/server/latest/admin_manual/maintenance/restore.html
|
# https://docs.nextcloud.com/server/latest/admin_manual/maintenance/restore.html
|
||||||
elif [ $1 == 'restore' ] ; then
|
elif [ $1 == 'restore' ] ; then
|
||||||
|
# XXX confirm vars...
|
||||||
# XXX
|
# XXX
|
||||||
|
|
||||||
|
@ lxc-attach $ID -- turnkey-occ maintenance:mode --on
|
||||||
|
|
||||||
|
# XXX
|
||||||
|
|
||||||
|
@ lxc-attach $ID -- turnkey-occ maintenance:mode --off
|
||||||
exit
|
exit
|
||||||
|
|
||||||
# Migrate...
|
# Migrate...
|
||||||
elif [ $1 == 'migrate' ] ; then
|
elif [ $1 == 'migrate' ] ; then
|
||||||
# XXX similar to make.sh backup && make.sh restore but copies data directly (rsync)...
|
# XXX similar to make.sh backup && make.sh restore but copies data directly (rsync)...
|
||||||
# XXX
|
# XXX
|
||||||
|
@ lxc-attach $A -- turnkey-occ maintenance:mode --on
|
||||||
|
@ lxc-attach $B -- turnkey-occ maintenance:mode --on
|
||||||
|
|
||||||
|
# sql
|
||||||
|
# mysql -h [server] -u [username] -p[password] -e "DROP DATABASE nextcloud"
|
||||||
|
# mysql -h [server] -u [username] -p[password] -e "CREATE DATABASE nextcloud"
|
||||||
|
# mysql -h [server] -u [username] -p[password] [db_name] < nextcloud-sqlbkp.bak
|
||||||
|
|
||||||
|
# XXX need to echo this -- @ will not work here as we need to include the pipe...
|
||||||
|
(lxc-attach $A -- mysqldump --single-transaction nextcloud \
|
||||||
|
| lxc-attach $B -- mysql nextcloud)
|
||||||
|
|
||||||
|
# files...
|
||||||
|
pct mount $A
|
||||||
|
pct mount $B
|
||||||
|
rsync -Aavx \
|
||||||
|
/var/lib/lxc/$A/rootfs/var/www/nextcloud-data
|
||||||
|
/var/lib/lxc/$B/rootfs/var/www/nextcloud-data
|
||||||
|
pct unmount $A
|
||||||
|
pct unmount $B
|
||||||
|
|
||||||
|
@ lxc-attach $A -- turnkey-occ maintenance:mode --off
|
||||||
|
@ lxc-attach $B -- turnkey-occ maintenance:mode --off
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user