[Bug 1588594] Re: mountall: potential problem with fuse.ceph
Francois Lafont
1588594 at bugs.launchpad.net
Fri Jun 3 16:50:15 UTC 2016
Ah ok, thx.
Personally I'm not used to changing the init program of my distrib but
indeed it's possible. So the problem can happen in Trusty and in Xenial
too with the condition to switch to upstart in the Xenial case.
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to mountall in Ubuntu.
https://bugs.launchpad.net/bugs/1588594
Title:
mountall: potential problem with fuse.ceph
Status in mountall package in Ubuntu:
New
Bug description:
Hi,
Here is a perfectly valid fstab line to mount a fuse.ceph filesystem
(it's a distributed file system but no importance here):
id=cfs,keyring=/etc/ceph/keyring,client_mountpoint=/ /mnt/
fuse.ceph defaults,_netdev 0 0
But here are the arguments given to /sbin/mount.fuse.ceph by mountall:
id=cfs,keyring=/etc/ceph/keyring,client_mountpoint= /mnt -o
rw,_netdev
As you can see, I have "client_mountpoint=" but it should be
"client_mountpoint=/" (with the / at the end). The trailing "/" has
been removed and in this case it's a bad idea. The mount at boot just
fails because "client_mountpoint=" is not correct.
In fact, the problem is in src/mountall.c around line 569:
char *colon;
dequote (mnt->device);
/* If our device name is in host:/path format, as is
* commonly used for network filesystems, don't strip
* trailing slashes if this is the entire path. We
* look for the colon starting from the end, so that
* we correctly handle IPv6 addresses for the host
* part.
*/
if ((colon = strrchr (mnt->device,':')) != NULL
&& colon[1] == '/')
strip_slashes (colon + 2);
else
strip_slashes (mnt->device); // <==== bad idea in the specific case of fuse.ceph filesystem
It's Ubuntu Xenial with mountall version 2.54ubuntu1.
Regards
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/mountall/+bug/1588594/+subscriptions
More information about the foundations-bugs
mailing list