今年刚毕业, 我一直想整理一下过去的文件, 照片, 视频, 日记等资料, 平时偶尔会翻出来看一看, 但随着资料越来越多, 找资料就成了最大的麻烦, 而且只能在电脑或者笔记本上查看; 有时候我会从网上爬一些有意思的漫画(for free), 下载几部天堂上的电影, 这时候如果能躺在床上用手机看自然是最舒服的[奸笑]. 虽然电脑或者笔记本可以开个Nginx服务, 打开autoindex就能看视频或者照片, 但这样需要电脑需要一直处于待机状态, 昂贵的商用电费实在是负担不起[流泪]. 然而, 最大的问题是, 上面的方案只能读不能写, 毕竟只是访问静态资源嘛, 要想写必须有后端服务的支持.

为了解决上述问题, 我的计划是搭建了一个MIS系统, 专门给个人(我)用户提供文件资料尤其是多媒体资料的访问服务, 实际上软件层面的东西很好解决, 也不需要高并发, 高可靠之类的技术, 只要数据读写的吞吐量足够大就可以了, 毕竟只有自己用嘛. 现在最关键的问题就是硬件, 要求功耗低, 24h待机, 静音无声, 网络吞吐量大, 底线是计算性能不能太弱, 最后但不是最不重要的一条是, 机器的成本不要超过200块[泪奔], 穷笑了.

硬件选型

服务器组件

模块

价格

1

达实 D2550 准系统 单千兆网口

40

2

4GB 笔记本低压

0

3

金储星 128GB mSATA

84

4

12V 5A直流电源

15

5

玩家国度 12cm 无PWM

10

6

PWR SW

2.5

其他工具

工具

价格

1

电烙铁

15

2

热风枪

105

3

硅脂

3

4

BIOS编程器

25

5

VGA转HDMI线材

38

6

焊泥

13

7

万用表(优利德 U33 )

84

8

功率测量

20

硬件选购过程CPU和主板

我看到很多人把D2550作为软路由来使用, 我感觉作为个人服务器的话性能也足够了. D2550是双核四线程的CPU, 主频只有1.9GHz, 性能确实惨不忍睹. 然而, 其热功耗只有10瓦, 实际上运行起来后不到12瓦. 芜湖! 电表倒着转[憨笑]; 大部分主板都采用了被动式的散热方案, 我买到的这个板子配了一大块铝制散热鳍片, 但是实际的散热效果并不好, 鳍片非常烫手. 我从咸~上挑了一块成色还不错的板子, 牌子是达实, 这以前都是用作农业银行的小主机, 估计是同一批淘汰下来的垃圾; 主板只有一个千兆网口, 吞吐性能确实不如双网口好一些. 好在价格很香, 40块包邮相当于少吃两顿饭了.

凌动处理器 编程(基于凌动D2550组装个人服务器)(1)

图1咸~上挂的D2550准系统

因为我买的是准系统, 没有内存和硬盘, 需要自己搭配. 主板采用了古老的4PIN供电, 一般的主机电源还不好搭配呢, 看来只能自己动手攒一个电源了. 黑色散热鳍片下面是D2550这颗CPU, 上面的硅脂都应经硬邦邦, 我说鳍片咋这么烫手呢. 在拼~~花了3块钱买了瓶最便宜的硅脂, 随便蒯一勺就涂上去了, 结果涂得太多溢出到主板上了, 不过无所谓啦, 直接扣上散热鳍片, 完事儿.

凌动处理器 编程(基于凌动D2550组装个人服务器)(2)

达实D2550主板的正面

凌动处理器 编程(基于凌动D2550组装个人服务器)(3)

达实D2550主板的背面

凌动处理器 编程(基于凌动D2550组装个人服务器)(4)

达实D2550主板的侧面接口

凌动处理器 编程(基于凌动D2550组装个人服务器)(5)

达实D2550主板的大4PIN供电母座

选购电源

考虑到CPU的功耗只有10瓦左右, 附加上硬盘供电, 风扇供电等等, 总功率不会超过60瓦, 12V 5A的电源应该是足够了. 我从淘宝买了一个直流12V 5A的电源, 价格不到15块钱还包邮, 好玩的是厂家支持一年质保, 可是改装后质保是不是就没了啊[捂脸]. 为了匹配主板上大4PIN输入, 我从拼~~买了条延长线, 一边是大4PIN母头, 另一边是大4PIN公头. 我把母头插座剪掉了, 把它和12V电源连在一起了, 两边铜线一拧一插后用焊锡固定, 套上热缩管烤一烤就好了.

凌动处理器 编程(基于凌动D2550组装个人服务器)(6)

淘~上的12V 5A直流电源

凌动处理器 编程(基于凌动D2550组装个人服务器)(7)

电源与延长线相连, 黑色是负极, 红色和黄色是正极

凌动处理器 编程(基于凌动D2550组装个人服务器)(8)

电源和主板连接后的效果

选购风扇

在安装硬盘之前, 板子开机之后直接进BIOS, 这时候发现功耗居然有15瓦, 散热鳍片非常烫手, 过了一段时间显示器画面居然花屏了, 实在担心D2550烧傻了赶紧断电关机, 看来这垃圾货不配风扇不行了. 其实, 我买的风扇不支持PWM温控, 主要是便宜2块钱.

凌动处理器 编程(基于凌动D2550组装个人服务器)(9)

淘~上比较便宜的风扇

选购硬盘

这个板子支持mSATA和SATA, 打算把系统安装在mSATA的固态硬盘上, 数据存储在笔记本上拆下来的1T希捷硬盘上. 我从淘~上随便找了找便宜的SSD, 金储星这牌子的是别人家的颗粒, 其实只要颗粒上没有三道杠就行, 写入寿命有个几年就可以了, 容量128GB足够了(全量Centos7的大小只有4GB).

凌动处理器 编程(基于凌动D2550组装个人服务器)(10)

mSATA接口的SSD

其他模块

内存选用的是笔记本上拆下来的4GB低压内存条, 正好D2550最高也就支持4GB内存寻址; 为了装系统, 花了38买了根VGA转HDMI的线材, 真tmd贵[伤心].

凌动处理器 编程(基于凌动D2550组装个人服务器)(11)

连接上显示器后的效果

遇到的问题1: 达实主板的BIOS不支持EMT64, 无法安装64位OS

网上就有传闻, 达实D2550锁了32位BIOS, 导致无法正常安装x64的OS, 开机一看还真是不支持EMT64, 那只好刷一个64位的BIOS程序了, 好在网上有好多魔改资源, 接下来就是买个编程器刷BIOS了.

凌动处理器 编程(基于凌动D2550组装个人服务器)(12)

达实D2550 原厂BIOS

CH341, XTW2/3都是常见的编程器, 不过CH341的价格是最便宜的. 淘~上好多店铺都在卖CH341, 一般都支持24/25型的BIOS芯片, 达实D2550这块板子上的BIOS芯片型号是KH 25L1606E, 也就是25型的BIOS芯片, 我最后还多买了一个夹子.

凌动处理器 编程(基于凌动D2550组装个人服务器)(13)

CH341编程器&夹子

由于BIOS芯片周围的空间太小了, 用电烙铁操作实在是不方便, 我的电烙铁是尖头的, 根本没法将芯片周围的焊锡融化, 一不小心还把旁边的塑料烫坏了, 最后以引脚连锡而失败告终. 这时候就该请出热风枪闪亮登场了, 价格100多块还是可以接受的.

凌动处理器 编程(基于凌动D2550组装个人服务器)(14)

BIOS的引脚连锡了

凌动处理器 编程(基于凌动D2550组装个人服务器)(15)

金卡思的热风枪, 支持电磁控制, 能够调节风速和温度

热风枪到了之后一切就变得顺利多了, BIOS芯片很轻松的就被取下来了. 吹芯片的时候, 放了太多的松香和助焊膏, BIOS芯片油乎乎的, 焊盘周围的器件都涂满了黄色的焊油, 其中一个引脚都露点了, 可能是之前电烙铁刮坏了[笑哭].

凌动处理器 编程(基于凌动D2550组装个人服务器)(16)

取下BIOS芯片的主板

凌动处理器 编程(基于凌动D2550组装个人服务器)(17)

热风枪吹下来的BIOS芯片

用夹子夹住BIOS芯片, 连接电脑并打开编程器软件, 很顺利的读出了原厂的BIOS程序, 大小只有2MB, 先备份后刷新BIOS. 刷BIOS前先要擦除, 检查新BIOS文件大小也是2M, 点击编程即可刷写新程序, 这个过程大概需要30秒, 刷写完毕后校验成功. 最后将BIOS芯片焊回主板即可, 我买了一罐180°的低温焊泥, 随便涂了一点, 用热风枪一吹就自动归位了, 而且不会连锡[赞].

凌动处理器 编程(基于凌动D2550组装个人服务器)(18)

CH341编程器读出来的原厂程序

BIOS刷好后, 重新检查BIOS配置, 终于发现EMT64可以用了, 下一步就是安装OS.

凌动处理器 编程(基于凌动D2550组装个人服务器)(19)

新BIOS程序支持EMT64

遇到的问题2: 无法安装x64 Centos 7/8

以前一直用的是Centos7, 这次也想安装Centos7/8, 但是安装过程中一直报Linux内核错误, 或者安装时突然丢失图像信号, 无论是i386, 还是AMD64版本都以失败告终, 看来得尝试一下其他版本的Linux.

我一直都不喜欢GUI的Linux版本, 所以我选择了x64的Ubuntu 16 Server(Ubuntu 5.4.0-6ubuntu1~16.04.12). 出乎意料的是, Ubuntu安装过程一路绿灯, 没有遇到任何问题. 进入系统后, 我先把网卡配置静态IP, 然后远程SSH登录, 一切都变得如此熟悉和顺利.

凌动处理器 编程(基于凌动D2550组装个人服务器)(20)

查看Linux版本和CPU信息

凌动处理器 编程(基于凌动D2550组装个人服务器)(21)

查看内存容量和硬盘使用情况

下一步工作
  1. 服务器还缺少一个机箱, 目前在学习3D建模, 后期设计并打印一个机箱(钣金还是3D打印没想好), 机箱的灯光用GPIO控制.
  2. 软件层面, 建立PMS(Privacy Management System)项目, 前端随便找一个基于Bootstrap的开源项目(支持动态响应), 后端基于SpringBoot提供读写服务, 数据库采用SQLite, 资源服务和反向代理采用Nginx, 其他的技术选型以后再说.

凌动处理器 编程(基于凌动D2550组装个人服务器)(22)

最后感谢观看

,