Linux
FreeNas服务器的搭建过程
由 王宇 原创并发布:
FreeNas是一套免费的NAS服务器,它是基与FreeBSD操作系统,提供CIFS(samba)、FTP、NFS、SSH等各种服务。拥有web 界面的设定工具。安装后所占用空间非常小,几百M左右,可以安装到SD或CF卡上(需要有接口转接卡)。提供RAID功能
需求介绍
我的主要需求是:在家里通过wifi, 为PC机、笔记本电脑、Andriod系统的手机、iphone、ipad、itouch提供视频、音频(音乐、有声读物)、照片、pdf等文件的共享服务。试想一下,一部掌上智能设备拥有几个T的各类数据是一个什么样的情形!!!
在Andriod平台(HD2)上,使用ES 文件浏览器的效果:
上图:显示服务器
上图:FreeNas服务器共享的文件目录
上图:包含电影的子目录
无需复制到掌上设备中,可以直接远程播放视频,上图是一个RMVB的视频,效果非常流畅,无任何的停顿。各类视频格式的传输速度,详见后面的讨论。
远程开机唤醒主机:
上图:WOL-Manager的主界面
SSH远程控制及关机:
关机命令: shutdown -p now
如果认为命令太长,可以自行编写一个shell。看到这里是不是有把服务器放在凉台外面,与空调一起的冲动?
硬件
家里刚好有一台闲置的PC机,大概是03年,,04年的一台老机器。具体配置是:
Intel(R) Pentium(R) 4 CPU 2.80GHz
1G内存
主板是华硕的P4-PE2-X
这主板给我带来很大的麻烦主要有以下几点:
1、无串口(SATA)
2、上电后,无法通过WOL远程唤醒主机,只能是手动开机,关机后可以在通过WOL唤醒。据说是板载网卡存在问题。
3、内存只有1G,主要是找不到能够匹配此主板的内存条。这样就限制了我对FreeNAS版本的选择
4、由于主板太老,BIOS无法保存数据,换了一块电池,问题解决了。总之是一个老掉牙的东西了。
装载操作系统的硬盘,选择CF卡,我有一个老的CF接口的1G(实际上512M的CF卡就够用了)小硬盘,是我当年玩dell x50v时用的。此次试验的宗旨是废物利用,让闲置的东西发挥最大的用处。
上图:这是个CF接口的小硬盘怎么用在PC机的主板上?这是一个好问题。看下图:
上图:这是一个CF转IDE的转接卡,淘宝上几元钱搞定。
上图:将这个东西,插到主板的IDE口即可,呵呵,很帅吧。
大容量硬盘的接口问题,目前大容量硬盘都是串口(SATA)的。这块主板无串口是个大问题,经过调研,最终解决的办法是通过使用一块PCI,进行SATA的转换。
上图:看到了吗?就是这个东西,看似很美,其实暗藏杀机。出于我对Linux操作系统和硬件的了解,PCI转SATA这种东西不能够随意的选择,原因有两个,一是驱动,无Linux驱动,硬件就是一堆垃圾;二是针对硬盘的兼容性,例如1T或2T的容量限制,以及SATAII的版本兼容性。经过一段时间的研究,将目标锁定在Silicon系列的转换卡,最终的结论是: Sil3114(与FreeNAS操作存在兼容问题)、SII3112(死锁键盘)、Sil3512(对比其他的芯片较新,是最终的选择)
这块卡的缺点是只有两个SATA,做RAID会有一定的局限性。
FreeNas系统安装
FreeNas版本,我使用的是:0.7.2 (FreeNAS-i386-LiveCD-0.7.2.8191.iso),比较新的有8.0.4(.FreeNAS-8.0.4-RELEASE-p1-x86.iso),官网上已经出了8.2.0 。 选择低版本的原因是8以上的版本使用了最新的内核,对硬件的要求增大,官网上推荐2G以上的内存,由于我主板的限制,以及我仅仅需要一个文件共享的简单需求,所以才用低版本比较适合。
制作USB的系统安装盘:
以前安装Linux使用Universal-USB-Installer 制作USB启动盘。这个软件有一个要求,就是在制作时需要指定Linux的版本。这次制作FreeNAS的USB启动盘,发现候选列表中没有FreeNAS的选项,只有查找其他的方法。最后在FreeBSD的相关论坛上发现了ImagerWriter,这个软件真是好用,是在Linux系统上采用QT开发的,有Windows版本。
将U盘插到PC服务器上,启动界面如下:
如上图:选择1.boot[default]启动
如上图:选择9,开始安装
如上图:选择第二项,安装精简版到硬盘,并让系统自动化分一个DATA数据分区和SWAP交换分区
如上图:接下来一路回车。
如上图:重新启动系统,完成安装。安装的整个过程非常简单,快捷。安装后使用df命令,查看了一下磁盘空间,包含如此之多的服务系统,实际占用不到200M的空间,又一次的体验到Linux的强大!!!
FreeNAS服务配置
配置IP地址
如上图:在控制菜单中,选择2,进行LAN IP地址分配
在浏览器中,进入Web管理界面:
如上图:在任意一台能够访问FreeNAS服务的计算机上,打开浏览器,在地址栏中输入:http://ip .我的服务器IP是192.168.0.102 。所以地址是http://192.168.0.102 .默认的用户名和密码是admin/freenas
挂载硬盘:我将一块1T的希捷硬盘连接到Silicon的PCI转SATA转换卡上,然后通过以下步骤将硬盘挂载到FreeBSD操作系统中。
如上图:点击红框的位置,进行操作。
开启CIFS/SMB服务
SMB(Server Message Block,又称Common Internet File System(CIFS))是由微软开发的一种软件程序级的网络传输协议,主要用来使得一个网络上的机器共享计算机文件、打印机、串行端口和通讯等资源。它也提供认证的行程间通讯机能。它主要用在装有Microsoft Window的机器上,在这样的机器上被称为Microsoft Windows Network.后经过Unix服务器厂商重新开放后,它可以用于连接Unix服务器和Windows客户机,执行打印和文件共享等任务。(就是我们常说的共享文件夹)
如上图:按照红框,勾选Enable,保存,并点击“apply changes” 生效。
添加共享文件夹:
如上图:点击红框的位置,进行操作。
传输速度:
以往共享文件夹给我的体验是稳定性和速度都不是非常好,这段时间使用FreeNas,改变了我以往的认识。目前我的无线网卡和无线路由均为150M的(较高的是300M),不算速度快的设备。从Win7复制文件到FreeNas共享文件夹中,可以达到每秒钟5M左右。我试验了一下,远程播放720P的视频没有问题,1080P的有些卡。据资料上讲,如果网卡和交换机均为千兆的,可以达到每秒钟50M左右的速度。这个数字比较抽象,我举个例子,一块希捷7200转的硬盘,有两个分区,从一个分区复制文件到另一个分区,传输的速度大概在50M每秒。这样看1080P的视频肯定是没有问题,甚至是做其他什么都够用了。