Linux U盘分区格式化 fdisk命令
今天为方便修复系统,做了个U盘WINPE的启动盘。当我兴高采烈的将这个U盘
插到Linux虚拟机上却发现出现了4个分区,而且根本就挂不上,顿时便郁闷了!
看来这样的分区Linux识别不了。只有用个专门的U盘来当启动盘了。这个U盘我
还得用来拷资料呢,那就乖乖的恢复它吧。
首先想到的是在windows下格式化,这是最简单的了。一试,没用,分区表格不了
看来得用命令行的删除分区信息的工具了,无奈,对windows 命令不熟悉,只能
放弃了。。。
于是想到了linux下fdisk这个东东,以前没仔细研究过,看来是刚拿来研究的时
候了。
google找了个教程,作为参考:
-------------------------------------------------------------
#fdisk /dev/sdb /*进入fdisk命令操作空间*/
#Command (m for help): m /*命令查看*/
Command action
a toggle a bootable flag引导扇区
b edit bsd disklabel 编辑卷标(linux下使用的卷标bsd通用)
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): p
Disk /dev/sdb: 2055 MB, 2055208960 bytes
64 heads, 62 sectors/track, 1011 cylinders
Units = cylinders of 3968 * 512 = 2031616 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdb1 1 133 263871+ 6 FAT16
/dev/sdb2 * 134 200 132928 83 Linux /*boot 分区*/
#Command (m for help): d
#Partition number (1-4): 1
Command (m for help): p
Disk /dev/sdb: 2055 MB, 2055208960 bytes
64 heads, 62 sectors/track, 1011 cylinders
Units = cylinders of 3968 * 512 = 2031616 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdb2 * 134 200 132928 83 Linu
#Command (m for help): d
Selected partition 2
#Command (m for help): p /*查看此时已无分区*/
Disk /dev/sdb: 2055 MB, 2055208960 bytes
64 heads, 62 sectors/track, 1011 cylinders
Units = cylinders of 3968 * 512 = 2031616 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
#Command (m for help): w /*最后写入分区表*/
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.
/*下边给磁盘增加一分区并格式化*/
#ls /dev/sd*
#/dev/sda /dev/sda1 /dev/sda2 /dev/sdb
#Command (m for help): n
Command action
e extended
p primary partition (1-4)
#p /*增加主分区*/
#Partition number (1-4): 1
#First cylinder (1-1011, default 1): /*回车默认*/
Using default value 1
#Last cylinder, +cylinders or +size{K,M,G} (1-1011, default 1011): /*回车默认*/
Using default value 1011
#Command (m for help): p /*此时有sdb1分区*/
Disk /dev/sdb: 2055 MB, 2055208960 bytes
64 heads, 62 sectors/track, 1011 cylinders
Units = cylinders of 3968 * 512 = 2031616 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdb1 1 1011 2005793 83 Linux
#Command (m for help): w /*最后写入分区表*/
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
#sudo mkfs.vfat -F 32 -n disk /dev/sdb1 /*格式化*/
下面便是磁盘格式化了 命令是mkfs.ext3 设备名 这里的设备名要是分区名 , 而不是硬盘设备名 (切记先记好分区名 , 别输入错 , 不然格式化错了就麻烦了)
等待之后分区就格式化好了 , 记得复制之前要一下
再次提示下修复命令 fsck.ext3 设备名
-----------------------------------------------------------------------