Public bug reported:

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

** Affects: mountall (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1588594

Title:
  mountall: potential problem with fuse.ceph

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/mountall/+bug/1588594/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to