.TH SIMPLE_BACKUP 1 2023-06-01 SIMPLE_BACKUP 3.2.6 .SH NAME simple_backup \- Backup files and folders using rsync .SH SYNOPSIS .BR simple_backup \-h, \-\-help .PD 0 .P .PD .BR simple_backup [\-c, \-\-config FILE] [\-i, \-\-input INPUT [INPUT...]] [\-o, \-\-output DIR] .PD 0 .P .PD .RS 14 [\-e, \-\-exclude FILE|DIR|PATTERN [FILE|...]] [\-k, \-\-keep N] [\-\-host HOSTNAME] [\-u, \-\-username USERNAME] [\-\-keyfile FILE] .PD 0 .P .PD [\-s, \-\-checksum] [\-z, \-\-compress] [\-\-remove\-before\-backup] .RE .SH DESCRIPTION .BR simple_backup is a python script for performing backup of files and folders. .P It uses rsync to copy the files to the specified location. Parameters for the backup such as input files/directories, output location and files or folders to exclude can be specified in a configuration file (default location $HOME/.config/simple_backup/simple_backup.conf) or directly on the command line. .P Parameters specified on the command line will override those in the configuration file. .SH OPTIONS .TP .B \-h, \-\-help Print a short help message and exit .TP .B \-c, \-\-config FILE Specify the configuration file, useful to specify a different one from the default. .TP .B \-i, \-\-input INPUT [INPUT...] Specify the files and directories to backup. Multiple inputs can be specified, just separate them with a space. If filenames or paths contain spaces, don't forget to escape them, or to use single or double quotes around them. .TP .B \-o, \-\-output DIR Specify the directory where the files will be copied. The program will automatically create a subdirectory called \(aqsimple_backup\(aq (if it does not already exist) and inside this directory the actual backup directory (using the current date and time) .TP .B \-e, \-\-exclude FILE|DIR|PATTERN [FILE|...]] Specify files, directories or patterns to exclude from the backup. Matching files and directories will not be copied. Multiple elements can be specified, in the same way as for the \-\-input option .TP .B \-k, \-\-keep N Specify how many old backups (so excluding the current one) will be kept. The default behavior is to keep them all (same as N=\-1) .TP .B \-\-host HOSTNAME Hostname of the server where to copy the files in case of remote backup through SSH .TP .B \-u, \-\-username USERNAME Username for connecting to the server in case of remote backup .TP .B \-\-keyfile FILE Location of the SSH key for server authentication. .TP .B \-s, \-\-checksums Same as rsync option \(aq\-\-checksum\(aq, use checksums instead of mod\-time and size to skip files. .TP .B \-z, \-\-compress Compress data during transfer (rsync \(aq\-\-compress\(aq option). Useful for remote backup if saving bandwith is needed. .TP .B \-\-remove\-before\-backup Remove old backups (if necessary) before creating the new backup. Useful to free some space before performing the backup. Default behavior is to remove old backups after successfully completing the backup. .TP .B \-\-no\-syslog Don't use systemd journal for logging .SH CONFIGURATION An example configuration file is provided at \(aq/etc/simple_backup/simple_backup.conf\(aq. Copy it to the default location ($HOME/.config/simple_backup) and edit it as needed. .SH REMOTE BACKUP It is possible to choose a directory on a remote server as destination for the backup. The files are copied by rsync through SSH. Server hostname and username must be specified, either in the configuration file, or on the command line (\(aq\-\-host\(aq and \(aq\-\-username\(aq options). .SS AUTHENTICATION For authentication, it is possible to use SSH key or password. .P When using SSH key, the best way to connect to the server is to have an SSH agent running. Otherwise, if the SSH key is encrypted, it will be necessary to enter the passphrase more than once. It is possible to specify the SSH key to use with the option \(aq\-\-keyfile\(aq, if necessary. .P When running .B simple_backup with .B sudo, in order to connect to the user\(aq s SSH agent it is necessary to preserve the \(aq SSH_AUTH_SOCK\(aq environment variable, for example: .P .EX sudo --preserve-env=SSH_AUTH_SOCK -s simple_backup [options] .EE .P It is also possible to make this permanent by editing the .B sudoers file (see .B sudoers (5) ) .P If SSH key authentication is not available, password authentication will be used instead. Note that in this case .B sshpass (if available) will be used to send the password to rsync, to avoid prompting the user for the password multiple times. This can pose some security risks, see .B sshpass (1) for details. For this reason, use SSH key authentication if possible. .SH SEE ALSO .BR rsync (1) .SH AUTHORS .MT https://github.com/Fuxino Daniele Fucini .ME