当前位置: 首页 > 科技观察

使用Samba进行跨平台文件共享

时间:2023-03-13 00:46:39 科技观察

Samba是一种灵活的文件共享工具,它汇集了您可能在组织中运行的所有不同平台。在我使用Linux的早期,我是纽约州一个小型学前区的技术总监。我们的技术预算总是很紧张。我们是Windows2000ActiveDirectory域,但我们的中央服务器磁盘空间有限,并且没有教师的主目录。此外,我们还经历过十几名员工计算机硬盘驱动器故障。我正在寻找一种以最低成本节省员工工作量的方法。就在那时,我发现了Samba。在那之前,我一直在使用Linux进行内容过滤,不知道我们的Windows工作站可以连接到服务器并保留我们文件的备份。Samba项目始于1992年。当我开始试验这个项目时,它已有10年历史,我不知道如何配置它。我买了一本书看了怎么做,然后我从我们的电脑柜里拿出一台旧电脑,买了一个300G的SeagateIDE驱动器,安装了Linux,并配置了Samba。我使用了一个简单的配置并且它起作用了。在将解决方案展示给我们的一位IT助理后,我们部署了该解决方案。硬盘故障的问题依然存在,但我们的员工再也不用担心失去所有的辛勤工作。Samba在GPL下获得许可,并广泛用于大多数Linux发行版。Samba有很好的文档,Fedora用户可以参考这个文档在Fedora上配置Samba。在Linux上安装Samba您可以使用发行版的包管理器来安装Samba。在Fedora、CentOS、RHEL、Mageia和类似系统上:$sudodnfinstallsamba在Debian、LinuxMint和类似系统上:$sudoaptinstallsamba使用Samba创建共享文件夹创建一个简单的共享文件夹只需要五个步骤。1.在您的Linux服务器上创建一个您希望用户能够保存共享文件的目录。该目录可以位于服务器上的任何位置:/home或/opt或任何最适合您的目录。我使用我的主目录并将共享目录称为sambashare。$mkdir/home/don/sambashare在Fedora和其他运行SELinux的发行版上,您必须为共享目录授予安全权限:$sudosemanagefcontext--add--type"samba_share_t"~/sambashare$sudorestorecon-R~/sambashare2.使用Nano或您选择的文本编辑器编辑Samba配置文件。$sudonano/etc/samba/smb.conf在smb.conf文件的底部添加以下内容,将我示例中的/home/don/sambashare路径替换为您自己的共享目录的位置:[sambashare]comment=Linux上的Samba路径=/home/don/sambashare只读=不可浏览=是如果您使用Nano,请按Ctrl-O然后按Enter保存,按Ctrl-X退出。3.启动或重新启动Samba服务,具体取决于您的发行版。在Fedora和类似系统上,该服务不会在没有明确许可的情况下启动,所以现在并在引导时启动Samba:$sudosystemctlenable--nowsmb.conf在Debian和类似系统上,Samba默认情况下在安装后启动,所以你必须现在重新启动它:$sudoservicesmbdrestart4.更新您的防火墙规则以允许访问您的Samba共享。如何执行此操作取决于您的系统使用的防火墙。如果你正在运行firewalld:$sudofirewall-cmd--permanent--add-service=samba$sudofirewall-cmd--reload如果你正在运行UFW:$sudoufwallowsamba5现在你需要设置一个密码来访问你的桑巴分享。这个用户名(在我的例子中是don)必须属于你系统上的一个帐户。$sudosmbpasswd-adon我在每个Samba共享上放了一个简单的README文件,这样用户就知道这个目录在服务器上,他们必须在VPN上才能从家里访问它,等等。从Windows和Mac上访问SambaWindows计算机,打开文件管理器(Windows资源管理器)并访问路径ip-address-of-the-Linux-computer/sambashare。系统将提示您输入Samba共享密码,并且sambashare目录中的文件将出现在您的文件管理器窗口中,就像它们存在于您的桌面上一样。您可以开始将文件存储在网络上这个新的共享目录中。在macOS计算机上,转到Finder菜单并选择前往。在出现的对话框中,输入smb://ip-address/sambashare并按照提示输入您的Samba密码。Samba意味着共享Samba使共享文件变得容易。您可以在Samba中使用许多其他方案来创建共享位置,包括用户组的公共文件夹、只接受传入文件的收件箱,以及您可能需要的任何其他内容。它是开源的、灵活的,并且将您可能在办公室中运行的所有不同平台结合在一起。