[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linux-cifs
Subject:    RE: Unable to mount using credentials file
From:       "Roger Brooks" <r.s.brooks () ieee ! org>
Date:       2014-11-04 13:31:25
Message-ID: 000601cff833$a28ec5c0$e7ac5140$ () ieee ! org
[Download RAW message or body]

Actually neither mount nor mount.cifs could resolve the computer name until I added \
wins to /etc/nsswitch.conf. After I did so, neither had any difficulty mounting \
volumes by computer name instead of by IP address. Your prediction is correct, \
however, concerning mount commands without credentials on the command line. In that \
case mount fails with "Invalid argument", whereas mount.cifs prompts for a password. \
Unfortunately, mount does not seem to be looking for mount.cifs in /sbin. I was \
afraid of moving mount.cifs from where Synology puts it, so I added a softlink (with \
privileges 777) in /sbin to /usr/syno/bin/mount.cifs, but the behaviour of mount \
remains unchanged. Why would mount require a fixed location for mount.cifs?  Why \
wouldn't it just search the PATH? IAC, I can just call mount.cifs directly.

-----Original Message-----
From: Steve French [mailto:smfrench@gmail.com] 
Sent: Monday, November 3, 2014 3:40 PM
To: Roger Brooks
Cc: linux-cifs@vger.kernel.org
Subject: Re: Unable to mount using credentials file

Makes sense - it looks like it sis simply not finding mount.cifs so in your case you \
will want to call mount.cifs directly or move it into /sbin

One way to think about this is that if you don't have mount.cifs (or if it is not in \
the path, usually /sbin/mount.cifs, where mount is looking for it) then the mount \
command will pass the mount options directly to the kernel (cifs.ko) without parsing \
                them.  This is ok for something like:
       mount -t cifs //192.168.0.101/sharename /mnt -o \
username=myuser,password=mypassword but won't work when you pass in something which \
has to be resolved in userspace berfore getting to the kernel.  In particular it \
won't work if you have - a credential file (since mount.cifs has to open that), or if \
you mount using a tcp name of the server (instead of using the server's ip address) \
e.g. mount -t cifs //myserver/myshare /mnt instead of mount -t cifs \
//ip-address/myshare and will also fail if you don't specify the password (because \
mount won't prompt for a password if missing).   Most of the work in mount is done in \
kernel (at least for the case of cifs) but opening credential files, looking up \
hostnames and prompting for the password are exceptions.


















On Mon, Nov 3, 2014 at 1:34 AM, Roger Brooks <r.s.brooks@ieee.org> wrote:
> Sorry, Gunter, I don't have strace:
> 
> -ash: strace: not found
> 
> mount.cifs is located at:
> 
> /usr/syno/bin/mount.cifs
> 
> I suspect that the installed version of mount (from BusyBox 1.16) is too old to \
> correctly handle "-o credentials=<file>". I will try installing a newer version \
> (BusyBox 1.21) and report back later. 
> However, this no longer has a high priority for me, as I can live with calling \
> mount.cifs directly. 
> @Steve,
> mount.cifs is only v5.5 in my installation, but since calling it directly works \
> fine, I presume that the problem lies with the BusyBox version of mount and not \
> with mount.cifs. Since mount works with "-o username=<user>,password=<password>", I \
> presume that it is finding mount.cifs, but is not passing "-o credentials=<file>" \
> correctly. 
> Thanks for all of your help!
> 
> -----Original Message-----
> From: Günter Kukkukk [mailto:linux@kukkukk.com]
> Sent: Monday, November 3, 2014 12:50 AM
> To: Roger Brooks; linux-cifs@vger.kernel.org
> Subject: Re: Unable to mount using credentials file
> 
> Am 02.11.2014 um 17:50 schrieb Roger Brooks:
> > Here is the output from mount -t cifs --verbose -o ... for the failing case:
> > mount: mounting //<IP address>/<share> on /mnt/<mountpoint>/ failed:
> > Invalid argument There is still no output when I add --verbose to the successful \
> > case. There is no verbose option listed for mount --help.
> > Thanks for your help.
> 
> you can also try strace (hopefully available) like:
> 
> strace -f mount -t cifs --verbose //server/share /mnt -o .....
> 
> look, whether mount.cifs is found or not.
> 
> Btw - where is your mount.cifs installed (absolute path)?
> 
> Cheers, Günter
> 
> > 
> > -----Original Message-----
> > From: Steve French [mailto:smfrench@gmail.com]
> > Sent: Sunday, November 2, 2014 5:30 PM
> > To: Roger Brooks
> > Cc: linux-cifs@vger.kernel.org
> > Subject: Re: Unable to mount using credentials file
> > 
> > mount with call mount.cifs (if it is present in /sbin) when you specify "mount -t \
> > cifs" 
> > You can specify --verbose before the -o (see
> > http://linux.die.net/man/8/mount.cifs) and it will show the mount 
> > options being passed in to the kernel syscall so it would be useful 
> > for debugging to compare the exact parameters being passed in to the 
> > kernel in the working vs. failing case by specifying --verbose before 
> > the -o
> > 
> > On Sun, Nov 2, 2014 at 4:09 AM, Roger Brooks <r.s.brooks@ieee.org> wrote:
> > > P.S. To answer my own question below, experimentation shows that mount and \
> > > umount still fulfill their normal functions for volumes mounted directly with \
> > > mount.cifs. So, much as it irritates me not to know why mount -o credentials \
> > > doesn't work, I can live with using mount.cifs instead. Thanks to all who \
> > > responded! 
> > > Thanks for the tips, Steve!
> > > 
> > > My version of mount:
> > > BusyBox v1.16.1 (2014-10-10 08:37:09 CST) multi-call binary.
> > > does not appear to have a verbose option. At least:
> > > mount --help
> > > does not list any such option, and mount does not return any information to the \
> > > console when it succeeds, regardless of whether or not I specify -v. 
> > > The failure message is also unchanged with the -v option:
> > > mount: mounting //<IP address>/<share> on /mnt/<mountpoint> failed:
> > > Invalid argument
> > > 
> > > Also, I have read that mount maintains /etc/mtab.
> > > Does that mean that mount will not list volumes which I mounted directly with \
> > > mount.cifs, and that I cannot use umount to unmount volumes mounted directly \
> > > with mount.cifs? 
> > > -----Original Message-----
> > > From: Steve French [mailto:smfrench@gmail.com]
> > > Sent: Saturday, November 1, 2014 5:24 PM
> > > To: Roger Brooks
> > > Cc: linux-cifs@vger.kernel.org
> > > Subject: Re: Unable to mount using credentials file
> > > 
> > > using /sbin/mount.cifs directly should be fine.   When you mount with
> > > verbose mount option does it show any useful differences between the 
> > > two cases (working vs. failing)
> > > 
> > > On Sat, Nov 1, 2014 at 11:21 AM, Roger Brooks <r.s.brooks@ieee.org> wrote:
> > > > P.S.
> > > > There was a non-printing character in the directory name under /root.
> > > > After correcting that, mount.cifs -o credentials=<filename> works.
> > > > However, mount -t cifs -o credentials=<filename> still returns "Invalid \
> > > > argument". Can I just use mount.cifs directly, or does mount perform some \
> > > > additional needed housekeeping? If mount is needed, how can I get -o \
> > > > credentials to work? TIA for any tips!
> > > > 
> > > > Hi Benjamin,
> > > > 
> > > > Thanks for responding.
> > > > 
> > > > The credentials file is a simple text file created with vi containing the \
> > > > lines:
> > > > > > 
> > > > username=<user>
> > > > password=<password>
> > > > <<
> > > > I have tried this both with and without trailing newline at the end of the \
> > > > second line. 
> > > > I have also tried the variant:
> > > > > > 
> > > > username=<user>
> > > > password=<password>
> > > > domain=<domain>
> > > > <<
> > > > 
> > > > The results are always the same.
> > > > If there is a problem with the *content* of the file, why would the error \
> > > > message say that the file could not be opened? 
> > > > Thanks for your help!
> > > > Best Regards,
> > > > Roger
> > > > 
> > > > From: Benjamin Bellec [mailto:b.bellec@gmail.com]
> > > > Sent: Saturday, November 1, 2014 1:34 PM
> > > > To: Roger Brooks
> > > > Cc: linux-cifs@vger.kernel.org
> > > > Subject: Re: Unable to mount using credentials file
> > > > 
> > > > Hi,
> > > > Does your credential file is correctly formatted ?
> > > > 
> > > > 2014-11-01 13:03 GMT+01:00 Roger Brooks <r.s.brooks@ieee.org>:
> > > > I am attempting to mount Windows volumes on a Synology DS (running DSM 5.0, a \
> > > > Debian-based distribution). Command lines of the form:
> > > > mount -t cifs -o username=<user>,password=<pass> //<IP address>/share/ \
> > > > /mnt/<mountpoint> succeed. However, command lines of the form:
> > > > mount -t cifs -o credentials=<filename> //<IP address>/share/ \
> > > > /mnt/<mountpoint> fail with the error "Invalid argument". For diagnostic \
> > > > purposes, I have attempted to mount the volumes directly using mount.cifs \
> > > > (v5.5). Once again, commands of the form:
> > > > mount.cifs //<IP address>/<share> /mnt/<mountpoint>/ -o 
> > > > username=<user>,password=<password>
> > > > succeed.
> > > > However, commands of the form:
> > > > mount.cifs //<IP address>/<share> /mnt/<mountpoint>/ -o credentials=<file> \
> > > > fail with the error message: error -1 (Unknown error 4294967295) opening \
> > > > credential file <file>  This is the case regardless of the location of the \
> > > > file (see http://samba.2283325.n4.nabble.com/Error-s-opening-credentials-file
> > > > -
> > > > t
> > > > d
> > > > 2518214.html) or its privileges.  The error persists, even when the 
> > > > command is executed from a root session and the credentials file has \
> > > > permissions 0777 and is in a subdirectory of /root. How can I get mount to \
> > > > work using a credentials file? 
> > > > 
> > > > 
> > > > --
> > > > To unsubscribe from this list: send the line "unsubscribe linux-cifs"
> > > > in the body of a message to majordomo@vger.kernel.org More 
> > > > majordomo info at  http://vger.kernel.org/majordomo-info.html
> > > > 
> > > > 
> > > > --
> > > > To unsubscribe from this list: send the line "unsubscribe linux-cifs"
> > > > in the body of a message to majordomo@vger.kernel.org More 
> > > > majordomo info at  http://vger.kernel.org/majordomo-info.html
> > > 
> > > 
> > > 
> > > --
> > > Thanks,
> > > 
> > > Steve
> > > 
> > > --
> > > To unsubscribe from this list: send the line "unsubscribe linux-cifs"
> > > in the body of a message to majordomo@vger.kernel.org More majordomo 
> > > info at  http://vger.kernel.org/majordomo-info.html
> > 
> > 
> > 
> > --
> > Thanks,
> > 
> > Steve
> > 
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-cifs"
> > in the body of a message to majordomo@vger.kernel.org More majordomo 
> > info at  http://vger.kernel.org/majordomo-info.html
> > 
> 
> 
> --
> 
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-cifs" 
> in the body of a message to majordomo@vger.kernel.org More majordomo 
> info at  http://vger.kernel.org/majordomo-info.html



--
Thanks,

Steve

--
To unsubscribe from this list: send the line "unsubscribe linux-cifs" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic