扩容嵌入式Linux根文件系统
需求:嵌入式镜像制作时,考虑体积等因素,会把根文件系统做的比较小,镜像包较小,方便量产;
有时,我们的tf或emmc的容量较大,烧写镜像后,有较大的空余空间未使用,现尝试把未分区的空间分配到跟文件系统中(存储介质连续)。
1、软件环境:fdisk、resize2fs
2、查看分区结构
fdisk -l
# fdisk -l
Disk /dev/mmcblk0: 30 GB, 31914983424 bytes, 62333952 sectors
973968 cylinders, 4 heads, 16 sectors/track
Units: sectors of 1 * 512 = 512 bytes
Device Boot StartCHS EndCHS StartLBA EndLBA Sectors Size Id Type
/dev/mmcblk0p1 * 0,0,2 2,10,9 1 32768 32768 16.0M c Win95 FAT32 (LBA)
/dev/mmcblk0p2 512,0,2 1023,3,16 32769 62333951 62301183 29.7G 83 Linux
# df -h
Filesystem Size Used Available Use% Mounted on
/dev/root 492.2M 215.3M 250.1M 46% /
devtmpfs 106.6M 0 106.6M 0% /dev
tmpfs 115.1M 0 115.1M 0% /dev/shm
tmpfs 115.1M 56.0K 115.0M 0% /tmp
tmpfs 115.1M 144.0K 114.9M 0% /run
3、调整分区
# fdisk /dev/mmcblk0 The number of cylinders for this disk is set to 973968. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Command (m for help): m Command Action a toggle a bootable flag b edit bsd disklabel c toggle the dos compatibility flag d delete a partition l list known partition types n add a new partition o create a new empty DOS partition table p print the partition table q quit without saving changes s create a new empty Sun disklabel t change a partition's system id u change display/entry units v verify the partition table w write table to disk and exit x extra functionality (experts only) Command (m for help):
1> 记录需要调整分区的起始 StartLBA;
2> 删除需要调整的分区;
3> 创建新分区,起始位置输入第一步记录StartLBA的值;
4> 写入磁盘,此时执行fdisk -l,可以看到需要调整的分区,容量已经是调整过了,重启系统。
4、调整大小
使用resize2fs命令调整实际的文件系统大小。
# resize2fs /dev/mmcblk0p2 resize2fs 1.45.6 (20-Mar-2020) Filesystem at /dev/mmcblk0p2 is mounted on /; on-line resizing r[ 114.324033] EXT4-fs (mmcblk0p2): resizing filesystem from 524288 to 31150588 blocks equired old_desc_blocks = 2, new_desc_blocks = 119 [ 122.594492] EXT4-fs (mmcblk0p2): resized filesystem to 31150588 The filesystem on /dev/mmcblk0p2 is now 31150588 (1k) blocks long. # # #
执行完毕后,使用fdisk -l或者df -h都显示分区容量变大了。
以上操作,环境简单,错误也无所谓,但是在数据较重要场所,不建议这样操作。
原文地址:https://www.cnblogs.com/yddeboke/p/15110373.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 视频上云网关平台EasyCVR登录页开发控制台报net::ERR_CONNECTION_TIMED_OUT错误
- 视频监控系统视频上云解决方案EasyCVR集成海康EHome私有协议系列——开启存储服务
- 设计模式~责任链模式
- 大数据计算的基石——MapReduce
- SPA单页应用的优缺点
- 《JavaScript 模式》读书笔记(7)— 设计模式1
- CenterNet测试推理过程
- Docker学习笔记[nginx]
- MySQL集群搭建方案(PXC)
- Java8——行为参数化传递代码
- 【设计模式系列(二)】彻底搞懂单例模式
- 【设计模式系列(一)】彻底搞懂工厂模式
- 深入理解Arrays.sort()底层实现
- 这500多个字段引起的问题,大部分DBA都搞不定
- Java连接Mongodb工具类