level 6
nhb2318
楼主
最近,我研究了一段时间的刷机教程,我的平板是台电的X98Pro,原机自带win10和android5.1,自买入以后一直寻求着RemixOS的适配,因为感觉这个系统最适合平板用了。
后来,Remix OS PC发布了,我安装后没有触摸,没有WIFI,没有声音,不能旋转屏幕。
我继续等待……
等待中,我还尝试着在RemixOS的initrd.img中添加驱动,结果失败。
继续实践……
后来,相近机型X98Plus的RemixOS出来了,我试刷了一下,居然可以启动了,但启动后电量为0%,一拔电源就关机,WIFI能用,触摸能用,我很兴奋,终于找到相近的ROM了,之前我找过很多相近机型的Remix刷机包,均无法启动。
尝试修改……
我把PlusRemix中system.img解包打包,刷入无法开机,卡第一屏不动了,即使是不改变任何东西,单纯的解包打包,刷入后依然不行,我尝试了Linux环境和Windows环境下的各种解包打包工具,make_ext4fs,ROM助手,ROM定制大师,RMXtool等。结果是只要一动Remix的system.img就开不了机了。
再想想别的办法……
能不能把X98Plus的Remix定制包做成RemixPC的安装包,改原来fastboot刷入分区的方法为RemixPC的install安装的方法。
我比较了两种方法所使用的“包”:
台电X98Plus的Remix定制包里面包括:boot.img,system.img,recovery.img,cache.img,afu.bin,ifwi.bin,firmware.bin,gpt.bin,flash.json等,没有initrd.img
而Remix OS PC里包括:
kernel,initrd.img,ramdisk.img,system.img,install.img
两者不同处是:
安装方式不同,定制包刷机是利用fastboot工具,执行flash.json刷机代码,将各个文件直接刷到指定的分区;安装包安装是grub将内核参数Install=1传递给kernel执行install.img,把system.img和ramdisk.img释放到指定的分区,当然也可以不解压,直接把这4个img文件和kernel文件放到一个磁盘或者一个文件夹里,通过grub.cfg来引导和挂载img,从而启动remix系统。
包里文件不同是,定制包里的system.img是sparse ext4 image格式,不可以挂载,必须通过simg2img转化成标准的img,可挂载的那种;而安装包里的system.img是raw ext4 image格式,标准EXT4格式的,是可以挂载的那种。
在硬盘上形成的分区不同,定制包刷机后,我们发现硬盘被gpt.bin分区了许多小分区,1M~10G不等,windows的NTFS分区已经被排到了第15个分区了,有bootloader分区,有androidsystem分区,有data分区,还有cache分区等等;而安装包安装后,只有一个盘,硬盘格式可以是ntfs,也可以是fat32,还可以是ext4的,只需要一个硬盘,只要在EFI分区里把grub引导代码写好就OK了,它会自动detected系统分区,来启动系统。
还有一个关键的不同点是,定制包里没有initrd.img,而安装包里有这个initrd.img,我搜索了一下,网上大多都是解释这个文件作用的,太宏观了,没有一个人真真研究它里面的内容,它的原理。前几日,在贴吧里看到几位大神聊天,提到这个文件,说定制刷机包之所以没有initrd.img,是因为厂家把intrd.img和ramdisk.img,都合并到boot.img里了。
如果真是这样,那么有什么办法把boot.img拆分呢,目前以我的能力只能把boot.img拆分为kernel和ramdisk.img,并不能把initrd.img分离出来,以grub的方式来启动定制包。
请问大神,有没有什么办法?
我们的目的是以grub的方式来启动定制的remixOS,不以bootloader的方式启动。
2016年07月01日 08点07分
1
后来,Remix OS PC发布了,我安装后没有触摸,没有WIFI,没有声音,不能旋转屏幕。
我继续等待……
等待中,我还尝试着在RemixOS的initrd.img中添加驱动,结果失败。
继续实践……
后来,相近机型X98Plus的RemixOS出来了,我试刷了一下,居然可以启动了,但启动后电量为0%,一拔电源就关机,WIFI能用,触摸能用,我很兴奋,终于找到相近的ROM了,之前我找过很多相近机型的Remix刷机包,均无法启动。
尝试修改……
我把PlusRemix中system.img解包打包,刷入无法开机,卡第一屏不动了,即使是不改变任何东西,单纯的解包打包,刷入后依然不行,我尝试了Linux环境和Windows环境下的各种解包打包工具,make_ext4fs,ROM助手,ROM定制大师,RMXtool等。结果是只要一动Remix的system.img就开不了机了。
再想想别的办法……
能不能把X98Plus的Remix定制包做成RemixPC的安装包,改原来fastboot刷入分区的方法为RemixPC的install安装的方法。
我比较了两种方法所使用的“包”:
台电X98Plus的Remix定制包里面包括:boot.img,system.img,recovery.img,cache.img,afu.bin,ifwi.bin,firmware.bin,gpt.bin,flash.json等,没有initrd.img
而Remix OS PC里包括:
kernel,initrd.img,ramdisk.img,system.img,install.img
两者不同处是:
安装方式不同,定制包刷机是利用fastboot工具,执行flash.json刷机代码,将各个文件直接刷到指定的分区;安装包安装是grub将内核参数Install=1传递给kernel执行install.img,把system.img和ramdisk.img释放到指定的分区,当然也可以不解压,直接把这4个img文件和kernel文件放到一个磁盘或者一个文件夹里,通过grub.cfg来引导和挂载img,从而启动remix系统。
包里文件不同是,定制包里的system.img是sparse ext4 image格式,不可以挂载,必须通过simg2img转化成标准的img,可挂载的那种;而安装包里的system.img是raw ext4 image格式,标准EXT4格式的,是可以挂载的那种。
在硬盘上形成的分区不同,定制包刷机后,我们发现硬盘被gpt.bin分区了许多小分区,1M~10G不等,windows的NTFS分区已经被排到了第15个分区了,有bootloader分区,有androidsystem分区,有data分区,还有cache分区等等;而安装包安装后,只有一个盘,硬盘格式可以是ntfs,也可以是fat32,还可以是ext4的,只需要一个硬盘,只要在EFI分区里把grub引导代码写好就OK了,它会自动detected系统分区,来启动系统。
还有一个关键的不同点是,定制包里没有initrd.img,而安装包里有这个initrd.img,我搜索了一下,网上大多都是解释这个文件作用的,太宏观了,没有一个人真真研究它里面的内容,它的原理。前几日,在贴吧里看到几位大神聊天,提到这个文件,说定制刷机包之所以没有initrd.img,是因为厂家把intrd.img和ramdisk.img,都合并到boot.img里了。
如果真是这样,那么有什么办法把boot.img拆分呢,目前以我的能力只能把boot.img拆分为kernel和ramdisk.img,并不能把initrd.img分离出来,以grub的方式来启动定制包。
请问大神,有没有什么办法?
我们的目的是以grub的方式来启动定制的remixOS,不以bootloader的方式启动。