Difference between revisions of "Migratehelper/fr"

From SME Server
Jump to navigationJump to search
Line 51: Line 51:
 
</tabs>
 
</tabs>
  
=== Usage and behaviour ===
+
=== Utilisation et comportement ===
You must first create the mount point and mount your external disk already formatted and with sufficient place to receive the archive:<syntaxhighlight lang="bash">
+
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 :  
 +
<syntaxhighlight lang="bash">
 
mkdir /mnt/backup
 
mkdir /mnt/backup
 
mount /dev/mydisk /mnt/backup
 
mount /dev/mydisk /mnt/backup
 
</syntaxhighlight>
 
</syntaxhighlight>
  
You can then edit the script and  Add you directories or files to include in the '''dir.list''' section, your exclusion in '''exclude.list''' section. Then check all your contribs are listed, and the associated destination are correct.<syntaxhighlight lang="bash">
+
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.  
 +
<syntaxhighlight lang="bash">
 
vim /usr/bin/migratehelper.sh
 
vim /usr/bin/migratehelper.sh
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Then run the script
+
Ensuite, lancez le script.
{{Warning box|When starting this script :
+
{{Warning box|type=Attention :| au démarrage, ce script va créer la liste des fichiers à sauvegarder, puis il arrêtera les services suivants qui pourraient modifier votre sauvegarde :
it will create the list of files to backup, then it will stop services that could modify your backup
 
 
*qmail.service  
 
*qmail.service  
 
*qpsmtpd.service  
 
*qpsmtpd.service  
Line 73: Line 74:
 
*httpd-e-smith.service
 
*httpd-e-smith.service
  
Do a pre-backup event and
+
Faites une procédure de pré-sauvegarde et
then create the tar file in /mnt/backup/smeserver.tgz
+
puis créer le fichier tar dans /mnt/backup/smeserver.tgz}}
}}
 
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
/usr/bin/migratehelper.sh
 
/usr/bin/migratehelper.sh
 
</syntaxhighlight>
 
</syntaxhighlight>
  
It will then process all the files to backup and display the progress on screen. After creating the definitive list depending on installed rpms, it will then Create a list of rpm installed and breakdown them in two easy to restore lists :
+
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 :  
 
{| class="wikitable"
 
{| class="wikitable"
!files
+
!Fichiers
!description
+
!Description
 
|-
 
|-
 
|/root/newrpms
 
|/root/newrpms
Line 95: Line 95:
 
|}
 
|}
  
==== Default backup list ====
+
==== Liste de sauvegarde par défaut ====
'''note : we are excluding /home/e-smith/{files,shares} and /home/e-smith/db/mysql*/{daily,hourly}'''
+
'''Note : nous excluons /home/e-smith/{fichiers, partages} et /home/e-smith/db/mysql*/{daily,hourly}'''
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
/etc/e-smith/templates-custom
 
/etc/e-smith/templates-custom
Line 131: Line 131:
  
  
also we add any non rpm owned files in
+
Nous ajoutons également tous les fichiers n'appartenant pas à des paquets dans :
 
  /usr/local/bin/
 
  /usr/local/bin/
 
  /etc/cron.*
 
  /etc/cron.*
 
  /etc/udev/rules.d/
 
  /etc/udev/rules.d/
  
==== Default exclusions ====
+
==== Exclusions par défaut ====
{{Warning box|When starting this script :
+
{{Warning box|type=Attention :| au démarrage de ce script :
'''/home/e-smith/files
+
'''/home/e-smith/files   /home/e-smith/shares'''
/home/e-smith/shares'''
+
sont '''EXCLUS''' par défaut, car nous nous attendons à une énorme quantité de données utilisateur que vous pourrez resynchroniser plus tard après avoir mis votre nouveau serveur en service et avoir conservé l'ancien.
are '''EXCLUDED''' by default, because we expect a huge amount of user data that you could rsync later after having your new server up and running, and kept the old one up.
+
Cela vous permettra d'être opérationnel plus rapidement que d'attendre de compresser un gigaoctet de données, de les transférer et de les décompresser.}}
This will allow you to be up and running faster than waiting to gzip gigabyte of data, transfer them and ungzip them.
 
}}
 
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
/home/e-smith/db/mysql/daily
 
/home/e-smith/db/mysql/daily
Line 161: Line 159:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
==== Supported contribs ====
+
==== Contributions prises en charge ====
this is a list of currently configured and known contribs to save in the process. Please be aware that it is not exhaustive. Check if your is in there, and '''check that all the needed files are indeed included'''.
+
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'''.  
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
smeserver-awstats
 
smeserver-awstats
Line 216: Line 214:
  
  
Contribs known that does not need any file backup
+
Contributions connues qui n'ont besoin d'aucune sauvegarde de fichier :
 
#smeserver-bridge-interface
 
#smeserver-bridge-interface
 
#smeserver-ddclient
 
#smeserver-ddclient

Revision as of 19:53, 27 June 2021





migratehelper
NeedImage.svg
migratehelper logo
Maintainer[[user:Jean-Philippe Pialasse|Jean-Philippe Pialasse]]
Urlhttps://wiki.contribs.org
LicenceGPL
Category

Category you want

Tags backuprestorecontribs


Maintainer

Jean-Philippe Pialasse

Version

Contrib 10:
smeserver-migratehelper
The latest version of smeserver-migratehelper is available in the SME repository, click on the version number(s) for more information.


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

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.

Warning.png Attention :
au démarrage, ce script va créer la liste des fichiers à sauvegarder, puis il arrêtera les services suivants qui pourraient modifier votre sauvegarde :
  • qmail.service
  • qpsmtpd.service
  • sqpsmtpd.service
  • ejabberd.service
  • smb.service
  • smbd.service
  • nmbd.service
  • httpd-e-smith.service

Faites une procédure de pré-sauvegarde et puis créer le fichier tar dans /mnt/backup/smeserver.tgz


/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

Warning.png Attention :
au démarrage de ce script :

/home/e-smith/files /home/e-smith/shares sont EXCLUS par défaut, car nous nous attendons à une énorme quantité de données utilisateur que vous pourrez resynchroniser plus tard après avoir mis votre nouveau serveur en service et avoir conservé l'ancien. Cela vous permettra d'être opérationnel plus rapidement que d'attendre de compresser un gigaoctet de données, de les transférer et de les décompresser.


/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 :

  1. smeserver-bridge-interface
  2. smeserver-ddclient
  3. smeserver-email-management
  4. smeserver-geoip
  5. smeserver-kronolith
  6. smeserver-lazy_admin_tools
  7. smeserver-learn
  8. smeserver-mailsorting
  9. smeserver-mailstats
  10. smeserver-mediatomb
  11. smeserver-mod_dav
  12. smeserver-nag
  13. smeserver-php-fpm
  14. smeserver-php-scl
  15. smeserver-phpldapadmin.
  16. smeserver-phpsysinfo
  17. smeserver-qmHandle
  18. smeserver-remoteuseraccess
  19. smeserver-sane
  20. smeserver-usbdisksmanager
  21. smeserver-userpanel
  22. smeserver-userpanels
  23. smeserver-vacation
  24. smeserver-wbl
  25. smeserver-webapps-common
  26. 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:

No open bugs found.

Changelog

Only released version in smecontrib are listed here.

smeserver-migratehelper Changelog: SME 10 (smecontribs)
2021/12/02 Jean-Philippe Pialasse 1.0-10.sme
- remove non existing standard path /home/e-smith/home
2021/11/14 John Crisp 1.0-9.sme
- Fix JPs typo
2021/11/14 John Crisp 1.0-8.sme
- fix mangled fail2ban conf backup lines
2021/11/14 John Crisp 1.0-7.sme
- 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

- Add some switches for help, test, no confirm