this post was submitted on 14 Sep 2024
55 points (100.0% liked)

Free and Open Source Software

17565 readers
47 users here now

If it's free and open source and it's also software, it can be discussed here. Subcommunity of Technology.


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 2 years ago
MODERATORS
 

. . . what do you use instead? AlternativeTo mentions (among a few others) Cozy and Filen; anyone use either of these? Internxt got a pretty bad review from someone on Medium.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 3 points 3 days ago (7 children)
[–] [email protected] 1 points 3 days ago* (last edited 3 days ago) (6 children)

Yeah, I know, "RTFM." I did, but am still kind of confused. A "remote" presumably means a remote folder/share/whatever in the cloud, in this case on Proton Drive, yes? 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. They say

Start as a service: To always run rclone in background, relevant for mount commands etc, you can use systemd to set up rclone as a system or user service. Running as a system service ensures that it is run at startup even if the user it is running as has no active session. Running rclone as a user service ensures that it only starts after the configured user has logged into the system.

But I don't know how to do that . . . I've found a few, I guess, "scripts" for this online but each one is a bit different. Unfortunately, just because I'm a Linux person doesn't mean that I know what I'm doing . . .

EDIT: After some further research, I found a couple scripts, but since each one is a bit different, I'm not sure which one to choose or how to write one that best suits my needs . . . would be kind of nice if Rclone would include this somewhere in their documentation; so far I haven't found anything.

EDIT EDIT: I would say that this is fairly complicated for the average user, but my research continues . . .

EDIT EDIT EDIT: Can anyone attest to this, this, or this?

[–] [email protected] 2 points 2 days ago (2 children)

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: [email protected]
  • 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...

[–] [email protected] 1 points 2 days ago* (last edited 2 days ago) (1 children)

Hi @[email protected] & @[email protected], thanks for taking the time to write such detailed responses (and stewie410, you did not in any way come across as condescending, so no worries there). As I try to wrap my head around this, could you explain the difference between the "rclone rc" and "rclone rcd" commands? I've read through the documentation, but am still left scratching my head.

EDIT: Good grief, but this is complicated! 😵‍💫 At this point I may just have to wait for the Linux client . . .

[–] [email protected] 2 points 2 days ago

I haven't used either command, but based on what I see in the manual, rcd tells rclone to start listening for remote commands whereas rc is used to issue remote commands.

Try it out by going to a folder with some files and typing: rclone rcd .

That should open a tab in your web browser with a list of your files.

There are situations where being able to send commands to rclone remotely would be helpful, but I'm not sure that you need to do that in this case.

load more comments (3 replies)
load more comments (3 replies)