老 NAS 到手已经已有五六年,错误频发加上 ARMv5 的性能已经不能满足需求。
于是咬咬牙自行组装了一台全新(并不是)的 NAS,大概记录一下遇到的问题。
NAS 整体配置大致这样:
CPU | Intel 12th 赛扬 G6900 2C2T 3.4GHz |
散热器 | 乔思伯 HP400S |
主板 | 铭瑄 H610 ITX 2.5G |
内存 | Crucial DDR4 3200 8G * 2 |
硬盘 | 希捷银河 16T |
机箱 | 万由 410 |
电源 | 机箱自带 |
系统盘 | Kioxia U366 32G |
系统 | UNRAID |
以下是目前还能回忆起来的一些问题,往后遇到的会在这里继续更新:
问题 0:UNRAID 无法开始试用
解决:调整主板时间到当前时间。
问题 1:主板开启 VT-x 后 UNRAID 没有检测到 IOMMU 支持
解决:在集显设置选项下有 VT-d 选项,开启即可。
问题 2: UNRAID 半价购买未生效
解决:系统内应用中安装简体中文并应用。
问题 3:UNRAID 里安装的应用无法仅监听本地再由 nginx 反代
解决:先装虚拟机,再由虚拟机跑容器。
问题 4:Arch Linux 上 VA-API 性能差劲
解决:需使用开源 iHD 驱动,而非闭源的版本
解决:使用闭源驱动时请使用 QSV 而非 VA-API。
问题 5:无法使用 QSV 进行编码
解决:需使用闭源 iHD 驱动,在安装 libmfx 的前提下使用编译有 libmfx 支持的 ffmpeg。
问题 6:能够使用 QSV/VA-API 的机器上的容器无法使用硬件加速编解码
解决:容器内需要再安装一遍以上驱动并使用带有支持的 ffmpeg(所以麻烦安装中国特供版 Jellyfin 容器)。
问题 7:反复点播 Jellyfin 中的高码率视频后突然无法播放
解决:VA-API/QSV 卡住了,重启容器的宿主机
解决:echo "options i915 enable_guc=2" >> /etc/modprobe.d/i915.conf
参考
问题 8:Jellyfin 容器内的 ffmpeg 性能比宿主差劲
解决:别整 docker 了
解决:Intel 核显在 Linux 的开源/闭源驱动下默认的电源策略不同,开源实现默认启用低电压编码模式,因此性能表现较好。使用闭源驱动时请不要使用 VA-API 进行编解码,使用 QSV 编码时需为 ffmpeg 启用低电压选项: -low_power true
。
问题 9:UNRAID 使用严格模式 SSL 访问后,突然打不开管理页面,显示 404 Not Found
解决:DHCP 固定 IP 到上一次的正常时的,重启 UNRAID 再使用上一次的 DHCP 地址访问即恢复正常,此时解除严格模式再修改 IP 即可。
问题 10:Windows 上无法打开 UNRAID 的 SMB 共享
解决:在凭据管理器里先加上对应 IP/域名 下的用户名密码。
问题 11:老硬盘插上后显示 SMART 错误
解决:从 NAS 取出重新包装寄给群友。
问题 12:取出硬盘后 UNRAID 阵列停止
解决:工具->新配置->保留设置->应用。
问题 13: UNRAID 开机没有自动开始 SMB
解决:磁盘设置->启用自动启动。
问题 14: UNRAID 无法更新系统
解决:在 /root
下新建 .wgetrc
文件,加入以下内容:
use_proxy=yes
http_proxy=http://10.0.0.1:7890
https_proxy=http://10.0.0.1:7890
wait=10
注意将代理服务器改为自己内网的。
重启后该文件会被删除,因此仅适用于临时使用。
若永久生效请取消注释并修改 /etc/wgetrc
中相同行的值。