- Mitglied seit
- 25. Jan 2016
- Beiträge
- 5.392
- Punkte für Reaktionen
- 511
- Punkte
- 214
Ich teile nochmals meinen Weg, ich glaube einige Seiten weiter vorne gibts das schon mal. Aber (!), bei den IP-Adressen xxx ist die IP der Ziel-VM anzugeben. Ausserdem, diejenigen, die in Grofiles, Grochat usw. auch noch Daten haben, müssen diese Verzeichnisse dann auch übertragen, da ich da nichts habe, sind die hier nicht dargestellt. Einfach mal testen und ggf. ausfeilen. Solange man mit der Ziel-VM kein Produktivsystem hat und experimentieren kann, ist es nicht tragisch, wenn da mal ein Fehler passiert. Dann einfach löschen und neu anlegen.
----------
Quell- und Zielsystem updaten auf die jeweils gleichen Softwarestände und rebooten: grommunio-update update && reboot
Neues System mit denselben Parametern einrichten über den Wizard, wie das bisherige System. Keine Anlegungen von Firmen- oder Userdaten, also nacktes System.
Dienste beenden auf beiden Systemen:
systemctl --all --output json list-units| jq '.[]|select(.unit|test("(^grom.*|nginx|.*fpm).service")).unit' |xargs systemctl stop
Export der MariaDB-Datenbank:
mysql --execute="SHOW DATABASES" --skip-column-names --batch |grep -Ev '^(mysql|(performance|information)_schema)$' |while read -r DB; do mysqldump --single-transaction --routines --triggers --events --add-drop-database $DB > /usr/local/share/$DB.sql ; done
Für Folgepunkte ggf. /root/.ssh/known_hosts umbenennen / löschen, wenn vorher Übertragungen an gleiche IP stattgefunden haben.
Nutzerdatenübertragung Q -> Z !!! entspricht Spiegelung, Verzeichnisinhalte im Ziel werden gelöscht !!!:
rsync -aH -essh --delete --numeric-ids -P --stats --inplace /usr/local/share/ root@192.168.168.xxx:/usr/local/share/
CronDaily Übertragung Q -> Z !!! entspricht Spiegelung, Verzeichnisinhalte im Ziel werden gelöscht !!!:
rsync -aH -essh --delete --numeric-ids -P --stats --inplace /etc/cron.daily/ root@192.168.168.xxx:/etc/cron.daily/
CronHourly Übertragung Q -> Z !!! entspricht Spiegelung, Verzeichnisinhalte im Ziel werden gelöscht !!!:
rsync -aH -essh --delete --numeric-ids -P --stats --inplace /etc/cron.hourly/ root@192.168.168.xxx:/etc/cron.hourly/
Postfachübertragung Q -> Z !!! entspricht Spiegelung, Verzeichnisinhalte im Ziel werden gelöscht !!!:
rsync -aH -essh --delete --numeric-ids -P --stats --inplace /var/lib/gromox/ root@192.168.168.xxx:/var/lib/gromox/
Ordnerberechtigungen prüfen // gromox unter Umständen falsch konfiguriert
chown -Rf gromox:gromox /var/lib/gromox && chown -Rf grommunio:gromox /var/lib/gromox/user/* && chmod -Rf 0770 /var/lib/gromox && chmod -Rf 0775 /var/lib/gromox/domain/*
Import der MariaDB-Datenbank (hier nur Core, alle anderen ggf. auch für Files, Chat usw.):
mysql grommunio < /usr/local/share/grommunio.sql
mysql sys < /usr/local/share/sys.sql
Importuser prüfen /var/lib/gromox/user/x/y/: grommunio-admin user query username maildir auf beiden Systemen ausführen, ob gleich
Dienste starten auf beiden Systemen:
systemctl --all --output json list-units| jq '.[]|select(.unit|test("(^grom.*|nginx|.*fpm).service")).unit' |xargs systemctl start && reboot
----------
Quell- und Zielsystem updaten auf die jeweils gleichen Softwarestände und rebooten: grommunio-update update && reboot
Neues System mit denselben Parametern einrichten über den Wizard, wie das bisherige System. Keine Anlegungen von Firmen- oder Userdaten, also nacktes System.
Dienste beenden auf beiden Systemen:
systemctl --all --output json list-units| jq '.[]|select(.unit|test("(^grom.*|nginx|.*fpm).service")).unit' |xargs systemctl stop
Export der MariaDB-Datenbank:
mysql --execute="SHOW DATABASES" --skip-column-names --batch |grep -Ev '^(mysql|(performance|information)_schema)$' |while read -r DB; do mysqldump --single-transaction --routines --triggers --events --add-drop-database $DB > /usr/local/share/$DB.sql ; done
Für Folgepunkte ggf. /root/.ssh/known_hosts umbenennen / löschen, wenn vorher Übertragungen an gleiche IP stattgefunden haben.
Nutzerdatenübertragung Q -> Z !!! entspricht Spiegelung, Verzeichnisinhalte im Ziel werden gelöscht !!!:
rsync -aH -essh --delete --numeric-ids -P --stats --inplace /usr/local/share/ root@192.168.168.xxx:/usr/local/share/
CronDaily Übertragung Q -> Z !!! entspricht Spiegelung, Verzeichnisinhalte im Ziel werden gelöscht !!!:
rsync -aH -essh --delete --numeric-ids -P --stats --inplace /etc/cron.daily/ root@192.168.168.xxx:/etc/cron.daily/
CronHourly Übertragung Q -> Z !!! entspricht Spiegelung, Verzeichnisinhalte im Ziel werden gelöscht !!!:
rsync -aH -essh --delete --numeric-ids -P --stats --inplace /etc/cron.hourly/ root@192.168.168.xxx:/etc/cron.hourly/
Postfachübertragung Q -> Z !!! entspricht Spiegelung, Verzeichnisinhalte im Ziel werden gelöscht !!!:
rsync -aH -essh --delete --numeric-ids -P --stats --inplace /var/lib/gromox/ root@192.168.168.xxx:/var/lib/gromox/
Ordnerberechtigungen prüfen // gromox unter Umständen falsch konfiguriert
chown -Rf gromox:gromox /var/lib/gromox && chown -Rf grommunio:gromox /var/lib/gromox/user/* && chmod -Rf 0770 /var/lib/gromox && chmod -Rf 0775 /var/lib/gromox/domain/*
Import der MariaDB-Datenbank (hier nur Core, alle anderen ggf. auch für Files, Chat usw.):
mysql grommunio < /usr/local/share/grommunio.sql
mysql sys < /usr/local/share/sys.sql
Importuser prüfen /var/lib/gromox/user/x/y/: grommunio-admin user query username maildir auf beiden Systemen ausführen, ob gleich
Dienste starten auf beiden Systemen:
systemctl --all --output json list-units| jq '.[]|select(.unit|test("(^grom.*|nginx|.*fpm).service")).unit' |xargs systemctl start && reboot