在PVE中安装群晖DSM系统

其实我一直对群晖的系统不太感冒,一方面它是闭源的,我无法得知它里面有多少未修复的漏洞以及后门;另一方面,即使硬件已经有了超高的溢价,群晖的套件也没有想象中那么好用,App总感觉就是半成品,系统与数据混在一起,这些因素决定了我注定不会是群晖的受众。但有钱能使鬼推磨,网心云发布了基于群晖的PCDN业务,并且看起来收益要优于Docker业务,于是,我也开始折腾起黑群晖了。

创建虚拟机

在PVE中创建一个标准的虚拟机,注意以下几点:

  1. 在第二步OS中,选择Do not use any media
  2. 在第4步Disks中,删除所有硬盘。
  3. 第5步CPU中,Type选择host
  4. 第6步Memory中,至少设置4GB内存。

安装引导

目前黑群晖主要是使用RedPill项目组开发的RPL(RedPill Loader),放在以前,我们可能需要手动编译,还得设置正确的VID、PID、MAC等。但得益于ARPL(Automated Redpill Loader)项目,现在只要在menuconfig中简单设置几个选项,就可以得到专用的Loader,并且能够兼容最新的DSM系统。

ARPL本质上就是一个使用Ramfs的Linux系统,它里面配置了编译RPL所需的最小软件集。当我们启动ARPL的镜像后,就可以通过终端或者Web配置编译RPL,并且它会自动将RPL写入分区,并支持后续启动工作。

因此,安装引导主要包括以下几个步骤:

  1. 下载ARPL镜像并解压,例如

    1
    2
    3
    wget https://github.com/fbelavenuto/arpl/releases/download/v1.1-beta2a/arpl-1.1-beta2a.img.zip

    unzip arpl-1.1-beta2a.img.zip
  2. 将ARPL以USB存储设备的方式挂载到虚拟机

    假设你的虚拟机编号是200,在第一行添加如下内容,注意file=后面需要使用ARPL镜像的绝对路径。

    假设我们将解压出的arpl.img放在/root/arpl.img,那么需要做如下配置

    1
    2
    3
    4
    5
    6
    mv arpl.img /root/

    vim /etc/pve/qemu-server/200.conf
    <<<
    args: -device 'qemu-xhci,addr=0x18' -drive 'id=synoboot,file=/root/arpl.img,if=none,format=raw' -device 'usb-storage,id=synoboot,drive=synoboot,bootindex=1'
    >>>

    假设我们要使用LVM分区,那么需要做如下配置

    1
    2
    3
    4
    5
    6
    7
    8
    # 创建一个新的LVM分区,假设你的VG是ssd,新的分区名为synoboot,新分区大小为1GiB
    lvcreate -L 1GB -n synoboot ssd
    dd if=./arpl.img of=/dev/ssd/synoboot

    vim /etc/pve/qemu-server/200.conf
    <<<
    args: -device 'qemu-xhci,addr=0x18' -drive 'id=synoboot,file=/dev/ssd/synoboot,if=none,format=raw' -device 'usb-storage,id=synoboot,drive=synoboot,bootindex=1'
    >>>
  3. 启动ARPL,配置相关选项,并启动系统

    在终端输入menu.sh启动配置界面。

    进入Choose a model选项,选择所需机型,通常选择DS918+

    直接选择最新版即可。

    选择Build,开始编译ARPL。

    选择Boot,启动引导程序。

安装系统

记录下终端上显示的IP,如192.168.0.2,接着在浏览器中输入

http://192.168.0.2:5000

即可进入DSM的安装界面。

参考

ARPL Github

纳思小星产品介绍(网心云NAS版)

NAS迅雷-群晖内测版下载地址和安装教程