rschroll / rmfuse

FUSE access to the reMarkable Cloud
MIT License
95 stars 8 forks source link

rmfuse dosen't do anything #9

Closed mcpeixoto closed 3 years ago

mcpeixoto commented 3 years ago

Hello there. I'm running a Ubuntu 20.04.2 LTS machine, instaled the dependencies that are mencioned in the repository and the rmfuse pip package. When I try to use it it just stalls, here's my output:

$ rmfuse  -v /mnt/A/directory/remarkable_backups/
DEBUG:pyfuse3:Initializing pyfuse3
DEBUG:pyfuse3:Calling fuse_session_new
DEBUG:pyfuse3:Calling fuse_session_mount
DEBUG:pyfuse3:pyfuse-02: No tasks waiting, starting another worker (now 2 total).

Any idea what is causing this? I'm running Kubuntu.

GeeWee commented 3 years ago

The same happens to me on Fedora 33. It is after having succesfully logged in.#

Verbose output

rmfuse -v ~/remarkable
/home/geewee/.local/lib/python3.9/site-packages/trio/_core/_multierror.py:502: RuntimeWarning: You seem to already have a custom sys.excepthook handler installed. I'll skip installing Trio's custom handler, but this means MultiErrors will not show full tracebacks.
  warnings.warn(
DEBUG:pyfuse3:Initializing pyfuse3
DEBUG:pyfuse3:Calling fuse_session_new
DEBUG:pyfuse3:Calling fuse_session_mount
DEBUG:pyfuse3:pyfuse-02: No tasks waiting, starting another worker (now 2 total).
DEBUG:pyfuse3:pyfuse-03: No tasks waiting, starting another worker (now 3 total).
DEBUG:pyfuse3:pyfuse-04: No tasks waiting, starting another worker (now 4 total).
DEBUG:pyfuse3:pyfuse-05: No tasks waiting, starting another worker (now 5 total).
DEBUG:pyfuse3:pyfuse-06: No tasks waiting, starting another worker (now 6 total).
DEBUG:pyfuse3:pyfuse-03: too many idle tasks (6 total, 2 waiting), terminating.
DEBUG:pyfuse3:pyfuse-03: terminated
DEBUG:pyfuse3:pyfuse-05: too many idle tasks (5 total, 2 waiting), terminating.
DEBUG:pyfuse3:pyfuse-05: terminated
DEBUG:pyfuse3:pyfuse-06: too many idle tasks (4 total, 2 waiting), terminating.
DEBUG:pyfuse3:pyfuse-06: terminated
DEBUG:pyfuse3:pyfuse-07: too many idle tasks (3 total, 2 waiting), terminating.
DEBUG:pyfuse3:pyfuse-07: terminated

Very verbose output (Vv)

See gist

Other info

mcpeixoto commented 3 years ago

Is it suppose to appear a window to input the one-time code? @GeeWee

GeeWee commented 3 years ago

At least on my first boot I got a 'Please enter the one-time code from (url)' which I did. After that it stalled for some minutes, i cancelled it and the re-running it afterwards gets me the same errors as you.

mcpeixoto commented 3 years ago

UPDATE: After a reboot it aparently started working, it prompted me to the one-time code and it started downloading the files. It's just a little bit slow doing things. ':)

rschroll commented 3 years ago

RMfuse is very event-driven, and it didn't think to prompt for the one-time code until some filesystem operation required it. On my test systems, that happened basically instantaneously. But I gather that's not the same for everything. The commit I just pushed will trigger the one-time code request at startup if needed.

As for the other other reports I don't see anything alarming there. Those are standard debugging messages from FUSE. What have you been trying to do: list files, open files, move files, add files? What's the response: hang, error, crash? Note that on first listing a directory, it may take a while for RMfuse to get the directory listing from the reMarkable Cloud. (After getting the file list, it then needs to make a request for the file size of each file individually. Urgh.) So if you have a lot of files in a directory, it can take a while to assemble that info. But this is cached,so future operations should be faster.

GeeWee commented 3 years ago

Okay so I think I probably misunderstood something - because when running rmfuse (without the v) it just output nothing. I didn't even consider that it might be triggered by checking the directory, so I simply cancelled it, and cd'd into the directory and saw it was empty. Perhaps it could make sense to sync the directory on the first boot, or write "Go into the directory to see your files" so others don't make the same mistake?

rschroll commented 3 years ago

I've added some debug output at startup. But I'd think that an unavoidable status message would violate the Rule of Silence. Do any other filesystems give this sort of output?

Also, to be clear, RMfuse does not sync your local filesystem to the cloud. Instead, it provides an interface that converts filesystem operations to API requests to the reMarkable cloud. There's no sync to do at startup.

GeeWee commented 3 years ago

I think that's a fair point re: rule of silence. Also with the new part you've added in the README I think you can probably close this issue.

Thanks for your time and the software!

rschroll commented 3 years ago

@mcpeixoto Feel free to reopen if you're not satisfied. (Assuming you're allowed to do that. If not, just comment and I'll reopen.)

fernent commented 3 years ago

I have the same problem, I had the one-time code request one time but then the rmfuse program is not executed properly :

➜ rpi rmfuse -vv rmk2

/home/fernand/.local/lib/python3.9/site-packages/trio/_core/_multierror.py:502: RuntimeWarning: You seem to already have a custom sys.excepthook handler installed. I'll skip installing Trio's custom handler, but this means MultiErrors will not show full tracebacks.
  warnings.warn(
DEBUG:pyfuse3:Initializing pyfuse3
DEBUG:pyfuse3:Calling fuse_session_new
FUSE library version: 3.10.4
DEBUG:pyfuse3:Calling fuse_session_mount
INFO:rmfuse.fuse:Mounting on rmk2
DEBUG:pyfuse3:pyfuse-02: No tasks waiting, starting another worker (now 2 total).
unique: 2, opcode: INIT (26), nodeid: 0, insize: 56, pid: 0
INIT: 7.33
flags=0x13fffffb
max_readahead=0x00020000
   INIT: 7.31
   flags=0x0040b039
   max_readahead=0x00020000
   max_write=0x00100000
   max_background=0
   congestion_threshold=0
   time_gran=1
   unique: 2, success, outsize: 80
unique: 4, opcode: GETATTR (3), nodeid: 1, insize: 56, pid: 5012
DEBUG:rmcl.api:Renewing user token
DEBUG:pyfuse3:Calling fuse_session_unmount
DEBUG:pyfuse3:Calling fuse_session_destroy

configuration:

      :-------------------::        -------------- 
     :-----------/shhOHbmp---:\      OS: Fedora 34 (Thirty Four) x86_64 
   /-----------omMMMNNNMMD  ---:     Host: HP EliteBook 840 G5 
  :-----------sMMMMNMNMP.    ---:    Kernel: 5.12.15-300.fc34.x86_64 
 :-----------:MMMdP-------    ---\   Uptime: 7 hours, 5 mins 
,------------:MMMd--------    ---:   Packages: 5111 (rpm), 12 (flatpak) 
:------------:MMMd-------    .---:   Shell: zsh 5.8 
:----    oNMMMMMMMMMNho     .----:   Resolution: 1920x1080 
:--     .+shhhMMMmhhy++   .------/   DE: GNOME 40.2 
:-    -------:MMMd--------------:    WM: Mutter 
:-   --------/MMMd-------------;     WM Theme: Adwaita 
:-    ------/hMMMy------------:      Theme: Adwaita-dark [GTK2/3] 
:-- :dMNdhhdNMMNo------------;       Icons: breeze [GTK2/3] 
:---:sdNMMMMNds:------------:        Terminal: gnome-terminal 
:------:://:-------------::          CPU: Intel i7-8550U (8) @ 4.000GHz 
:---------------------://            GPU: Intel UHD Graphics 620