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.timer
with the following: -
Create a service file at
/etc/systemd/system/klipper-backup.service
with 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-reload
once 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.