PDA

View Full Version : SLES 11 SP4 Mount.cifs error 112 Host is down SMBv2



driassetto
02-Mar-2017, 02:37
Hello,

Recently we disabled SMBv1 support for all of our windows hosts in our network.
Unfortunately, that caused issues with mounting Windows shares in our SLES 11 Servers. We have many SLES servers, running SLES 11 SP2 to SLES 11 SP4.

When we tried to manually mount the drives after the change to the windows hosts, we recieved the error message of:
mount error(112): Host is down

We can ping the host, we can do a nslookup of the host name, we have validated that the ports are not blocked between the hosts.

As these were production machines, we reverted the SMBv1 windows modification to the hosts that were required and then we configured a test share on a device with SMBv1 disabled.

The test machine is fully patched and has the latest version of Samba from SLES.


Sles 11 sp4 kernel: 3.0.101-94-default
Sles 11 samba version:3.6.3-84.1


In our research we found that SMB2 support is supposed to be in place with Samba 3.6.0. If that is not the case, please let me know.
Additionally, from my understanding, smbclient does not support the max protocol option until v4.1.12 (-m).

We have been using (unsucessfully) the following command to test mounting the shares that have SMBv1 disabled.
mount -t cifs //WindowsServer/Share /mnt/smbtest/ --verbose -o username=<NAME>,domain=<DOMAIN>
mount -t cifs //WindowsServer/Share /mnt/smbtest/ --verbose -o username=<NAME>,domain=<DOMAIN>,vers=2.0
mount -t cifs //WindowsServer/Share /mnt/smbtest/ --verbose -o username=<NAME>,domain=<DOMAIN>,vers=2.0,sec=<ALL OPTIONS>

Additionally, we have specified in the smb.conf the following:
server max protocol = SMB3
server min protocol = SMB2
client max protocol = SMB3
client min protocol = SMB2

We are still only seeing the Error 112: Host is down message.
I have validated that perms are present for the user for the share and for NTFS(silly windows).

We also did upgrade this server to SLES 12, in which it had the following:
SLES 12 kernel:3.12.28-4-default
SLES 12 samba version: 4.1.12-3.2

At which point our drives did mount. Which is great.

BUT. We have only around 40 linux servers that host production applications, and we have not tested enough for us to push to upgrade all of the servers to SLES 12 GA/SP1/SP2.

Is there a way to get these drives reconnecting with SMB2 and 3.6.3-84.1 on SLES 11 SP4 or SLES 11 SP3?
Any other advice would be appreciated.

smflood
03-Mar-2017, 00:53
driassetto Wrote in message:

> Recently we disabled SMBv1 support for all of our windows hosts in our
> network.
> Unfortunately, that caused issues with mounting Windows shares in our
> SLES 11 Servers. We have many SLES servers, running SLES 11 SP2 to SLES
> 11 SP4.
>
> When we tried to manually mount the drives after the change to the
> windows hosts, we recieved the error message of:
> mount error(112): Host is down
>
> We can ping the host, we can do a nslookup of the host name, we have
> validated that the ports are not blocked between the hosts.
>
> As these were production machines, we reverted the SMBv1 windows
> modification to the hosts that were required and then we configured a
> test share on a device with SMBv1 disabled.
>
> The test machine is fully patched and has the latest version of Samba
> from SLES.
>
>
> Sles 11 sp4 kernel: 3.0.101-94-default
> Sles 11 samba version:3.6.3-84.1
>
>
> In our research we found that SMB2 support is supposed to be in place
> with Samba 3.6.0. If that is not the case, please let me know.
> Additionally, from my understanding, smbclient does not support the max
> protocol option until v4.1.12 (-m).
>
> We have been using (unsucessfully) the following command to test
> mounting the shares that have SMBv1 disabled.
> mount -t cifs //WindowsServer/Share /mnt/smbtest/ --verbose -o
> username=<NAME>,domain=<DOMAIN>
> mount -t cifs //WindowsServer/Share /mnt/smbtest/ --verbose -o
> username=<NAME>,domain=<DOMAIN>,vers=2.0
> mount -t cifs //WindowsServer/Share /mnt/smbtest/ --verbose -o
> username=<NAME>,domain=<DOMAIN>,vers=2.0,sec=<ALL OPTIONS>
>
> Additionally, we have specified in the smb.conf the following:
> server max protocol = SMB3
> server min protocol = SMB2
> client max protocol = SMB3
> client min protocol = SMB2
>
> We are still only seeing the Error 112: Host is down message.
> I have validated that perms are present for the user for the share and
> for NTFS(silly windows).
>
> We also did upgrade this server to SLES 12, in which it had the
> following:
> SLES 12 kernel:3.12.28-4-default
> SLES 12 samba version: 4.1.12-3.2
>
> At which point our drives did mount. Which is great.
>
> BUT. We have only around 40 linux servers that host production
> applications, and we have not tested enough for us to push to upgrade
> all of the servers to SLES 12 GA/SP1/SP2.
>
> Is there a way to get these drives reconnecting with SMB2 and 3.6.3-84.1
> on *SLES 11 SP4 or SLES 11 SP3*?
> Any other advice would be appreciated.

Try adding ",vers=3.0" (or possibly ",vers=3\.0") to the -o option
in your mount commands.

HTH.
--
Simon Flood
SUSE Knowledge Partner


----Android NewsGroup Reader----
http://usenet.sinaapp.com/

driassetto
03-Mar-2017, 02:23
Try adding ",vers=3.0" (or possibly ",vers=3\.0") to the -o option
in your mount commands.

HTH.
--
Simon Flood
SUSE Knowledge Partner


----Android NewsGroup Reader----
http://usenet.sinaapp.com/[/QUOTE]

SMFlood,

Thank you for your reply on this.

As i am on a test VM that i have a SLES 11 SP4 Snapshot and a SLES 12 GA Snapshot, i was able to try this in both environments.


On SLES12, when i do a :
mount -t cifs //app2012tools/test /mnt/smbtest/ --verbose -o username=<name>,domain=<DOMAIN>,vers=2.0
It works and mounts the drive.


When i try with the vers=3.0, it does not:
mount -t cifs //app2012tools/test /mnt/smbtest/ --verbose -o username=<name>,domain=<DOMAIN>,vers=3.0
Error 5: input/output error



On the more important SLES 11 SP4, it does not work in either case
mount -t cifs //app2012tools/test /mnt/smbtest/ --verbose -o user=<name>,domain=<DOMAIN>,ver=2.0
mount -t cifs //app2012tools/test /mnt/smbtest/ --verbose -o user=<name>,domain=<DOMAIN>,ver=2
mount -t cifs //app2012tools/test /mnt/smbtest/ --verbose -o user=<name>,domain=<DOMAIN>,vers=2.0.0
mount -t cifs //app2012tools/test /mnt/smbtest/ --verbose -o user=<name>,domain=<DOMAIN>,vers=3.0.0
mount -t cifs //app2012tools/test /mnt/smbtest/ --verbose -o user=<name>,domain=<DOMAIN>,ver=3
mount -t cifs //app2012tools/test /mnt/smbtest/ --verbose -o user=<name>,domain=<DOMAIN>,ver=3.0

mount.cifs kernel mount options: ip=10.200.100.118,unc=\\WINDOWSSERVER\SHARE,ver=3. 0,ver=1,user=<NAME>,domain=<DOMAIN>,pass=<PASS>

^^why does it show ver=1 and vers=3. I cant find any documentation on it. ^^


The Verbose output always provided this information:

All report: mount Error 112: Host is down



When i did get the SLES 12 system to mount the share, i ran a "mount" to see what all properties were set

//WINDOWSSERVER/SHARE on /mnt/smbtest type cifs (rw,relatime,vers=2.0,sec=ntlmssp,cache=strict,use rname=<NAME>,domain=<DOMAIN>,uid=0,noforceuid,gid=0,noforcegid,addr=10.200.100 .118,file_mode=0755,dir_mode=0755,nounix,serverino ,rsize=65536,wsize=65536,actimeo=1)

One thing i did note was on each failure, there was a empty ,, section between varying sections. this persisted as i added all of the mount options from the last output above, and also the password in the command.

mount.cifs kernel mount options: ip=10.200.100.118,unc=\\WINDOWSSERVER\SHARE,,ver=1 ,user=USER,domain=DOMAIN,pass=PASS

driassetto
03-Mar-2017, 02:27
One other item of note is that the windows server is running Server 2012, not server 2012 R2.

driassetto
13-Apr-2017, 20:06
If you are looking for a answer on this (As i did for a very long time):
Basically the SLES 11 Kernel of 3.0.x that is the default on SLES/SuSe Linux Enterprise Server does not support the use of the vers= option with the mount -t cifs command.
A review of "man mount(8)" will show that there is no section for vers= in the command.

This is supported at the 3.5.x Kernel and above. And is supported in the SLES 12 GA.
SLES 12 runs the 3.12.x Kernel, which has the support for vers= in the mount.cifs command.

Good luck to you all.

HvdHeuvel
14-Apr-2017, 18:01
On Thu, 13 Apr 2017 19:14:01 +0000, driassetto wrote:

> If you are looking for a answer on this (As i did for a very long time):
> Basically the SLES 11 Kernel of 3.0.x that is the default on SLES/SuSe
> Linux Enterprise Server does not support the use of the vers= option
> with the mount -t cifs command.
> A review of "man mount(8)" will show that there is no section for vers=
> in the command.
>
> This is supported at the 3.5.x Kernel and above. And is supported in the
> SLES 12 GA.
> SLES 12 runs the 3.12.x Kernel, which has the support for vers= in the
> mount.cifs command.
>
> Good luck to you all.

see also:
https://www.suse.com/support/kb/doc/?id=7018804

Thanks
Hans