Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fatal error: failed to mount FUSE fs: fusermount: exec: "fusermount": executable file not found in $PATH #1188

Closed
xabix opened this issue Feb 28, 2017 · 23 comments
Labels
Milestone

Comments

@xabix
Copy link

xabix commented Feb 28, 2017

Hi,
I am new with rclone. I installed rclone with snap on Ubuntu 16.04.2 and rclone-browser from ppa following this guide:
http://www.webupd8.org/2017/02/rclone-is-now-available-as-snap-package.html#more

The issue I am seeing happens on the GUI or in cmd:

rclone mount -v --allow-non-empty --allow-other DropBox: /mnt/HDD/Cloud/DropBox/
2017/02/28 22:13:29 rclone: Version "v1.35-DEV" starting with parameters ["/snap/rclone/60/bin/rclone" "mount" "-v" "--allow-non-empty" "--allow-other" "DropBox:" "/mnt/HDD/Cloud/DropBox/"]
2017/02/28 22:13:30 Dropbox root '': Modify window not supported
2017/02/28 22:13:30 Dropbox root '': Mounting on "/mnt/HDD/Cloud/DropBox/"
2017/02/28 22:13:30 Fatal error: failed to mount FUSE fs: fusermount: exec: "fusermount": executable file not found in $PATH
fusermount -V
fusermount version: 2.9.4
rclone -vv copy /tmp remote:tmp
2017/02/28 22:19:45 rclone: Version "v1.35-DEV" starting with parameters ["/snap/rclone/60/bin/rclone" "-vv" "copy" "/tmp" "remote:tmp"]
2017/02/28 22:19:45 Failed to create file system for "remote:tmp": didn't find section in config file

Any idea of the issue?

Merci

@ncw
Copy link
Member

ncw commented Feb 28, 2017

You probably need the fuse package installed.

@ncw
Copy link
Member

ncw commented Mar 1, 2017

@Dedsec1 are there dependencies missing from the snap? Seems like it should depend on fuse?

@xabix
Copy link
Author

xabix commented Mar 1, 2017

Yes it is installed (as per my previous middle quote):
fuse is already installed at the requested version (2.9.4-1ubuntu3.1)

@xabix
Copy link
Author

xabix commented Mar 1, 2017

@ncw I assume some dependancies are missing or the link is not well done because of the snap. Anything I can do to check this?

@Dedsec1
Copy link
Contributor

Dedsec1 commented Mar 1, 2017

well i added the fuse-support plug so hopefully that should do the trick, of course iam testing this before pushing the updated snap file out to the main repo..

@Dedsec1
Copy link
Contributor

Dedsec1 commented Mar 1, 2017

also make sure your doing sudo snap install rclone --classic because by default ubuntu snaps are set to the strict tag so they dont have full access to an system unless you allow it to do so.

@Dedsec1
Copy link
Contributor

Dedsec1 commented Mar 2, 2017

ok new update, for now i have created an apt-get install option for rclone using the free service packager.io . all it does is monitors your github repo and automatically builds the deb package if changes are made. so to make it short and simple, packager.io does all the monitoring and building the packages so it would be an perfect fit for users install rclone. i can confirm it works fully with mount as well.

@xabix
Copy link
Author

xabix commented Mar 2, 2017

My install of rclone was already done with "sudo snap install rclone --classic" as per the webupd8 website recommendation too.
When you say you added fuse-support, how do I get this new version installed?

I tried:

sudo snap refresh
All snaps up to date

I tried looking into in your other thread and I don't understand what I need after giving access to packager.io to my github: "select the rclone repo once you add my .pkgr.yml file and the system will start building the rest of the apps each time you push out an new release."

Sorry I am not an expert here and thus why I opted for the snap option which I though was easier.

@ncw
Copy link
Member

ncw commented Mar 2, 2017

@Dedsec1 re apt-get install: interesting - can you describe that further - maybe in a new issue?

@edsimpsons83
Copy link

Getting this issue as well. If I install rclone normally, mount works fine but when I use the snap install, everything but mount seems to work.

@ajthemacboy
Copy link

Same issue. I can mount it completely fine with the manual installation. I think it may be because snaps are isolated from the rest of the OS, and possibly even run as another user (I'm not sure though.)

@Dedsec1
Copy link
Contributor

Dedsec1 commented May 10, 2017

my guess, since it would be something to do the sandbox feature that snapd has when an snap is installed onto an system. i was looking at making an Appimage for rclone that has no limits from what i have been reading so far. so my next project might be that since it works across many dist's as well.

@ncw ncw modified the milestones: v1.37, v1.38 Jul 19, 2017
@dcajacob
Copy link

Same issue for me.

@ncw
Copy link
Member

ncw commented Jul 24, 2017

I need someone to figure this out for me - I don't have enough bandwidth to learn snap packaging at the moment! Any takers?

@breunigs
Copy link
Collaborator

breunigs commented Aug 2, 2017

unfortunately snap is not anymore accessible than building Debian packages it seems. To fix this specific issue, one can add stage-packages: [fuse] to the parts: rclone: section. After installing the rclone snap, you need to manually connect it to fuse: sudo snap connect rclone:fuse-support :fuse-support. If I understood correctly, latter is a design choice of snap.

I managed to get it to mount once, after which it complains about Transport endpoint is not connected. I guess this could be related to v1.36 not automatically unmounting and the broken mount somehow staying alive within snap – I couldn't figure out how to clean this up or even introspect snap here. Even when mounted the directory appears empty and there's no entry in mount. I didn't figure out if this is due to v1.36 being outdated or some snap restrictions.

Also, it seems the current approach of the snap go plugin is to go get and not use the vendor directory. At least I get a bunch of compile errors on the 1.37 tag and a bunch of others on HEAD. I guess switching to use the Makefile could work, but my attempt at fixing this was timeboxed.

@ncw
Copy link
Member

ncw commented Aug 2, 2017

@breunigs thanks for having a go. Is it worth adding what you did discover to the snap file?

Also, it seems the current approach of the snap go plugin is to go get and not use the vendor directory

:-( that seems like a strange choice. The make thing looks like it would probably work though...

@breunigs
Copy link
Collaborator

breunigs commented Aug 4, 2017

Okay, I managed to figure it out. I'm surely missing something here, though, because they cannot be serious. Here goes:

cd github.com/ncw/rclone
snapcraft
# this builds rclone_1.37_amd64.snap. I guess this file can also be uploaded to their store?
# otherwise install it using:
sudo snap install --classic rclone_*.snap --dangerous

# allow rclone to use fuse
sudo snap connect rclone:fuse-support :fuse-support

# only root can mount
folder="/folder/must/exist/on/host"
sudo snap run rclone mount someremote:/ $folder

# figure out process ID of snap-rclone
pid=$(ps aux | awk '/\/rclone\/.* mount /{print $2}')

# list mounted directory (also only root)
sudo ls -l /proc/$pid/root/$folder

There is very little documentation on the fuse support of snapd. I pieced above together by reading their test cases: https://github.com/snapcore/snapd/blob/master/tests/main/interfaces-fuse_support/task.yaml

Hopefully someone more familiar with snap in general can provide some insight here.

@breunigs
Copy link
Collaborator

Ah, I just discovered how the snap build process for rclone is setup:
https://launchpad.net/%7Edeathero291/+snap/rclone

Seems my switch to the make plugin also stopped pulling in the go dependency, and now the build is failing. I wonder why this didn't show during my testing, given that it does pull some Debian packages on every clean build. Anyway, I will fix this and consider this ticket complete once the build process finishes.

@breunigs
Copy link
Collaborator

No sense in keeping this open. I believe the patch would've worked, but the snap build system failed for some reason. Also I'm not even sure snaps are the right format for rclone, given it has to be installed in classic mode already just to save the configured file. Either way, we won't build snaps for now. The recommendation is to uninstall the snap and use the standard repositories (universe in Ubuntu?) or directly download from rclone.org.

@hbakhtiyor
Copy link

i've the same issue, i use rclone-v1.37-linux-amd64 from rclone.org

@breunigs
Copy link
Collaborator

@hbakhtiyor make sure that you installed fuse (e.g. Debian/Ubuntu: sudo apt install fuse) and that the user you are trying to mount with is part of the fuse group (check with groups or add with usermod -a -G fuse YOUR_USERNAME and logout/login your session.)

@logix2
Copy link

logix2 commented Jul 26, 2018

It still occurs with the snap package (installed with --classic) in Ubuntu 18.04, works with the binary (deb) downloaded from GitHub.

@ncw
Copy link
Member

ncw commented Jul 31, 2018

@logix2 the snap package is a bit broken. I'm going to try to get some help to fix it but in the mean time please use the binary release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

9 participants