1. 主板型号:AIO-3399J

2. 芯片型号:RK3399

3. 操作系统版本:Android 7.1

4. Linux版本:v4.4.103

5. 需要的功能: 将RK3399的跟目录下的data文件系统f2fs,无法挂载 mount data分区,更换data文件系统ext4后,Android系统对userdata分区进行了加密,启动Android系统需要密码。

6. 遇到的问题:

(1)将rk3399的/data分区修改成ext4

6.1 修改device.mk,recovery.emmc.fstab,fstab.rk30board.bootmode.emmc,fstab.rk30board.bootmode.unknown的data文件格式ext4!

vela@Apollo:/media/vela/nick/firefly-rk3399-nougat$ git diff device/rockchip/common/device.mk
diff --git a/device/rockchip/common/device.mk b/device/rockchip/common/device.mk
index 46cec73..5ad7356 100755
--- a/device/rockchip/common/device.mk
+++ b/device/rockchip/common/device.mk
@@ -49,7 +49,7 @@ PRODUCT_PROPERTY_OVERRIDES += \ro.rksdk.version=RK30_ANDROID$(PLATFORM_VERSION)-SDK-v1.00.00# Filesystem management tools
-PRODUCT_PACKAGES += \
+#PRODUCT_PACKAGES += \fsck.f2fs \mkfs.f2fs \fsck_f2fs
vela@Apollo:/media/vela/nick/firefly-rk3399-nougat$ git diff device/rockchip/rk3399/device.mk
diff --git a/device/rockchip/rk3399/device.mk b/device/rockchip/rk3399/device.mk
index 776fed1..3806099 100755
--- a/device/rockchip/rk3399/device.mk
+++ b/device/rockchip/rk3399/device.mk
@@ -24,12 +24,12 @@ PRODUCT_PACKAGES += \RetailDemo#enable this for support f2fs with data partion
-BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE := f2fs
+#BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE := f2fs# This ensures the needed build tools are available.# TODO: make non-linux builds happy with external/f2fs-tool; system/extras/f2fs_utils
-ifeq ($(HOST_OS),linux)
-TARGET_USERIMAGES_USE_F2FS := true
-endif
+#ifeq ($(HOST_OS),linux)
+#TARGET_USERIMAGES_USE_F2FS := true
+#endifPRODUCT_COPY_FILES += \$(LOCAL_PATH)/rk3399_firefly_box/init.rc:root/init.rc
@@ -73,8 +73,8 @@ PRODUCT_COPY_FILES += \elsePRODUCT_COPY_FILES += \$(LOCAL_PATH)/fstab.rk30board.bootmode.unknown:root/fstab.rk30board.bootmode.unknown \
-    $(LOCAL_PATH)/fstab.rk30board.bootmode.emmc:root/fstab.rk30board.bootmode.emmc \
-    $(LOCAL_PATH)/fstab.rk30board.bootmode.nvme:root/fstab.rk30board.bootmode.nvme
+    $(LOCAL_PATH)/fstab.rk30board.bootmode.emmc:root/fstab.rk30board.bootmode.emmc
+    #$(LOCAL_PATH)/fstab.rk30board.bootmode.nvme:root/fstab.rk30board.bootmode.nvmeendif# debug-logsifeq ($(MIXIN_DEBUG_LOGS),true)
vela@Apollo:/media/vela/nick/firefly-rk3399-nougat$ git diff device/rockchip/rk3399/recovery.emmc.fstab
diff --git a/device/rockchip/rk3399/recovery.emmc.fstab b/device/rockchip/rk3399/recovery.emmc.fstab
index b880ef7..be5e2f6 100755
--- a/device/rockchip/rk3399/recovery.emmc.fstab
+++ b/device/rockchip/rk3399/recovery.emmc.fstab
@@ -5,7 +5,7 @@/dev/block/platform/fe330000.sdhci/by-name/system                /system              ext4             defaults   /dev/block/platform/fe330000.sdhci/by-name/cache                 /cache               ext4             defaults   /dev/block/platform/fe330000.sdhci/by-name/metadata              /metadata            ext4             defaults
-/dev/block/platform/fe330000.sdhci/by-name/userdata              /data                f2fs             defaults
+/dev/block/platform/fe330000.sdhci/by-name/userdata              /data                ext4             defaults   /dev/block/platform/fe330000.sdhci/by-name/cust                  /cust                ext4             defaults   /dev/block/platform/fe330000.sdhci/by-name/custom                /custom              ext4             defaults   /dev/block/platform/fe330000.sdhci/by-name/misc                  /misc                emmc             defaults   
vela@Apollo:/media/vela/nick/firefly-rk3399-nougat$ git diff device/rockchip/rk3399/fstab.rk30board.bootmode.emmc
diff --git a/device/rockchip/rk3399/fstab.rk30board.bootmode.emmc b/device/rockchip/rk3399/fstab.rk30board.bootmode.emmc
index 9fbfaba..87101ca 100755
--- a/device/rockchip/rk3399/fstab.rk30board.bootmode.emmc
+++ b/device/rockchip/rk3399/fstab.rk30board.bootmode.emmc
@@ -8,11 +8,11 @@#/dev/block/platform/fe330000.sdhci/by-name/system         /system             ext4      ro,noatime,nodiratime,noauto_da_alloc                                  wait,check,verify/dev/block/platform/fe330000.sdhci/by-name/cache          /cache              ext4      noatime,nodiratime,nosuid,nodev,noauto_da_alloc,discard                wait,check/dev/block/platform/fe330000.sdhci/by-name/metadata       /metadata           ext4      noatime,nodiratime,nosuid,nodev,noauto_da_alloc,discard                wait,check
-/dev/block/platform/fe330000.sdhci/by-name/userdata       /data               f2fs      noatime,nodiratime,nosuid,nodev,discard,inline_xattr                   wait,check,notrim,encryptable=/metadata/key_file
+/dev/block/platform/fe330000.sdhci/by-name/userdata       /data               f2fs      noatime,nodiratime,nosuid,nodev                   wait,check,encryptable=/metadata/key_file#data for f2fs nobarrier#/dev/block/platform/fe330000.sdhci/by-name/userdata       /data               f2fs      noatime,nodiratime,nosuid,nodev,discard,inline_xattr,nobarrier   wait,check,notrim,encryptable=/metadata/key_file#data for ext4
-#/dev/block/platform/fe330000.sdhci/by-name/userdata       /data               ext4      noatime,nodiratime,nosuid,nodev,noauto_da_alloc,discard,errors=panic   wait,check,encryptable=/metadata/key_file
+/dev/block/platform/fe330000.sdhci/by-name/userdata       /data               ext4      noatime,nodiratime,nosuid,nodev,noauto_da_alloc,discard,errors=panic   wait,check,encryptable=/metadata/key_file/dev/block/platform/fe330000.sdhci/by-name/misc          /misc                emmc        defaults      defaults# sdcard/devices/platform/fe320000.dwmmc/mmc_host*                auto  auto    defaults        voldmanaged=sdcard1:auto,encryptable=userdata
vela@Apollo:/media/vela/nick/firefly-rk3399-nougat$ git diff device/rockchip/rk3399/fstab.rk30board.bootmode.unknown
diff --git a/device/rockchip/rk3399/fstab.rk30board.bootmode.unknown b/device/rockchip/rk3399/fstab.rk30board.bootmode.unknown
index 82068de..b9e0165 100755
--- a/device/rockchip/rk3399/fstab.rk30board.bootmode.unknown
+++ b/device/rockchip/rk3399/fstab.rk30board.bootmode.unknown
@@ -9,6 +9,8 @@/dev/block/rknand_cache                    /cache              ext4      noatime,nodiratime,nosuid,nodev,noauto_da_alloc,discard                       wait/dev/block/rknand_metadata                 /metadata           ext4      noatime,nodiratime,nosuid,nodev,noauto_da_alloc,discard                       wait,check/dev/block/rknand_userdata                 /data               ext4      noatime,nodiratime,nosuid,nodev,noauto_da_alloc,discard,errors=panic          wait,check,encryptable=/metadata/key_file
+/dev/block/rknand_userdata                 /data               f2fs      noatime,nodiratime,nosuid,nodev,errors=recover                                wait,check,encryptable=/metadata/key_filer
+/dev/block/rknand_misc                    /misc              mtd       defaults         defaults/devices/ff0c0000.rksdmmc/mmc_host/mmc*          auto       auto       defaults        voldmanaged=sdcard1:auto,encryptable=userdata

6.2 重新编译make clean,编译Android镜像文件并烧写,查看k3399平台/data文件格式。

7. EXT4是Linux的标准文件系统,但相对与F2FS I/O读写速度较慢。

Android data分区格式F2FS改为EXT4相关推荐

  1. Android 系统(65)---Android修改分区格式为F2FS

    Android修改分区格式为F2FS 谁人没试过犹豫,达到理想不太易 -–Beyond 本文介绍如何将Android系统的/data分区改变成F2FS格式.修改的原因是F2FS分区格式拥有更加的I/O ...

  2. Android修改分区格式为F2FS

    谁人没试过犹豫,达到理想不太易 -–Beyond 本文介绍如何将Android系统的/data分区改变成F2FS格式.修改的原因是F2FS分区格式拥有更加的I/O性能. 修改文件系统格式成F2FS方法 ...

  3. android 分区 f2fs,一加5 切换data分区为f2fs格式,随机读写暴涨8倍!30秒开机,APP秒开!...

    科普 1. 3. f2fs这么好,为什么一加5默认没有采用f2fs: 5. 另外,2019年下半年新上市的旗舰机型,例如华为mate30.三星note10.iQOO pro等,绝大部分都采用了f2fs ...

  4. android data分区(标准)

    2.3 >= 150MB 4.0 >= 350MB 4.1 >= 350MB 4.2 >= 350MB 4.3 >= 512MB 4.4 >= 1GB 5.0 &g ...

  5. linux ntfs分区转换,Ubuntu下将NTFS分区转换成Linux的ext3分区格式

    Ubuntu实在太吸引人了,Windows也不想要了,因为早些的时候用的Windows,所以有2个硬盘分区一直是NTFS格式的.不想要了,反正Windows系统都给我删掉的. 这里用我的D盘当例子吧, ...

  6. 一种android系统实现动态挂载sdcard或emmc为系统data分区的方法

    一种动态实现挂载系统data分区的实现思路,即开机检测到ext4类的sd卡则挂载sdcard作为android系统的data分区,如果没有检测到sdcard就按照/etc/fstab存放的是系统中的文 ...

  7. MT6739 Android 8.1 取消强制data分区加密,recovery时候挂载data分区

    MT6739 Android 8.1 取消强制data分区加密,recovery时候挂载data分区 注意:不取消data分区加密的话,recovery时候无法挂载data分区! 取消data分区默认 ...

  8. 安卓system镜像分区_如何完全备份android系统上的system分区和data分区

    安卓的系统备份在很多场合下可能会用到,下面这个python的脚本,可以用来备份整个的data分区:将所有data分区的文件和目录打包到data.zip,并生成recovery的专用edify脚本到up ...

  9. 如何在MTK平台(mt6765 android 11)新增raw data分区

    最近在调试MT6765平台,需要新增raw data分区,并且在lk和kernel可以读取到分区信息.感觉非常繁琐,而且做错一步要重新编译整个SDK,非常耗时.因此,记录下这个过程的关键点,希望大家能 ...

最新文章

  1. 用 python 解决汉诺塔问题并附带演示过程
  2. 统计php脚本执行时间的php扩展
  3. 每日一皮:即使是个小BUG,有时候也能吓你半条命!
  4. 【SQL Server】阿里云CentOS安装SQL Server教程 含破解3.5G内存的限制、win端远程连接
  5. 网络安全之SQL注入
  6. GIt帮助文档之创建新的Git仓库——现有目录下,通过导入所有文件来创建
  7. Linux内核用户权限的实现,Linux内核设计与实现(6)---系统调用
  8. c语言程序求点坐标在哪个象限,C课后习题
  9. 用阿里服务器搭建彩虹网代刷平台
  10. 目不暇接!华为2020春季新品发布会群英荟萃
  11. matlab整流仿真,基于MATLAB的整流电路的建模与仿真
  12. 浏览器兼容video视频播放的多种方法
  13. C#【文件操作篇】PDF文件和图片互相转换
  14. 小马激活工具激活系统后,电脑不能启动,出现错误 a disk read error occurred
  15. 怎样设置电脑宽带连接无线路由器设置路由器连接服务器,电脑设置无线路由器断线后自动连接的方法...
  16. vivo和OPPO兄弟相煎从国内延伸至东南亚市场
  17. java gnuplot,用 Gnuplot 绘制实验数据
  18. css网站样式表是什么,什么是css样式表
  19. WebLogic启动服务卡住报错 :Server started in RUNNING mode
  20. 2021-11-08笔记本搜不到手机热点的解决

热门文章

  1. Spring面试基础题
  2. TestNG学习(一)
  3. Python --链接MYSQL数据库与简单操作 含SSH链接
  4. ZOJ 3380 Patchouli's Spell Cards(概率+大数)
  5. linux RAC 安装失败完全卸载
  6. JAVA中的编码分析
  7. boost中的mutex与lock
  8. 浏览器了解(七)Layout
  9. Multiavatar 多元文化头像生成器
  10. MySQL 死锁专题问题处理