创作立场声明:本文所测商品都是自费购入,文章观点都是个人感受,并不会有所偏颇。只是供参考,在购买时还是看个人需求。
本文纯干货、技术流,文字较多,望能仔细阅读,定能学到不少有用的知识。
我们开始~
由于静音的情况下,WIFI6无线文件传输还是没有突破千兆有线,只是用WIFI6无线路由器比较难获得高速文件传输。路由器的USB3.0接口接个移动硬盘速度都一般,而且有的无线路由器无法SSH获得root权限而装一些自定义插件,为了一劳永逸,将来不会绑定在某个品牌无线路由器上,只是把路由器当AP发送无线信号用,所以接下来只有折腾软路由这条路了。这个软路由折腾比较麻烦,需要一些IT动手能力,下面的记录会尽量写的简单易用。
购买理由最主要3个需求,文件存储,静音,无线高速传输。另外还需要路由器能装一些插件等。
软路由就是个微型小主机,可以自己装一些开源的路由软件,想怎么控制就怎么控制,可以配合主路由做旁路由使用,或者直接做主路由,无线路由器配合做AP。我这里是第二种做法。
如果需要静音的话,就不能买有风扇的软路由,另外我有2.5G网口的需求,还需要支持SATA硬盘接口。
目前这个合适的选择只有2020年的网红众筹产品J4125的CPU配4个2.5G网口的小主机软路由,今年又众筹一波到了3.0版本,多了2个USB2.0接口。
这个小主机是被动铝壳散热,完全没噪音,也具有NVME和两个SATA接口,还能支持3.5寸硬盘,我正好有两个已经买了10年的2T闲置老硬盘,一个希捷,一个西数正好可以用,完美满足我的需求,就是有点贵,裸机1千左右,还要自己配电源,内存和固态硬盘。买了根8G的协德内存,终生保固,还有250G的国产Asgard固态硬盘,保修5年。这个硬盘主要是用作缓存,运行程序和虚拟机用,电影也是缓存,重要资料不会保存在上面,稍微重要点的资料会备份至另外两个硬盘,甚至上传百度云。
其实还可以推荐其他更便宜的软路由方案,例如J3455的软路由,自己加一个USB转2.5G网卡也行,不过可能会不稳定。不推荐J1900的软路由,虽然也能上2.5G网卡,但是无法虚拟机,不支持Docker功能。可玩性不高。
使用感受用到软路由,就开始需要选操作系统了。以这个J4125的CPU能力,单装路由系统有些浪费,于是开始研究虚拟机系统,目前推荐比较多的有ESXi,PVE和Unraid操作系统。其中Unraid默认支持Docker和虚拟机,网卡,硬盘直通很方便,可以在虚拟机里面装Openwrt开源路由系统。
不过用Unraid需要有间接上网,应用市场才会用得比较顺畅。 我正好有机场,于是选了Unraid,首先实验了下Unraid的开心版,正版需要购买。
干货
1. 可以去俄罗斯Softoroom发布的页面去下载最原始的Unraid 6.8.2开心版,其他经手过很多人的版本不知道有没有被加料。我用HEX对比查看了下里面破解的文件,还是比较干净的。 原版下载地址。
下载安装至U盘做驱动盘,很多教程,各位可以搜索一下,这里不重复了,只写一下如何支持2.5G网卡驱动的过程。U盘不建议USB3.0的,发热很烫,用USB2.0的就可以了,8G到32G都可以。推荐闪迪酷豆CZ33的USB2.0 32G版本,插到机器上不起眼,也不容易被碰到。Unraid只是开机启动读U盘比较多,用USB2.0就够了。
2. Unraid 6.8.2版本对2.5G的8125螃蟹网卡驱动支持不好,需要更新驱动,可以去这位thor2002ro大神开源非官方unraid_kernel的 Github主页下载
在Release页面里面下载最新 5.10.0rc4-thor-Unraid .NV.6.8.zIP 文件, 解压后可以看到bzimage和bzmodules等4个文件,覆盖到6.8.2的U盘内同名文件即可。
这个开源的kernel支持软路由内的8125芯片的2.5G螃蟹网卡,也支持USB3.0转2.5G网卡的8156芯片。 你可以插两个USB3.0转2.5G网卡,软路由就可以支持6个2.5G网口了。 这个kernel还支持nVidia显卡,AMD的CPU等,比官方支持的硬件驱动多不少。
如果是使用最新的Unraid 6.9.1版本,默认已经有最新的2.5G网卡驱动,直接用就行了。不用做上面的步骤。不过上面的6.8.2版本也很稳定,跑了两月没重启过,速度也很快,没任何问题。
3. 编译自己的Openwrt路由固件。这个可能需要懂一点编程,不过自己动手,丰衣足食,而且自己编译的用起来放心,不怕黑客加料。目前比较好用的带插件的Openwrt是Lean和Lienol的源代码库,都已经支持8125的2.5G螃蟹网卡。 我们可以使用Github的db-one的OpenWrt-Actions-Lean-Lienol Action Workflow功能来编译源代码,不需要自己配编译环境。Action原始地址。
我改造了一下,各位可以fork jinlfe的Action库,编译没问题。
用这个Github的Action库,不需要自己有Linux电脑,也能编译Openwrt开源代码,全程都在Github上进行。而且速度很快,只要2小时。自己找台电脑编译可能要6~7个小时。懂用Github的话,可以在库里面修改脚本,可以修改几个常用的几个openwrt插件。方便配置,各位可以自行Fork了之后配置自己想要的Openwrt固件。 不建议下载网上各种他人编译的版本,也不知道加料了没。
我个人比较喜欢用Leinol的,比较稳定,跑一个星期也没问题。不过这都是看运气,源代码不知道啥时候不稳定了,天天更新,没事去build一下,更新一个版本,哪个稳定用哪个。
源代码编译是点击 watch 即可触发,触发后等几个小时即可在Actions里面看到编译好的固件。这个固件可以直接用在Unraid的虚拟机里面使用。
将OpenWrt-firmware下载下来后,解压会得到两个文件。再次解压,其中一个170MB左右的文件 openwrt-x86-64-combined-squashfs-efi.img 即虚拟机镜像。
以上所有文件,弄下来都稍微有点麻烦,我都拷贝了一份在百度盘里面。直接下载:
百度盘链接,提取码: 41pv
硬件准备
- 先装好内存和硬盘,可以把USB2.0的口松掉一颗螺丝,方向朝里放,并把U盘插入USB2.0接口。
- 然后将SATA线和电源线通过USB2.0的开口导出来。SATA数据线需要选头比较小的,否则盖子盖不上。电源线是sh2.54型号的,不要买错接口了,还有12V黄色的和红色5V的位置有两种接法。接反了会烧掉硬盘,注意买对接法。
- SATA数据线京东上推荐下面这个,或者马云家上买个头更小的。SATA电源线京东上貌似没有,需要找马云家的。或者直接买两根小主机店家的SATA数据电源一体线,店家会专门发个背板开孔的机器,不用通过USB2.0开口导出。
- 最终接好的情况如下。
Unraid基本使用
1. 开始装系统,制作好的U盘已插入J4125小主机,另将小主机连上HDMI显示器和USB键盘。插电启动后不停按Del键进入BIOS,去掉一些IPv6 PXE Support,这样选择Boot的地方会清爽很多。
这样下面的一排PXE启动项都会消失,只留下U盘SanDisk。
2. 在Boot启动处只选SanDisk即可,这样保持并启动后即可进入Unraid界面。 如没进入,可能是U盘没做好。可以重做一下,注意U盘盘符名需要是UNRAID。
3. 有需要还可以关掉网卡的ASPM节能设置,让螃蟹网卡好好工作,据说新的驱动不关也行。不过关了也没啥问题,反正功率没多大。路径 Chipset->South Cluster Configuration->PCI Express Configuration->PCI Express Root Port, 所有1到6里面的 ASPM 都改成 Disable。
4. 改完BIOS后保存修改并退出,自动重启,此时会从U盘启动。进入Unraid启动项选择。
- 其中默认第一项Unraid OS是正常进入Unraid系统,最后会启动到获取第一个IP处,这里建议连一根网线在电脑和小主机之间,免得网络没启动,获取不到IP。默认每次重启小主机都是此模式。
- 第二项是Unraid启动加进入GUI界面模式,可以直接进入Unraid的网页界面操作,方便无网络测试。
- 第三项是安全模式,停用所有插件和GUI界面,这样可以进入命令行模式,方便输入命令排查系统核心问题。一般用不着。
- 第四项也是带GUI界面的安全模式,但是停用所有插件,这样可以进入界面排查插件的问题。
5. Unraid启动完,最后会出现IP。在电脑的浏览器输入显示的IP即可进入Unraid系统,默认用户root,无密码。
6. 进入Unraid后第一件事是改IP地址,先不要配硬盘和虚拟机。配置了后可能这里会变灰改不动了。另外需要给root用户加密码。 其实还可以用Unraid官方出的制作U盘工具来提前改好IP,直接用Localzip来安装。
注意默认是active-backup(1)模式,不要动,这个是主备模式,正常情况下只有一个网口起作用,其他口都会是备用。这个默认模式正好适合管理口。 将IP改成静态,配置成192.168.0.38/24。其中24表示子网掩码是255.255.255.0。网关改成192.168.0.1。DNS改成114.114.114.114和223.5.5.5。(图中的233.5.5.5是个错误地址,被一些教程带坑里了。应该是223.5.5.5,能Ping通才行。我在申请SSL证书的时候才发现233这个连不上)
改完IP后重启小主机,后面的操作可以拔掉显示器和键盘了,只要连网线即可。电脑的网卡需要配置IP为192.168.0.33,子网掩码为255.255.255.0。
7. 重新网页连上Unraid后,接下来配置硬盘阵列,设定固态硬盘为缓存盘。启动硬盘阵列,可以在磁盘配置里面设定开机自动启动阵列。
我的两个老2T硬盘没有选校验盘,用了校验盘后速度很慢,只有几十MB/S的速度,虽然安全。目前我主要是存电影,而且后期我会用脚本自动多盘同步备份重要资料。所以都是用做数据盘。
8. 安装插件和安装Openwrt虚拟机,先装个APP市场 community.applications
如果家里没有全屋间接上网,需要用如下地址安装。
gitee/BlueBuger/community.applications/raw/master/plugins/community.applications.plg
如果有间接上网,可安装如下地址。
raw.githubusercontent/Squidly271/community.applications/master/plugins/community.applications.plg
装好这个之后才有App应用市场。另外6.8.2版本还需要装个关键插件vfio.pci,直通网卡。
raw.githubusercontent/Skitals/unraid-vfio-pci/master/plugins/vfio.pci.plg
如果没有间接上网,装这些都挺麻烦的。可以想办法下载到本地,然后传到Unraid的flash共享目录,就是闪迪启动U盘目录,可以在共享目录中找到刚才装插件的子目录。插件装失败了,但是子目录都创建出来了。
网络不行,装插件的时候会有报错信息,缺什么文件就上传什么,也就两三个文件就装好了。 如果有间接上网,那就是傻瓜式的一键就装好了。
6.9以上版本装好应用市场App之后可以找到语言选项,直接安装汉化。 6.8.2版本市场里面没有,需要网上找。
6.9以上版本也自带了硬盘直通插件,不需要装vfio.pci了,6.8.2版本需要自己装插件。
使用vfio插件将4个网口中的后3个直通,留第1个做管理网口。
安装Openwrt虚拟机
1. 将之前自己编译好的 openwrt-x86-64-combined-squashfs-efi.img 镜像放入Unraid的 isos 共享目录。
2. 在Unraid虚拟机界面创建Linux虚拟机。配置如下,由于openwrt是efi的镜像,所以BIOS需要选OVMF。 SeaBIOS主要是用在传统引导镜像。 另外虚拟硬盘位置选手动,并且右边路径选到刚上传的isos的openwrt固件。 总线可以选SATA。
3. 下面勾选所有直通的3个网口。创建虚拟机即可。
用我们自己的Github库编译出来的Openwrt镜像,默认IP地址就是192.168.0.1,所以不用进入VNC来改IP地址。有需要可以自己改。不过可能还是需要进入VNC改下Openwrt的root用户密码,或者进后台网页改。
Openwrt基本配置
简单的家庭网络拓扑图,只用Openwrt就够了,比较简单。小主机有交换机的功能,软路由和群晖都可以在外网控制,家庭内部也都能访问所有资源。
1. 进入Openwrt主页后,即可看到所有4个网口,第一个口eth0是虚拟的半双工网口,另外三个都是直通的全双工物理口。
2. 进入Lan口物理设置,将第一个虚拟口和中间两个物理口桥接绑在一起。这样3个口互通,其中eth1口连AX6000做AP,eth2口连群晖218 。 Unraid的文件通过eth0口也可以在AX6000的局域网WIFI管理访问,同时也可以直接网线连电脑管理访问。
3. Wan口是独立的物理网口eth3,连千兆光猫拨号上网即可。
其他基本的Openwrt配置可以参考其他网友的教程,都差不多。
总结文件存储
在使用这个J4125的X86小主机软路由后,Openwrt能装各种插件。并且Unraid是一个NAS系统,还能安装Docker,装更多的Docker插件。功能非常强大。Unraid的虚拟机也可以装一个Windows系统,可以24小时运行Windows服务。 文件存储,各种扩展服务功能是没问题的。有需求还可以在虚拟机里面装个群晖。
静音
由于是被动散热,小主机和AX6000都没风扇,没有声音。2T硬盘是老的5400转的,转起来有点点声音,没有酷狼6T的7200转的炒豆子的声音大。而且Unraid硬盘可以休眠,休眠后基本上就没声音了。日常当路由运行,三个硬盘都会休眠,基本没声音。
速度
有线传输速度很快。Unraid访问的主要是J4125内缓存的NVME固态硬盘的文件,可以跑满2.5G的网速,达到280MB/S每秒。
无线速度靠近可以达到 204MB/S的速度左右,超过千兆有线的110MB/S。
5米远之后,上传也能有115MB/S, 下载160MB/S。 这个主要是AX200无线网卡功率接收不行了,如果有两个AX6000组Mesh,应该可以速度更高。
只运行Openwrt路由,带几十个设备的情况下,CPU使用率只有5~6%左右。 上传下载大文件会到25%左右。
功耗在2个2T硬盘和1个250GB的固态硬盘都启动的情况下,启动有20到25W,稳定后大概是16W的功耗。Unraid还有个好处是可以硬盘休眠,3个硬盘休眠之后的功耗是6.2W,固态硬盘开启也就6.4W。主要是2T的机械硬盘耗电。平时2T硬盘用得不多,系统主要访问的硬盘还是固态硬盘。
总体来说,投入快2000元,家庭网络升级至2.5G网口和WIFI6无线路由器,群晖也升级了。WIFI无线传输速度从 866Mbps (70MB/S) 提升到 2.4Gbps(200MB/S)。有线从 110MB/S 提升到 280MB/S。提升还行吧。 WIFI6也就能提升这么多了,只要期望不高,还是够用的。而且现在新款的苹果和安卓手机都支持WIFI6了,内网速度都可以同时得到提升。
如果觉得这个升级有点贵,也可以继续等等,价格肯定都会降下来的。
以上都是个人折腾的记录,供参考。后面还可以继续折腾这个Unraid系统,继续打造基本的NAS系统服务,实现自动重要文件多盘备份,带SSL证书的笔记,上传百度云盘的功能等。
本文经“什么值得买”社区作者@Jinlife授权转载,文章内容仅代表作者观点,与本站立场无关,未经授权请勿转载。
,