Linux下对SD卡分区操作
一、使用linux下的磁盘管理工具fdisk
sudo fdisk /dev/mmcblk0
使用fdisk打开你的SD卡设备名称,我的设备是mmcblk0,是自己SD卡在linux下的设备名称。
二、进入fdisk管理工具
我们只需要使用到fdisk的的几个主要命令:
m:使用帮助
n: 创建一个分区
d: 删除一个分区
p:打印分区信息
t:修改分区ID,通过修改ID我们可以改变分区格式,例如windows的fat32格式id为6和linux下ext3格式id为83
w:保存分区信息并退出
三、创建分区
1.打印显示已有分区
Command (m for help): p
2.删除已有分区,输入d之后选择分区编号
Command (m for help): d
3.新建分区
3.1新建主分区
Command (m for help): n
紧接着输入p
输入n后选择p建立一个主分区,选择分区编号为1,分区起始柱面位置(first cylinder)选择1,末端位置(last cylinder)选择23
3.2建立扩展分区
输入e
输入n后选择e建立一个扩展分区,选择编号2,起始位置和末端选择默认的24~1023
3.3建立逻辑分区
Command (m for help): n
Command action
l logical(5 or over)
p primary partition(1 - 4)
四、修改分区ID
输入t
五、保存退出
Command (m for help): p
输入w可以看看刚刚建立的分区
Command (m for help): w
六、格式化分区
在第四步之后你会发现你的sd卡丝毫反应,这是因为第三步仅仅是写入分区表信息而没有完成格式化
FAT格式分区格式化命令 mkfs.vfat /dev/mmcblk0
ext3格式分区的格式化命令mkfs.ext3 /dev/mmcblk0
这里要注意,如果你紧接着就使用这两个命令进行格式化会提示:
无法对 /dev/mmcblk0 进行 stat 调用 --- 没有那个文件或目录
这是因为我们写进去的分区表还未生效,把SD卡取下,再插入就OK了,这下你可以在/dev/mmcblk0p*看到你建立的分区,然后使用格式化命令分区格式化对应格式的分区,如果你SD卡原先有东西,再格式化后面加 -I 参数,覆盖掉里面的内容。
七、修改分区名字
修改ext3格式的label命令 e2label /dev/mmcblk0 labelname