Difference between revisions of "How to make your own SD-bootable ROM"

From FriendlyELEC WiKi
Jump to: navigation, search
(用自制系统制作可启动的SD卡或者SD卡映象)
(用自制系统制作可启动的SD卡或者SD卡映象)
Line 1: Line 1:
=== 用自制系统制作可启动的SD卡或者SD卡映象 ===
+
== 4418/6818平台Linux系统映象制作 ==
在产品量产阶段,通常需要为自已的定制过的产品制作专用的系统映象,这里的系统映象是指  Android编译生成的 boot.img、system.img,或者Ubuntu的根文件系统 rootfs.img 等等。<br />这个章节将介绍如何用自已编译的系统映象,制作一张可以启动的SD卡,或者,制作一个完整的系统映象文件,完整的系统映象可用于产品量产时批量生成SD卡。<br/>
+
下面以制作S5P4418 Android 启动卡为例,命令如下:<br />
+
<syntaxhighlight lang="bash">
+
git clone https://github.com/friendlyarm/sd-fuse_nanopi2.git
+
cd sd-fuse_nanopi2
+
wget http://112.124.9.243/dvdfiles/S5P4418/images-for-eflasher/android-lollipop-images.tgz
+
tar xvzf android-lollipop-images.tgz
+
</syntaxhighlight>
+
注:如果是S5P6818,你需要将sd-fuse_nanopi2.git改为sd-fuse_nanopi3.git,S5P4418改为S5P6818。<br />
+
现在,请将自已编译生成的 Android映象替换掉Android目录下的同名文件,然后用以下命令制作一张可以启动的SD卡:
+
<syntaxhighlight lang="bash">
+
sudo ./fusing.sh /dev/sde android
+
</syntaxhighlight>
+
注:请将/dev/sde替换为真实的SD卡设备名称。<br />
+
<br />
+
如果要制成一个完整的系统映象文件,命令改为:
+
<syntaxhighlight lang="bash">
+
sudo ./mkimage.sh android
+
</syntaxhighlight>
+
 
+
 
+
==== 4418/6818平台Linux系统映象制作 ====
+
 
重点是将SD卡中的boot和rootfs 这2个分区制作成boot.img 和 rootfs.img,然后就可以替换掉eMMC烧写ROM即 eflasher 中的文件即可以烧写到eMMC中。<br />
 
重点是将SD卡中的boot和rootfs 这2个分区制作成boot.img 和 rootfs.img,然后就可以替换掉eMMC烧写ROM即 eflasher 中的文件即可以烧写到eMMC中。<br />
 
1) 下载 https://github.com/friendlyarm/debian_nanopi2 ;<br />
 
1) 下载 https://github.com/friendlyarm/debian_nanopi2 ;<br />
Line 33: Line 11:
  
  
====H3/H5平台Linux系统映象制作====
+
==H3/H5平台Linux系统映象制作==
 
重点是将待烧写的 boot 和 rootfs 这2个分区目录制作成boot.img 和 rootfs.img,然后就可以替换掉eMMC烧写ROM即 eflasher 中的文件即可以烧写到eMMC中。在PC机上执行下列操作: <br />
 
重点是将待烧写的 boot 和 rootfs 这2个分区目录制作成boot.img 和 rootfs.img,然后就可以替换掉eMMC烧写ROM即 eflasher 中的文件即可以烧写到eMMC中。在PC机上执行下列操作: <br />
 
1) 下载相关工具: [http://wiki.friendlyarm.com/wiki/index.php/File:Eflasher-build-tools.zip EFlasher-build-tools];<br />
 
1) 下载相关工具: [http://wiki.friendlyarm.com/wiki/index.php/File:Eflasher-build-tools.zip EFlasher-build-tools];<br />
Line 47: Line 25:
 
40 表示boot.img的大小为40M。 <br />
 
40 表示boot.img的大小为40M。 <br />
 
4) 用新生成的boot.img和root.img替换eflasher-ROM的FAT分区对应系统目录下的同名文件,然后参考前面的步骤进行烧写即可;<br />
 
4) 用新生成的boot.img和root.img替换eflasher-ROM的FAT分区对应系统目录下的同名文件,然后参考前面的步骤进行烧写即可;<br />
 +
 +
==用自制系统制作可启动的SD卡或者SD卡映象 ==
 +
在产品量产阶段,通常需要为自已的定制过的产品制作专用的系统映象,这里的系统映象是指  Android编译生成的 boot.img、system.img,或者Ubuntu的根文件系统 rootfs.img 等等。<br />这个章节将介绍如何用自已编译的系统映象,制作一张可以启动的SD卡,或者,制作一个完整的系统映象文件,完整的系统映象可用于产品量产时批量生成SD卡。<br/>
 +
下面以制作S5P4418 Android 启动卡为例,命令如下:<br />
 +
<syntaxhighlight lang="bash">
 +
git clone https://github.com/friendlyarm/sd-fuse_nanopi2.git
 +
cd sd-fuse_nanopi2
 +
wget http://112.124.9.243/dvdfiles/S5P4418/images-for-eflasher/android-lollipop-images.tgz
 +
tar xvzf android-lollipop-images.tgz
 +
</syntaxhighlight>
 +
注:如果是S5P6818,你需要将sd-fuse_nanopi2.git改为sd-fuse_nanopi3.git,S5P4418改为S5P6818。<br />
 +
现在,请将自已编译生成的 Android映象替换掉Android目录下的同名文件,然后用以下命令制作一张可以启动的SD卡:
 +
<syntaxhighlight lang="bash">
 +
sudo ./fusing.sh /dev/sde android
 +
</syntaxhighlight>
 +
注:请将/dev/sde替换为真实的SD卡设备名称。<br />
 +
<br />
 +
如果要制成一个完整的系统映象文件,命令改为:
 +
<syntaxhighlight lang="bash">
 +
sudo ./mkimage.sh android
 +
</syntaxhighlight>

Revision as of 05:46, 8 September 2017

1 4418/6818平台Linux系统映象制作

重点是将SD卡中的boot和rootfs 这2个分区制作成boot.img 和 rootfs.img,然后就可以替换掉eMMC烧写ROM即 eflasher 中的文件即可以烧写到eMMC中。
1) 下载 https://github.com/friendlyarm/debian_nanopi2 ;
2) 复制 SD卡中的 boot 分区下的文件到debian_nanopi2/boot ; 复制SD卡中的 rootfs分区下的文件到 debian_nanopi2/rootfs ;
根据自己的需要可以再修改 boot 和 rootfs 目录下的文件。
建议删除rootfs 目录下的文件 etc/fs.resized 否则将不会自动扩展分区。
3) 使用 debian_nanopi2 下的 make_ext4fs 来制作 img:
./tools/make_ext4fs -s -l 67108864 -a root -L boot boot.img boot
./tools/make_ext4fs -s -l 2097152000 -a root -L rootfs rootfs.img rootfs
4) 复制新生成的 boot.img 和 root.img 替换 eflasher 的FAT分区 core-qte 目录下的文件,然后即可烧写;


2 H3/H5平台Linux系统映象制作

重点是将待烧写的 boot 和 rootfs 这2个分区目录制作成boot.img 和 rootfs.img,然后就可以替换掉eMMC烧写ROM即 eflasher 中的文件即可以烧写到eMMC中。在PC机上执行下列操作:
1) 下载相关工具: EFlasher-build-tools
2) 将待烧写的 rootfs 分区目录制作为 ext4 格式的 img 文件:

$ ./make_ext4fs -s -l 2097152000 -a root -L /SD/rootfs rootfs.img rootfs

-l 用于指定 img 文件的大小,单位是Byte,2097152000 Byte=2000MB,必须大于实际目录的大小。
3) 将待烧写 boot 分区目录制作为 fat 格式的 img 文件:

$ ./build-boot-fat.sh boot.img /SD/boot 40

40 表示boot.img的大小为40M。
4) 用新生成的boot.img和root.img替换eflasher-ROM的FAT分区对应系统目录下的同名文件,然后参考前面的步骤进行烧写即可;

3 用自制系统制作可启动的SD卡或者SD卡映象

在产品量产阶段,通常需要为自已的定制过的产品制作专用的系统映象,这里的系统映象是指 Android编译生成的 boot.img、system.img,或者Ubuntu的根文件系统 rootfs.img 等等。
这个章节将介绍如何用自已编译的系统映象,制作一张可以启动的SD卡,或者,制作一个完整的系统映象文件,完整的系统映象可用于产品量产时批量生成SD卡。
下面以制作S5P4418 Android 启动卡为例,命令如下:

git clone https://github.com/friendlyarm/sd-fuse_nanopi2.git
cd sd-fuse_nanopi2
wget http://112.124.9.243/dvdfiles/S5P4418/images-for-eflasher/android-lollipop-images.tgz
tar xvzf android-lollipop-images.tgz

注:如果是S5P6818,你需要将sd-fuse_nanopi2.git改为sd-fuse_nanopi3.git,S5P4418改为S5P6818。
现在,请将自已编译生成的 Android映象替换掉Android目录下的同名文件,然后用以下命令制作一张可以启动的SD卡:

sudo ./fusing.sh /dev/sde android

注:请将/dev/sde替换为真实的SD卡设备名称。

如果要制成一个完整的系统映象文件,命令改为:

sudo ./mkimage.sh android