Migratehelper/fr
migratehelper logo | |
Maintainer | [[user:Jean-Philippe Pialasse|Jean-Philippe Pialasse]] |
---|---|
Url | https://wiki.contribs.org |
Licence | GPL |
Category | |
Tags | backup, restore, contribs |
Mainteneur
Version
Description
Il s'agit d'une suite de scripts destinée à faciliter la sauvegarde et la restauration lors de la migration vers une autre machine avec la même version de Koozali SME ou une plus récente.
Elle créera une archive similaire à la sauvegarde USB de la console, permettant ainsi la restauration de la console au démarrage directement après l'installation.
Elle sauvegardera tous les emplacements déjà connus par les scripts pour chaque contribution installée.
Elle sauvegardera également tout espace utilisateur connu pour contenir des fichiers ajoutés potentiellement manuellement.
Elle créera une liste des paquets actuellement installés et les décomposera pour faciliter l'installation plus tard.
Une étape consistera à télécharger les paquets depuis les dépôs pour permettre une réinstallation rapide. Un script sera utilisé ultérieurement pour permettre le téléchargement à partir d'une version plus récente.
Il existe également une liste d'exclusion. Par défaut, /home/e-smith/files se trouve dans cette liste d'exclusion. Vous pouvez donc avoir une sauvegarde du serveur et une restauration plus rapide. Cela suppose que vous sauvegardiez séparément ces fichiers et que vous les restauriez manuellement plus tard (ou les avoir sur un point de montage séparé, vous pouvez facilement remonter ce dernier), car le serveur peut démarrer sans eux lors de l'installation.
Installation
yum --enablerepo=smecontribs install smeserver-migratehelper
wget https://viewvc.koozali.org/smecontribs/rpms/smeserver-migratehelper/contribs10/migratehelper.sh -O /usr/bin/migratehelper.sh
Utilisation et comportement
Vous devez d'abord créer le point de montage et monter votre disque externe déjà formaté et avec suffisamment de place pour recevoir l'archive :
mkdir /mnt/backup
mount /dev/mydisk /mnt/backup
Vous pouvez ensuite éditer le script et ajouter vos répertoires ou fichiers à inclure dans la section dir.list, vos exclusions dans la section exclude.list. Vérifiez ensuite que toutes vos contributions sont répertoriées et que la destination associée est correcte.
vim /usr/bin/migratehelper.sh
Ensuite, lancez le script.
/usr/bin/migratehelper.sh
Le script traitera ensuite tous les fichiers à sauvegarder et affichera la progression à l'écran. Après avoir créé la liste définitive en fonction des paquets installés, il va ensuite créer une liste des paquets installés et les ventiler en deux listes faciles à restaurer :
Fichiers | Description |
---|---|
/root/newrpms | output of /sbin/e-smith/auditiools/newrpms |
/root/contribs | previous output filtered for smeserver-* rpms |
/root/rpmsextra | all other non base distro rpms. |
Liste de sauvegarde par défaut
Note : nous excluons /home/e-smith/{fichiers, partages} et /home/e-smith/db/mysql*/{daily,hourly}
/etc/e-smith/templates-custom
/etc/e-smith/templates-user-custom
/etc/group
/etc/gshadow
/etc/passwd
/etc/samba/secrets.tdb
/etc/samba/smbpasswd
/etc/shadow
/etc/smbpasswd
/etc/ssh
/etc/sudoers
/root
/home/e-smith/Maildir
/home/e-smith/home
/home/e-smith/ssl.crt
/home/e-smith/ssl.key
/home/e-smith/dkim_keys
/home/e-smith/db
/var/lib/dhcpd/dhcpd.leases
/var/log/qpsmtpd
/var/log/sqpsmtpd
/var/log/qmail
/var/log/httpd/
/var/log/dovecot/
/var/log/squid
/var/log/iptables/
/var/spool/mail/
/var/spool/spamd/
/var/log/samba/samba_audit
/var/service/qpsmtpd/config/dkimkeys/
Nous ajoutons également tous les fichiers n'appartenant pas à des paquets dans :
/usr/local/bin/ /etc/cron.* /etc/udev/rules.d/
Exclusions par défaut
/home/e-smith/db/mysql/daily
/home/e-smith/db/mysql/hourly
/home/e-smith/db/mysql55/daily
/home/e-smith/db/mysql55/hourly
/home/e-smith/db/mysql57/daily
/home/e-smith/db/mysql57/hourly
/home/e-smith/files
/home/e-smith/shares
/etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/20LoadModule80PHP
/etc/e-smith/templates-custom/etc/hosts.allow/sshd
/etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/35SSL00Listen443
/etc/e-smith/templates-custom/etc/dhcpd.conf/25DomainNameServers
/etc/e-smith/templates-custom/etc/dhcpd.conf/25LeaseTimeDefault
/etc/e-smith/templates-custom/etc/dhcpd.conf/25LeaseTimeMax
/etc/e-smith/templates-custom/etc/dhcpd.conf/25Routers
Contributions prises en charge
Ceci est une liste des contributions actuellement configurées et connues qui seront enregistrées dans le processus. Veuillez noter qu'elle n'est pas exhaustive. Vérifiez si la vôtre est là, et vérifiez que tous les fichiers nécessaires sont bien inclus.
smeserver-awstats
smeserver-BackupPC4
smeserver-BackupPC
smeserver-bandwidthd
smeserver-clamav-unofficial-sigs
smeserver-dansguardian
smeserver-dansguardian
smeserver-dansguardian-panel
smeserver-denyhosts
smeserver-dl
dokuwiki
smeserver-durep
smeserver-ezmlm-web
smeserver-freepbx
smeserver-fail2ban
smeserver-grr
ipasserelle-im
smeserver-isoqlog
smeserver-jappix
smeserver-lemonldap-ng
smeserver-letsencrypt
smeserver-limesurvey
ipasserelle-listes
smeserver-madsonic
smeserver-mailman
smeserver-nextcloud
smeserver-ntop
smeserver-openvpn-bridge
smeserver-openvpn-routed
smeserver-openvpn-s2s
phpki
phpki-ng
smeserver-phpki
smeserver-phpki-ng
pydio
smeserver-sarg
smeserver-sme8admin
smeserver-sme9admin
smeserver-sysmon
smeserver-tftp-server
smeserver-transmission
smeserver-unifi
smeserver-xt_geoip
smeserver-webfilter
smeserver-webshares
smeserver-zabbix-agent
smeserver-zabbix-proxy
smeserver-zabbix-server
smeserver-zoneminder
Contributions connues qui n'ont besoin d'aucune sauvegarde de fichier :
- smeserver-bridge-interface
- smeserver-ddclient
- smeserver-email-management
- smeserver-geoip
- smeserver-kronolith
- smeserver-lazy_admin_tools
- smeserver-learn
- smeserver-mailsorting
- smeserver-mailstats
- smeserver-mediatomb
- smeserver-mod_dav
- smeserver-nag
- smeserver-php-fpm
- smeserver-php-scl
- smeserver-phpldapadmin.
- smeserver-phpsysinfo
- smeserver-qmHandle
- smeserver-remoteuseraccess
- smeserver-sane
- smeserver-usbdisksmanager
- smeserver-userpanel
- smeserver-userpanels
- smeserver-vacation
- smeserver-wbl
- smeserver-webapps-common
- smeserver-webhosting
Restore
First step will be to simply use the console restore with the obtained smeserver.tgz. We expect you handle the transfer either using a USB disk, or by having used sshfs and already mounted one extra partition of your new server to your old to create you archive on.
Second use the configuration console to fixe any changes needed on network card or IP, domain name...
Third you can use the saved list of rpm to try to install your contribs and other missing things
yum install --enablerepo=smecontribs `cat /root/contribs` yum install --enablerepo=smecontribs `cat /root/rpmsextra`
You can also enable the needed repo depending on what you would have : epel, fws, ....
Fourth, you can start a rsync for the missing bits
rsync -arv root@oldsme:/home/e-smith/files/ibays/ /home/e-smith/files/ibays rsync -arv root@oldsme:/home/e-smith/files/shares/ /home/e-smith/files/shares rsync -arv root@oldsme:/home/e-smith/files/users/ /home/e-smith/files/users rsync -arv root@oldsme:/home/e-smith/files/nextcloud home/e-smith/files/nextcloud
or simply
rsync -arv root@oldsme:/home/e-smith/files/ /home/e-smith/files
Some might enjoy to get back their old log too
then you should be good to enjoy your new server....
Uninstall
yum remove smeserver-migratehelper
Bugs
Please raise bugs under the SME-Contribs section in bugzilla and select the smeserver-migratehelper component or use this link
Below is an overview of the current issues for this contrib:
Changelog
Only released version in smecontrib are listed here.
- remove non existing standard path /home/e-smith/home
- Fix JPs typo
- fix mangled fail2ban conf backup lines
- remove debug line left by mistake
2021/10/29 John Crisp 1.0-6.sme
- add check/create for a /mnt/backup dir
- Fix typos
- Fix bash syntax errors via the IDE plugin