Yeah, I know, “RTFM.”
Sorry, I didn’t mean to come across in a condescending way, if that’s how it read. I’ve only ever used rclone
for Google Drive, and its been quite a while since I’ve personally set it up, as I no longer daily-drive linux (outside of WSL).
A “remote” presumably means a remote folder/share/whatever in the cloud, in this case on Proton Drive, yes?
Yes, following the documentation, you would run rclone config
, then answer as follows:
- Create/Edit/Quit:
n
- Name:
proton
- Storage:
protondrive
- User:
username@protonmail.com
- Password:
y
to enter your password; then enter your password twice as prompted - 2FA: If you have 2FA configured, enter the 6-digit OTP; else press
<Enter>
to skip - Keep this “proton” remote?:
y
This should create a proton-drive remote called “proton”, which you can reference in further rclone
commands. For example:
# Check if out of sync
rclone check 'proton:' ~/proton 2>&1 | grep --quiet ' ERROR :'
# Sync local/remote
rclone sync 'proton:' ~/proton
If I want to set Rclone to automaticlly sync, say, my home folder to Proton Drive, Rclone has to run as a service on startup for this to work.
In the past, I wrote a script to handle the check/sync job, and scheduled it to run with crontab
, as it was easier for me to work with. Here’s an example of the script to run rclone
using the proton:
remote defined above:
#!/usr/bin/env bash
# Ensure connected to the internet
ping -c 1 8.8.8.8 |& grep --quiet --ignore-case "unreachable" && exit 0
# If in-sync, skip sync procedure
rclone check 'proton:' "${HOME}" |& grep --quiet ' ERROR :' || exit 0
# Run sync operation
rclone --quiet sync 'proton:' "${HOME}"
If scheduling with crontab
, running crontab -e
will open your user’s schedule in the $VISUAL
, $EDITOR
or /usr/bin/editor
text editor. Here, you could enter something like
0,30 * * * * /home/your_user_name/proton_sync.sh
Which would try to sync once every 30 minutes (crontab-guru).
you can use systemd to set up rclone as a system or user service
This is also an option, assuming your system is using systemd
; which most distributions have moved to – you typically have to go out of your way to avoid it. I also don’t have much experience in writing my own service/timer files; but it looks like systemd-run
may have you covered as well (source):
# Run every 30 minutes
systemd-run --user --on-calendar '*:0/30' /home/your_user_name/proton-sync.sh
While I know writing config files and working with the terminal can be intimidating (it was for me in the beginning, anyway); I’d really recommend against running random ‘scripts’ you find online unless you either 100% trust the source, or can read/understand what they are doing. I have personally been caught-out recently from a trusted source doing jank shit in their scripts, which I didn’t notice until reading through them…and Linux Admin/DevOps is my day job…
As @leetnewb@beehaw.org mentioned, I’m not sure either is what you’re necessarily looking for.