SD卡扩容

  • 前言
  • 一. 为什么要进行SD卡扩容
  • 二. 方法一(不推荐)
    • 2.1 找到系统配置文件
    • 2.2 修改系统配置文件
  • 三. 方法二(推荐)
    • 3.1 安装gdisk
    • 3.2 删除share分区
    • 3.3 扩容rootfs分区
      • 3.3.1 小插曲
    • 3.4 在线调整文件系统大小
    • 3.5 最后再次扩容rootfs
  • 最后

前言

一. 为什么要进行SD卡扩容

在全志T113实际使用当中,我们会发现SD卡本身32G的内存,但是SD的存储并没有得到充分的利用,在启动开发板系统后,df -h就会发现,根文件系统的大小只有不足以256M(如下图所示),像一些摄像头的使用,想保存一些图片到本地,也会受到内存的限制。那是否有办法让可用空间变的更大,毫无疑问肯定是有的。

二. 方法一(不推荐)

通过修改配置文件,使根文件系统大小增大

2.1 找到系统配置文件

首先找到SDK包,进入目录:


在路径**buildroot-100ask_t113-pro/br2t113pro/configs/**下,有两个系统配置文件,修改哪个?取决于你的开发板系统是通过什么启动的,我这里是通过SD卡启动,所以我将修改100ask_t113-pro_sdcard_core_defconfig这个文件。

2.2 修改系统配置文件

用vim打开100ask_t113-pro_sdcard_core_defconfig,紧接着左斜杆搜索BR2_TARGET_ROOTFS_EXT2_SIZE,将对应参数256M修改成你想要的一个值就好了。

这个方法虽然简单方便,但是缺点也是很明显的,通过修改这个值,那么编译后生成的镜像文件也会随之增大,这就会导致你烧录也会变慢,所以这个方法是治标不治本的。假设你把SD卡剩下的内存全用上,那么这个镜像文件就会接近30个G,这得烧录多久啊…

三. 方法二(推荐)

3.1 安装gdisk

首先为什么要用gdisk而不用fdisk呢?

genimage工具打包的镜像分区是hybrid混合分区,fdisk只支持MBR分区,不支持GPT分区,所以使用fdisk -l命令查看的分区信息和cat /proc/partitions查看的设备信息不一致,使用fdisk分区也无效。

在此之前我的开发板系统里面是没有gdisk工具的,如果你的开发板有的话,就可以跳过这个步骤。

进入到buildroot目录下,执行make menuconfig

进入到图形化界面后,左斜杠搜索BR2_PACKAGE_GPTFDISK,*号选中退出保存:

然后在bulidroot目录下执行编译:

make V=1

然后把系统烧录到开发板启动。

以下是gdisk使用帮助信息:

Command (? for help): ?                #输入?号查看可用的指令
b   back up GPT data to a file          #将GPT数据备份到文件中
c   change a partition's name           #更改分区的名称
d   delete a partition               #删除分区
i   show detailed information on a partition #将显示分区的详细信息
l   list known partition types           #列出已知的分区类型
n   add a new partition               #添加一个新的分区
o   create a new empty GUID partition table (GPT)       #创建一个新的空GUID分区表(GPT)
p   print the partition table                  #打印分区表
q   quit without saving changes               #不保存更改就退出
r   recovery and transformation options (experts only)      #恢复和转换选项(仅限专家使用)
s   sort partitions                      #分类分区
t   change a partition's type code           #更改分区的类型
v   verify disk                       #验证磁盘
w   write table to disk and exit            #将表写入磁盘并退出
x   extra functionality (experts only)       #额外功能(仅限专家使用)
?   print this menu                   #查看可用的指令

3.2 删除share分区

启动系统后,执行下面命令进入交互:

gdisk /dev/mmcblk0

紧接着输入p回车,即可打印分区表:

我们要进行删除分区的操作,输入d回车,选择删除第6分区:

3.3 扩容rootfs分区

在删除完share分区后,我们再删除rootfs分区,输入d回车,选择删除第5分区:

在删除rootfs分区后,我们再进行新建分区,输入n回车:


在这里一直回车(回车默认选择default的值)即可。

3.3.1 小插曲

可以看到,目前1154118是可选择的最大值。这个时候就会觉得很奇怪,明明有29G的内存,为什么可用的只能到1154118呢。那剩下的29G跑哪去了?

这个时候我们输入p回车再打印分区表,可见我们第五个分区已经建立好了,而且比之前rootfs分区大,但是分区名字不是rootfs,这里我们可以输入c回车进行改名。


修改好之后,我们输入w回车保存。然后重启系统,执行如下命令:

reboot

3.4 在线调整文件系统大小

在系统重启之后,我们df -h查看发现rootfs还是跟之前的大小一样,没有发生变化,这个时候我们执行如下命令,对文件系统进行一个在线调整:

resize2fs /dev/mmcblk0p5

执行完上面的命令后,再次df -h就可以看到size发生变化了:

但是这个大小还并没有满足我们的需求,因为我们的目的是充分利用SD的空间,有大约29G的大小,但是上面我们扩容rootfs分区的时候,不是只能选择到1154118吗?但是,在我们将之前的share分区扩容到rootfs分区后,并且重启和在线调整文件系统后,当我们再次进入到gdisk交互,打印出分区表,就可以看到之前消失的29G跑回来了。这个时候最后一个可用扇区也从1154118变成了62322112

3.5 最后再次扩容rootfs

所以我们还要进行一次扩容,将所有可用扇区全扩到rootfs分区

这个时候,就可以看到第5分区的大小已经高达29.7G了,那么接下来我们进行改名(改回rootfs)保存退出,然后重启系统之后,再次执行下面命令在线调整文件系统:

resize2fs /dev/mmcblk0p5

执行完后,df -h查看:

最后

至于在没经过第一次扩容前,为啥29G的空间会没显示出来的原因,我也不是很清楚,如果有大佬知道,欢迎您留言。

【全志T113-S3_100ask】SD卡扩容相关推荐

  1. NVIDIA-Jetson Nano SD卡扩容脚本

    用户自行烧写完成Jetson Nano的镜像后,需进行SD卡扩容,以完全利用SD卡存储空间. 其实Jetson Nano是自带扩容的程序的.脚本路径在/usr/lib/nvidia/resizefs/ ...

  2. emwin读取sd图片_手机内存不够用?这样清理垃圾文件和巧用SD卡扩容硬件存储空间...

    手机是我们离不开的电器,随着信息越来越多,各种app装的越来越多,有时候会提示存储空间已满,土豪还好,可以更换旗舰手机,可怜我们普通人,尤其是比较旧一些的手机,可用空间越来越小,不用担心,按照本文要说 ...

  3. Raspberrypi SD卡扩容

    步骤1: 重新启动你的电脑,不要启动X windows 步骤2: $ sudo df -h 你应该会看到/ 挂载于rootfs(已使用97%左右). 步骤3: $ sudo fdisk /dev/mm ...

  4. 华为 java sd卡,手机添加存储卡 内存变大不卡顿——华为SD卡扩容实例

    手机的基本功能是接听电话收发短信,电脑是人工智能机器人,二者合并便是智能手机,也就是今天所说的"手机". 手机用于记忆和工作的"脑海"里拥挤不堪时便会卡顿频发, ...

  5. 测试sd卡读写速度与判断是否是扩容的假货

    买了个32G micro sd卡,官方标称class10,就是说写能达到10M/S,于是检测是否真实 速度检测 ATTO Disk Benchmarks 如图 当数据达到256KB以上时,读写速度都达 ...

  6. BeagleBone学习(一) SD卡的烧录与扩容

    BeagleBone学习(一) SD卡的烧录与扩容 烧录 (1) 下载烧写工具 http://sourceforge.net/projects/win32diskimager (2) 下载镜像文件 h ...

  7. 全志a13开发板——建立一个可以启动linux的SD卡

     1  创建工具连 toolchain # apt-get install gcc-arm-linux-gnueabihf ncurses-dev uboot-mkimage build-essent ...

  8. 树莓派Raspberry Pi 16G SD卡刷系统时默认空间扩容

    这两天需要给树莓派中安装一个lamp环境,但是上安装的东西太多了,默认的系统空间已经被占完.但是SD卡本身是16GB的,如果将树莓派空间扩展到更大呢?只有扩展了才能解决我继续安装软件的需求.查了一下资 ...

  9. 扩容刚烧录至sd卡的linux系统

    参考链接https://elinux.org/RPi_Resize_Flash_Partitions. 给sd卡烧录镜像时,如果所用的.img系统镜像是由另一张sd卡制作而来,则该镜像无法自动扩展新卡 ...

最新文章

  1. centos --- phpunit 安装过程
  2. 机器学习服务第一梯队都有谁?权威研究机构Forrester发布最新报告
  3. IPSR(中断程序状态寄存器),IPSR包含了当前正在执行的中断服务程序编号,用于识别当前中断。
  4. Linux系统学习: 进程、重定向和管道指令:xargs 指令的作用是
  5. 轻松搭建docker应用的mesos集群
  6. SWAT模型非点源模拟原理
  7. html5 下拉框 美化,实用select下拉框美化jquery插件
  8. 关于Zipf定律的理解和python实现
  9. Sentinel控制台搭建使用
  10. iOS动画之大雪纷飞
  11. 送分了QAQ(前缀和)
  12. java8 foreach 抛异常_Java Stream中的异常处理
  13. 云骞开源即时通讯软件
  14. [week15] C - ZJM与纸条(选做)—— KMP算法
  15. git 配置ssh 秘钥
  16. 手把手教你开发人工智能微信小程序(1):线性回归模型
  17. 路由表转发最长匹配原则
  18. 妙赞大讲糖:引起糖尿病的原因
  19. 网站搭建教程(详细步骤)
  20. war3宽屏补丁(已更新)

热门文章

  1. 【NOI 2004】郁闷的出纳员
  2. android ui框架详解,多图详解 “Android UI”设计官方教程(二)
  3. 架构师的职责及工作描述
  4. Linux性能监控工具sysstat
  5. 解决:FLASK中Warning: (1366, Incorrect string value: '\\xD6\\xD0\\xB9\\xFA\\xB1\\xEA...'
  6. iOS 【消息处理 performSelector】
  7. 【愚公系列】2022年04月 现代密码学-MD5
  8. 四、面向对象编程(基础)
  9. 长安大学计算机技术历年复试线,长安大学2011年-2013年研究生历年复试分数线汇总.xls...
  10. CEGUI安装、编译、运行总结