构建家庭文件服务器
设置文件服务器并不需要很复杂。
我家中有三台台式机(Kubuntu、Win XP 和一台测试机,目前运行 ReactOS)和一台笔记本电脑 (Xubuntu) 在使用,我们的 IT 规模已经达到了小型办公室级别,并且像许多小型办公室一样,我们遇到了文件共享问题。当所有机器都开机时,对等网络工作良好,但不可避免地会发生我想要的文件在一台未运行的 PC 上的情况。更糟糕的是,它可能在我目前处于拆卸状态或正在进行另一次升级的测试机上。因此,我们需要一台始终在线的服务器,以便我们中的任何人都可以随时访问,但如果它始终在线,则需要安静、可靠且运行成本低廉。
这些要求排除了奔腾 4 (太热且耗电) 和 Windows (需要重启太频繁)。幸运的是,我碰巧有一台不太起眼的奔腾 III,它配备了巨大的被动散热器,而且我有点 Linux 爱好者。除了稳定性之外,Linux 还有其他几个优点。它是免费的。它几乎完全抗病毒,并且配备了出色的防火墙和安全功能。而且,它易于远程管理,因此一旦设置好,服务器就不需要自己的键盘、鼠标或屏幕,从而节省了费用、空间、电力和热量。
机箱
我计划将这台服务器藏在阁楼里,所以坦率地说,它的外观不是问题,机箱的首要要求是它要大而通风,允许良好的空气流通,而无需任何风扇。除了选择一个大的机箱外,您还可以做几件事来改善空气流通。如果您实际上没有使用机箱风扇,请将其卸下,因为它们会阻碍空气通过通风口的流动。卸下不必要的驱动器;它们浪费空间,并且它们的电缆会阻碍空气流通。您只需要一个硬盘来存放您的操作系统和文件,以及一个基本的 CD-ROM 驱动器来加载操作系统。也移除不必要的电缆,并将您不能没有的电缆捆扎起来,使其远离通道。移除多余的卡,因为您的文件服务器不需要声卡、3D 图形卡、USB、FireWire、SCSI 或 MIDI。板载图形或小型基本图形卡就足够了。请记住,暖空气比冷空气密度小,并且倾向于上升,因此请确保底部有入口,顶部附近有出口。而且,如果您确实将服务器藏在某个地方,请不要将其埋在垃圾中或放在狭小的空间中;让空气流通到它。
图 1. 机箱
PC 机箱有隔音套件,可以消除来自风扇和磁盘的大量噪音,但是由于这台服务器将无风扇运行,因此没有必要,并且可能会减少热量通过机箱的传递。如果机箱已经用这种材料填充,请将其移除。
图 2. 移除所有您不需要的东西。
电源
大多数 PC 电源都有一个风扇,将暖空气吹出机箱背面,但是也有无风扇设计和一些半无风扇设计,这些设计在大多数时候运行安静,但当 PSU 上的重负载导致温度升高时,风扇会启动。我正在使用一个二手购买的 300W 无风扇 FSP Zen 型号,但存在许多类似的型号。按照现代标准,300W 并不多,但对于配备基本图形卡的奔腾 III 来说已经足够了。根据您的搜寻和议价技巧,PSU 很可能比项目的其余部分加起来还要贵,但为了静音运行,这是值得的。
CPU
我的 Slot 1 奔腾 III 最初用于 IBM 超薄台式机。(还记得放在显示器下面而不是桌子下面的那种吗?)它配备了一个巨大的散热器,并从那里到 PSU 进气口有一个塑料管道,以便 PSU 的风扇将空气吸过 CPU。几年前,我将其重新安装在一个标准的 ATX 迷你塔式机箱中,但当然,管道的形状完全错误,所以我将其卸下,发现芯片在没有它的情况下运行良好。对于一个努力工作的芯片来说,这不是一个好习惯,但这台服务器在大多数时候都将处于空闲状态。它只会保持操作系统和网络软件的运行,并且不时地将指令传递到硬盘——这并不是特别费力。奔腾 III 主机单元可以从各种在线供应商和当地电脑商店购买。如果您购买一个带有传统小型散热器和风扇的,那么在 eBay 上花费大约 10 美元将为您购买一个带有大型散热器的新 Slot 1 处理器。您甚至可以出售另一个或将其作为备用。
主板
如果您走经济路线,购买旧的主机单元,则安装的板卡就可以了。如果您单独购买一个,请不要纠结于规格;性能并不是真正的问题。拥有板载图形功能很有用。花哨的 3D 卡会消耗更多电力并产生更多热量,但是基本的老式 AGP 卡也可以。现代 Linux 桌面发行版需要大约 512MB 的 RAM 才能愉快地运行 GUI 和图形应用程序,但是在这种情况下,它可以使用更少的内存,唯一的刺激性因素是实际的安装过程可能会很慢。
硬盘
奔腾 III 主板不太可能支持 SATA,但是即使是 IDE 驱动器也可以比您的家庭网络更快地处理数据,因此这并不是真正的问题。我选择了一个来自老牌 eBay 的 80GB 硬盘。当它开始填满时,我将添加另一个。如果可以负担得起,请购买更多或更大的硬盘。如果您真的非常注重保持服务器安静,则可以投资于柔性驱动器支架,将驱动器与机箱隔离。
操作系统
显然是 Linux。Linux 的版本并不是真正的问题;几乎任何版本都可以。我使用了 Kubuntu。我选择它是因为它 KDE 具有基于 VNC 的内置 K 桌面共享,用于远程管理。它是一个单 CD 下载,易于安装。从 Kubuntu 的网站 (http://www.kubuntu.org) 下载 .iso 文件,并将其刻录到 CD-R 或 -RW。无论您使用哪种 CD 刻录软件,请确保选择刻录 ISO 映像文件而不是常规数据 CD 选项。如果您不这样做,您将拥有非常有用的备份,但它不会启动!安装 Kubuntu 应该只是插入 CD、重启并按照屏幕上的说明进行操作。但是,像这里使用的 IBM 这样的旧 PC 将无法从 CD 启动。要解决此问题,您需要 Smart Boot Manager——一个非常小的文件,可以从软盘启动,然后让您选择要从哪个磁盘运行。选择 CD-ROM,您就一切就绪了。Smart Boot Manager 必须作为映像文件写入,并且与制作可启动 CD 非常相似,简单地将文件复制到软盘不起作用。在 http://linux.simple.be/tools/sbm 上有针对 Linux 和 Windows 用户的完整说明,以及一个非常易于使用的 Windows 磁盘写入实用程序。顺便说一句,这是一个有用的磁盘,适用于任何拒绝启动的操作系统。唯一的缺点是您需要一个软盘驱动器,所以我将其放回原位,然后在操作系统安装完成后将其移除。
在开始之前,将您的服务器连接到您的网络和互联网路由器。在安装过程中,它将检测到连接并自动设置。它会询问一些关于您的位置、语言和时区的基本问题,但没有什么困难的。主机名可以是任何名称,但我使用 Server。基本发行版包含一些您实际上不需要的桌面软件,但现在只需按照默认选择进行操作即可。Kubuntu 会要求您在安装期间设置用户。像系统管理员或管理员这样的名称是明智的;将您的真实姓名留到以后设置普通用户帐户时使用。
安装完成后,就该启动 Adept 了。基于 Debian 的发行版使用 Apt 包管理系统,而 Adept 是 KDE GUI,即使您厌恶命令行工作和文本编辑,也可以轻松使用它。转到开始菜单 -> 系统 -> Adept。浏览已安装应用程序的列表,并标记要删除的媒体播放器和图形软件等内容。如果有任何您不确定的内容,请保留它。单击“应用更改”以删除选定的应用程序。现在,您可以单击“完全升级”按钮来更新剩下的内容。最后,您需要安装一些网络应用程序。在 Adept 中找到以下内容:samba 和 samba-common。将它们标记为安装并提交更改。
配置
所有配置路径都从 KDE 控制中心开始。除非您有非常不寻常的网卡,否则 Kubuntu 将检测到它并使用 DHCP 进行设置。这将有效,但这使得远程管理变得棘手,因为您无法知道服务器的 IP 地址。转到网络设置,单击管理员模式,然后输入您的密码。选择接口,然后单击配置。假设您的路由器使用 192.168.1.1 设置,将服务器设置为 192.168.1.2。您可以继续依赖 DHCP 来管理您的其他 PC。
图 3. 从 DHCP 更改为固定 IP
Samba 使用 Microsoft SMB 协议与 Windows 共享交互。它也与其他 Linux 机器上的 Samba 通信,使其成为设置混合网络的完美方式。曾经有一段时间,配置 Samba 让强大的系统管理员都哭了。如今,至少对于家庭网络而言,它非常容易。不同的配置适合不同的情况,但对于初学者,请转到系统管理 -> 用户和组,并为每个可能想要在服务器上工作的人创建一个用户。
现在,转到互联网和网络 -> Samba。在基本设置对话框中,设置一个工作组名称(您的主机名将已在那里)。单击共享选项卡,检查是否已设置 homes(如有必要,添加),然后选择它并单击编辑。选中共享所有主目录(或不选中,并手动添加您确实想要共享的每个目录)。此对话框中的其余选项卡可用于提高安全性,无论是用于商业用途,还是可能用于防止孩子访问您的文件。
图 4. 通过 KDE 控制中心设置 Samba
在“共享”页面上单击“确定”返回到主 Samba 对话框,然后单击“用户”选项卡。从列表中选择您的 Samba 用户,然后单击“添加”。为每个用户设置密码(并确保您在某处记录下来并将其提供给相关用户),或者不设置——这取决于您的 PC 上有什么以及谁可以访问它。单击“确定”保存您的更改,然后退出。
到目前为止,您只是“启用”了共享。现在,要设置共享,您需要以每个用户身份登录,或者最好以 root 身份运行 Konqueror。按 Alt-F2 调出“运行”对话框。输入
作为文件夹的最终调整,再次以 root 身份运行 Konqueror,转到文件夹的属性 -> 权限菜单,并将它们更改为组和其他人可以读取和写入。根据谁可以访问您的网络,您可能需要重新考虑这些设置。
文件夹不必具有人员的姓名。您可以同样轻松地设置和共享照片、Office 或 MP3。
从 Windows PC 访问共享文件夹与访问普通的 Windows 共享没有区别。从另一个 Kubuntu 机器,转到系统菜单 -> 远程位置 -> Samba 共享。从任何 Linux 机器,运行您的文件管理器并以以下形式输入服务器的地址
smb://your.workgroup。为了让生活更轻松,右键单击 KDE 桌面,选择创建新 -> 链接到位置,并在那里输入 URL,为您提供即时的网络邻居体验。
远程桌面共享 (RDC)
如果服务器要在没有键盘和屏幕的情况下运行,尤其是要隐藏在某个地方,远程管理非常有用。并且设置起来一点也不困难。KDE 具有用于 VNC 的简单 GUI 工具。在服务器上,转到网络和互联网 -> 桌面共享。选中允许未经邀请的连接、在网络上公告服务和允许未经邀请的连接来控制桌面。但是 不要 选中在连接前确认未经邀请的连接。此时设置密码是一个好习惯。
图 5. 建立连接
在您想要用来访问服务器的 PC 上,运行
krdc(K 远程桌面连接),然后输入服务器的 IP 地址,后跟 :0 (零,而不是 O)。单击连接,远程桌面将出现,让您可以完全控制服务器。
图 6. 选择连接速度
要从 Windows PC 控制服务器,请下载并安装 TightVNC(它是 SourceForge 上的免费软件)。运行 TightVNC Viewer,然后输入服务器的 IP 地址,后跟 :0。
图 7. 通过 Windows XP 上的 VNC 查看 KDE 控制中心
检查服务器
在您将其隐藏起来之前,尽可能长时间地在可访问的位置运行服务器,并检查它是否可以在没有键盘和鼠标的情况下运行。您可能需要在 BIOS 中进行更改以启用此功能。确保您可以通过远程控制重新启动它。如果您通过系统管理 -> 用户和组 -> 便利性设置自动登录,这将有所帮助。
图 8. 通过远程控制关闭服务器