Linux与Windows互操作性的办法-Samba

496次阅读
没有评论

Samba 让你可以在 Linux 系统上模拟文件和打印服务。你可能并不完全了解这样的系统能为你做什么,但简而言之,使用 Samba 创建基于 Linux 的文件和打印服务器,有望为你省钱并简化管理。

Linux 与 Windows 互操作性的办法 -Samba

一、不需要域

不必实施 Windows Active Directory(AD)域即可使用 Samba 文件和打印共享。如果你有域,也不必为了向 Windows 系统提供文件和打印服务而将 Linux 系统加入域。但需要做两件事才能使这两个操作系统无缝运行,如同拥有一个 AD 域那样:同步密码,并匹配域或工作组名称。

注意:我不反对 AD 域,相反支持 AD 域。我也是 Windows 管理员,明白拥有 AD 域的价值。如果你没有 AD 域,或者不想将 Linux 系统加入域,有一些变通方法。

同步那些密码

在没有 AD 域的情况下实施 Samba 时你要做的一件事就是同步密码。在 Linux 系统上,将密码设为与 Windows 系统 (或域) 上使用的密码为同一个。请记住,你得使用 smbpasswd 命令来这么做。passwd 命令仅适用于 Linux 用户帐户,不影响 Samba 用户的密码。

添加 Samba 用户实际上是两个步骤的过程。首先要添加新用户:

$ sudo smbpasswd -a mjones

其次需要启用新用户。这是最常被遗忘的步骤:

$ sudo smbpasswd -e mjones

之后,使用 smbpasswd 命令更改 Samba 用户的密码:

$ sudo smbpasswd mjones

有一种方法可以使用 /etc/samba/smb.conf 文件中的全局配置设置来同步用户和密码,但是该选项不在本文探讨的范围。

匹配域或工作组名称

设置 Samba 时,使用 Windows 系统使用的域或工作组名称。默认工作组名称 (SAMBA) 在 Windows 环境中可能没有用。匹配名称将帮助你浏览 Windows 系统,允许 Windows 系统顺畅无阻地浏览 Linux 系统的共享区。

启用了 Samba 的 Linux 系统还会出现在域计算机的浏览列表中。不过由于该系统不是正式的域成员,因此 Windows 管理员无法以任何方式执行策略或管理系统。提醒一下,应获得以这种方式配置 Linux 系统的权限。

二、启用 S​​amba 的 Linux 系统看起来像 Windows 系统

如果你的网络上有正确配置的启用 Samba 的 Linux 系统,很难将它与 Windows 系统区分开来。你甚至可以模仿所选择的 Windows 版本,让 Linux 系统报告自己是 Windows 系统。大多数用户不会知道有何区别,也不会关心在网络浏览器中看到的一个或多个系统运行 Linux。

将驱动器映射到 Samba 共享区

若没有 AD 域,你要创建一个 CMD(比如 LOGIN.CMD)文件,并将其放入每个用户的 Startup 文件夹中,该文件夹将驱动器映射到 Linux Samba 文件服务器。优秀的 Windows 管理员可以实现映射的驱动器,无需接触每个系统。简单的 PowerShell 脚本可以将 CMD 文件部署到网络上的每个 Windows 系统。如果你有域,可以创建组策略,将驱动器映射到系统及其共享区。在这两种情况下,假设你的 Linux 文件服务器名为 FS1,并且有两个共享区:Public 和 Projects。以平常的方式从 Windows 计算机映射驱动器:

NET USE P: \\FS1\Public
NET USE Q: \\FS1\Projects

如果一切设置正确,驱动器将会映射,没有密码提示,就像你使用 Windows 文件服务器一样。标准共享区可锁定起来,供特定的用户或组使用。Public 驱动器之类的共享区通常对所有人开放,可以读取写入。

管理共享区不包括在内

Windows 管理员会注意到,他们心爱的管理共享区 (C$ 和 D$ 等) 在 Samba 中不存在,也不应该存在。当然,你可以创建管理共享区,但除非你出于某个原因想要破坏 Linux 系统的安全性,否则就没有理由这么做。

打印机共享 / 服务

通过 Samba 设置打印机共享是相当复杂的过程。你得为 Windows 驱动程序和 spooling 打印作业创建共享区,必须单独共享每台打印机。正确设置后,Samba 打印机共享或服务效果很好。进行这项设置时务必要耐心,因为相比 Windows 服务器的安装设置(几乎是自动的),其安装设置可能令人沮丧。

三、可选的 Samba 功能和部署

使用 Samba,你的 Linux 系统可能变成没有任何商业软件的浏览主机、域控制器或域成员。当然,功能列表永远无法完全与实际的 Windows 服务器相比,但出于节省成本和总体设置简便的考虑,想与 Windows 系统集成,选择 Samba 不会出错。

想使用 Windows,只需创建启用 Samba 的 Linux。换句话说,一旦你设置、配置和运行了 Samba,无需在 Windows 系统中执行任何特殊操作。从这个角度来看,Samba 易于实现,唯一部署的是你期望从 Windows 服务器获得的东西,因为不用安装第三方代理,也不需要特殊配置就可以使用 Samba 服务器。

注意:由于在 Windows 网络上浏览的方式,共享区和系统可能在长达 45 分钟的时间不会显示。耐心点,共享区和系统没有立即出现在浏览列表中时别以为出了什么岔子。

四、小结

多年来,IT 管理员部署了在企业网络上集成 Windows 和 Linux/Unix 系统的工具。面向 Windows 的 NFS 软件、面向 Windows 的终端仿真软件、FTP 客户软件和 SSH 客户软件是部署在 Windows 系统上与这些系统联系的常用工具,然而 Samba 几乎开箱即用。Samba 只需很少的计算开销即可运行。可以使用任何 Linux 系统。Samba 于 1992 年首次发布,久经考验,证明其在现代网络中有一席之地,并为你的异构环境提供免费的互操作性。尽情享用吧!

正文完