Mount takes too long time

What is the problem you are having with rclone?

Takes too long time to mount. I canceled it after 12 hours.

Run the command 'rclone version' and share the full output of the command.

rclone v1.68.2

  • os/version: fedora 41 (64 bit)
  • os/kernel: 6.12.6-200.fc41.x86_64 (x86_64)
  • os/type: linux
  • os/arch: amd64
  • go/version: go1.23.3
  • go/linking: static
  • go/tags: none

Which cloud storage system are you using? (eg Google Drive)

pcloud

The command you were trying to run (eg rclone copy /tmp remote:tmp)

rclone mount pCloudDrive: /home/forsete/pCloudDrive --vfs-cache-mode full --file-perms=0777 --dir-perms=0777 -P -vv

Please run 'rclone config redacted' and share the full output. If you get command not found, please make sure to update rclone.

[pCloudDrive]
type = pcloud
hostname = eapi.pcloud.com
token = XXX

A log from the command that you were trying to run with the -vv flag

https://pastebin.com/6ED5fGLY

hi, not understanding what you need help with?

OK ... I want to know if there is a problem with rclone mount & pcloud.
Can't understand why it took more then 12 hours to mount just a fraction of my data.
Is that normal?
The amount of my data at pcloud is approx 650 GB.

from the debug log, the mount seems to be running.

please explain what you need help with?

What you are telling me is that the mount is working OK acording to the debug log ... with the speed rate it will take several days to complete the mount ... something seems wrong to me.

sorry, still, not sure what that means, what you need help with?

maybe, try adding a client id+secret to the remote

What does "complete the mount" mean? You start rclone mount and according to your logs all is working and mount is ready to be used. It will be up and running until you stop it. After 1 min or after 1 week - does not matter.

rclone mount command does not stop on its own (unless some problems). The way you run it will occupy one shell session "forever". If you want to hide it you have few options. Push it to the background (&), use --daemon flag or package everything in systemd service.

The best option is systemd IMO - even if at the first look it seems complicated it is worth to learn how to use systemd. It is extremely flexible and allows very close and granular control.

Here you are some HowTo:

It talks about oneddrive but you can easily change it to whatever other remote you use.


1 Like

Nihil novi sub sole:) then.

1 Like

OK ... now I understand that you were confused by my post.
I thought that 'rclone mount' command stoped by its own and I was expecting a prompt from shell session ... now I understand that is not the case.

Thanks again for your guidelines and support.

I tried to follow your recommendation and go for systemd.
Created a file pcloud.service that looks like this.

forsete@asus-nuc /etc/systemd/system  
╰─➤  cat pcloud.service 
[Unit]
Description=RClone Service
Wants=network-online.target
After=network-online.target
AssertPathIsDirectory=/home/forsete/pCloudDrive

[Service]
Type=notify
Environment=RCLONE_CONFIG=/home/forsete/.config/rclone/rclone.conf #check USERNMAE
RestartSec=10
ExecStart=/usr/bin/rclone mount pCloudDrive: /home/forsete/pCloudDrive \
   --allow-other \
   --allow-non-empty \
   --dir-cache-time 5000h \
   --vfs-cache-mode full \
   --volname pCloudDrive \
   --vfs-cache-max-size 10G \
   --vfs-cache-poll-interval 1m \
   --buffer-size 512M \
   --dir-cache-time 72d \
   --umask 002 \
   --vfs-read-chunk-size 250M \
   --vfs-read-chunk-size-limit off

ExecStop=/bin/fusermount -uz /home/forsete/pCloudDrive #MOUNT
Restart=on-failure
User=forsete #change
Group=forsete #change

[Install]
WantedBy=multi-user.target

I then ran
sudo systemctl daemon-reload
sudo systemctl enable pcloud
with no issues.
But then I had some problems to start the service pcloud

sudo systemctl start pcloud                                                                                                                                                 
Job for pcloud.service failed because the control process exited with error code.
See "systemctl status pcloud.service" and "journalctl -xeu pcloud.service" for details.

systemctl status pcloud.service                                                                                                                                             
● pcloud.service - RClone Service
     Loaded: loaded (/etc/systemd/system/pcloud.service; enabled; preset: disabled)
    Drop-In: /usr/lib/systemd/system/service.d
             └─10-timeout-abort.conf, 50-keep-warm.conf
     Active: activating (auto-restart) (Result: exit-code) since Tue 2024-12-31 15:09:12 CET; 7s ago
 Invocation: 359e263eefa44450bfb7af325f63eec6
    Process: 23069 ExecStart=/usr/bin/rclone mount pCloudDrive: /home/forsete/pCloudDrive --allow-other --allow-non-empty --dir-cache-time 5000h --vfs-cache-mode full --volname pCl>
   Main PID: 23069 (code=exited, status=217/USER)
   Mem peak: 1.2M
        CPU: 4ms

Dec 31 15:09:12 asus-nuc systemd[1]: Failed to start pcloud.service - RClone Service.

journalctl -xeu pcloud.service                                                                                                                                              3 ↵
░░ 
░░ A start job for unit pcloud.service has begun execution.
░░ 
░░ The job identifier is 41192.
Dec 31 15:10:13 asus-nuc (rclone)[23191]: pcloud.service: Failed to determine user credentials: No such process
Dec 31 15:10:13 asus-nuc (rclone)[23191]: pcloud.service: Failed at step USER spawning /usr/bin/rclone: No such process
░░ Subject: Process /usr/bin/rclone could not be executed
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ The process /usr/bin/rclone could not be executed and failed.
░░ 
░░ The error number returned by this process is 3.
Dec 31 15:10:13 asus-nuc systemd[1]: pcloud.service: Main process exited, code=exited, status=217/USER
░░ Subject: Unit process exited
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ An ExecStart= process belonging to unit pcloud.service has exited.
░░ 
░░ The process' exit code is 'exited' and its exit status is 217.
Dec 31 15:10:13 asus-nuc systemd[1]: pcloud.service: Failed with result 'exit-code'.
░░ Subject: Unit failed
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ The unit pcloud.service has entered the 'failed' state with result 'exit-code'.
Dec 31 15:10:13 asus-nuc systemd[1]: Failed to start pcloud.service - RClone Service.
░░ Subject: A start job for unit pcloud.service has failed
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ A start job for unit pcloud.service has finished with a failure.
░░ 
░░ The job identifier is 41192 and the job result is failed.


Where have I missed ... only thing that i didn't include from the instruction was
cache-dir rclonecache

where is rclone installed on your system?
what is the output of which rclone ?


you have a duplicate flag?


remove that, unless you are 1000% sure you must use it.

/usr/bin/rclone

Both were in the instructions ... which one should I remove?

I thought it meant that non-emty files should be copied ... don't really know what will happen if I remove it.

What I did more was:

  1. I didn't create any rclonecache and as you can see I removed --cache-dir
  2. cat /etc/fuse.conf
    user_allow_other

Does not matter. I would remove both of them for pcloud as it is not polling remote.

remove it too. It has nothing to do with empty files but protects you from mounting over non empty directory.

add:

-vv /path/to/rclone.log

and lets see what debug log will tell us.

your choice.

that is not the purpose of the flag.
really, should remove that flag.

well, when using --vfs-cache-mode full, rclone creates the cache for you.
DEBUG : vfs cache: root is "/home/forsete/.cache/rclone"

The command sudo systemctl start pcloud gives following output but no log-file.

Job for pcloud.service failed because the control process exited with error code.
See "systemctl status pcloud.service" and "journalctl -xeu pcloud.service" for details.

But if I ran ExecStart= from a terminal window I get the log-file and no error as above.

/usr/bin/rclone mount pCloudDrive: /home/forsete/pCloudDrive \
   --allow-other \
   --vfs-cache-mode full \
   --volname pCloudDrive \
   --vfs-cache-max-size 10G \
   --vfs-cache-poll-interval 1m \
   --buffer-size 512M \
   --umask 002 \
   --vfs-read-chunk-size 250M \
   --vfs-read-chunk-size-limit off \
   --log-level DEBUG \
   --log-file=/home/forsete/Downloads/rcloud.log

My pcloud.service looks like this ...

[Unit]
Description=RClone Service
Wants=network-online.target
After=network-online.target
AssertPathIsDirectory=/home/forsete/pCloudDrive

[Service]
Type=notify
Environment=RCLONE_CONFIG=/home/forsete/.config/rclone/rclone.conf #check USERNMAE
RestartSec=10
ExecStart=/usr/bin/rclone mount pCloudDrive: /home/forsete/pCloudDrive \
   --allow-other \
   --vfs-cache-mode full \
   --volname pCloudDrive \
   --vfs-cache-max-size 10G \
   --vfs-cache-poll-interval 1m \
   --buffer-size 512M \
   --umask 002 \
   --vfs-read-chunk-size 250M \
   --vfs-read-chunk-size-limit off \
   --log-level DEBUG \
   --log-file=/home/forsete/Downloads/rcloud.log
ExecStop=/bin/fusermount -uz /home/forsete/pCloudDrive #MOUNT
Restart=on-failure
User=forsete #change
Group=forsete #change

[Install]
WantedBy=multi-user.target

As I understand there is some error in pcloud.service.
Will attach the rcloud.log

rcloud.log (13.4 KB)

Problem solved.
When I ran command sudo systemctl status pcloud.service I received following:

Jan 01 15:56:36 asus-nuc systemd[1]: /etc/systemd/system/pcloud.service:9: Invalid environment assignment, ignoring: #check
Jan 01 15:56:36 asus-nuc systemd[1]: /etc/systemd/system/pcloud.service:9: Invalid environment assignment, ignoring: USERNMAE

After removing:

#check USERNMAE
#MOUNT
#change

my pcloud.service looked like this:

[Unit]
Description=RClone Service
Wants=network-online.target
After=network-online.target
AssertPathIsDirectory=/home/forsete/pCloudDrive

[Service]
Type=notify
Environment=RCLONE_CONFIG=/home/forsete/.config/rclone/rclone.conf
RestartSec=10
ExecStart=/usr/bin/rclone mount pCloudDrive: /home/forsete/pCloudDrive \
   --allow-other \
   --vfs-cache-mode full \
   --vfs-cache-max-size 10G \
   --vfs-cache-poll-interval 1m \
   --buffer-size 512M \
   --umask 002 \
   --vfs-read-chunk-size 250M \
   --vfs-read-chunk-size-limit off
ExecStop=/bin/fusermount -uz /home/forsete/pCloudDrive
Restart=on-failure
User=forsete
Group=forsete

[Install]
WantedBy=multi-user.target

and it worked without any issues ... even after reboot.
I find it strange that these comments from the example one was recommended to follow should disturb the process.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.