emmc挂载,分区及格式化

2024-02-17 07:38
文章标签 格式化 分区 挂载 emmc

本文主要是介绍emmc挂载,分区及格式化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

https://blog.csdn.net/u011975319/article/details/51803126

该文章整合了一些网上的资源,如有侵权请告知,我会进行相应删除


1.linux 嵌入式时使用的emmc 最开始是没有进行分区设置的,所以系统要挂载emmc 需要先对emmc 进行分区及格式化。

首先需要使用fdisk 进行emmc 分区,下面为log 及说明

fdisk /dev/mmcblk1

Command (m for help): m        ---输入m获取fdisk工具的使用说明
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
m print this menu
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): n                      ---输入n创建新的分区
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended

Select (default p): p               ---输入p创建primary分区
Partition number (1-4, default 1): 1           ---输入分区号
First sector (2048-31116287, default 2048):              ---输入该分区的起始地址,回车使用默认值
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-31116287, default 31116287): 10000000           ---输入该分区的结束地址

Command (m for help): n         ---创建第二个分区
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
Partition number (1-4, default 2): 2
First sector (10000001-31116287, default 10000001):
Using default value 10000001
Last sector, +sectors or +size{K,M,G} (10000001-31116287, default 31116287): 20000000

Command (m for help): n       ---创建第三个分区
Partition type:
p primary (2 primary, 0 extended, 2 free)
e extended
Select (default p): p
Partition number (1-4, default 3): 3
First sector (20000001-31116287, default 20000001):
Using default value 20000001
Last sector, +sectors or +size{K,M,G} (20000001-31116287, default 31116287):
Using default value 31116287

Command (m for help): p       ---打印mmcblk1的分区情况

Disk /dev/sdb: 15.9 GB, 15931539456 bytes
64 heads, 32 sectors/track, 15193 cylinders, total 31116288 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00090a89

Device Boot Start End Blocks Id System
/dev/sdb1 2048 10000000 4998976+ 83 Linux
/dev/sdb2 10000001 20000000 5000000 83 Linux
/dev/sdb3 20000001 31116287 5558143+ 83 Linux

Command (m for help): t            ---修改分区的系统类型
Partition number (1-4): 1             ---选择要修改的分区号
Hex code (type L to list codes): l   ---打印可设置的系统类型

0 Empty 24 NEC DOS 81 Minix / old Lin bf Solaris
1 FAT12 27 Hidden NTFS Win 82 Linux swap / So c1 DRDOS/sec (FAT-
2 XENIX root 39 Plan 9 83 Linux c4 DRDOS/sec (FAT-
3 XENIX usr 3c PartitionMagic 84 OS/2 hidden C: c6 DRDOS/sec (FAT-
4 FAT16 <32M 40 Venix 80286 85 Linux extended c7 Syrinx
5 Extended 41 PPC PReP Boot 86 NTFS volume set da Non-FS data
6 FAT16 42 SFS 87 NTFS volume set db CP/M / CTOS / .
7 HPFS/NTFS/exFAT 4d QNX4.x 88 Linux plaintext de Dell Utility
8 AIX 4e QNX4.x 2nd part 8e Linux LVM df BootIt
9 AIX bootable 4f QNX4.x 3rd part 93 Amoeba e1 DOS access
a OS/2 Boot Manag 50 OnTrack DM 94 Amoeba BBT e3 DOS R/O
b W95 FAT32 51 OnTrack DM6 Aux 9f BSD/OS e4 SpeedStor
c W95 FAT32 (LBA) 52 CP/M a0 IBM Thinkpad hi eb BeOS fs
e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a5 FreeBSD ee GPT
f W95 Ext'd (LBA) 54 OnTrackDM6 a6 OpenBSD ef EFI (FAT-12/16/
10 OPUS 55 EZ-Drive a7 NeXTSTEP f0 Linux/PA-RISC b
11 Hidden FAT12 56 Golden Bow a8 Darwin UFS f1 SpeedStor
12 Compaq diagnost 5c Priam Edisk a9 NetBSD f4 SpeedStor
14 Hidden FAT16 <3 61 SpeedStor ab Darwin boot f2 DOS secondary
16 Hidden FAT16 63 GNU HURD or Sys af HFS / HFS+ fb VMware VMFS
17 Hidden HPFS/NTF 64 Novell Netware b7 BSDI fs fc VMware VMKCORE
18 AST SmartSleep 65 Novell Netware b8 BSDI swap fd Linux raid auto
1b Hidden W95 FAT3 70 DiskSecure Mult bb Boot Wizard hid fe LANstep
1c Hidden W95 FAT3 75 PC/IX be Solaris boot ff BBT
1e Hidden W95 FAT1 80 Old Minix
Hex code (type L to list codes): c             ---设置第一分区为W95 FAT32 (LBA)格式
Changed system type of partition 1 to c (W95 FAT32 (LBA))

Command (m for help): t                       
Partition number (1-4): 2                    ---修改第二分区的系统类型
Hex code (type L to list codes): c
Changed system type of partition 2 to c (W95 FAT32 (LBA))

Command (m for help): t
Partition number (1-4): 3                    ---修改第三分区的系统类型
Hex code (type L to list codes): c
Changed system type of partition 3 to c (W95 FAT32 (LBA))

Command (m for help): p                    ---打印mmcblk1的分区情况

Disk /dev/sdb: 15.9 GB, 15931539456 bytes
64 heads, 32 sectors/track, 15193 cylinders, total 31116288 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00090a89

Device Boot Start End Blocks Id System
/dev/sdb1 2048 10000000 4998976+ c W95 FAT32 (LBA)
/dev/sdb2 10000001 20000000 5000000 c W95 FAT32 (LBA)
/dev/sdb3 20000001 31116287 5558143+ c W95 FAT32 (LBA)

Command (m for help): w                   ---保存分区设置并退出
The partition table has been altered!

Calling ioctl() to re-read partition table.

执行:mkdosfs  /dev/mmcblk1p1            ---将/dev/mmcblk1p1格式化为FAT32格式

使用mount命令进行分区挂载

2.获取dosfstools(mkfs.vfat)源码

输入命令:

dpkg -S `type -p mkfs.vfat`  

这个命令会输出这个命令所在的包,如下是输出
dosfstools: /sbin/mkfs.vfat

 

type -p mkfs.vfat

是列出 mkfs.vfat命令所在的位置

/sbin/mkfs.vfat

 

dpkg -S是列出命令的包

 

第二步,下载这个包

apt-get source dosfstools

 

这样就得到了mkfs.vfat命令的源代码了


3.dosfstools的交叉编译

源码下面没有找相关的CC交叉编译环境的设置,直接使用make CC=arm-xxxx-xxx-gcc 即可直接进行交叉编译
---------------------
作者:山野1村夫
来源:CSDN
原文:https://blog.csdn.net/u011975319/article/details/51803126
版权声明:本文为博主原创文章,转载请附上博文链接!

 

这篇关于emmc挂载,分区及格式化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/717108

相关文章

vscode保存代码时自动eslint格式化图文教程

《vscode保存代码时自动eslint格式化图文教程》:本文主要介绍vscode保存代码时自动eslint格式化的相关资料,包括打开设置文件并复制特定内容,文中通过代码介绍的非常详细,需要的朋友... 目录1、点击设置2、选择远程--->点击右上角打开设置3、会弹出settings.json文件,将以下内

mysql数据库分区的使用

《mysql数据库分区的使用》MySQL分区技术通过将大表分割成多个较小片段,提高查询性能、管理效率和数据存储效率,本文就来介绍一下mysql数据库分区的使用,感兴趣的可以了解一下... 目录【一】分区的基本概念【1】物理存储与逻辑分割【2】查询性能提升【3】数据管理与维护【4】扩展性与并行处理【二】分区的

Linux磁盘分区、格式化和挂载方式

《Linux磁盘分区、格式化和挂载方式》本文详细介绍了Linux系统中磁盘分区、格式化和挂载的基本操作步骤和命令,包括MBR和GPT分区表的区别、fdisk和gdisk命令的使用、常见的文件系统格式以... 目录一、磁盘分区表分类二、fdisk命令创建分区1、交互式的命令2、分区主分区3、创建扩展分区,然后

开发板NFS挂载文件目录

文章目录 序NFS1. 安装 NFS 服务器和客户端在服务器上(NFS 服务器端)在客户端上(NFS 客户端) 2. 配置 NFS 服务器创建共享目录编辑 `/etc/exports` 文件启动 NFS 服务 3. 在客户端挂载 NFS 共享创建挂载点挂载 NFS 共享验证挂载 4. 设置开机自动挂载5. 解决权限问题 序 本节主要实现虚拟机(服务器)与开发板(客户端)通过N

海鸥相机存储卡格式化如何恢复数据

在摄影的世界里,‌每一张照片都承载着独特的记忆与故事。‌然而,‌当我们不慎将海鸥相机的存储卡格式化后,‌那些珍贵的瞬间似乎瞬间消逝,‌让人心急如焚。‌但请不要绝望,‌数据恢复并非遥不可及。‌本文将详细介绍在海鸥相机存储卡格式化后,‌如何高效地恢复丢失的数据,‌帮助您重新找回那些宝贵的记忆。‌ 图片来源于网络,如有侵权请告知 一、‌回忆备份情况 ‌海鸥相机存储卡格式化如何恢复数据?在意

数据库系统 第41节 数据库分区简介

数据库分区是一种数据库设计技术,用于将大型表或索引的数据分布到不同的物理区域,以提高查询性能、优化数据管理、简化维护任务,并提高数据的可用性。下面我将详细介绍每种分区类型,并结合伪代码或概念性的源代码来说明其实现方式。 1. 范围分区 (Range Partitioning) 范围分区是根据某个列的值范围来划分数据。例如,可以按照日期或数值范围来分区。 示例场景:一个订单表,按年份分区。

Windows环境下SD卡多分区 隐藏分区 解决python裸读写扇区失败

SD卡分区 右键“我的电脑”->“管理”->“磁盘管理”; 如果SD卡有文件系统,点击"删除卷",重新做卡; 删除文件系统后如下图,点击“新建简单卷”; 在导航页“指定卷大小”,设置分区的大小,留出剩余的空间; python读写SD卡 这里需要注意的是,写SD卡需要加锁,否则写不成功 #带文件系统,需要锁定卷,否则无法写扇区@contextlib.contextmanagerd

QString如何格式化字符串

在Qt中,QString类提供了多种方式来格式化字符串。这包括使用arg()方法、sprintf()风格的格式化(通过QString::asprintf()或QString::number()等辅助函数),以及从Qt 5.10开始引入的C++11风格的格式化(虽然Qt核心库本身并不直接支持C++20的std::format,但你可以使用第三方库或自己实现类似的功能)。不过,最常用的方法之一是使用a

Linux date命令 日期格式化与计算

参考资料 8.4.7 dateコマンド(システムの日付と時刻を表示する)【Linux】dateコマンドで日付フォーマットの変更及び日付計算の方法date コマンド 目录 一. 基本语法1.1 -d 选项1.2 格式化 二. 年月日格式化三. 日计算3.1 一天之前3.2 一天之后 四. 月计算4.1 两个月前的月初4.2 两个月后的月初4.3 指定月份的最后一天4.4 指定月份下个月

如何在Word中插入表格并进行高级格式化:冒号对齐、添加下划线并分栏

如何在Word中插入表格并进行高级格式化:详细教程 在Word中,表格是一个非常常用的工具,能够帮助我们更好地组织和展示信息。除此之外,本文还将深入探讨如何实现冒号对齐、添加专业的下划线以及隐藏表格线等高级技巧。通过这些技巧,能让你的文档更具美观性与专业性。 第一步:在Word页面上插入表格(大小为6行、2列) 插入表格 打开Word文档,将光标定位到想要插入表格的位置。点击菜单栏中的