Alternative Methods
This is a section for alternative methods for running the script and automating/manual backups
Command-Line Arguments¶
If script.sh is executed in the terminal, Command-Line Arguments are available:
| Argument | Description | Example |
|---|---|---|
-h, --help |
Display the help page and exit | script.sh --help or script.sh -h |
-c, --commit_message |
Use your own commit message for the git push | script.sh --commit_message "my commit message" or script.sh -c "my commit message" |
-f, --fix |
Delete the config_backup folder. This can help to solve the vast majority of error messages | script.sh --fix or script.sh -f |
-d, --debug |
Output debugging information | script.sh --debug or script.sh -d |
Timed Backups using systemd¶
For those with distros that may not include cron in the base packages you can use the following to setup timed backups instead
-
Create a timer unit file at
/etc/systemd/system/klipper-backup.timerwith the following: -
Create a service file at
/etc/systemd/system/klipper-backup.servicewith the following:[Unit] Description=Klipper Backup On-boot Service #Uncomment below lines if using network manager After=NetworkManager-wait-online.service Wants=NetworkManager-wait-online.service #Uncomment below lines if not using network manager #After=network-online.target #Wants=network-online.target [Service] User=<REPLACE_WITH_YOUR_USERNAME> Type=oneshot ExecStart=/bin/bash -c 'bash $HOME/klipper-backup/script.sh -c "New Backup on timer - $(date +"%%x - %%X")"' [Install] WantedBy=default.target - Run
sudo systemctl daemon-reloadonce both files have been created. - Enable the systemd timer
sudo systemctl enable --now klipper-backup.timer. The timer will run the service file every 4 hours.
Note
if you would like to edit the time between backups you can edit line 5 OnUnitActiveSec= to your specified time.