为什么 smbclient -L returns info where OS=[Windows] 如果 Samba 服务器安装在 Ubuntu 上?

Why smbclient -L returns info where OS=[Windows] if Samba server installed on Ubuntu?

Samba 服务器在 Ubuntu 14.04.5 LTS (GNU/Linux 4.4.0-31-generic x86_64) 上运行。 当我使用 smbclient 查找此服务器上的可用服务时

smbclient -L server_name

我得到这个信息:

Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.3.11-Ubuntu]

谁能解释一下 "OS" 是什么意思,为什么写成 windows 6.1?

smblient -l 显示服务器上可用的服务 (Ubuntu)。

OS表示客户端的操作系统,Windows6.1是Windows7或者WindowsServer 2008 R2的版本号,其他系统版本号你可以看看here.

可能晚了,但我在想自己,它可以帮助别人。

显然是 hardcoded to fix a bug

fstr_sprintf(native_os, "Windows %d.%d", SAMBA_MAJOR_NBT_ANNOUNCE_VERSION,
    SAMBA_MINOR_NBT_ANNOUNCE_VERSION);

When the native os in sessionsetup is "Unix" then broken Konica Minolta printers refuse to talk to those CIFS servers. Other CIFS servers also announce themselves with native os Windows. Let's do the same to improve interoperability with broken devices like those printers from Konica Minolta. Thanks to Daniel Hoffmann for finding and reporting this Konika printer brokenness.

https://bugzilla.samba.org/show_bug.cgi?id=10168