-------------------------------------------------------------- - This software is public domain. - You may use it as you wish. - The author provides this code as is without warranty of any kind and accepts no responsibility for any loss or damage incurred due to any inaccuracy or technical problems using this software. - The using of this software is at your own risk. -------------------------------------------------------------- Version 2.4 Topics: A) Prerequisites B) Installation notes for all upgrades or new installation of version 2.4 (this version) C) Installation notes if you upgrade an older version than 1.3 D) Upgrading from v2.3 to v2.4 (this version) E) Upgrading from v2.2 to v2.4 (this version) F) Upgrading from v2.1 to v2.4 (this version) G) Upgrading from v2.0 to v2.4 (this version) H) Upgrading from v1.5 to v2.4 (this version) I) Upgrading from v1.4 to v2.4 (this version) J) Upgrading from v1.3 to v2.4 (this version) K) Upgrading from v1.2 to v2.4 (this version) L) Upgrading from v1.1 to v2.4 (this version) M) Upgrading from v1.0 to v2.4 (this version) N) You do not have an old version installed, this is the first time you are installing the backup system This is a step-by-step manual for installing the backup system: A) Prerequisites rsync is needed. gpg is needed, if you want to encrypt some files before backup, e.g. /etc/shadow. perl is needed. Note: the use of ftp is not longer needed. The Net::FTP library will be removed from the package in future. The CPAN libraries Net::FTP and Getopt::Long are used but are included in this package and installed into your backup installation directory. Some other typical unix commands are needed, e.g. awk, and on normal unix systems they are always there. All used commands are checked during installation. If the check fails, an appropriate error message will be printed and nothing will be installed. B) Installation notes for all upgrades or new installation of version 2.4 (this version) After installation of this version 2.4 it is recommended to schedule a complete backup of your data. Just run the command /your_installation_dir/bin/backup.csh --complete e.g. /backup/bin/backup.csh --complete from the command line. C) Installation notes if you upgrade an older version than 1.3 The format of the encryption and exclusion file list has slightly changed. - encryption file list (default encrypt_file.list): . all files are excluded automatically and need not to be listed in the exclusion list. . the encrypted files are included automatically even if they do not appear in the backup file list. . full path name must be specified, e.g. /etc/passwd - exclusion file list (default encrypt_file.list.exclude) . full path name can be specified . symbolic links can be used . filenames without path can be used (e.g. core, .rnd, ...) . directories can be specified (e.g. /tmp) D) Upgrading from v2.3 to v2.4 (this version) 1) Unpack the compressed archive e.g. with gzip -cd backup_v2.4.tar.gz | tar -xf - and move into the unpacked directory cd backup_v2.4 2) skip this, etc/backup.conf is unchanged For the following steps you must be root. 3) Run install.sh as root ./install.sh 4)-7) skip this Thats all you have to do. Your other settings like backup directories or encryption pass phrase will be untouched and unchanged. But it is a good idea to remember step 9 of the complete setup routine: 9) Check log file for error messages Check /backup/log/backup.log if everything went fine after the crontab job has been running. E) Upgrading from v2.2 to v2.4 (this version) 1) Unpack the compressed archive e.g. with gzip -cd backup_v2.4.tar.gz | tar -xf - and move into the unpacked directory cd backup_v2.4 2) skip this, etc/backup.conf is unchanged For the following steps you must be root. 3) Run install.sh as root ./install.sh 4)-7) skip this Thats all you have to do. Your other settings like backup directories or encryption pass phrase will be untouched and unchanged. But it is a good idea to remember step 9 of the complete setup routine: 9) Check log file for error messages Check /backup/log/backup.log if everything went fine after the crontab job has been running. F) Upgrading from v2.1 to v2.4 (this version) 1) Unpack the compressed archive e.g. with gzip -cd backup_v2.4.tar.gz | tar -xf - and move into the unpacked directory cd backup_v2.4 2) Edit etc/backup.conf.inc.v2.1 This part of the new configuration file will be appended automatically to your existing configuration. For the following steps you must be root. 3) Run install.sh as root ./install.sh 4)-7) skip this Thats all you have to do. Your other settings like backup directories or encryption pass phrase will be untouched and unchanged. But it is a good idea to remember step 9 of the complete setup routine: 9) Check log file for error messages Check /backup/log/backup.log if everything went fine after the crontab job has been running. G) Upgrading from v2.0 to v2.4 (this version) 1) Unpack the compressed archive e.g. with gzip -cd backup_v2.4.tar.gz | tar -xf - and move into the unpacked directory cd backup_v2.4 2) Edit etc/backup.conf.inc.v2.0 This part of the new configuration file will be appended automatically to your existing configuration. For the following steps you must be root. 3) Run install.sh as root ./install.sh 4)-7) skip this Thats all you have to do. Your other settings like backup directories or encryption pass phrase will be untouched and unchanged. But it is a good idea to remember step 9 of the complete setup routine: 9) Check log file for error messages Check /backup/log/backup.log if everything went fine after the crontab job has been running. H) Upgrading from v1.5 to v2.4 (this version) 1) Unpack the compressed archive e.g. with gzip -cd backup_v2.4.tar.gz | tar -xf - and move into the unpacked directory cd backup_v2.4 2) Edit etc/backup.conf.inc.v1.5 These parts of the new configuration file will be appended automatically to your existing configuration. For the following steps you must be root. 3) Run install.sh as root ./install.sh 4)-7) skip this Thats all you have to do. Your other settings like backup directories or encryption pass phrase will be untouched and unchanged. But it is a good idea to remember step 9 of the complete setup routine: 9) Check log file for error messages Check /backup/log/backup.log if everything went fine after the crontab job has been running. I) Upgrading from v1.4 to v2.4 (this version) 1) Unpack the compressed archive e.g. with gzip -cd backup_v2.4.tar.gz | tar -xf - and move into the unpacked directory cd backup_v2.4 2) Edit etc/backup.conf.inc.v1.4 These parts of the new configuration file will be appended automatically to your existing configuration. For the following steps you must be root. 3) Run install.sh as root ./install.sh 4)-7) skip this Thats all you have to do. Your other settings like backup directories or encryption pass phrase will be untouched and unchanged. But it is a good idea to remember step 9 of the complete setup routine: 9) Check log file for error messages Check /backup/log/backup.log if everything went fine after the crontab job has been running. J) Upgrading from v1.3 to v2.4 (this version) 1) Unpack the compressed archive e.g. with gzip -cd backup_v2.4.tar.gz | tar -xf - and move into the unpacked directory cd backup_v2.4 2) Edit etc/backup.conf.inc.v1.3 These parts of the new configuration file will be appended automatically to your existing configuration. For the following steps you must be root. 3) Run install.sh as root ./install.sh 4)-7) skip this Thats all you have to do. Your other settings like backup directories or encryption pass phrase will be untouched and unchanged. But it is a good idea to remember step 9 of the complete setup routine: 9) Check log file for error messages Check /backup/log/backup.log if everything went fine after the crontab job has been running. K) Upgrading from v1.2 to v2.4 (this version) 1) Unpack the compressed archive e.g. with gzip -cd backup_v2.4.tar.gz | tar -xf - and move into the unpacked directory cd backup_v2.4 2) Edit etc/backup.conf.inc.v1.2 These parts of the new configuration file will be appended automatically to your existing configuration. For the following steps you must be root. 3) Run install.sh as root ./install.sh 4)-5) skip this 6) Edit the list of files to encrypt before backup Change to the installation directory, normally /backup cd /backup Edit the encryption file list, default is encrypt_file.list. All files in this list are encrypted with the gpg passphrase (step 4). All files must have the complete path name, e.g. /etc/shadow. All files in this list are automatically excluded from the backup, only the encrypted version will be backuped. 7) edit the list of files to exclude for backup Change to the installation directory, normally /backup cd /backup Edit the exclude file list, default is encrypt_file.list.exclude. Files in this list are not backuped. Thats all you have to do. Your other settings like backup directories or encryption pass phrase will be untouched and unchanged. But it is a good idea to remember step 9 of the complete setup routine: 9) Check log file for error messages Check /backup/log/backup.log if everything went fine after the crontab job has been running. L) Upgrading from v1.1 to v2.4 (this version) 1) Unpack the compressed archive e.g. with gzip -cd backup_v2.4.tar.gz | tar -xf - and move into the unpacked directory cd backup_v2.4 2) Edit etc/backup.conf.inc.v1.1 These parts of the new configuration file will be appended automatically to your existing configuration. For the following steps you must be root. 3) Run install.sh as root ./install.sh 4)-5) skip this 6) Edit the list of files to encrypt before backup Change to the installation directory, normally /backup cd /backup Edit the encryption file list, default is encrypt_file.list. All files in this list are encrypted with the gpg passphrase (step 4). All files must have the complete path name, e.g. /etc/shadow. All files in this list are automatically excluded from the backup, only the encrypted version will be backuped. 7) edit the list of files to exclude for backup Change to the installation directory, normally /backup cd /backup Edit the exclude file list, default is encrypt_file.list.exclude. Files in this list are not backuped. Thats all you have to do. Your other settings like backup directories or encryption pass phrase will be untouched and unchanged. But it is a good idea to remember step 9 of the complete setup routine: 9) Check log file for error messages Check /backup/log/backup.log if everything went fine after the crontab job has been running. M) Upgrading from v1.0 to v2.4 (this version) 1) Unpack the compressed archive e.g. with gzip -cd backup_v2.4.tar.gz | tar -xf - and move into the unpacked directory cd backup_v2.4 2) Edit etc/backup.conf.inc.v1.0 These parts of the new configuration file will be appended automatically to your existing configuration. For the following steps you must be root. 3) Run install.sh as root ./install.sh 4)-5) skip this 6) Edit the list of files to encrypt before backup Change to the installation directory, normally /backup cd /backup Edit the encryption file list, default is encrypt_file.list. All files in this list are encrypted with the gpg passphrase (step 4). All files must have the complete path name, e.g. /etc/shadow. All files in this list are automatically excluded from the backup, only the encrypted version will be backuped. 7) edit the list of files to exclude for backup Change to the installation directory, normally /backup cd /backup Edit the exclude file list, default is encrypt_file.list.exclude. Files in this list are not backuped. Thats all you have to do. Your other settings like backup directories or encryption pass phrase will be untouched and unchanged. But it is a good idea to remember step 9 of the complete setup routine: 9) Check log file for error messages Check /backup/log/backup.log if everything went fine after the crontab job has been running. N) You do not have an old version installed, this is the first time you are installing the backup system 1) Unpack the compressed archive e.g. with gzip -cd backup_v2.4.tar.gz | tar -xf - and move into the unpacked directory cd backup_v2.4 2) Edit etc/backup.conf This is the first time installation of this package and you must edit the file etc/backup.conf before installation. The following variables in etc/backup.conf must be configured to reflect your system settings: BCK_RSYNC_HOST BCK_FTP_HOST BCK_RSYNC_USER The meaning of each variable is documented in etc/backup.conf and should be quite clear. The following variables may be changed if you want, but my recommendation is to leave them as they are: BCK_ALL_TIME STUNNEL_USE If you change STUNNEL_USE you must change STUNNEL_CMD STUNNEL_PID The default installation directory is /backup. If you want to change this, change BCK_HOME The variables BCK_BIN,BCK_DB,BCK_SEC,BCK_LOG,BCK_TMP and BCK_DIR_FILE,BCK_ENCRYPT_FILE,BCK_EXCLUDE_FILE define the structure inside BCK_HOME. There should never be the need to change this. The BIN variables, e.g. BCK_GPG_BIN, are checked during the install procedure and must be changed, if error messages appear. For the following steps you must be root. 3) Run install.sh as root ./install.sh 4) Set your backup and encryption passphrase Change to the installation directory, normally /backup cd /backup Change to directory security cd security Edit the gpg passphrase file, default gpg.pass, and the backup password file, default rsync.pass. The gpg passphrase may be whatever you want, the backup password is the password for your backup server. The user is set in /etc/backup.conf in step 2), variable BCK_RSYNC_USER. 5) Edit the list of directories to backup Change to the installation directory, normally /backup cd /backup Edit the directory file list, default file name is directories. 6) Edit the list of files to encrypt before backup Change to the installation directory, normally /backup cd /backup Edit the encryption file list, default is encrypt_file.list. All files in this list are encrypted with the gpg passphrase (step 4). All files must have the complete path name, e.g. /etc/shadow All files in this list are automatically included in the exclude list and are therefor not backuped. 7) edit the list of files to exclude for backup. Change to the installation directory, normally /backup cd /backup Edit the exclude file list, default is encrypt_file.list.exclude. Files in this list are not backuped. 8) Edit roots crontab Add a crontab entry for root, e.g.: 53 2 * * * /backup/bin/backup.csh >> /backup/log/backup_cron.log 2>&1 Modify the time to something else to prevent that all backups at our provider are running at the same time. 9) Check log file for error messages Check /backup/log/backup.log if everything went fine after the crontab job has been running.