今年给自己定下目标是整明白操作系统的底层运行机制,同时试着学习下系统修改与制作,之前一直用来兼职的J4125万由NAS就不太够看了,于是乎下血本单独组装一台X86架构设备。
这台设备后续用来远程测试与编译,所以这次装机配置单都是围绕这两点设计,下面正式和大家分享下编译环境的硬件搭建与环境部署实操流程,觉得有所帮助欢迎关注点赞收藏三连哈。
开始正文前先晒一下作业,本人对这台设备颜值相当满意。
虽然整机看起来粉嫩小巧,其实内心是一块十四核二十线程的i5-13500T暴力CPU,同时背部还有着一张双口万兆电口,容颜和内在极具反差感,哈哈。
这台设备的核心件都在设备顶部,开颅照如下图所示,内部机架上预留了大量的扎带槽位方便理线(坨线),后期打理比较轻松,替换固态硬盘和PCI拓展设备也比较方便。
乔思伯N2机箱本身带五个3.5寸硬盘位,比较有趣的是这张硬盘拓展卡接口兼容SAS硬盘,市面上有大量便宜的3-4T容量拆机SAS机械硬盘,后期维护成本会很低。
还是那句话,自组电脑主机需要和实际工作需求匹配,这段分享下我的思路。
1️⃣设备需求整理
原来兼职编译工作的设备是一台使用J4125平台的万由NAS,Debian核心的U-NAS OS其实不错,不过现在从零开始学习制作系统就涉及到虚拟机,四核四线程确实有些不够看。
新装这台编译机搭建前就已经规划好了,明确硬件和系统需求如下:
首先是设备硬件,CPU核心数和内存容量足够切出来一台4c4t+4G的虚拟机就可以,用于测试安装包与系统稳定性,主要需求在存储池与内存的IO,编译和传输主要就是看这两块。
第二是系统环境,由于需要不断测试新硬件、新驱动和新软件,操作系统得紧跟上游,同时预装工具越少越好,方便后期调试修改配置,最终选择的是ArchOS。
2️⃣操作系统选择
关联硬件:CPU
能用的宿主系统非常多,Ubuntu、Debian甚至CentOS8.2都不错,但装这台主机的目的是学习制作系统,再考虑到后期驱动维护和问题解决,还是决定使用ArchLinux作为最终环境,对比其他Linux,选择ArchLinux的原因有以下三个。
https://archlinux.org/
ArchLinux最大的优势还是更新相当快,系统、驱动、软件版本都紧跟上游,这么做的好处不只是对于新硬件的支持,后期为这台主机升级/更换硬件也会比较方便,在独有的Pacman工具加持下,所有更新直接滚一下就可以完成升级,并且很少会出现兼容性问题。
其次是ArchWiKi百科,对我这个半路出家的自学玩家来说很重要,大部分的Linux问题都可以在这里找到解法,几乎所有问题都可以比较方便的找到答案,并且不需要FQ且有中文支持。
需要提醒下新手朋友们,如果打算和我一样选择ArchLinux作为宿主系统,Linux基础知识有多少其实无所谓,因为很多命令与常规系统不一样,正好不用破后而立,但是需要准备很多时间用于学习,Archlinux系统部署比较麻烦,老手可能都会卡在安装上。
3️⃣文件系统选择
关联硬件:CPU、内存、主板、固态硬盘、机械硬盘
考虑到编译效率和后期替换硬盘的灵活性,文件系统选择的是ZFS,对比传统XFS,ZFS在数据完整性验证和修复上更胜一筹,这对小文件存储居多的需求来说更适合一些。
但是ZFS需要有两块硬件支持:
第一是需要CPU支持比较新的AVX指令集,不同指令集会影响存储池的最终性能。
第二是需要调用额外的内存辅助处理,所以内存容量得比常规文件系统要多4G左右。
除了在数据管理和修复上的优势,ZFS还有现成的SSD加速缓存工具,可以轻松将固态硬盘为机械硬盘,这点相当重要,毕竟几T的纯SSD环境成本实在太高了,SSD Cache的效率不算差,足够我使用了。
根据上面整理出来的需求;
内存确认需要16G及以上容量,手上有现成的8G*2,后期不够再加。
固态硬盘单块1T,重点是随机读写能力,所以选择使用IO能力更强的PCIe4.0型号。
机械硬盘没那么多讲究,手里正好一堆之前淘汰下来的小容量硬盘,正好拿来组Zpool。
4️⃣系统备份机制
关联硬件:机械硬盘
虽然ZFS有着相当不错的IO性能和弹性管理能力,但有优点就会有缺点,除了比较吃内存以外就是ZPool损坏会导致数据全丢,所以我选择使用ZFS自带的Snapshot功能,关于快照功能的好处苹果(时光机)和NAS厂商(快照)已经科普很多年了,感兴趣可以看看之前的文章。
另外这台设备最终也会加入我现有的备份链路,组网后用RSync直接打通同步到群晖上即可,操作上没有任何难度。
用于备份的硬盘不需要多高的性能,快照生成的文件不算大,平时也是写多读少,所以找了个健康度看起来还行的旧500G硬盘单独做了个Pool用于存放快照的备份,也就是大家经常说的冷存储机制。
5️⃣外网访问方案
关联硬件:主板、独立网卡、路由器、交换机
作为NAS老玩家,外网访问倒是简单,分为三块:
第一是远程SSH控制,组SD-WAN,部署后加入现有的Zerotier和Tailscale网络即可。
第二是程序的Web页面,用域名解析,走DNSPOD绑定IPv6协议的公网IP。
第三是远程桌面,部署向日葵,偶尔用用也不怎么占用硬件资源。
第四是网络唤醒(WOL),虽然不关机,但停电远程开机还是挺重要的。
虽然外网访问和路由器性能几乎没啥关系,但考虑到现在新主板都是2.5G网口,个人建议还在千兆拓扑的用户考虑下升级2.5G环境,现在价格都不算高,需要注意的是目前在售路由器单口/双口2.5G居多,如果需要全2.5G得搭配交换机使用。
上面提到的WOL并不是什么新技术,前几代民用主板都有板载,只不过唤醒需要在网关设备(路由器)上操作,可以考虑下华硕、领势这些手机App可以唤醒设备的路由器。
6️⃣设备结构确认
根据上面的个人需求整理,可以得出本次装机的硬件需求:
由于后期压根不需要接显示器7*24小时开机,另外还有热拔插硬盘的需求,所以弄个类似NAS的ITX机箱合适点。
CPU需要线程多功耗低,主频够用就行,所以在线程数较多的十三代低功耗U中选择,为了压低点预算上ES版本。
主板需要多硬盘接口用于接入多块固态硬盘和机械硬盘,能接入SAS机械硬盘最好,因为便宜。
内存需要32G以上,由于高频率对编译加成不高,所以选择量大管饱的DDR4内存。
硬盘分固态硬盘和机械硬盘两种,用于编译的固态硬盘需要随机读写性能高一些,用于冷存储的机械硬盘只要没坏道就继续用,S.M.A.R.T报警再说。
电源倒是压力不大,毕竟选的是低功耗CPU也没独立显卡这种耗电大户,算上多块机械硬盘满载也就300W以内,任意型号都行。
其实写配置单并不难,大家可以参考下我这次的思路自行整理需求并与之匹配。
下面分享一下我这次的具体型号选择和理由,后期CPU和拓展设备可能会按需更换升级。
1️⃣机箱丨乔思伯N2
简介:乔思伯N2这台机箱是我下决心重新组装编译设备的最重要原因,纯白ITX的高颜值真的是宅男杀手,刚出来就冲动下单了,到现在才有空装好。
乔思伯N2背部预留了8cm挡板的PCI拓展槽,可以用于插半高显卡(刀卡)、U.2固态或者和我一样的万兆显卡,占地面积和原来的NAS差不多,适合组建核显钢炮或者NAS设备。
必须要吐槽乔思伯N2的硬盘固定方案,设计比较奇怪,没有用常见的硬盘笼,而是减震螺丝固定+橡胶带抽拉的组合,固定效果确实不错但拔插有点困难。
另外特别提醒打算入手乔思伯N2的朋友,这台机箱的硬盘转接卡需要接主板的SATA数据口,并且位置和背部出风风扇贴着,只能使用L型弯头的SATA数据线,直头线盖不上盖子,我单独后买了四根绿联弯头线才能安装回去,虽然价格不贵但是耽误事情,切记切记。
2️⃣CPU丨Intel i5-13500T(ES)
简介:这是一款猫狗这些主流平台没有在售的CPU,需要去某鱼或者线下自己找一下,代号为Q0WK,十三代ES和十二代ES区别挺大,重点在于PCI-E插槽现在没有Bug了,也就是M-ATX和ATX主板的第二槽也能用。
Q0WK是不显版本,也就是系统抓不到CPU型号,其他与正式版几乎无异,主参数为12核+20线程,基础频率为1.6GHz(大核)/1.2GHz(小核),最大加速频率为4.6GHz(大核)/3.2GHz(小核),比上一代桌面级i5-12490F还要强。
选择这块低压U的另外原因是发热量,i5-13500T的基础热设计功耗(TDP)为35W,全核满载也就92W的功耗,任意四热管下压散热器都能压得住,这次我直接用了个更小号的性能扇,平时非满载状态也就和开个灯差不多电费。
3️⃣主板丨铭瑄终结者B760ITX(DDR4)
简介:入手这块主板的理由挺简单,这次的需求环境对内存性能要求不高,B760主板中的ITX型号不算多,恰巧这块铭瑄B760是DDR4内存的型号,同时还板载两条满速PCIe4.0协议的M.2接口和四个SATA接口,IO方面正好适配。
铭瑄这块主板还有个比较能打动我的地方就是兼顾实用性的颜值了,三大块银色合金散热装甲覆盖着MOS和电感,马甲接触面和IC之间有额外的导热硅条辅助传热,并且位置和乔思伯N2的散热栅位置正好匹配,对只有CPU、硬盘和电源三处有主动散热的这台设备友好度较高。
对玩家比较友好的是CMOS按键外置在IO背板上,需要尝试超频这类需要恢复BIOS的操作不用拆机,直接按外置按钮就行,需要吐槽的地方是故障显示灯布局,对应CPU、内存和PCI槽的Debug灯分布在不同的角上,首次装机时习惯最小开机测试的我看得是头皮发麻。
4️⃣内存丨台电极光DDR4内存
简介:自从主力机换成了DDR5平台,好几条DDR4内存就闲置,这次正好拿出来用,本次上的是两条台电极光,当时图个比其他家便宜,3200MHz频率放在这台设备上也比较合适。
对比其他内存,台电极光性能上没啥优势,比较强的地方在散热,合金材质马甲条和颗粒中间夹了2.4W/m.K散热系数的3M导热硅胶,比较适合这台内部结构极为紧凑的ITX主机。
5️⃣系统硬盘丨七彩虹CN700(1T)
简介:之前淘汰下来的中端PCIe4.0固态硬盘,给编译机用正好,需要吐槽的是这款固态硬盘主控用的是联芸MAP1602但颗粒有点差,所以只有5000MB/s顺序读写这样的性能,七彩虹在存储硬件调教这块还是有很长的路要走。
虽然顺序读写是有点拉,七彩虹CN700的随机能力还是达到平均水平的,实测IOps能达到41.7万+79.2万,程序员朋友切记别买金士顿NV2这类入门级PCIe4.0型号,虽然看着是便宜一些,实际上对生产力环境来说60万IOps是门槛,省那么点钱没必要。
存储硬盘拿之前淘汰下来的一堆500G-1T机械硬盘用,坏了拉倒,正好换4T左右的SAS机械盘。
6️⃣电源丨艾湃电竞(Apexgaming)SFX-750M
简介:同样是之前淘汰下来的电源二次利用,当时买就图个同额定便宜,i7-8700+GTX3060实测没有任何压力,毕竟是全日系电容外加80Plus金牌认证。
除了93%以上的实际转化效率,这款SFX电源还带风扇启停功能,功耗在30%以下完全不会动弹,满载转速噪音也不到35db,喜欢安静的玩家绝对舒适。
7️⃣散热器丨乔思伯HX4170D & 霍尼韦尔PTM7950
简介:散热器手上还真没库存可用,唯一下压风扇还在i5-12490F那台设备上挂着,只能新买了个乔思伯HX4170D,虽然可能听着像水军硬吹,不过这玩意的散热能力是真不错。
9cm巴掌大小的下压散热器我还是头一次用,高度只有45.3mm,完全不会挡到内存和主板马甲,FDB高风压风扇的噪音控制也不错,最重要的是还送了暴力熊硅脂,虽然这次没用上。
考虑到这台机器开机时间会非常久,所以并没有选择HX4170D原装的暴力熊,实际上的是更持久的霍尼韦尔PTM7950相变导热片,具体实际表现看下面的压测吧。
霍尼韦尔PTM7950的导热系数为8.5W/m.K和暴力熊Aeronaut一个性能,但是理论上2-3年换一次,上机也不需要涂抹直接贴上就好,比半年一换的常规硅脂更省事一些。
8️⃣拓展卡丨浪潮YZCA-00311-103双口万兆电口网卡
简介:虽然我自己上的是这张卡,但是不建议普通用户上,原因在于大部分系统不能免驱使用,特别是群晖这类没办法简单打补丁的封闭系统,对于新手来说不太友好。
作为目前最便宜的拆机万兆网卡之一,用肯定是能用,65块钱包邮还要啥自行车,密密麻麻的IC和散热片确实不用担心过热导致的降频问题,有动手能力的朋友真可以考虑入手。
趁着还没装Arch,拿Windows跑一下相关硬件测试软件,大家可以参考一下。
1️⃣温度测试
由于这台设备需要7*24小时开机运行,所以先进行压力测试,测试结果如下图所示:
常态待机,CPU温度在38°左右,核心温度在40°以内。
烤机期间,CPU温度在43°以内,核心温度在80°左右。
从80°+的主板温度可以看出,乔思伯N2的舱内温度还是挺高的,但在乔思伯HX4170D和霍尼韦尔PTM7950的帮助下满载温度控制的还不错。
2️⃣办公测试
由于这台编译机到时候会彻底换系统并做专属优化,就先选了学常见的Windows跑分工具测试,这块ES可以理解为性能较低+基础功耗更低+线程更多的i5-13400,价格还便宜一些。
考核CPU性能的CinebenchR23,跑分数据如下:
单核成绩为1401分
多核成绩为14012分
考核CPU性能的CPU-Z benchmark跑分测试结果:
单核成绩为593
多核成绩为6352.8
考核CPU性能的3DMark CPU Profile跑分测试结果:
最大线程分数为6716
16线程成绩为6143
8线程成绩为4660
4线程成绩为2911
2线程成绩为1546
1线程成绩为808
考核CPU+内存能力的7Zip基准测试数据如下:
CPU使用率分为1520%
CPU使用率评分为5.649GIPS
综合评分为70.458GIPS
最后是偏向综合性能的PCMark10,最终分数为4925。
目前这台机器还没重装系统,后面调整优化好再和大家分享ArchLinux环境搭建与针对性优化方案,觉得有所帮助记得关注点赞收藏三联哈。