将一块磁盘分区,大体分为三个步骤:1. D盘;2. 分区;3. 格式化。
下面以一个U盘为例,演示过程:
1. D盘
a. 一般插入U盘,可能会自动挂载,那么,需要手动解挂
df -h 查看挂载点,然后解挂。如下图所示:
b. 确定磁盘之前是否已经分过区
fdisk -l 查看系统分区表---list partition table(s)
从下图中可以看出,/dev/sdb之前分过区。
c. d盘
dd if=/dev/zero of=/dev/sdb bs=1024 count=10240
一般将前512字节的MBR信息删除后,该盘就没有分区信息了。
/dev/null 回收站(写)
/dev/zero 不管读多少都是零
/dev/random 读出来的数据为随机的
2. 分区
[root@frank ~]# fdisk /dev/sdb
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 //查看所有分区类型,以供我们设置相应分区的类型
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 //改变某个分区的id(类型)
u change display/entry units
v verify the partition table
w write table to disk and exit //保存并退出
x extra functionality (experts only)
a. 通过fdisk的n指令来新建一个分区
b. 通过fdisk的t指令来改变分区的类型
c. 通过fdisk的a命令设置主活动分区
Q1:为什么fdisk设置分区类型后还需要mkfs.xxx命令来进行格式化,即partition type和fs type的区别?
partition types id一般用来指明该分区是给那种OS识别使用,感觉partition type的概念比fs type的大;
当指定partition type id后,类似指定这个分区是给什么操作系统来用,至于这个操作系统支持什么类型的文件系统,那么我们就可以将其格式化成什么类型的文件系统,一般一种操作系统支持多种类型的文件系统。 所以,一般应该将fs type对应partition type。
d. 将磁盘分好区后,使用 fdisk w保存退出。
如果这个时候ls /dev/sdb* 如果看不到所分的分区节点
partx -a /dev/sdb //重新加载分区表
f. 分区完成后,接下来就进行格式化。
说明:ntfs格式的U盘或硬盘,Linux下不会自动挂载。
3种方式挂载ntfs格式的磁盘
1. ntfs-3g /dev/sdbx /mnt
2. mount.ntfs-3g /dev/sdbx /mnt
3. mount -t ntfs-3g /dev/sdbx /mnt