rBackupper is a console Java application for automated backup of local directories to a remote cloud storage using rclone.
- Backup multiple directories to a remote rclone storage.
- Each backup session is stored in a uniquely named folder.
- Only the latest backup is kept; old backups are automatically deleted.
- Remote trash/garbage is cleaned up after each backup.
- Runs backups in a loop with a user-defined interval.
- Java 21+
- rclone (must be installed and a remote configured, see rclone docs)
- Maven (for building)
mvn packagejava -jar target/rBackupper-1.0-SNAPSHOT.jarOn startup, the program will prompt you for:
- rclone remote name (e.g.,
gdrive) - Number of directories to back up
- Paths to directories (one per line)
- Remote backup directory (e.g.,
backups) - Backup interval in milliseconds (e.g.,
3600000for 1 hour)
Example session:
Enter the remote name:
gdrive
Enter the number of paths to back up:
2
Enter each path to back up:
C:\Users\me\Documents
C:\Users\me\Photos
Enter the remote backup directory (e.g., backups):
backups
Enter the backup interval in milliseconds:
3600000
- The program creates a unique folder for each backup on the remote.
- It copies the specified directories into this folder using
rclone copy. - After a successful backup, it deletes all previous backups except the current one.
- It cleans up the remote trash using
rclone cleanup. - Waits for the specified interval and repeats the process.
- You must have a working rclone remote configured for this to work.
- Only the latest backup is kept; all previous backups are deleted.
- Upload timeout is automatically calculated based on data size (2 minutes per GB).