Difference between revisions of "Migratehelper"
Unnilennium (talk | contribs) |
Unnilennium (talk | contribs) |
||
Line 174: | Line 174: | ||
smeserver-BackupPC | smeserver-BackupPC | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=== Uninstall === | === Uninstall === |
Revision as of 04:51, 31 March 2021
migratehelper logo | |
Maintainer | [[user:Jean-Philippe Pialasse|Jean-Philippe Pialasse]] |
---|---|
Url | https://wiki.contribs.org |
Licence | GPL |
Category | |
Tags | backup, restore, contribs |
Maintainer
Version
Description
This is a suite of script intended to help backup and restore when migrating to another box with same SME version or more recent.
It will create an archive similar to the console usb backup, hence allowing console restore at startup directly after install.
It will backup all the already known by the script locations for every installed contribs.
It will also backup some user space known to have potential manually added files.
It will create a list of rpm currently installed and break them down to ease the install later.
A WIP will be to download the rpms from the repos to allow quick reinstall. A script will be used later to allow download from a more recent version.
There is also an exclusion list. By default /home/e-smith/files is in this exclusion list So you can have a server backup and restore faster, It assumes you backup those files separately and restore them manually latter (or have them on a separate mount point you can easily remount latter), as the server can boot without them on install.
Installation
yum --enablerepo=smecontribs install smeserver-migratehelper
Usage and behaviour
You must first create the mount point and mount your external disk already formatted and with sufficient place to receive the archive:
mkdir /mnt/backup
mount /dev/mydisk /mnt/backup
You can then edit (WIP creation of db properties to handle that). 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.
vim /usr/bin/migratehelper.sh
Then run the script
/usr/bin/migratehelper.sh
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 :
files | 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. |
Default backup list
note we are not including /home/e-smith/{files,shares} and /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/
also we add any non rpm owned files in
/usr/local/bin/ /etc/cron.* /etc/udev/rules.d/
Default exclusions
/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
Supported contribs
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.
smeserver-awstats
smeserver-clamav-unofficial-sigs
smeserver-durep
smeserver-isoqlog
smeserver-letsencrypt
smeserver-sme8admin
smeserver-sme9admin
smeserver-sysmon
smeserver-webshares
smeserver-ezmlm-web
smeserver-dovecot
phpki
smeserver-openvpn-bridge
smeserver-openvpn-s2s
smeserver-openvpn-routed
pydio
dokuwiki
smeserver-lemonldap-ng
smeserver-jappix
smeserver-dl
smeserver-limesurvey
smeserver-mailman
ipasserelle-listes
smeserver-ntop
ipasserelle-im
smeserver-freepbx
smeserver-webfilter
smeserver-grr
smeserver-madsonic
smeserver-bandwidthd
smeserver-sarg
smeserver-unifi
smeserver-transmission
smeserver-xt_geoip
smeserver-nextcloud
smeserver-BackupPC4
smeserver-BackupPC
Uninstall
yum remove smeserver-migratehelper 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