编译群晖DSM7.0引导小记

2021-08-14 11:01:39 118点赞 685收藏 149评论

群晖DSM7 发布已经有一段时间了,但之前我们常用的由@jun 开发的引导尚未提供支持,而@ThorGroup 团队则开发了一个全新的引导“RedPill”,支持引导DSM6.2.4和DSM7,并在github开源。XPEnology Community论坛的@haydibe 在RedPill的基础上进一步简化了编译步骤,使得小白如我也能顺利编译成功(虽然编译redpill-lkmredpill-load也不复杂:)。

编译群晖DSM7.0引导小记

如何编译?

0.准备Linux系统。(ps.我用的是Ubuntu 20.04.2 LTS)

1.安装Docker。

  • sudo apt-get update

  • sudo apt install docker.io

2.安装jq。

  • sudo apt install jq

3.下载redpill-tool-chain_x86_64_v0.5.1.zip并解压。

4.cd进入解压后的redpill-tool-chain_x86_64_v0.5.1文件夹

5.创建user_config.json,应至少包含以下内容

{

"extra_cmdline": {

"vid": "<fill me>",

"pid": "<fill me>",

"sn": "<fill me>",

"mac1": "<fill me>"
},

"synoinfo": {},

"ramdisk_copy": {}
}

6.编译引导镜像。

  • ./redpill_tool_chain.sh bulid <Platform-version>

  • ./redpill_tool_chain.sh run <Platform-version>

  • make build_all

目前支持的<platform-versions>:
---------------------
bromolow-6.2.4-25556
bromolow-7.0-41222
apollolake-6.2.4-25556
apollolake-7.0-41890

如果顺利的话,编译好的镜像在/images文件夹中,文件名为redpill-<Platform_Version>_b16288xxxxx.img

编译群晖DSM7.0引导小记


Q&A:

Q:目前该引导稳定吗?我可以用在主力机上面吗?

  • A:这是一个测试项目。

Q:如何确认Docker是否安装成功?

  • A:输入docker version命令。若出现Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.24/version: dial unix /var/run/docker.sock: connect: permission denied错误,通过sudo chmod 777 /var/run/docker.sock修复权限即可。

编译群晖DSM7.0引导小记

Q:目前该引导镜像支持引导什么版本的DSM?

  • A:DS918+(6.2.4-25556、7.0-41890)和DS3615xs(6.2.4-25556、7.0-41222)。

Q:下载redpill-tool-chain_x86_64_v0.5.1.zip时提示Error code: 2C171/1怎么办?

编译群晖DSM7.0引导小记

Q:user_config.json中的“synoinfo”、“ramdisk_copy”后的括号内容怎么填写?

编译群晖DSM7.0引导小记

Q:编译时,<Platform-version>该如何选择?

  • A:DS918+属apollolake平台,DS3615xs属于bromolow平台。例如编译DS918+ 7.0-41890的引导镜像,命令为:./redpill_tool_chain.sh bulid apollolake-7.0-41890

Q:编译镜像后接下来应该做什么?

  • A:当然是将镜像写入U盘啦,插腚、开机、选择启动U盘,安装DSM一条龙。

编译群晖DSM7.0引导小记

编译群晖DSM7.0引导小记

编译群晖DSM7.0引导小记

Q:可以安装在ESXi、PVE、unRaid等虚拟机上面吗?

  • A:请自行测试,我只在物理机上安装过。

感谢:

@ThorGroup

@haydibe

未经授权,不得转载
展开 收起

极空间私有云 Z4S 四核8G内存 4盘位 NAS家庭个人云网盘 网络存储服务器(无内置硬盘 )珍珠白

极空间私有云 Z4S 四核8G内存 4盘位 NAS家庭个人云网盘 网络存储服务器(无内置硬盘 )珍珠白

3799元起

极空间Z4S 旗舰版 四核4盘位 NAS网络存储服务器(配2块8T希捷酷狼硬盘)碳晶灰

极空间Z4S 旗舰版 四核4盘位 NAS网络存储服务器(配2块8T希捷酷狼硬盘)碳晶灰

7999元起

极空间Z2S-4G版四核2盘位NAS家庭个人云网盘 私有极空间 网络存储服务器雪山白色

极空间Z2S-4G版四核2盘位NAS家庭个人云网盘 私有极空间 网络存储服务器雪山白色

3199元起

极空间私有云 Z4S 四核8G内存 4盘位 NAS家庭个人云网盘 网络存储服务器(无内置硬盘)天青蓝

极空间私有云 Z4S 四核8G内存 4盘位 NAS家庭个人云网盘 网络存储服务器(无内置硬盘)天青蓝

3799元起

ASUS 华硕 AS6702T 双盘位NAS存储 黑色(Core2 Quad Q8300、4GB)

ASUS 华硕 AS6702T 双盘位NAS存储 黑色(Core2 Quad Q8300、4GB)

3799元起

ASUS 华硕 AS6702T 4盘位NAS存储 黑色(Core2 Quad Q8300、4GB)

ASUS 华硕 AS6702T 4盘位NAS存储 黑色(Core2 Quad Q8300、4GB)

4799元起

万由 U-NAS NS-810P 八盘位NAS主机 企业级网络私有家庭个人云存储服务器 双网口 黑色 内存4GB

万由 U-NAS NS-810P 八盘位NAS主机 企业级网络私有家庭个人云存储服务器 双网口 黑色 内存4GB

2750元起

HUAWEI 华为 AS6020 双盘位NAS存储

HUAWEI 华为 AS6020 双盘位NAS存储

2999元起

asustor爱速特 AS6706T 华硕nas网络存储服务器

asustor爱速特 AS6706T 华硕nas网络存储服务器

7880元起

铁威马(TerraMaster)T9-423 9盘位NAS 网络存储服务器

铁威马(TerraMaster)T9-423 9盘位NAS 网络存储服务器

暂无报价

Lenovo 联想 个人云X1s 4盘位 NAS存储(N5105、8GB)

Lenovo 联想 个人云X1s 4盘位 NAS存储(N5105、8GB)

2899元起

Lenovo 联想 个人云T2s 双盘位 NAS存储(RTD1619B、2GB)

Lenovo 联想 个人云T2s 双盘位 NAS存储(RTD1619B、2GB)

1279元起

Lenovo 联想 个人云A1s 单盘位 NAS存储(RTD1619B、2GB)

Lenovo 联想 个人云A1s 单盘位 NAS存储(RTD1619B、2GB)

1299元起

Lenovo 联想 个人云New T2 Pro 双盘位 NAS存储(N4120、4GB)

Lenovo 联想 个人云New T2 Pro 双盘位 NAS存储(N4120、4GB)

1499元起

asustor爱速特AS5202T 华硕子品牌云盘NAS存储网络存储器2.5G双网口家用私有云主机服务器硬盘盒

asustor爱速特AS5202T 华硕子品牌云盘NAS存储网络存储器2.5G双网口家用私有云主机服务器硬盘盒

1999元起

HIKVISION 海康威视 探索者 HS-AFS-S1H1 单盘位NAS存储 白色(Cortex-A7、1GB)

HIKVISION 海康威视 探索者 HS-AFS-S1H1 单盘位NAS存储 白色(Cortex-A7、1GB)

479元起
149评论

发表评论请 登录
  • 最新
  • 最热
  • 149楼

    看看吧,怎么样了

  • 148楼
    08-07 13:17

    我还在用5呢。只要还在稳定运行,我就不折腾了。

  • 147楼
    08-03 14:28

    先马克,后试验

  • 146楼
    07-28 06:05

    直接tinycore做个启动u盘,插上主机自动跑一遍就编译好了,该有的驱动都装好了

  • 145楼
    05-15 11:02

    DSM 6.2.3-25426
    目前暴风酷播云二期是这个系统,怎么能无损升级到7呢?

  • 144楼
    04-12 16:48

    请问有遇到过打包引导的时候提示:fail to unpack tar 吗?

  • 143楼
    03-21 15:47

    sata扩展卡驱动能编译进去吗?目前硬件安装后不识别

  • 142楼
    01-11 18:07
    1

    用了最新的42214版本装在华擎j3455主板上发现没法启用esata来直接用ntfs的硬盘了。就是/etc.defaults/synoinfo.conf里面改internal和esata的mapping重启后没有效果自动归默认了。你有这个问题么?
    准备再等一阵,不行就只好转回6.2去了

    2

    解决了,摸索了一天。。把下列代码放到任务里,用户选择root,开机执行,不过我这里提供的是usb改sata,你需要按照自己的需求改一下,前面是原始数据,后面是修改后的,注意's/和后面的'不要误删

    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc.defaults/synoinfo.conf
    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc.defaults/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc/synoinfo.conf

    4

    好消息是最新嗯42218版本已经一切正常了,用我这个方法

    花了点时间找到42218还是不行.只有后面usb方式可以使用这个开机任务这样.系统原装的是不能生效的.只能用命令行方式挂载吧1.ssh登录,fdisk -l查找你的ntfs硬盘分区,比如/dev/sdd1
    2.新建共享文件夹,比如/volume1/esata1
    3.在计划任务里新建开机任务,自定义脚本mount -t ntfs /dev/sdd1 /volume1/esata1/ 保存运行或重启

  • 141楼
    01-09 11:30
    1

    用了最新的42214版本装在华擎j3455主板上发现没法启用esata来直接用ntfs的硬盘了。就是/etc.defaults/synoinfo.conf里面改internal和esata的mapping重启后没有效果自动归默认了。你有这个问题么?
    准备再等一阵,不行就只好转回6.2去了

    2

    解决了,摸索了一天。。把下列代码放到任务里,用户选择root,开机执行,不过我这里提供的是usb改sata,你需要按照自己的需求改一下,前面是原始数据,后面是修改后的,注意's/和后面的'不要误删

    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc.defaults/synoinfo.conf
    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc.defaults/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc/synoinfo.conf

    4

    好消息是最新嗯42218版本已经一切正常了,用我这个方法

    有42218适用的redpill7的img分享下么?

  • 140楼
    2021-12-04

    3617xs_6.1可以无损升级到3615xs_7.0.1吗?

  • 139楼
    1

    用了最新的42214版本装在华擎j3455主板上发现没法启用esata来直接用ntfs的硬盘了。就是/etc.defaults/synoinfo.conf里面改internal和esata的mapping重启后没有效果自动归默认了。你有这个问题么?
    准备再等一阵,不行就只好转回6.2去了

    2

    解决了,摸索了一天。。把下列代码放到任务里,用户选择root,开机执行,不过我这里提供的是usb改sata,你需要按照自己的需求改一下,前面是原始数据,后面是修改后的,注意's/和后面的'不要误删

    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc.defaults/synoinfo.conf
    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc.defaults/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc/synoinfo.conf

    3

    你试过装盘成功使用了?

    好消息是最新嗯42218版本已经一切正常了,用我这个方法

  • 138楼
  • 137楼
    2021-11-01

    昨天pve升级到7.0然后群晖6.2.4一启动就失联,重装的话就想试试7.0,然后因为网络问题自己toolchain编译又慢又不能成功跑完,搜到你openos编译好的基本的那个7.0.1-42218重装成功,实测pve配置硬盘映射不能勾选cache策略为writeback,不然启动后也会失联,不过不像6.2.4失联得vnc都失效了,默认nocache则一切正常,7.0网卡可以选virtio,现在使用中,感谢

  • 136楼
    1

    用了最新的42214版本装在华擎j3455主板上发现没法启用esata来直接用ntfs的硬盘了。就是/etc.defaults/synoinfo.conf里面改internal和esata的mapping重启后没有效果自动归默认了。你有这个问题么?
    准备再等一阵,不行就只好转回6.2去了

    2

    解决了,摸索了一天。。把下列代码放到任务里,用户选择root,开机执行,不过我这里提供的是usb改sata,你需要按照自己的需求改一下,前面是原始数据,后面是修改后的,注意's/和后面的'不要误删

    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc.defaults/synoinfo.conf
    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc.defaults/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc/synoinfo.conf

    3

    请问您的引导是哪个版本?

  • 135楼
    2021-10-27
    1

    用了最新的42214版本装在华擎j3455主板上发现没法启用esata来直接用ntfs的硬盘了。就是/etc.defaults/synoinfo.conf里面改internal和esata的mapping重启后没有效果自动归默认了。你有这个问题么?
    准备再等一阵,不行就只好转回6.2去了

    2

    解决了,摸索了一天。。把下列代码放到任务里,用户选择root,开机执行,不过我这里提供的是usb改sata,你需要按照自己的需求改一下,前面是原始数据,后面是修改后的,注意's/和后面的'不要误删

    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc.defaults/synoinfo.conf
    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc.defaults/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc/synoinfo.conf

    请问您的引导是哪个版本?

  • 134楼
    1

    用了最新的42214版本装在华擎j3455主板上发现没法启用esata来直接用ntfs的硬盘了。就是/etc.defaults/synoinfo.conf里面改internal和esata的mapping重启后没有效果自动归默认了。你有这个问题么?
    准备再等一阵,不行就只好转回6.2去了

    2

    解决了,摸索了一天。。把下列代码放到任务里,用户选择root,开机执行,不过我这里提供的是usb改sata,你需要按照自己的需求改一下,前面是原始数据,后面是修改后的,注意's/和后面的'不要误删

    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc.defaults/synoinfo.conf
    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc.defaults/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc/synoinfo.conf

    3

    你试过装盘成功使用了?

    是的,不过呢,没办法新建空间和池,先找台机子插sata,把dsm装上后再用这个方法就可以了,dsm7的usb读不了smart,会提示警告,别管他就行

  • 133楼
    2021-10-14
    1

    用了最新的42214版本装在华擎j3455主板上发现没法启用esata来直接用ntfs的硬盘了。就是/etc.defaults/synoinfo.conf里面改internal和esata的mapping重启后没有效果自动归默认了。你有这个问题么?
    准备再等一阵,不行就只好转回6.2去了

    2

    解决了,摸索了一天。。把下列代码放到任务里,用户选择root,开机执行,不过我这里提供的是usb改sata,你需要按照自己的需求改一下,前面是原始数据,后面是修改后的,注意's/和后面的'不要误删

    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc.defaults/synoinfo.conf
    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc.defaults/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc/synoinfo.conf

    你试过装盘成功使用了?

  • 132楼
    2021-10-14
    1

    用了最新的42214版本装在华擎j3455主板上发现没法启用esata来直接用ntfs的硬盘了。就是/etc.defaults/synoinfo.conf里面改internal和esata的mapping重启后没有效果自动归默认了。你有这个问题么?
    准备再等一阵,不行就只好转回6.2去了

    2

    解决了,摸索了一天。。把下列代码放到任务里,用户选择root,开机执行,不过我这里提供的是usb改sata,你需要按照自己的需求改一下,前面是原始数据,后面是修改后的,注意's/和后面的'不要误删

    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc.defaults/synoinfo.conf
    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc.defaults/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc/synoinfo.conf

    这个方法是可以看到硬盘了,但显示硬盘型号少了一些字符且硬盘串码显示不了,还有在创建存储空间时系统提示该硬盘出错。

  • 131楼
    2021-10-11

    想请教一下,config里面的sn要怎么填?

  • 130楼
    1

    用了最新的42214版本装在华擎j3455主板上发现没法启用esata来直接用ntfs的硬盘了。就是/etc.defaults/synoinfo.conf里面改internal和esata的mapping重启后没有效果自动归默认了。你有这个问题么?
    准备再等一阵,不行就只好转回6.2去了

    9.28引导更新啦,请教下华擎j3455上918+以后还有其他问题吗,硬解有试过吗,usb传输和千兆内网能不能跑满 [惊喜]

  • 129楼
    1

    用了最新的42214版本装在华擎j3455主板上发现没法启用esata来直接用ntfs的硬盘了。就是/etc.defaults/synoinfo.conf里面改internal和esata的mapping重启后没有效果自动归默认了。你有这个问题么?
    准备再等一阵,不行就只好转回6.2去了

    解决了,摸索了一天。。把下列代码放到任务里,用户选择root,开机执行,不过我这里提供的是usb改sata,你需要按照自己的需求改一下,前面是原始数据,后面是修改后的,注意's/和后面的'不要误删

    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc.defaults/synoinfo.conf
    sed -i 's/internalportcfg="0xffff"/internalportcfg="0x3ffff"/g' /etc/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc.defaults/synoinfo.conf
    sed -i 's/usbportcfg="0x30000"/usbportcfg="0x0"/g' /etc/synoinfo.conf

  • 128楼
    1

    用了最新的42214版本装在华擎j3455主板上发现没法启用esata来直接用ntfs的硬盘了。就是/etc.defaults/synoinfo.conf里面改internal和esata的mapping重启后没有效果自动归默认了。你有这个问题么?
    准备再等一阵,不行就只好转回6.2去了

    同样问题。。机子只有一个sata,6.2.3用usb改sata用的好好的,7.0怎么改都不行

  • 127楼

    我直接root用户编译,报权限错误,
    Failed to attach /opt/redpill-load/images/redpill-DS918+_7.0-41890_b1631877474.img to a loop device (permissions problem?)
    咋回事

  • 126楼
    2021-09-16

    有3617的吗

  • 125楼
    2021-09-15

    有谁用这个引导在Unraid虚拟机里跑通了呢?

  • 124楼
    2021-09-12
    1

    用了最新的42214版本装在华擎j3455主板上发现没法启用esata来直接用ntfs的硬盘了。就是/etc.defaults/synoinfo.conf里面改internal和esata的mapping重启后没有效果自动归默认了。你有这个问题么?
    准备再等一阵,不行就只好转回6.2去了

    用ntfs实际速度有几mb啊?有换过驱动吗?

  • 123楼
    2021-09-09
    1

    Q&A.6 中,“build”错写成了“bulid”(Thux @kanshudj)。完整命令应为 ./redpill_tool_chain.sh build apollolake-7.0-41890 运行前应给“redpill_tool_chain.sh”添加x权限 sudo chmod +x redpill_tool_chain.sh

    经多次编译测试,安装过程中会出现类似.pat文件损毁、硬盘分区无法格式化,甚至找不到主机等问题。可以在安装失败后telnet到主机(账号root),cat /var/log/messages查看错误信息,可以反馈到论坛或到github提交Issues。

    有兴趣的值友可以尝试编译github上的redpill-lkm和redpill-load,昨天更新了对SATA的支持。redpill-tool-chain也更新到v0.5.2。

    2

    新版本0.5.2编译的时候用auto或者run命令都会出现一个docker报错哎

    9

    目前需要给内核打补丁,还不能像jun的引导那样简单替换extra.lzma文件添加驱动

    请教下怎么操作呢 改了rd.gz文件 或者lsmod 都不行

  • 122楼
    2021-09-09
    1

    用了最新的42214版本装在华擎j3455主板上发现没法启用esata来直接用ntfs的硬盘了。就是/etc.defaults/synoinfo.conf里面改internal和esata的mapping重启后没有效果自动归默认了。你有这个问题么?
    准备再等一阵,不行就只好转回6.2去了

    同样的问题

  • 121楼
    2021-09-09

    请教下,镜像怎么下载a?下载这个:dsm-research 吗?然后文件夹改名成 apollolake-7.0-41890 ,这样吗?我试了不行,第一次弄编译,请up主指点指点。

  • 120楼
    2021-09-09

    期待我的暴风早日用上7.0

评论举报

请选择举报理由

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

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
685
扫一下,分享更方便,购买更轻松