ext4格式的system.img文件修改方法:
1.使用simg2img转换img成ext4文件系统文件,命令:
simg2img system.img system.img.ext4
simg2img,这个文件是将system.img转换成标准的ext4格式的文件
2.创建挂载点,命令:
mkdir system
3.挂载ext4文件到刚创建的system挂载点,命令:
mount -o loop system.img.ext4 system
4.修改文件权限,命令:
sudo chown username:username -R system
username既你当前系统下的当前用户名,而非目标手机上的用户。刚挂载上来的文件权限都是root:root的,非root用户无法进行添加、删除等修改。
5.修改,如增添应用app:
cp cmcc_apks/container/*.apk system/app/
6.重新打包img,生成新的system_new.img
mkuserimg.sh -s system/ system_new.img ext4 system 1073741824 root/file_contexts
mkuserimg.sh说明:
mkuserimg.sh [-s] SRC_DIR OUTPUT_FILE EXT_VARIANT MOUNT_POINT SIZE [FILE_CONTEXTS]
SRC_DIR:数据源目录,就是我们需要打包的数据目录。
OUTPUT_FILE:输出文件,我们需要生成的img文件。
EXT_VARIANT:ext文件系统类型指定,我们这里指定使用ext4格式。
MOUNT_POINT:挂载点,我们这里指定system。
SIZE:img在设备上的实际物理尺寸,我的nexus 5尺寸是1073741824
[FILE_CONTEXTS]:可选项,指定文件安全上下文的位置
1.使用simg2img转换img成ext4文件系统文件,命令:
simg2img system.img system.img.ext4
simg2img,这个文件是将system.img转换成标准的ext4格式的文件
2.创建挂载点,命令:
mkdir system
3.挂载ext4文件到刚创建的system挂载点,命令:
mount -o loop system.img.ext4 system
4.修改文件权限,命令:
sudo chown username:username -R system
username既你当前系统下的当前用户名,而非目标手机上的用户。刚挂载上来的文件权限都是root:root的,非root用户无法进行添加、删除等修改。
5.修改,如增添应用app:
cp cmcc_apks/container/*.apk system/app/
6.重新打包img,生成新的system_new.img
mkuserimg.sh -s system/ system_new.img ext4 system 1073741824 root/file_contexts
mkuserimg.sh说明:
mkuserimg.sh [-s] SRC_DIR OUTPUT_FILE EXT_VARIANT MOUNT_POINT SIZE [FILE_CONTEXTS]
SRC_DIR:数据源目录,就是我们需要打包的数据目录。
OUTPUT_FILE:输出文件,我们需要生成的img文件。
EXT_VARIANT:ext文件系统类型指定,我们这里指定使用ext4格式。
MOUNT_POINT:挂载点,我们这里指定system。
SIZE:img在设备上的实际物理尺寸,我的nexus 5尺寸是1073741824
[FILE_CONTEXTS]:可选项,指定文件安全上下文的位置