折腾NAS 篇六:利用Windows小主机做“旁NAS”

2024-02-29 16:30:10 43点赞 398收藏 33评论

前言:
家里有一台用了好多年的2盘位群晖218+,陆陆续续在里面装了一些常用的docker,还装了一个windows虚拟机。这导致了一个问题:群晖的CPU负载和内存占用率常年满载,硬盘“炒豆子”声音也基本停不下来。同时自己也一直关注群晖新品,但最近一波发布的新产品,硬件规格基本上是倒吸牙膏。所以我最近动了一个念头,看能不能把群晖里面安装的一些应用和服务迁移出来,安装在一个小主机上,达到降低群晖负载,延长硬盘使用寿命,提升应用执行效率之目的。在此过程中,我参考了很多张大妈的文章,有很大帮助,所以把自己的经验也分享出来,希望对感兴趣的值友有一些参考。


一,主机配置的选择

CPU我选择了Intel的N100,主要考虑12代CPU所宣传的相较前代产品更好的能耗比。同时在选购过程中,我也重点关注过N305,从性能上看这个CPU比N100性能基本上翻倍,但是看很多测评反馈,这个CPU的功耗和发热也几乎是翻倍,感觉不太适合长期开机运行。所以最后坚定了购买N100的决心。主机的品牌我最后选择了七喜的s10,但感觉目前市面上主流的N100小主机,几乎是一个模子刻出来的,选择其他品牌也应该差不多,例如中柏,零刻,倍控,畅网微控等。我主要是考虑七喜的这个主机是DDR4非板载内存,有wifi6和蓝牙5.2。其他品牌有的是板载内存,有的是wifi5,还有的是蓝牙4.0,大家可以根据需要选择合适的品牌和规格。因为我不做专门的软路由或者旁路由,所以机器上的2个2.5G网口已经超出我的需求了,完全够用。

N100根据intel官网介绍最大支持内存16G内存,所以我直接配了一个16G,不过看值友文章反馈32G的内存也是支持的。硬盘我配了一个1T的M.2固态,其实作为一个小主机不需要这么大,大家手头有闲置的256G或者512G固态就足够了。

二,操作系统的选择

我非常同意某位值友的观点:如果windows系统是一个绕不开的需求,那么搭建这个系统的底层就直接用windows。确实自己有一个特殊的软件需求:利用Foxmail的邮件过滤器对工作邮箱进行分类归档(实在找不到其他邮件服务或者app可以实现相同的过滤方案)。我有看过esxi,PVE,UNRAID等底层系统的介绍和使用经验分享,例如在这类系统上面装windows虚拟机,然后把docker服务单拎出来。最后综合考虑,可能还是直接安装一个windows系统简单直接一些。安装windows的版本,我选择的是windows11专业版官方镜像。我曾经尝试过windows10企业版LTSC,但可能是下载的镜像不对,这个LTSC的子版本是21h2,而windows最新的子版本已经到23h2了,可能有些系统功能的使用会有问题(实测在wsl2的使用中bug很多)。

不过这个方案的缺点也是很明显的:windows的系统开销确实比较高,部署到目前为止,16G内存的情况下,内存占用率大概是30-40%。windows系统确实得配至少16G的内存,8G内存肯定会再次激起我的高占用率强迫症。不过CPU占用率一直比较低,日常大概百维持在百分之几的水平。

三,安装的应用和服务

目前在这个主机上安装的应用,也都是NAS服务中大家经常提及的:Plex,Calibre-web,navidrome,Gitea,Freshrss,以及Heimdall。因为有些应用需要对群晖网盘的内容进行读写,所以我在群晖上开启了SMB协议,将相关文件挂载到了这个系统中。接下来简单介绍下这几个应用的搭建经验:

1,Plex

这个应用的搭建是最简单的,Plex直接提供了windows下的plex server安装包:

https://www.plex.tv/media-server-downloads

安装好以后应用就会一直在后台运行,可随系统开机启动。添加媒体资料库时,只需要找到通过SMB挂载的群晖文件夹即可。

设置好以后,Plex可以正常读取,刮削,和播放文件。这里多提一下关于Plex硬件转码,我实测了一下Plex的硬转码也是没有问题的,在此情况下,cpu的占用率可以保持在10%以下,风扇也很安静。但是有一个特殊情况,如果你的视频是HDR视频,在转码过程中CPU占用率仍然会飙到90%左右,风扇也会狂转。我查了一下这是因为windows下的Plex server对HDR视频转码的硬件支持不太好,在linux下就不会有这个问题。有个折中方案是:在web管理界面中找到“设置”-“转码器”-“启用高动态范围色调映射”这一项取消选中:

利用Windows小主机做“旁NAS”

这样一来在转码过程中CPU占用率就会回到正常水平。

不过我一般是用infuse来观看Plex视频,极少遇到需要服务器端转码的情况。

2,Calibre-web,navidrome,Gitea

这三个软件的开发者同样提供了windows下的安装包,或exe可执行文件,但是在部署过程中有一些需要注意的点:

首先,强烈推荐大家使用nssm这个小工具:https://nssm.cc/。它的作用是把exe等可执行文件包装成一个windows服务,这样我们的应用就可以随系统启动在后台运行,而且也不会在应用运行过程中始终有一个命令行对话框。

nssm的使用非常简单,就是把这个nssm.exe 文件放在系统任意一个文件夹(例如c盘根目录的一个文件夹),然后打开cmd命令,输入:

nssm install 你想命名的服务名称(例如navidrome)

然后就会弹出一个对话框:

利用Windows小主机做“旁NAS”

在path中选择想要执行的exe文件路径,然后点击install service即可。

其次,在安装好服务以后。如果服务需要挂载的文件,例如navidrome的音乐库,Calibre-web的书库,是在SMB挂载的网络驱动器上面,就会有一个问题,你会发现这些应用无法识别或挂载这些网络挂载的文件夹。这里的解决方法是:将这些应用的系统服务,修改为当前window管理员账户登录,而不是系统账户登录。这个其实可以在利用nssm安装系统服务时进行修改,但我比较习惯在windows自带的服务管理器中进行修改。具体方法是:在windows搜索栏搜索“服务”,就可以找到windows的服务管理器,在这个对话框中找到安装好的服务,例如navidrome,右键点击,选择“属性”,在登录标签页选择“此账户”,然后填写当前登录的管理员账户信息即可。

利用Windows小主机做“旁NAS”

经过修改以后,这些服务就可以正常对网络驱动器进行读写了。实测navidrome和calibre-web都可以正常挂载群晖的对应文件夹进行播放或浏览。

3,Docker中安装Freshrss和Heimdall

docker为windows系统提供了docker desktop for windows,我们在docker官网下载安装好以后,会发现它有两种运行方式,一种是基于Hyper-V,另一种是基于wsl2。我简单试用比较了一下两种docker的运行方式,有以下经验供大家参考:

1)如果你需要把windows下的文件映射到docker里面,还是比较推荐Hyper-V的模式。wsl2虽然能把windows的文件映射到wsl2里面(在“/mnt/c/”目录下),官方资料显示这种情况因为两种系统的文件系统差别很大,读写性能会很差,我实测确实读写性能非常差(不确定是不是我设置不对)。而Hyper-v模式下映射windows系统目录非常方便(甚至直接可以按照“c:XXXX”这样的格式映射),读写性能也能接受。

2)根据docker的官方文档说明,windows的docker desktop不支持host模式,只能端口映射。docker会建立一个子网络,默认网关是“192.168.65.1”(这个可以在设置里面修改),你会看到docker的网络通信都是经过这个网关收发的。因此如果需要搭建软路由,或者DNS服务,可能windows的docker desktop会有一些限制。

3)截止目前我还没有找到docker deskop for windows挂载网络驱动器,然后映射到docker的方法。虽然我们可以通过SMB,或者webdav在windows下映射本地盘符,但是实际上在docker中并不能够映射成功。我曾经尝试过在wsl2模式下用linux直接挂载,但首先遇到的问题就是中文识别乱码,这又要花时间经历去设置,还不一定能映射成功,遂放弃。值友们如果有成功经验可以分享讨论。

4) 有时候docker的环境参数中需要提供UID和GID,这是linux下账户的相关信息。在wsl2中,官方文档提到linux内核给默认用户的UID和GID都是1000。实测这样设置的话,运行这类docker是没有问题的,在Hyper-V模式下我还没查到UID和GID的信息,不过沿用这套信息来设置,目前也没有问题。

docker的一大优势就是部署和维护简单,尤其是利用docker compose命令可以一个命令行把docker部署好。这里我贴一个Freshrss的compose.yaml的例子供大家参考:

services:

freshrss:

image: lscr.io/linuxserver/freshrss:latest

container_name: freshrss

environment:

- PUID=1000

- PGID=1000

- TZ=Asia/Shanghai

volumes:

- c:dockerfreshrssconfig:/config

ports:

- 8090:80

restart: unless-stopped

其中文件映射和端口映射大家可以根据实际修改,然后把这个文件保存为一个compose.yaml文件,在命令行中导航到这个文件所在的文件夹,接着输入 docker compose up -d,docker就会自动拉取镜像并启动。

三,结语

目前来看,这个windows主机方案运行情况基本达到目的。群晖回归了其作为一个NAS的本质工作:提供稳定的网络存储和备份服务。在此基础上的应用都通过这个小主机来运行,所有的应用都实现了开机自动启动运行,相关应用的网页加载和响应确实更好一些,总体确实得到了更好的使用体验。不过在群晖上我仍然保留的一个功能,是利用群晖自带的反向代理服务器,把这几个搬到windows的应用,通过反向代理实现外网的https访问。这样的好处是群晖自带的反向代理https证书安装和更新也不用自己花精力去弄了,包括DDNS服务,全部由群晖帮忙搞定,这样对于外网访问也比较安全。总计这篇文章没有涉及到系统安装或者每个应用安装的具体步骤,其实值得买上已经有很多大神分享的经验文章可以参考,但这里我着重分享了过程中自己遇到的一些问题和经验,如果有值友也计划搭建一个windows系统主机配合NAS使用,希望有一些参考的作用。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起

铭凡(MINISFORUM) UN100D Intel N100迷你工作站迷你电脑小主机高性能游戏办公双网口台式机 【UN100D国标】 板载8G内存/无硬盘/无系统

铭凡(MINISFORUM) UN100D Intel N100迷你工作站迷你电脑小主机高性能游戏办公双网口台式机 【UN100D国标】 板载8G内存/无硬盘/无系统

949元起

中柏(Jumper)N100高性能办公游戏台式机电脑迷你主机(12G+512G)【2024款】mini PC N100II 12512 N100II/单网口

中柏(Jumper)N100高性能办公游戏台式机电脑迷你主机(12G+512G)【2024款】mini PC N100II 12512 N100II/单网口

1099元起

惠普(hp)电脑主机 办公设计剪辑建模渲染台式机(i7-12700 32G 512GSSD RX550-4G Win11)23.8英寸 23.8显示器

惠普(hp)电脑主机 办公设计剪辑建模渲染台式机(i7-12700 32G 512GSSD RX550-4G Win11)23.8英寸 23.8显示器

5699元起

研刻工业防尘全封闭无风扇四核工控小主机迷你主机微型电脑嵌入式双网双串低功耗 赛扬11代/8+128

研刻工业防尘全封闭无风扇四核工控小主机迷你主机微型电脑嵌入式双网双串低功耗 赛扬11代/8+128

暂无报价

触沃(TouchWo)电容触摸自助终端查询一体机多功能立式医院展览政务服务大厅21.5英寸B款安卓RK3588/8G/128G

触沃(TouchWo)电容触摸自助终端查询一体机多功能立式医院展览政务服务大厅21.5英寸B款安卓RK3588/8G/128G

6528元起

长城(Great Wall)凌云系列23.8英寸 办公商用企业家用网课台式整机一体机电脑(12代N95 16G+512G ) 23.8英寸 黄金尺寸

长城(Great Wall)凌云系列23.8英寸 办公商用企业家用网课台式整机一体机电脑(12代N95 16G+512G ) 23.8英寸 黄金尺寸

1788元起

中柏(Jumper)N100高性能办公游戏台式机电脑迷你主机(12G+256G)【2024款】mini PC N100II 12256 N100II/单网口

中柏(Jumper)N100高性能办公游戏台式机电脑迷你主机(12G+256G)【2024款】mini PC N100II 12256 N100II/单网口

949元起

磐镭 HA-4银翼 锐龙R7 7840HS 八核高性能 MINI电脑 商务办公游戏设计RGB迷你电脑主机 R7-7840HS | 准系统 | 无内存硬盘 (准系统)

磐镭 HA-4银翼 锐龙R7 7840HS 八核高性能 MINI电脑 商务办公游戏设计RGB迷你电脑主机 R7-7840HS | 准系统 | 无内存硬盘 (准系统)

2399元起

神舟(HASEE)mini PC6/PC7S/i5商用办公迷你台式电脑主机 【mini】N100/16G/无硬盘/win11

神舟(HASEE)mini PC6/PC7S/i5商用办公迷你台式电脑主机 【mini】N100/16G/无硬盘/win11

888元起

极摩客「史诗性升级」GMK 极摩客K5 迷你主机 7735HS 高性能锐龙7 8核16线程游戏办公mini电脑 深邃黑 16G+512G固态

极摩客「史诗性升级」GMK 极摩客K5 迷你主机 7735HS 高性能锐龙7 8核16线程游戏办公mini电脑 深邃黑 16G+512G固态

2699元起

神舟(HASEE)战神Mini i9 迷你台式电脑商用小主机(酷睿十二代i9-12900H 16G 1TBSSD WIFI win11)

神舟(HASEE)战神Mini i9 迷你台式电脑商用小主机(酷睿十二代i9-12900H 16G 1TBSSD WIFI win11)

2999元起

雷神MIX迷你主机高性能独立显卡13代i9游戏商用设计高配mini台式电脑 13代i9/RTX4070/32G+1T固态 1.7L带拓展坞 WIFI6

雷神MIX迷你主机高性能独立显卡13代i9游戏商用设计高配mini台式电脑 13代i9/RTX4070/32G+1T固态 1.7L带拓展坞 WIFI6

9199元起

PELADN WI-6 英特尔12代 N95 mini迷你主机 轻办公商务家用台式电脑迷你主机 四核N95/8G/256G

PELADN WI-6 英特尔12代 N95 mini迷你主机 轻办公商务家用台式电脑迷你主机 四核N95/8G/256G

899元起

逆昂64G内存酷睿i7升24核直播电竞台式机电脑4060电竞主机吃鸡独显办公组装家用游戏水冷电脑整机全套 单主机 套二:i9级十核/32G/1050ti稳定吃鸡

逆昂64G内存酷睿i7升24核直播电竞台式机电脑4060电竞主机吃鸡独显办公组装家用游戏水冷电脑整机全套 单主机 套二:i9级十核/32G/1050ti稳定吃鸡

1698元起

华为(HUAWEI)MateStation B515 高性能商用台式机电脑主机(R5-4600G 16G 512GSSD WiFi) 锐龙|B515单主机

华为(HUAWEI)MateStation B515 高性能商用台式机电脑主机(R5-4600G 16G 512GSSD WiFi) 锐龙|B515单主机

暂无报价

华硕 弹药库 i7 14700KF/4070S/4070TiS/台式电脑水冷游戏主机直播设计组装电脑diy整机 i7 14700KF/RTX4070S丨规格四

华硕 弹药库 i7 14700KF/4070S/4070TiS/台式电脑水冷游戏主机直播设计组装电脑diy整机 i7 14700KF/RTX4070S丨规格四

11399元起
33评论

  • 精彩
  • 最新
  • n100的功耗也不低,别被它6w的TDP迷惑了,乱标的,实测有15w起步,win11待机跟我老电脑5600g一样12瓦左右,同样跑下载或看视频功耗会比5600g还高,说是辣鸡不为过

    校验提示文案

    提交
    是的,我看还有测评说这几款小主机因为有蓝牙和wifi,综合功耗其实没有预想的那么低。有的人会把蓝牙和wifi模块拆掉,总体还能往下压一压。

    校验提示文案

    提交
    额,我的5600g三块硬盘怎么日常25W,挂个mc服务器35w

    校验提示文案

    提交
    还有9条回复
    收起所有回复
  • N200的功耗和发热跟N100比怎么样?我想弄一台迷你机专门用来挂机下载(跑Windows或NAS)

    校验提示文案

    提交
    N200和N100一样是四核四线程,CPU最高频率会更高些,GPU会更好一些。我没实际用过,猜测功耗比N100平均会高个20%左右。不过N100貌似市面上可选的低功耗主机型号相比而言不多,买的时候最好确认下产品给配的电源功率是不是够用。有很多我看是在N100主机配置上面直接改的N200,有可能配的电源功率冗余不够。不过对于你的应用来说,感觉N100已经绰绰有余了。

    校验提示文案

    提交
    看了不少Win系统占用100%的评论,所以才会开始关注N200/305

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 和你类似,家里的216play用了好久,前年用搞winnas,Windows直接装docker感觉很麻烦,我当时直接在hyperv里搞了个debain,在这个虚拟机里搞docker。

    不过最后因为winnas移动端体验差,比群晖的app体验还差,最后又整了个423+ [皱眉]

    校验提示文案

    提交
    确实,但凡群晖这两年出个N5105之类的就直接冲了,现在这配置实在下不去手 [喜极而泣]

    校验提示文案

    提交
    收起所有回复
  • 之前也用n100也是装win,但是系统占用总是100%,最后换了个倍控的1215u就舒服了

    校验提示文案

    提交
    我目前其实也没有好的方法远程监控CPU占用,一个间接的方法是通过Plex的服务器面板查看,通过这个方法看的话,CPU总的占用率大概在6%左右。但是如果通过远程登录桌面,然后打开进程管理器查看的话,CPU占用率会从100%逐渐往下掉,感觉进程管理器本身会消耗很多资源。

    校验提示文案

    提交
    收起所有回复
  • [傻笑] 我用的是零刻的N301(能更换内存的),用windows跑docker,安装meattube供emby使用。还有两台软路由,一台是跑爱快,用于下载流控;一台是跑openwrt,用于网关全程飞。另外还有两台群晖的DS918+,但是其中一台弄了DDNS以及plex,如果让NAS飞的话,DDNS的地址会指向梯子的IP,DDNS远程回不去,plex也一样。同理,另外一台也搭建了emby,如果要飞的话,也是远程回不去。所以在openwrt上,把两台NAS都禁用飞了 [抽烟]

    校验提示文案

    提交
    用软路由主要是想飞的话,强烈推荐appleTV,搭配最新的tvOS,感觉比现在大部分的软路由都好用。 [高兴]

    校验提示文案

    提交
    [高兴] 我也入手了Apple TV,只不过真用来看emby和plex的,没作为软路由使用

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 要是用hyperv还是得server,uup上下新版的,2022版新装好内存占用不到1.5g,本身自启动的服务就比Win11少再用微软自己的系统套件清理下服务可以比Win11日常占用更低,dda直通网卡给虚拟机很方便性能很好

    校验提示文案

    提交
    感谢建议!以前没有用过server系统,担心一时搞不定,但这个确实可以尝试一下,先在虚拟机里面熟悉,然后实际部署。

    校验提示文案

    提交
    收起所有回复
  • 非常值得推荐,价格合适,值得入手!

    校验提示文案

    提交
  • 再有就是winnas上没有好用的,方便app使用的相册,折腾filrun,photoprism后,彻底因为相册放弃了在winnas上投入

    校验提示文案

    提交
    mt-photo这个不错,就是得付费

    校验提示文案

    提交
    我是win虚拟黑裙

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • Windows 感觉还是hypev里跑虚拟机装docker比较好,性能损失几乎可以忽略,docker desktop那个体验真的一言难尽

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
相关好价
最新文章 热门文章
398
扫一下,分享更方便,购买更轻松