背景

闲来无事想折腾一台NAS玩玩,经过一些了解发现 NAS 目前有3个流派:白群晖、黑群晖、自组DIY;作为一个运维经验丰富的全栈码农(大笑)我当然是选择DIY了,但是 NAS 对我来说又不是多么硬核的需求,因此预算越低越好。

本来在看星际矿渣和一些J1900之类的主板,好巧不巧发现同事扔了一台上古DELL主机在公司角落,直接开口要了过来。

经过近一周的硬件和软件调整,现在已经稳定工作了,特此发帖庆贺。

尝试点亮

裸主机只有CPU、主板、内存、电源、无硬盘,赶紧找了一些显示器、电源线、VGA线之类的尝试开机看看BIOS,结果居然点不亮?

只能通过主板型号反查到了机器型号,上DELL官网找到该机型页面下载了PDF用户手册,根据手册诊断配合机箱背面的诊断灯(ABCD 4个灯不同组合颜色代表不同故障,很有用的)发现是因为没有检测到硬盘(这上古神器太牛逼了,没有硬盘连BIOS都不让你进);

赶紧翻出一个垃圾硬盘插上开机,点亮了!

上古机器配置

卧槽什么鬼?奔腾4 2.9G单核?1MB 2级缓存?DDR2 533赫兹内存条?这可太硬核了!而且风扇杂音巨大……

虽然话是这么讲,但是我还觉得这个机箱设计挺有趣的,首先体积相对较小,机身纤薄,差不多就是一台M-ATX机箱大小,然后上下按压锁扣翻盖开启机箱,PCI-E插槽卡扣快拆,电源卡扣快拆,硬盘光驱卡扣快拆;

硬件配置有单口千兆网卡(这个很关键)、一个SATA I(是的,就一个,还是第一代SATA……)、1个PATA口(光驱用)、8个(前2后6)USB2.0插口、一个PCI插槽、一个PCI-E x16 1.0插槽,CPU 散热采用双铜管散热座+涡流风扇;

行吧,基本符合我需求,除了一个SATA口有点蛋疼,不过我不做RAID也没有什么特别重要的数据要放,一个盘也够用了,随后又继续白嫖了同事一个1TB机械硬盘…… 中国好同事啊!

简单整理准备复活

机器抗回家后,迫不及待的打理了一番,先是掏出戴森吸尘器换扁嘴口,风力开到最大一顿猛吸,吸出拳头大一坨棉絮;

然后用之前给 Alienware 买的 ARCTIC 导热硅脂给上古P4 CPU重新涂抹了散热,并且拆开了涡流风扇进行一些清灰操作,顺便撕开风扇贴纸找到风扇轴承喷了一点点WD40,手动转动几圈后用镊子+纸巾擦干净,然后再滴了几滴我模型车专用的轴承润滑油。

开机提示BIOS电量过低,遂又更换了新的BIOS电池。

为了方便以后家里调试和修改BIOS设定,某宝20包邮买了个HD4350带HDMI接口,这样就能接电视的HDMI接口了。

最后简单整理了一下凌乱的走线,打完收工。

操作系统选择

看了看群晖系统的各项功能,大部分用不上,小部分用的上的功能都能找到不错的开源软件自己搭建,所以果断采用了我非常熟悉的 CentOS,从官网下载了 CentOS 7 minimal i386 安装,安装过程一切正常略过不表。

注:事实证明选择 CentOS 7 32位是个败笔,因为 CentOS 上很多主流软件包都在 EPEL 仓库中,而 CentOS 7 的 EPEL 仓库中绝大部分软件都不再编译i386/i686的发布版…… 回头还得抽空还回 CentOS 6 去。

开源软件安装

  1. Seafile 私有云搭建,官网最新的7.x版本已经不支持i386,只有64位版本,多方辗转最后终于让我找到6.x i386版本,安装运行一切正常。 主要是用户公司、家、移动设备之间的文件(主要是文档、文件、图片)同步,以及家庭照片存储和分享。

    注:Seafile目前已经停用,因为Seafile的客户端认证和文件传输均采用HTTP/HTTPS方式,而目前上海电信针对家庭用户提供Web页面的筛查和封杀非常严格。

  2. samba 文件共享,这个没什么好说的,简单粗暴。因为Seafile服务器存储会切碎文件,而一些视频之类的我还是喜欢原样存储在磁盘上,所以就用SMB挂载了,方便好用。

  3. webmin,一个Web端的类Unix管理,简单说就是通过网页管理操作你的Linux机器,具有root权限。

    注:已废弃,实在太臃肿了,而且功能大部分不那么实用,很多操作还不如我直接 ssh 操作修改来得方便

  4. cockpit,同上,但是非常轻量化,当然功能也非常少,只有一个CPU、MEM、IO、NET的图表算有点用处。

    注:也废弃了,只能看个图表我不如多开几个ssh session用top等命令来的方便

  5. frp,这是一个可用于内网穿透的高性能的反向代理应用,不知道上海电信抽什么风我原来是有公网IP的,前些时候给我折腾没了(可能跟前些天IPv4宣布耗尽有关?),所以暂时用frp过渡一下,后面还是要去跟电信扯皮要回一个公网IP的。

    注:目前已经获得公网IP了,电信直接10000号报修,师傅一听我说NAS就懂了,等他操作好我重启光猫就拿到公网IP了,开心

网络布局:

我的网络布局非常简单且常见,电信千兆光猫入户,LAN口连接 K2P 路由器,NAS和家里所有设备全部直接连接路由器;网线部分全部采用六类网线可达千兆网速。

光猫已经通过 ttl 方式拿到超级密码,并且测试可以改为桥接模式通过路由器拨号,但是考虑到这样一来就白瞎了光猫的硬件所以目前还是通过光猫拨号连网。

K2P 路由器是B1版本,直接刷了官改。

光猫上只开放了 9、22、3389 的端口转发,转发到路由器IP上,路由器再二次端口转发到具体的设备IP上。

其他

有一些蛋疼的地方,首先是P4 CPU只能安装32位操作系统,很多软件都只能找到64位的,实在想要的话只能找老版本或者自己编译32位的,如果找不到源码,仓库里有没有i386 i686的包就只能凉凉,比如Docker;

然后就是CPU和主板都没有温度传感器(起码我Linux下是真的找不到),不知道Windows下装个AIDA64能不能找到传感器,我觉得够呛。所以我现在想知道CPU温度就只能手持红外测温枪对着南北桥和CPU散热座打一打…… 哈哈哈哈哈

最后就是功耗问题了,总所周知P4是个高频低能的憨憨,功率测试仪显示待机状态下功耗稳定在68W左右。不过我有远程唤醒的话,其实不用24小时开机的。