群晖入门到进阶系列(一):系统安装、洗白与局域网唤醒
该系列文章是继 不到300块捡一台4盘位NAS——蜗牛星际上车记 后,对折腾黑群晖系统的记录,部分内容也适用于其他硬件平台的朋友与白群晖土豪。
本系列包括系统的安装、洗白、内外网环境配置、套件的优化、 Docker 、PT 下载,以及诸如 ipkg
环境配置等较为高级用法,基本涵盖了这个等级硬件平台下大部分能折腾的地方。
注:本文很多内容来自互联网,仅供学习交流,如侵删。感谢 Jun 大佬的引导与其他诸多大佬的热心分享,Alliot 只是记录整理自己的动手过程,以便自己重装时翻阅,同时给需要的朋友作参考,由于部分资料为零散记录或群友帮助,所以部分出处不详,如有侵权,请随时在文末评论区或邮件联系。
本系列用到的所有工具:1
2
3
4
5链接:https://pan.baidu.com/s/1LXy9zo51a0wGbCjz24MsIg
提取码:iots
===== 2021-07-08 更新 ======
阿里云盘链接: https://www.aliyundrive.com/s/veSwnbK6egv
通过这个链接注册可以多领取500G容量: https://pages.aliyundrive.com/mobile-page/web/beinvited.html?code=f8fd344
硬件平台
Alliot 这里是用的不到300块捡一台4盘位NAS——蜗牛星际上车记 这台蜗牛星际 D 版。1
2
3
4CPU: Intel Celeron J1900
内存: 威刚 DDR3L 4G 1666
引导盘: 金士顿 4G USB2.0
原装 mSATA 盘已舍弃,至于为什么后面会说到
前言
Alliot 这里没有采用大多数人选择的二合一引导方法,而是用的古老的 U 盘引导大法,理由很简单:白群晖实际上也是采用类似的机制,主板上有块闪存单独存放引导文件,而 DSM 系统则在每块硬盘上的第一个分区。
这里谈谈很多人推崇的二合一引导(蜗牛星际最多,安装在自带的 mSATA 盘中),优点有:方便,不用在数据盘上丢系统分区;系统不在数据盘上,方便硬盘休眠。 缺点也很明显,系统与引导均在一块盘上,这块盘坏了,套件与系统配置等均会丢失,而做单独引导盘,系统会存在于每块数据盘,引导盘坏了,重刷一遍引导依照提示迁移几分钟便能正常使用。
蜗牛星际还有个原因就是,引导放在 mSATA 中会出现所有硬盘 S.M.A.R.T 信息无法正常显示的情况。这对于 NAS 来说是很危险的,群晖可以根据 S.M.A.R.T 来提示磁盘预损毁,没有 S.M.A.R.T 信息,也许有一天你会发现硬盘毫无征兆的就损毁了,无法抢救数据。
虽然网上有更改引导来修复 S.M.A.R.T 的方法,但是这里最优解还是 U 盘,不多赘述。
本文需要用到的工具有:1
2
3
4
5
6
7
8DiskImg.exe: 将 IMG 引导写入引导盘所用工具
synoboot.img: ds918+ 引导
DSM.xxxx.pat: 群晖系统镜像
osfmount.exe: img挂载工具
ChipGenius: U 盘 PID、VID 获取工具
Xshell: ssh 远程连接工具
读取 VID、PID
将准备好的引导 U 盘插入电脑,打开 ChipGenius 工具,选择你的 U 盘,记录显示的 VID、PID 信息洗白备用,一般为如下格式(mSATA 没有这些信息,可以跳过):1
USB设备ID: VID = 0CF3 PID = E500
引导修改
安装前面下载的 osfmount.exe
,选择 “Mount new”:
选择前面下载的引导 synoboot.img
,选择第一个分区挂载:
记得取消 read-only 的勾选(否则无法修改):
挂载完成后,可在“我的电脑”中发现新的本地磁盘分区,进入该分区的 grub 目录,使用 notepad++ 或记事本修改 grub.cfg 文件:
约 22 行处将图示区域修改为前面获得的 U 盘的 VID、PID,保存退出:
取消挂载:
引导写入
打开 DiskImg 工具,驱动器选择 U 盘,镜像则选择刚才修改过的 synoboot.img
写入,完成后记得安全移除 U 盘。
注: 写入过程中如果出现报错,很可能是由于你系统上有其他应用占用,可以换其他电脑试试或在虚拟机中完成。
BIOS 设置
本文以蜗牛星际为例,其他主板请网上查怎样进入 BIOS 以及开启 WOL。插入制作好的引导 U 盘,连接网线、鼠标键盘显示器,上电,不停按 DEL 进入 BIOS,在 Advanced
页进入 ACPI Settings
(推荐先 F3 将 BIOS 恢复为默认配置后再进行设置 ),将 Resume By Onboard LAN
设置为 enable
,为之后的局域网唤醒( WOL)做准备,同时在 Boot
页将引导 U 盘移动到第一项,将 UEFI
引导改为 Legacy
(有朋友做好引导后开机发现无法正常引导,多半是因为这个选项没有设置)。F4(部分 BIOS 不同,根据 BIOS 上提示)保存配置并重启。
安装 DSM
继上一步重启后(请保证机器中除引导外至少有一块硬盘),显示界面(图片看不清可以右键在新标签页打开图片) 如下:
选择第一项回车,即可进入下一界面:
等待两至三分钟后,使用局域网内的电脑访问: http://find.synology.com 搜索局域网内的 DiskStation(如果找不到,可以尝试使用 群晖助手,或通过路由器管理界面的 DHCP 列表得到群晖的 IP。
在浏览器中打开前面得到的 IP,开始安装 DSM:
开始设置,选择“手动安装 pat”,路径选择文章开头下载的 pat 文件:
安装初始化:
创建 DSM 管理员用户:
设置更新检查频率,黑群晖更新系统很有可能无法引导,这里选择“手动通知计划”
未全洗白无法注册 QC,使用官方的内网穿透服务,所以这里我们选择跳过注册:
至此,DSM 安装完成。
存储空间配置
新建存储池
现在我们还无法直接使用我们的硬盘,我们需要将用来存储数据的硬盘初始化,点击右上角(类似开始菜单),选择“存储空间管理员” :
在“存储池”中选择“新增”:
按照自己的需求选择,有一块盘分多个存储空间的请选择第二项,否则选择第一项:
选择 RAID 类别(关于 RAID 级别,可以看之前的文章浅谈raid,群晖的软 RAID 并不推荐,很多人喜欢 RAID 5,其实大容量下 RAID 5 并不能保证数据的安全具体可以查看相关资料),关于数据的存储安全,后面会有文章继续讲到 Alliot 自己的备份做法,这里推荐 Basic:
选择我们的数据硬盘:
之后硬盘会进入初始化的状态(硬盘中原有的数据会被擦除!)
新建存储空间
创建了存储池后,我们这时候并不能直接往里面写东西,还需要创建存储空间(这有点类似(当然,只是类似) Linux 的 LVM,初始化磁盘相当于新建 PV,新建存储池相当于新建 VG,而要挂载空间用来使用则还需要在 VG 中新建 LV 也就是类似这里的新建存储空间)
选择存储空间模式,这里我们选择自定义(因为前面已经创建了存储池):
选择我们先前创建的存储池后,下一步,直到选择文件系统,我们选择 Btrfs(群晖自己文件系统格式,在群晖系统中支持更多的功能),下一步直到应用,等待存储空间初始化完成即可。
至此,存储空间配置完成。
洗白与局域网唤醒
群晖有三种状态,未洗白、半洗白与全洗白,区别如下:1
2
3
4
5
Alliot 这里选择了半洗白,利用群晖 VMM 安装的 Virtual DSM 的许可证来获得正确的 SN 号,写入引导中完成半洗白。 目前算号器基本绝迹失效了,想要全洗白可直接去网上购买配套的 SN、MAC 地址,不推荐白嫖群晖官方的 QC 服务,很容易翻车,下文介绍半洗白的方法。
安装 VMM
打开 DSM 桌面的“套件中心”,安装 “Virtual Machine Manager”:
按照提示下一步直到安装完成:
新建 VDSM 映像
安装完成后,新建 VDSM 的映像:
选择“下载 Virtual DSM 映像”:
如果连接失败,可以下载离线包:
从计算机选择刚才下载的离线包:
按照提示继续,并应用:
创建虚拟机
如下图,按照指引创建虚拟机,选择免费的许可:
记录 SN
启动并连接 VDSM 虚拟机后,打开虚拟机内的 DSM 控制面板,点击“信息中心”,记录序列号备用:
之后,可以关闭并删除该 VDSM 虚拟机,我们要的仅仅是这个 SN 号,将这个 SN 填入到先前我们修改 VID、PID 的 grub.cfg
的 SN 字段即可完成半洗白。下面是直接用 ssh
来修改 grub.cfg
的方法:
开启 ssh
回到群晖的“控制面板”,打开 ssh
功能:
ssh 连接并获得 root 权限
使用 Xshell 或 putty 等终端连接工具连接,此处以 Xshell 为例(安装包均在文章开头的链接里):
新建连接:
填入群晖的 IP:
填入管理员用户名密码:
连接后,使用 sudo -i
并输入管理员密码以获得 root 权限:
挂载引导分区
使用如下命令挂载引导分区到 /tmpboot 目录:1
2
3
4
5
6
7
8
9
10创建挂载点,这里不推荐其他文章的将挂载点丢到 /tmp 下,可能导致以后 boot 无法挂载上
cd / && mkdir /tmpboot
进入 /dev 目录
cd /dev
挂载 boot 分区到 /tmpboot 目录,这里切记: synoboot1 不能使用绝对路径,否则会提示超级块错误,无法挂载
mount -t vfat synoboot1 /tmpboot
cd /tmpboot/grub
这里如果出现如下报错:1
2
3
4
5mount: wrong fs type, bad option, bad superblock on synoboot1,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so.
暂时没有解决方法,只能使用前面的方法重新制作引导 U 盘,将我们得到的 SN 与群晖的实际 MAC 地址在更改 VID、PID 的步骤中一并更新上去(重新制作引导不会导致系统重装,这也是使用 U 盘引导的一个好处,开机时按照步骤迁移即可,不会对系统产生任何影响),如果没有如上报错请继续下一步骤。
修改grub.cfg
使用 vi grub.cfg
编辑 grub.cfg
找到如下内容:1
2set sn=1780PDN123456
set mac1=001132123456
按 i 进入编辑模式,将 sn 字段后的部分改为前面我们获取到的 SN,顺便将 mac1 字段后的部分改为路由器中看到的群晖的 MAC 地址以便后面做局域网唤醒(WOL)。
之后按 ESC,切换为大写,输入 ZZ,即可保存。
重启系统,进入控制面板,搜索 WOL
,勾选 启用局域网唤醒
,至此,半洗白与局域网唤醒设置完成。关于局域网唤醒,可以将群晖关机,使用群晖助手中的唤醒或路由器后台中的唤醒来测试。
结语
至此,我们已经完成了黑群晖的安装、半洗白与局域网唤醒的设置,本文提供的引导是目前 Alliot 正在使用的,蜗牛星际 D 版完美适配,一年了没有出现什么问题,如果是其他硬件平台,可以去找相应相应的引导尝试更换,这里就不多赘述。