On Tue, 16 Sep 2008 12:16:42 +0800 Ian Kent <[EMAIL PROTECTED]> wrote:
> On Sat, 2008-09-13 at 12:03 +1000, Matthew Jurgens wrote: > > Ok, so I updated the script to the RPM version and added the > > authentication parts: > > > > #!/bin/bash > > > > # This file must be executable to work! chmod 755! > > key="$1" # key comes is as something like a hostname eg matthew > > opts="-fstype=cifs,username=$SMB_USER,password=$SMB_PASSWORD" > > > > smbauthfile=/tmp/smbauth.tmp > > cat << EOT > $smbauthfile > > username=$SMB_USER > > password=$SMB_PASSWORD > > EOT > > > > for P in /bin /sbin /usr/bin /usr/sbin > > do > > if [ -x $P/smbclient ] > > then > > SMBCLIENT=$P/smbclient > > break > > fi > > done > > > > [ -x $SMBCLIENT ] || exit 1 > > > > $SMBCLIENT -A $smbauthfile -gL $key 2>/dev/null| awk -v key="$key" -v > > opts="$opts" -F'|' -- ' > > BEGIN { ORS=""; first=1 } > > /Disk/ { > > if (first) > > print opts; first=0 > > dir = $2 > > loc = $2 > > # Enclose mount dir and location in quotes > > # Double quote "$" in location as it is special > > gsub(/\$$/, "\\$", loc); > > print " \\\n\t \"/" dir "\"", "\"://" key "/" loc > > "\"" > > } > > END { if (!first) print "\n"; else exit 1 } > > ' > > > > > > > > Now its output is slightly different but the result is still the same > > -fstype=cifs,username=USER,password=PASSWORD \ > > "/C" "://xp0/C" \ > > "/ADMIN$" "://xp0/ADMIN\$" \ > > "/C$" "://xp0/C\$" > > > > vs the older output > > -fstype=cifs,username=USER,password=PASSWORD \ > > /C "://xp0/C" \ > > /ADMIN\$ "://xp0/ADMIN\$" \ > > /C\$ "://xp0/C\$" > > mount: > > //xp0/C/$ on /smb/xp0/C$ type cifs (rw,mand) > > As I said before, the mount command looks OK, but I wonder if any recent > CIFS kernel changes are getting confused by the "\" in the location > (aka //xp0/C\$). That would be a bit of a bummer as autofs needs it but > getting rid of it before the actual mount isn't straight forward. > Yes. There are some recent changes to the mount.cifs command and CIFS VFS in kernel to try to handle delimiters a little more intelligently (they were really broken before in some cases). This mount command does not look right to me though. You have this: "://xp0/C\$" ...and the mount helper is interpreting that last \ as a delimiter. Since you have that in quotes already, you shouldn't need to escape the trailing $. So I think this would be more likely to work: "://xp0/C$" Cheers, -- Jeff Layton <[EMAIL PROTECTED]> _______________________________________________ autofs mailing list autofs@linux.kernel.org http://linux.kernel.org/mailman/listinfo/autofs