Doesn't sync ODRIVE in Linux Mint 19.3

Hi guys. I’ve install it for sync my account Google Drive. In the folder appears folders and files with an rare extension .cloud.
I need sync, the status f console is:

isActivated: True hasSession: True
email: xxxxxxxxx@xxxxxxxx.net accountType: Google
syncEnabled: True version: prod 946
placeholderThreshold: neverDownload autoUnsyncThreshold: never
downloadThrottlingThreshold: unlimited uploadThrottlingThreshold: normal
autoTrashThreshold: never Mounts: 1
xlThreshold: never Backups: 0

Sync Requests: 0
Background Requests: 0
Uploads: 0
Downloads: 0
Trash: 0
Waiting: 0
Not Allowed: 0

Hi @juanfer,
odrive is built around the idea of “progressive syncing”, which means you can browse all of your storage, but you only need to download the files you want immediate access to.

For syncing with the CLI, take a look at steps #5 and #6 in our documentation here

For performing a recursive sync, take a look at this information here:

I’ll be reading, tks.

I dont know how to write well that sentence. I don’t know why i have to write that extension “.cloudf”. Because in my folder there are a lot of my files but with “.cloud” without an F.

I have tryed a lot of combiation but nothing works:

`"$HOME/.odrive-agent/bin/odrive" sync "$HOME/odrive-agent-mount/Google Drive.cloudf"`
`"$HOME/.odrive-agent/bin/odrive" sync "$HOME/odrive-agent-mount/Google Drive.cloud"`
`"$HOME/.odrive-agent/bin/odrive" sync "$HOME/odrive-agent-mount/Google Drive/myfolder.cloudf"`
`"$HOME/.odrive-agent/bin/odrive" sync "$HOME/odrive-agent-mount/Google Drive/myfolder.cloud"`

but nothing works

By the other side, i want to ckeck some commands from the help and says this, for example:

juanfer@pc-juancho-mint:~$ "$HOME/.odrive-agent/bin/odrive" syncstate
usage: odrive syncstate [-h] [--textonly] path
odrive syncstate: error: too few arguments

Why too few arguments if the command is “syncstate” ?

Hi @juanfer,
For syncstate, it requires a path as a parameter. Like "$HOME/.odrive-agent/bin/odrive" syncstate "$HOME/odrive-agent-mount"

Can you show me what the command ls -al "$HOME/odrive-agent-mount" shows?

What is the output you get when you run "$HOME/.odrive-agent/bin/odrive" sync "$HOME/odrive-agent-mount/Google Drive.cloudf"

Sure:

juanfer@xxxxxxx:~$ ls -al "$HOME/odrive-agent-mount"
total 16
drwxr-xr-x  3 juanfer juanfer 4096 abr 21 16:36  .
drwxr-xr-x 33 juanfer juanfer 4096 abr 21 20:03  ..
drwxr-xr-x  2 juanfer juanfer 4096 abr 21 19:41 'Google Drive'
-rw-r--r--  1 juanfer juanfer   71 abr 21 16:36  .odrive

One thing to remark is, i put the command:
/home/.odrive-agent/bin/odrive shutdown

and restart the system… and when i try to see status, i get this:

    juanfer@xxxxxxxx:~$ /home/.odrive-agent/bin/odrive status
    bash: /home/.odrive-agent/bin/odrive: No existe el archivo o el directorio

Tks

Ok, and when i run:

"$HOME/.odrive-agent/bin/odrive" sync "$HOME/odrive-agent-mount/Google Drive.cloudf"

I get this:

    juanfer@xxxxxxxxxxx:~$ "$HOME/.odrive-agent/bin/odrive" sync "$HOME/odrive-agent-mount/Google Drive.cloudf"
    There was an error sending the command, please make sure odrive agent or desktop is running.

Hi @juanfer,
Okay, you’ve already expanded the “Google Drive.cloudf” placeholder into a real directory “Google Drive”. Now you can sync items inside Google Drive by specifying them in the same way.

To do this, you can either:

  • run "$HOME/.odrive-agent/bin/odrive" sync "$HOME/odrive-agent-mount/Google Drive/[name of folder or file placeholder here]"
  • or cd to "$HOME/odrive-agent-mount/Google Drive and then run "$HOME/.odrive-agent/bin/odrive" sync ./[name of folder or file placeholder here]"

Make sure you are using $HOME instead of home. $HOME will resolve to your user home directory, which is probably something like /home/juanfer.

The shutdown command will stop the agent process, so you will need to start it again using something like this:
nohup "$HOME/.odrive-agent/bin/odriveagent" > /dev/null 2>&1 &

Thanks for help:

Look at this:

juanfer@xxxxxxxxxxt:~$ nohup "$HOME/.odrive-agent/bin/odriveagent" > /dev/null 2>&1 &
[1] 22523
juanfer@xxxxxxxxxx:~$ "$HOME/.odrive-agent/bin/odrive" sync "$HOME/odrive-agent-mount/Google Drive/CarpetaPrueba"
Unable to sync CarpetaPrueba.  Please use a placeholder path.

The path is probably "$HOME/.odrive-agent/bin/odrive" sync "$HOME/odrive-agent-mount/Google Drive/CarpetaPrueba.cloudf"

cloud and cloudf files are “placeholder” files that represent remote files and folders. cloudf represents a remote folder and cloud represents a remote file. Everything will be placeholders, initially, so you will need to sync the items you want to change from placeholders to “real” files/folders.

If you want to download an entire directory, you will need to use the recursive command I linked above. For example:
exec 6>&1;num_procs=3;output="go"; while [ "$output" ]; do output=$(find "[path to folder here]" -name "*.cloud*" -print0 | xargs -0 -n 1 -P $num_procs "$HOME/.odrive-agent/bin/odrive" sync | tee /dev/fd/6); done

Where [path to folder here] is a “real” folder that you have already run the sync command on.

So the sequence would be something like this to download the entire CarpetaPrueba folder:

  1. "$HOME/.odrive-agent/bin/odrive" sync "$HOME/odrive-agent-mount/Google Drive/CarpetaPrueba.cloudf"

  2. exec 6>&1;num_procs=3;output="go"; while [ "$output" ]; do output=$(find "$HOME/odrive-agent-mount/Google Drive/CarpetaPrueba" -name "*.cloud*" -print0 | xargs -0 -n 1 -P $num_procs "$HOME/.odrive-agent/bin/odrive" sync | tee /dev/fd/6); done

Ok, almost get it:

I paste:

"$HOME/.odrive-agent/bin/odrive" sync "$HOME/odrive-agent-mount/Google Drive/CarpetaPrueba.cloudf"

Creates the folder, but content doesn’t aren’t downloaded. (a lot of .cloud and .cloudf in there)

But when i wrote:

juanfer@xxxxxxxxxx:~$ exec 6>&1;num_procs=3;output="go"; while [ "$output" ]; do output=$(find "$HOME/odrive-agent-mount/Google Drive/CarpetaPrueba" -name "*.cloud*" -print0 | xargs -0 -n 1 -P $num_procs python $(ls -d "$HOME/.odrive/bin/"*/ | tail -1)odrive.py sync | tee /dev/fd/6); done
ls: no se puede acceder a '/home/juanfer/.odrive/bin/*/': No existe el archivo o el directorio
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory
python: can't open file 'odrive.py': [Errno 2] No such file or directory

I get that error…

Hi @juanfer,
I adjusted the command. It was an example using the python version of the CLI instead of the binary version. Try the updated command.

Tks a lot. Now works. Thanks for the patience with me.
One more question.
If i delete some file of that folder, in my SO will be deleted too on cloud?

Hi @juanfer,
Yes, the remote delete will be held in the odrive trash. The remote file will not be deleted until you use the emptytrash command.

To free up local space without deleting, you would want to use the Premium feature “unsync”.

More on unsync here. This covers the desktop client, but the feature is the same in the agent with the unsync command.

More on the odrive trash here. This, again, convers the desktop client, but the feature is the same as the emptytrash command and restoretrash command.

Hi, i’ve prooved succesfully the emptytrash command. Tks.

I’ve syncronized another folder. Create a copy of a file inside that folder to see the upload of new information to cloud and, i have an error, look:

juanfer@xxxxxxxxxx:~$ "$HOME/.odrive-agent/bin/odrive" sync "$HOME/odrive-agent-mount/Google Drive/Avatares"
Unable to sync Avatares.  Please use a placeholder path.

Hi @juanfer,
odrive will automatically detect local changes within 30 minutes, but you can tell odrive to look sooner using the refresh command.

Try "$HOME/.odrive-agent/bin/odrive" refresh "$HOME/odrive-agent-mount/Google Drive/Avatares"

Awesome. Your help was fundamental to initiate on this. Tks a lot. I hope you and yours will be fine on quarantine.

No problem @juanfer! I’m glad we got you sorted out. Stay safe!