本帖最后由 donxu 于 2021-10-25 12:53 编辑
2021年10月25日更新:xpenology论坛的haydibe的大佬更新了redpill-tool-chain工具到v0.12版本,并更名为redpill-helper,已经放在本帖附件中,不需要修改或替换,可以直接编译2021年10月21日更新的群晖42218版本。使用方法基本一直,只不过因为更名为redpill-helper,因此原命令 ./redpill_tool_chain.sh build ./redpill_tool_chain.sh auto变为了 ./rp-helper.sh build ./rp-helper.sh auto,清理缓存的命令变为了./rp-helper.sh clean all 。添加驱动的命令也有些变化,现在添加驱动的命令需要加入引导的版本,如DS3615XS的,添加驱动的命令变为:./rp-helper.sh ext bromolow-7.0.1-42218 add <extension_url> 如DS918的,添加驱动的命令变为:./rp-helper.sh ext apollolake-7.0.1-42218 add <extension_url> (<extension_url>即驱动库的link地址,驱动库:https://github.com/pocopico/rp-ext 这里面就是pocopico大佬编译的驱动)
此外,为简化集成的便利性,我将目前驱动库的配置文件打包,在下面的百度盘链接中,即custom文件夹,包括了目前驱动库的全部驱动文件,使用方法为将解压缩custom的文件夹,替换redpill-helper下的custom文件夹,然后到custom下的extensions文件里,把不需要的驱动全部删除,只保留需要集成的驱动,再进行第二步的生成引导文件的编译,即./redpill_tool_chain.sh auto
custom文件链接:
2021年10月24日更新:可以继续编译了,使用附件2的global_config.json替换,采用了最新的bsp补丁,可以编译最新版本的42218。
2021年10月22日补充更新:先暂停编译吧,虽然可以编译成功,但编译后的引导有问题,等最新的BSP补丁吧。如果之前编译过,cache文件夹下是旧版的42218的pat,可继续编辑(不要替换附件2的global_config.json)。
2021年10月22日更新:因群晖在2021年10月21日更新了DSM7.0.1-42218的pat文件,因此两个42218的pat文件的SHA256校验码会不一致。原成功编译过42218引导的,redpill-tool文件夹下面cache文件夹下的pat文件因为是旧版,所以仍然可以使用继续编译引导;但对于在2021年10月21日之后完全重头开始编译的或cache文件夹下无pat文件的,请用附件2的global-config.json文件替换原global-config.json,将使用我的已经修改过的github分支进行编译,之前已经编译过42218引导的也可以删除cache文件夹的pat文件,再使用附件2的global-config文件重新编译最新的引导。另外:目前已经正常使用的42218引导,无需更新,这几天,xpenology论坛的大佬们,正在向syno要求公开42218的源码,现在的引导都是基于6.2.4的源码编译的,如果使用了42218的源码来编译引导,可能会解决目前的一些莫名其妙的问题,耐心等待吧。
有定制需求并希望测试集成驱动的坛友,请跟帖,并列出需要集成的驱动(需要在https://github.com/pocopico/rp-ext 中已经有的驱动) 和所需引导的设备(DS918+或DS3615XS)。
定制驱动:1.应310#要求,定制如下驱动:HPSA,ixgbe,ixgbevf,mptsas,mpt2sas,mpt3sas, vmxnet3,tg3 编译时间:2021年10月17日
2.应337#要求,定制如下驱动:ixgbe,mpt3sas, 编译时间:2021年10月17日
3.应386#要求,定制DS3615引导,定制驱动:ixgbe, ixgbevf, aacraid,编译时间:2021年10月19日
4.应404#要求,定制DS918引导,定制驱动:AQC107,Rtl8125,编译时间:2021年10月20日
5.定制DS918+ 驱动:VMXNET3+LSI2008,编译时间:2021年10月25日
6.定制DS918+ 驱动:8152网卡,编译时间:2021年10月24日
7.定制DS918+ 驱动:8125网卡,编译时间:2021年10月24日
8.定制DS918+ 驱动:Intel万兆+LSI2308,编译时间:2021年10月24日
9.定制DS918+ 驱动:Intel万兆+LSI3008,编译时间:2021年10月24日
10.定制DS918+ 驱动:Intel千兆(82583),编译时间:2021年10月24日
2021年10月19日更新:pocopico大佬发布的驱动,在调整驱动编译参数后,体积大幅度减小,128M的引导文件足以容纳15+以上的额外驱动,因此想自行编译集成引导的坛友,只需要使用附件1的配置文件即可,不需要使用附件2的global_config.json来编译256M的引导文件。感谢@IT520 编译的集成驱动大全的引导:http://www.gebi1.com/thread-300322-1-1.html ,但还是需要坛友多多进行测试。目前我还是对大全版的驱动持谨慎乐观的态度,因为目前的驱动注入的方式,我还是担心过多注入非本机硬件驱动,是否会造成其他的错误。因此,希望坛友在使用大全版的引导后,或者本帖的定制引导后,能够反馈一下测试的情况。
2021年10月16日更新:今天对引导文件的模板进行了修改,编译完成后生成的引导文件将为256M,其中第一分区为177M(完全足够用了),第二分区为75M(第二分区大小和原128M引导相同)。 使用方法,用附件的 global_config.json替换压缩包的同名文件。编译完的文件默认包含EFI引导。下面重要的事情说下:1.不要添加不相干的驱动,你有什么硬件就定制什么驱动,没有的硬件不要集成驱动到引导文件。2.不要想着做高大全的版本!
2021年10月15日更新: 虽然10月12日的更新关于如何集成网卡和阵列卡驱动的方法进行了说明,但一个现实的问题是目前redpill-load的生成的引导img,默认设置比较保守,因此在生成的img引导的第一分区给定制驱动预留的空间太少,一个万兆网卡驱动集成后,就基本没有剩余空间了。鉴于此情况,我在github上建了一个小分支做下测试。
感谢redpill项目组以及xpenology论坛的多位大佬,使得redpill引导群晖的项目越来越完善,使大家用上目前较为稳定的引导程序。为此,根据redpill项目的更新,我也会将编译的引导分享一下,方便大家使用,详见:http://www.gebi1.com/thread-299986-1-1.html ,该引导只是一个标准版的引导,适合大部分的常规硬件使用。对于包括一些特殊的硬件,例如万兆网卡,LSI阵列卡,部分千兆网卡或USB设备,在之前的标准版里面未集成,虽然部分网卡先期通过修改rd.gz来进行insmod加载(http://www.gebi1.com/thread-299988-1-2.html),但毕竟不是随引导一起编译总会出现各种问题,即使无问题每次升级引导都进行手动修改也增加了工作量。因此,对于使用这些特殊硬件的用户,建议自行定制引导。随着redpill项目的逐渐完善,也推出了官方的集成驱动的方法,定制集成适合自己硬件的redpill引导变得越发简单。再次感谢redpill项目组提供的引导核心,感谢xpenology论坛的haydibe大佬发布的redpill-tool-chain编译工具,感谢xpenology论坛的pocopico大佬发布的驱动。 一、 准备工作:
1.linux环境,建议使用虚拟机安装ubuntu,虚拟机的优点就是随意你怎么折腾;
2.redpill-tool-chain,此为redpill引导的编译工具,本帖附件提供的是0.11版本,后续有更新也会在本帖中提供。此提供的redpill引导工具,其中global_config,json,已经进行了修改,对于定制的驱动,不需要进行额外的修改。
本帖隐藏的内容
二、具体步骤:
1.进入ubutnu的虚拟机,打开终端,输入sudo -i,输入密码,获取root权限;
2.如果是全新安装的ubuntu虚拟机,我们需要准备安装docker等依赖程序,依次输入以下命令(如果已经安装过相应的依赖,请跳过此步骤)
(1)apt-get update
(2)apt install docker.io
(3)apt install jq
(4)apt install curl
3.将下载的附件的redpill-tool-chain解压缩后(为一个名为redpill-tool的文件夹),复制到主目录下。redpill-tool文件夹下,包括这么几个文件,其中apollolake_user_config.json为918+的定制信息,bromolow_user_config.json为3615XS的定制信息,可以在此修改vid pid sn mac等信息,也可以在引导编译完成后修改引导img文件的grub.cfg。
![图片[4]就去ID网2021年10月25日更新-定制redpill引导(集成网卡和阵列卡….. – 黑白群晖 – 隔壁网就去ID网97ID网](https://v4.97id.com/wp-content/uploads/2022/02/a3abe0710625b7b3b42e6b6aa2f39aff.php)
![图片[5]就去ID网2021年10月25日更新-定制redpill引导(集成网卡和阵列卡….. – 黑白群晖 – 隔壁网就去ID网97ID网](https://v4.97id.com/wp-content/uploads/2022/02/706a72f7c8f146e883de8e4dfcf54ea6.php)
![图片[6]就去ID网2021年10月25日更新-定制redpill引导(集成网卡和阵列卡….. – 黑白群晖 – 隔壁网就去ID网97ID网](https://v4.97id.com/wp-content/uploads/2022/02/dcfd1df0586be413a74f175b4533e0b0.php)
4.回到终端,输入cd /home/用户名/redpill-tool 这里的用户名为你安装ubuntu的用户名,请自行修改。输入后进入redpill-tool文件夹
5.输入命令 chmod u+x *.sh 此为赋予redpill_tool_chian的执行权限
6.在编译引导之前,我们需要提前准备驱动程序,请访问:https://github.com/pocopico/rp-ext 这里面就是pocopico大佬提供的包括网卡、阵列卡等的驱动,而且都根据DSM的版本和群晖的型号进行了自动适配,极大简化了驱动的集成过程,在这个网页下,我们只需要做两件事,1.选择自己所需要的驱动(此处请注意,一定要去上面的驱动文件夹中,看驱动是否有对应的群晖型号和相应DSM版本的驱动,比如AQC107的驱动只有918+的而没有DS3615XS的驱动,详见下图,在此情况下,如果下载了此驱动来编译DS3615XS的引导会造成引导编译无法完成),2.复制驱动的链接即link,如我需要AQC107万兆网卡的驱动(Extension Name: “atlantic” Description : “Adds Marvell (Aquantia) Corporation(R) Network Driver Support”),复制后面的链接 https://raw.githubusercontent.co … ic/rpext-index.json
![图片[7]就去ID网2021年10月25日更新-定制redpill引导(集成网卡和阵列卡….. – 黑白群晖 – 隔壁网就去ID网97ID网](https://v4.97id.com/wp-content/uploads/2022/02/8e73a122c0c34b4003d3e0c750ff5a8d.php)
![图片[8]就去ID网2021年10月25日更新-定制redpill引导(集成网卡和阵列卡….. – 黑白群晖 – 隔壁网就去ID网97ID网](https://v4.97id.com/wp-content/uploads/2022/02/b49ff29c738bc1d7145468e86edc980b.php)
7.回到终端下,输入以下命令,集成上面的AQC107驱动 ./redpill_tool_chain.sh add https://raw.githubusercontent.co … ic/rpext-index.json
![图片[9]就去ID网2021年10月25日更新-定制redpill引导(集成网卡和阵列卡….. – 黑白群晖 – 隔壁网就去ID网97ID网](https://v4.97id.com/wp-content/uploads/2022/02/d1968c4ff210c5b919cb3e71610cd44c.php)
8.上图显示,已经安装完AQC驱动,其他驱动如果需要,请自行添加。请注意,非自己硬件的驱动,请不要随意添加,定制驱动过大有可能造成编译错误。
9.所需的驱动,都安装完毕后,可进行引导编译。
(1)对于918引导
先输入 ./redpill_tool_chain.sh build apollolake-7.0.1-42218
![图片[10]就去ID网2021年10月25日更新-定制redpill引导(集成网卡和阵列卡….. – 黑白群晖 – 隔壁网就去ID网97ID网](https://v4.97id.com/wp-content/uploads/2022/02/6c40365400fa1503c2cee3e48c4707da.php)
第一阶段完成后如上图,开始第二阶段生成img引导,输入 ./redpill_tool_chain.sh auto apollolake-7.0.1-42218
![图片[11]就去ID网2021年10月25日更新-定制redpill引导(集成网卡和阵列卡….. – 黑白群晖 – 隔壁网就去ID网97ID网](https://v4.97id.com/wp-content/uploads/2022/02/5c0c4fff2a3d24904d029d10bb139dab.php)
至此,已经完成引导编译,并集成了AQC的网卡驱动,生成的img引导,在主目录,redpill-tool文件夹中的images下
![图片[12]就去ID网2021年10月25日更新-定制redpill引导(集成网卡和阵列卡….. – 黑白群晖 – 隔壁网就去ID网97ID网](https://v4.97id.com/wp-content/uploads/2022/02/7161335cf6e3040beb85e6c39a4ed3fd.php)
如想查看是否已经集成了驱动,可以在提取img引导文件下的custom.gz文件,按照此贴http://www.gebi1.com/thread-299988-1-2.html的命令对custom.gz文件解压缩。
(2)对于DS3615XS
第一阶段输入 ./redpill_tool_chain.sh build bromolow-7.0.1-42218
第二阶段输入 ./redpill_tool_chain.sh auto bromolow-7.0.1-42218
(3)编译完成后,清理缓存请输入 ./redpill_tool_chain.sh clean all
|
请登录后查看评论内容