|
|
51CTO旗下网站
|
|
移动端

Windows 和 Linux 互操作性:看一看 Samba

Samba是一款易于实现且免费使用的互操作性套件。Samba使用服务器消息块(SMB)协议,Windows系统使用该协议相互联系。使用Samba,你可以让Linux系统将驱动器映射到Windows系统,可以让Windows系统将驱动器映射到Linux系统,不过后者的可能性大得多。

作者:布加迪编译来源:51CTO|2020-02-14 08:00

Windows和Linux互操作性:看一看Samba

【51CTO.com快译】很少有人在纯Linux环境下工作。Samba是面向Linux和Unix环境的Windows互操作性套件。它适用于在可能包括Linux、Unix、Windows、macOS及其他操作系统的异构环境下工作的那些人。

Samba使用服务器消息块(SMB)协议,Windows系统使用该协议相互联系。使用Samba,你可以让Linux系统将驱动器映射到Windows系统,可以让Windows系统将驱动器映射到Linux系统,不过后者的可能性大得多。

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

一、不需要域

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

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

同步那些密码

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

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

  1. $ sudo smbpasswd -a mjones 

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

  1. $ sudo smbpasswd -e mjones 

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

  1. $ 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计算机映射驱动器:

  1. NET USE P: \\FS1\Public  
  2. 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年首次发布,久经考验,证明其在现代网络中有一席之地,并为你的异构环境提供免费的互操作性。尽情享用吧!

原文标题:Windows and Linux interoperability: A look at Samba,作者:Ken Hess

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

【编辑推荐】

  1. 实践 | 如何进行Linux启动时间优化
  2. 如何仅使用命令即可更新Windows10防病毒软件
  3. 微软公布Windows 10X细节:更新升级过程不超过90秒
  4. 统一操作系统UOS官网正式上线:自带全家桶、可替代Windows
  5. 微软公布Windows 10X核心功能:极速更新、支持32位应用等
【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

高并发互联网消费金融领域架构设计

高并发互联网消费金融领域架构设计

应对高并发架构
共5章 | jayslife

62人订阅学习

Kubernetes:21天完美通关

Kubernetes:21天完美通关

从小白到修神
共29章 | king584911644

662人订阅学习

Python应用场景实战手册

Python应用场景实战手册

Python应用场景实战手册
共3章 | KaliArch

23人订阅学习

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO官微