nethserver-backup-config¶
Configuration backup contains only system configuration files (passwd, config databases, etc). It’s scheduled to be executed every night and will create a new archive only if any file is changed in the last 24 hours.
Backup libraries use conf.d directory behavior (see perldoc NethServer::Backup
).
When a backup is started, the system will search for all files in /etc/backup-config.d
directory.
This directory can contain .include and .exclude files. Each file contain a list of file to include/exclude into/from the backup.
Example file /etc/backup-config.d/nethserver-base.include
/etc/e-smith/templates-custom
/etc/e-smith/templates-user-custom
/etc/ssh
/etc/sudoers
/etc/passwd
/etc/shadow
/etc/group
/etc/gshadow
Exclusions are evaluated after all inclusions.
All libraries are inside the nethserver-backup-config
package.
Configuration backup¶
The nethserver-backup-config
package implements the backup of configuration and relies on the backup-config
key inside the configuration
database.
Properties:
status
: enable or disable the automatic backup, can beenabled
ordisabled
. Default isenabled
.
Backup¶
The main command is /sbin/e-smith/backup-config
which starts the backup process (if enabled). The backup process has 3 steps:
- pre-backup-config event: used to prepare data, for example a LDAP dump of users
- backup-config-execute action: actually execute the backup if any file is changed in the last 24 hours.
The backup file is saved in
/var/lib/nethserver/backup/backup-config.tar.xz
(seeperldoc NethServer::BackupConfig
) - post-backup-config event: used to post-process the backup file, for example to copy the backup to a remote server or encrypting the archive
The configuration backup runs every night and it creates a new backup only if:
- destination file does not exist
- or new files are added or removed to/from the backup set
- or content of any file inside the set is changed
This package does not provide any default action in the pre-backup-config and post-backup-config events. But you can create a script inside the post-backup-config event to copy the configuration backup to a remote machine using, for example, the SSH protocol.
The configuration backup is included inside the data backup.
Restore¶
The main command is /sbin/e-smith/restore-config
which starts the restore process:
- pre-restore-config event: used to prepare the system, for example stop a running service
- restore-config-execute action: search for a backup file in the well-known directory (see above) and restore it
- post-restore-config event: used to apply restored configuration, for example reinstall packages and load the LDAP dump
This package does not provide any action in the pre-restore-config event.
Please note that if no /var/lib/nethserver/backup/backup-config.tar.xz
file is found, the restore-config
command
will try to access the data backup to retrieve the configuration backup.
The restore-config
options:
--no-reinstall
: disable package reinstall during restore--mask-unit=<name>
: use systemd to mask the specified unit (example: disable httpd-admin restart during restore)--skip-network
: do not restore the network configuration
Customization¶
Add custom include/exclude inside following files:
- /etc/backup-config.d/custom.include
- /etc/backup-config.d/custom.exclude