嘿,我是站长GG!
排行榜 统计
  • 建站日期:2020-12-12
  • 文章总数:129 篇
  • 评论总数:0 条
  • 分类总数:13 个
  • 最后更新:昨天 16:29
原创群晖

RedPill黑群晖DSM7.0引导beta版编译过程 10.5更新

本文阅读 3 分钟
首页 群晖 正文
广告

XPEnology论坛RedPill制作的开源项目,目前还是测试版,bug超级多。。。

以下内容仅供参考。。。

项目地址

介绍:https://xpenology.com/forum/topic/45795-redpill-the-new-loader-for-624-discussion/
源码:https://github.com/RedPill-TTG/redpill-lkm

555625216.png

2872589568.png

编译参考

使用haydibe制作的脚本来简单编译,目前最新是:2021.9.22更新0.10,默认不支持7.0.1(因为非RedPill)

点击下载redpill-tool-chain_x86_64_v0.10.zip
编译系统用ubuntu就行了,18.04及以上吧,全程开梯子。。。

1、安装docker

curl -sSL https://get.docker.com/ | sh

2、WinSCP上传 redpill-tool-chain_x86_64_v0.10.zip 到root目录(目录随意)

unzip redpill-tool-chain_x86_64_v0.10.zip
chmod 755 redpill_tool_chain.sh
chmod 755 docker/entrypoint.sh

3、配置引导参数

这一步不是必须的,步骤4直接无脑编译后,修改生成img文件里的grub.cfg也可以。

编辑文件:apollolake_user_config.json 基本内容:编辑好上传到root目录内。

{
  "extra_cmdline": {
    "vid": "0x0781",
    "pid": "0x5591",
    "sn": "2010PDN860100",
    "mac1": "001132C5B34F",
    "mac2": "001132C5B350",
    "netif_num": "2"
  },
  "synoinfo": {},
  "ramdisk_copy": {}
}

参数说明:

vid、pid:U盘的序号,使用ChipGenius可以查到,改成自己的

netif_num:网卡的数量,对应要编辑好mac1、mac2等等

sn、mac:自己找洗白码。。。

4、开始编译


支持编译的版本:bromolow是DS3615xs,apollolake是DS918+
bromolow-6.2.4-25556
bromolow-7.0-41222
apollolake-6.2.4-25556
apollolake-7.0-41890

举例DS918+的DSM7.0.1,一步步的执行,需要下载资源很慢很慢
./redpill_tool_chain.sh build apollolake-7.0-41890
./redpill_tool_chain.sh auto apollolake-7.0-41890

生成的文件位于images目录内,例如redpill-DS918+_7.0-41890_b1629881651.img

1978505812.png

5、安装系统

U盘使用rufus写入img文件,插入机器引导,选择传统引导,暂不支持UEFI

DS918+的DSM7.0系统安装包:点击下载DSM_DS918+_41890.pat

过程略,不一定都能安装成功。。。

6、一些修复

修复 控制面板-信息中心 空白(个别机子有这问题)

sed -i 's/supportsystemperature="yes"/supportsystemperature="no"/g' /etc.defaults/synoinfo.conf
sed -i 's/supportsystempwarning="yes"/supportsystempwarning="no"/g' /etc.defaults/synoinfo.conf

信息中心空白也可以编译时修复,apollolake_user_config.json中增加

"synoinfo": {
    "supportsystemperature": "no",
    "supportsystempwarning": "no"
  },

修复scemd日志报错,可以休眠

sed -i 's/\/var\/log\/scemd.log/\/tmp\/scemd.log/g' /etc.defaults/syslog-ng/patterndb.d/scemd.conf
sed -i 's/\/var\/log\/postgresql.log/\/tmp\/postgresql.log/g' /etc.defaults/syslog-ng/patterndb.d/postgresql.conf

一键开启root修改密码,群晖系统通用

#最后IMNKS.COM是密码,自行修改下
chmod 755 /etc/ssh/sshd_config && sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/g' /etc/ssh/sshd_config && synouser --setpw root IMNKS.COM

7、如何修改启动参数

Diskgenius专业版打开,导出修改就行。。。

2600263616.png

8、增加UEFI启动方法

补丁下载地址:uefi-fix-dsm7.zip 提取码:miji

使用Diskgenius添加文件到引导第一分区的目录即可,测试完美

668373845.png

grub.cfg文件中 insmod vga 后 增加:

# UEFI
insmod efi_gop
insmod efi_uga

insmod font
if loadfont ${prefix}/unicode.pf2
then
    insmod gfxterm
    set gfxmode=auto
    set gfxpayload=keep
    terminal_output gfxterm
fi

9、编译后的引导添加驱动

img引导文件第一分区提取rd.gz文件,解包

mkdir rd
cd rd
cat ../rd.gz | cpio -idm

编译好的驱动例如abc.ko放到/usr/lib/modules目录内
编辑linuxrc.syno.impl,284行添加:insmod /lib/modules/abc.ko
重新打包为rd.gz.new,重命名为rd.gz替换img内文件即可

find | cpio -o -H newc > ../rd.gz.new

10、编译过程增加驱动和配置文件

redpill_tool_chain.sh:增加如下两行

72行:

--volume ${REDPILL_LOAD_CUSTOM}:/opt/redpill-load/custom \

122行:

REDPILL_LOAD_CUSTOM=${PWD}/custom

提前把需要集成的驱动.ko文件+驱动配置.conf文件放入custom目录内

举例r8125驱动,apollolake_user_config.json,编译过程会自动加载集成到rd.gz

"ramdisk_copy": {
    "r8125.ko": "lib/modules/",
    "70-network-0001-realtek-r8125-driver.conf": "lib/modules-load.d/"
}

但是。。启动加载好像还是要编辑rd.gz中的linuxrc.syno.impl,159行增加

DISK_MODULES=`cat /lib/modules-load.d/??-disk-????-*.conf | xargs`
SYNOLoadModules $DISK_MODULES

11、增加SATA引导选项

menuentry 'RedPill DS918+ v7.0-41890 (SATA, Verbose)' {
    savedefault
    set root=(hd0,msdos1)
    echo Loading Linux...
    linux /zImage HddHotplug=0 withefi console=ttyS0,115200n8 synoboot_satadom=2 netif_num=2 syno_hdd_detect=0 syno_port_thaw=1 vender_format_version=2 mac2=001132C5B350 earlyprintk mac1=001132C5B34F syno_hdd_powerup_seq=1 pid=0x5591 log_buf_len=32M syno_hw_version=DS918+ vid=0x0781 earlycon=uart8250,io,0x3f8,115200n8 sn=2010PDN860100 elevator=elevator root=/dev/md0 loglevel=15 
    echo Loading initramfs...
    initrd /rd.gz
    echo Starting kernel with SATA boot
    echo WARNING: SATA boot support on this platform is experimental!
}

12、第三方驱动

DS918+:https://github.com/pocopico/4.4.180plus-modules

DS3615xs:https://github.com/pocopico/3.10.108-modules

您的大名:
万水千山总是情,给个打赏行不行。 打赏
原创文章,作者:656020080,本文章内容未经书面许可禁止一切形式的转载:https://imnks.com/3448.html
群晖新套件:Homebox 家庭网络测速 支持DSM6、7
« 上一篇 09-26
群晖新套件:可道云KodBox高级版 可挂载百度云 支持DSM6、7
下一篇 » 10-06
广告
人生是一场孤独的旅行

作者信息

广告

热门文章

最多点赞

77赞, 阅读:2.7w
65赞, 阅读:4.9w
55赞, 阅读:3.9w
33赞, 阅读:2.2w
广告

标签TAG