- Android系统移植和驱动开发
- 华清远见移动互联网学院 郑萌等编著
- 285字
- 2020-08-28 23:31:35
1.5.7 提取Android 根文件系统
上一节我们成功地在Android 模拟器下运行了Android 程序,但如果要把结果写进开发板,则需要得到Android的根文件系统,步骤如下:
连接虚拟机,如图1.11所示。
图1.11 连接虚拟机
#./adb shell
将busybox 放入模拟器目标机文件系统中,如图1.12所示。
图1.12 将busybox放入模拟器
下一步把/system、/data、/sbin 目录及根目录下的init、init.rc 等都放入sdcard 的image中,如图1.13所示。
图1.13 使用busybox
结果如图1.14所示。
图1.14 结果
在主机上以loop 方式mount sdcard 的image,并将其中的文件放到EZ6410 的根文件系统下,代码如下:
root@ffarsight:/mnt/sdc/android-sdk-linux_x86-1.6_r1/tools# modprobe loop root@ffarsight:/mnt/sdc/android-sdk-linux_x86-1.6_r1/tools# mount -o loop sdcard.img /mnt/sd root@ffarsight:/mnt/sdc/android-sdk-linux_x86-1.6_r1/tools# cd /mnt/sd root@ffarsight:/mnt/sd# ls android.tar lost.dir
在原有的Linux的NFS文件系统目录下创建一个新的目录rootfs_test,并把android.tar解压到rootfs_test目录下。
# tar xvf android.tar -C /source/rootfs_android/rootfs_test/
在NFS服务目录/source/rootfs_android下添加一个文件android.sh,如图1.15所示。
图1.15 添加android.sh