I.MX6 mkuserimg.sh hacking
/***********************************************************************
* I.MX6 mkuserimg.sh hacking
* 说明:
* 上次发现Android源码使用mkuserimg.sh来打包Android文件系统,现在来
* 跟踪一下其内部的工作机制。
*
* 2016-6-28 深圳 南山平山村 曾剑锋
**********************************************************************/ #!/bin/bash -x
#
# To call this script, make sure make_ext4fs is somewhere in PATH function usage() {
cat<<EOT
Usage:
mkuserimg.sh [-s] SRC_DIR OUTPUT_FILE EXT_VARIANT MOUNT_POINT SIZE [FILE_CONTEXTS]
EOT
} # 显示环境变量
echo "in mkuserimg.sh PATH=$PATH" # 获取第一个命令行参数,用完之后移除第一个命令行参数
ENABLE_SPARSE_IMAGE=
if [ "$1" = "-s" ]; then
ENABLE_SPARSE_IMAGE="-s"
shift
fi # 这里是检查除了-s第一参数以外,还剩下的参数个数
if [ $# -ne -a $# -ne -a $# -ne ]; then
usage
exit
fi # 获取并检查源目录
SRC_DIR=$
if [ ! -d $SRC_DIR ]; then
echo "Can not find directory $SRC_DIR!"
exit
fi # 获取相应的数据
OUTPUT_FILE=$
EXT_VARIANT=$
MOUNT_POINT=$
SIZE=$
FC=$ # 目前仅仅支持ext4的制作,其他类型的文件都会直接退出
case $EXT_VARIANT in
ext4) ;;
*) echo "Only ext4 is supported!"; exit ;;
esac # 接下来也是检查各个参数的正确性
if [ -z $MOUNT_POINT ]; then
echo "Mount point is required"
exit
fi if [ -z $SIZE ]; then
SIZE=128M
fi if [ -n "$FC" ]; then
FCOPT="-S $FC"
fi # 生成命令,显示命令,执行命令,检查命令执行结果
MAKE_EXT4FS_CMD="make_ext4fs $ENABLE_SPARSE_IMAGE $FCOPT -l $SIZE -a $MOUNT_POINT $OUTPUT_FILE $SRC_DIR"
echo $MAKE_EXT4FS_CMD
$MAKE_EXT4FS_CMD
if [ $? -ne ]; then
exit
fi # mkuserimg.sh out/target/product/sabresd_6dq/system out/target/product/sabresd_6dq/obj/PACKAGING/systemimage_intermediates/system.img ext4 system
I.MX6 mkuserimg.sh hacking的更多相关文章
- I.MX6 mkuserimg.sh 使用
/*********************************************************************** * I.MX6 mkuserimg.sh 使用 * 说 ...
- I.MX6 android mkuserimg.sh
/************************************************************************** * I.MX6 android mkuserim ...
- post-image.sh hacking
#********************************************************************************* #* post-image.sh ...
- I.MX6 U-Boot mkconfig hacking
/**************************************************************************** * I.MX6 U-Boot mkconfi ...
- I.MX6 mfgtool2-android-mx6q-sabresd-emmc.vbs hacking
/******************************************************************** * I.MX6 mfgtool2-android-mx6q- ...
- Woobuntu woobuntu_build.sh hacking
# Woobuntu woobuntu_build.sh hacking # 说明: # 有时候因为一些需求,我们需要定制一些系统,包括Ubuntu系统,于是 # 我们自然需要知道如何去解包一个Ubu ...
- OK335xS psplash make-image-header.sh hacking
/***************************************************************************** * OK335xS psplash mak ...
- ti processor sdk linux am335x evm setup.sh hacking
#!/bin/sh # # ti processor sdk linux am335x evm setup.sh hacking # 说明: # 本文主要对TI的sdk中的setup.sh脚本进行解读 ...
- ti processor sdk linux am335x evm /bin/setup-host-check.sh hacking
#!/bin/sh # # ti processor sdk linux am335x evm /bin/setup-host-check.sh hacking # 说明: # 本文主要对TI的sdk ...
随机推荐
- VMware搭建Oracle 11g RAC测试环境 For Linux
环境如下: Linux操作系统:Centos 6.5 64bit (这个版本的redhat 6内核等OS在安装grid最后执行root.sh时会出现crs-4124,是oracle11.2.0.1的b ...
- Oracle臨時表空間過大問題解決
查詢資料庫伺服器時,發現資料庫伺服器磁片使用空間達到了98%,分析總共的資料檔案也不可能達到如此大,經過查詢發現原來臨時表空間的使用方式達到了 32G,導致磁碟空間使用緊張.搜索了相應的文檔與資料後, ...
- LA 3890 半平面交
二分查询答案,判断每一个新形成的向量合在一块能否形成半平面交 #include <iostream> #include <cstdio> #include <cstrin ...
- bzoj 1703 [Usaco2007 奶牛排名 传递闭包
[Usaco2007 Mar]Ranking the Cows 奶牛排名 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 504 Solved: 343[ ...
- 亚瑟王(bzoj 4008)
Description 小 K 不慎被 LL 邪教洗脑了,洗脑程度深到他甚至想要从亚瑟王邪教中脱坑. 他决定,在脱坑之前,最后再来打一盘亚瑟王.既然是最后一战,就一定要打得漂 亮.众所周知,亚瑟王是一 ...
- 通过分析system_call中断处理过程来深入理解系统调用
通过分析system_call中断处理过程来深入理解系统调用 前言说明 本篇为网易云课堂Linux内核分析课程的第五周作业,上一次作业中我以2个系统调用(getpid, open)作为分析实例来分析系 ...
- hashlib-sha摘要算法模块
摘要:hashlib: 摘要算法的模块 用处: 1.查看某两个文件是否完全一致 "abcdefggg" "abcdefhhg" 2.加密认证 把密码加密后写入文 ...
- P1093||T1142 奖学金 洛谷||codevs
http://codevs.cn/problem/1142/ || https://www.luogu.org/problem/show?pid=1093 题目描述 某小学最近得到了一笔赞助,打算拿出 ...
- stored procedure --存储过程
存储过程(Stored Procedure),计算机用语,是一组为了完成特定功能的SQL语句集,是利用SQL Server所提供的Transact-SQL语言所编写的程序.经编译后存储在数据库中.存储 ...
- nginx.org与nginx.com有什么区别(Nginx与Nginx Plus)
nginx.org是开源社区,管理着Nginx开源版. nginx.xom是商业社区,管理着Nginx Plus商业版. 商业版和开源版是有很大区别的,服务还加更强大的功能,当然依托开源社区加载第三方 ...