问题描述

Android设备烧录版本后开机,查看存储空间大小不符合Flash实际大小,当恢复出厂设置后,存储空间显示正常。

问题分析

<1> 每次烧录手机的时候,是将userdata.img烧录到分区中,所以分区的文件系统中的容量信息都是包含在userdata.img中了,这个容量是通过文件/device/platform/BoardConfig.mk中的参数来定义的:BOARD_USERDATAIMAGE_PARTITION_SIZE := 1860632576 (Byte)

所以解决方法,就是将BOARD_USERDATAIMAGE_PARTITION_SIZE 的值设置为我们在/proc/partitions 中看到的分区实际大小即可,也就是12460032(KB)x1024(Byte/KB)=12759072768(Byte)

<2> 在开机容量显示不对的状态下,我们对设备执行下恢复出厂设置就会变为正确的容量的,因为这个操作会重新根据分区大小对data分区进行格式化操作,不再以data.img中的容量为准。

解决方案

1.查看挂载的分区:/data分区挂载在/dev/block/sda11

C:\Users\Admin>adb shell
lito:/ $ mount
tmpfs on /dev type tmpfs (rw,seclabel,nosuid,relatime,mode=755)
devpts on /dev/pts type devpts (rw,seclabel,relatime,mode=600,ptmxmode=000)
proc on /proc type proc (rw,relatime,gid=3009,hidepid=2)
sysfs on /sys type sysfs (rw,seclabel,relatime)
selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime)
tmpfs on /mnt type tmpfs (rw,seclabel,nosuid,nodev,noexec,relatime,mode=755,gid=1000)
tmpfs on /apex type tmpfs (rw,seclabel,nosuid,nodev,noexec,relatime,mode=755)
tracefs on /sys/kernel/debug/tracing type tracefs (rw,seclabel,relatime)
(ro,context=u:object_r:bt_firmware_file:s0,relatime,uid=1002,gid=3002,fmask=0337,dmask=0227,codepage=437,iocharset=iso8859-1,shortname=lower,errors=remount-ro)
tmpfs on /storage type tmpfs (rw,seclabel,nosuid,nodev,noexec,relatime,mode=755,gid=1000)
/dev/block/sda11 on /data type f2fs (rw,lazytime,seclabel,nosuid,nodev,noatime,background_gc=on,discard,no_heap,user_xattr,inline_xattr,acl,inline_data,inline_dentry,flush_merge,extent_cache,mode=adaptive,active_logs=6,reserve_root=12686,re

2.查看分区大小 (单位:KB):sda11对应的是data分区
cat proc/partitions

3.修改device/qcom/lito/BoardConfig.mk:使用sda11对应的大小
BOARD_USERDATAIMAGE_PARTITION_SIZE := 100018577408

4.验证分区大小:
ls -al dev/block/platform/soc/1d84000.ufshc/by-name/

注意:如果直接设置成分区实际容量无法启动的话,可以尝试设置一个比分区容量小10MB的值,因为有时文件系统需要一些空间才能启动。

Android系统修改userdata分区大小相关推荐

  1. 高通平台修改Cache分区大小

    文档说明 本文档以SC826-CN-01(MSM8953平台)为例,描述如何修改Android系统的Cache分区大小. 默认代码Cache分区大小为256M,下面我们修改为512M. 相关文件路径 ...

  2. 修改userdata分区为实际大小

    目的:为了尽可能给用户保留最大使用空间,遂修改userdata分区大小为实际flash除掉系统外的最大值. 1. 找台设备看产品里userdata分区实际的大小 adb root adb shell ...

  3. android 读取各分区大小,Android userData分区大小查看

    首先,可以用个命令 cat /proc/partitions 查看分区大小如下所示:(单位KBytes) cat /proc/partitions major minor  #blocks  name ...

  4. nxp修改emmc分区大小(BUG和对应的修改)

    文章目录 一.明确修改处(修改又用,但是有bug) 二.bug解决 三.问题总结 官方论坛资料 https://community.nxp.com/t5/i-MX-Processors/How-to- ...

  5. linux修改swap分区大小2GB,Linux下修改Swap分区大小

    据了解Linux下可以有两种方法创建交换空间,一种是创建交换分区,另一种是创建交换文件.本文记录的是创建交换文件的方法,因为我用的是这种方法.. 添加交换文件步骤: 1.找个地方创建一个.swap的文 ...

  6. Android系统修改硬件设备访问权限

    Android系统修改硬件设备访问权限 在硬件抽象层模块文件(so)文件中,提供的函数调用open函数来打开设备文件,比如/dev/gpio,如果不修改设备文件/dev/gpio的访问权限,那么应用程 ...

  7. linux cpu降频怎么设置,Android系统修改CPU降频温度阈值、修改CPU关内核温度阈值的方法...

    1.关闭CPU降频温度: 目录:MSM8916.LA.1.1-PostCS-CT-CMCC-r113500.1srcLINUXandroidvendorqcomproprietarythermal-e ...

  8. android修改默认遥控器键值,RK3128平台android系统修改添加遥控器键值码值

    本帖最后由 微笑,一路向前 于 2017-1-4 15:34 编辑 最近帮客户定制RK3128平台的固件,涉及到定制新的遥控器,需要添加或修改遥控码值.RK3128平台Android系统修改遥控器码值 ...

  9. Android系统修改默认语言为中文

    Android系统修改默认语言为中文 对于Android系统修改默认语言的方法,各个版本的系统方法都差不多一致,至少我在Android5.1和Android9.0使用都成功,具体方法如下: 在buil ...

最新文章

  1. python 遍历元组例子_【Python入门自学笔记专辑】——元组的创建、访问、遍历...
  2. 学习webpack(二)
  3. c语言菜单程序循环结构举例,C语言程序设计课件 第4章 循环结构.ppt
  4. 手机轮廓光怎么拍_摄影技巧:怎么拍影子?手机拍照教程
  5. stdout标准输出、stderr标准错误输出 标准输入、标准输出、标准错误输出分别被定义为0、1、2。
  6. insert /*+ APPEND */
  7. 最常出现的字符串 Most Common Word
  8. linux ksh教程下载,学习Linux中ksh的用法
  9. 华为Mate 30系列5G版屠榜双十一:当之无愧的5G爆品
  10. 如何通过代码设置WPF控件的字体,颜色
  11. Atitit 聚合搜索多个微博 attilax总结
  12. 2021五一杯数学建模B题 消防救援问题
  13. 常用的网络操作系统有哪些?它们各具有什么特点?
  14. 网页中下拉列表框自动展开的方法
  15. HttpClient超时时间 timeout
  16. 多台计算机使用一个硬盘,怎么实现多台电脑共用一块硬盘
  17. ecshop订单总价币种汇率转换paypal付款
  18. 中兴JAVA直板手机_中兴(zte)L880智能手机(黑色 双卡双待 直板按键 老人机) 京东199元...
  19. goods购物表MySQL的代码_第一节:数据库及表
  20. 渗透测试常用文件传输方法-Windows篇(如何向Windows服务器中上传文件?) (゚益゚メ) 渗透测试

热门文章

  1. 动物实验 | 模式生物——大鼠| MedChemExpress
  2. java如何自定义函数_Java用户自定义函数
  3. 进程间通信的几种方式:管道、信号、消息队列、共享内存
  4. 资源分享 | 数据分析、可视化、人工智能,模板资源,在这里,你都能得到!
  5. Linux中find命令的7种用法
  6. C++值传递和引用传递的区别
  7. Linux字符界面字符颜色显示
  8. 2014年年终总结和2015年规划
  9. class-dump使用
  10. java如何用drawString()绘制文字(三行代码)