vlambda博客
学习文章列表

用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导

原文链接

https://www.openos.org/threads/7-1-0-42661dsm7tinycore-redpill.4050/

去年群晖发布了DSM 7.0后一直在观望,到了今年初,好多网友都升级了DSM 7.01。作为不折腾不舒服司机,肯定是想折腾升级的。但是非常无奈的是一直没有成功。最先是下载了大神们发布的引导,没有成功。后来发现应该是网卡驱动没有载入,又学着自编译并打包网卡驱动进引导,依然找不到ip。再后来试着用github的全自动脚本编译,也是找不不到ip。最后pocopico发布的Tinycore-redpill实现编译DSM7引导的自动化,也试了,还是找不到IP。本来考虑是更换主板的,(咸鱼有远程安装的,感觉不靠谱),结果最近出了大神的修改版的Tinycore-redpill,本着死马当活马医来试试,结果成功了。非常开心,写个文记录下,也结合下自己的理解和经验。       先去llm1978的帖子,下载需要的编译软件。     用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导插入U盘,将tinycore-redpill.v0.4.6.remix.by.llm1978.220319.rar解压所得img文件写入。ps:大神现在出了DSM 7.1-42661的镜像,有兴趣的可以尝试下。 用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导写入完成后,把U盘拔下插到NAS上。   用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导nas开机后界面如下,按图示打开终端

ifconfig

用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导使用winscp连接到nas  用户名:tc 密码:P@ssw0rd    (注意大小写和特殊符号)    用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导可以直接用命令下的在PUTTY中打开来进入PUTTY。开始正式编译。  用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导

sudo ./rploader.sh serialgen DS918+ now
sudo ./rploader.sh serialgen DS3615xs now

这里设置nas机型,推荐选择918和3615两种中的一种

sudo ./rploader.sh satamap now

这个命令是根据机器的硬件自动生成磁盘参数。这个是个非常重要的参数,我也是这次编译成功后才明白的。原来我编译不能找到IP,并不是网卡驱动问题,而是这个参数出了问题。等会再详细解释。用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导生成U盘vid,pid信息

sudo ./rploader.sh identifyusb now

这个命令是自动识别U盘,并生成VID PID参数。

用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导

然后我们要去下载工具包里打开DSM7.0.1引导磁盘参数生成工具(SataPortMap、DiskIdxMap).by.llm1978.xlsx这个文件,生成正确的StatPoreMap和DiskIdxMap 我机器的主板是华擎B85M-ITX,有4个SATA接口,另外插了一个pci转SATA的扩展卡,所以黄色那里,我填的1#是4个硬盘 2#是2个硬盘。下面是引用大神的原文。

“Tinycore-redpill中 satamap 命令逻辑有点问题,它生成的是磁盘芯片最多能连接的硬盘数量,这样生成的引导配置会跟群晖引导时实际检测的硬盘数量有出入而无法引导。可能大部分编译成功但不能引导、找不到Nas的IP就是这个原因,这也可能是有人反映把所有sata口都接满硬盘就能引导成功的原因,而且现在有的主板节省成本,有些sata口硬件就没焊接,没办法把所有sata口都接满硬盘,这时就需要自行配置SataPortMap、DiskIdxMap这两个参数。


磁盘参数生成工具使用:在表格第六行(标黄)选择实际连接的硬盘数量,表格会自动计算SataPortMap、DiskIdxMap的参数,计算好后修改user_config.json即可。”      用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导 找到这个目录,引导文件的设置修改是在这里的。 /home/tc/    用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导 修改user_config.json中的SataPortMap、DiskIdxMap为上面工具生成的42 0004

用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导配置完成后,正式开始编译,根据机器和网络速度,耗时可能会比较长,耐心等待即可。

编译918的代码为

sudo ./rploader.sh build apollolake-7.0.1-42218

编译3615的代码为

sudo ./rploader.sh build bromolow-7.0.1-42218

注意:务必和最开始你生成序列号的机型保持一致。     用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导编译成功!切换到winscp去下载生成的pat文件,等会儿安装的时候用这个pat而不是用官方的pat   用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导把引导也下载备份下      用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导最后回到putty,正式存盘,一定要存盘!一定要存盘!一定要存盘!

到这里引导文件已经编译完成了,不出意外的话,是可以使用的。目前支持的网卡驱动如下

https://github.com/pocopico/rp-ext       用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导最后重启nas,准备开始安装了。

sudo reboot

用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导这次很顺利,大概1分钟就找到主机了,显示可转移。   用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导保留系统配置安装

用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导

用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导选择之前下载的那个pat镜像安装。

用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导齐活,这次的编译加安装就完成了,目前7.0.1用起来没有太多bug,cpu真实显示和人脸识别也都可以用补丁解决。

用DSM7引导编译器Tinycore-redpill修改版,编译适合自己主机的引导实测,4代U也可以开启人脸识别。完美。

今天本来冲动了,准备升7.1的,看了看bug挺多的,算了,还是7.0.1吧,目前的状态很满意。今天的分享到此结束了。