赞
踩
fdisk : 这个命令是磁盘分区表操作工具,fdisk能将磁盘分区,同时也能为每个分区指定分区类型,总的来说,fdisk就是磁盘工具
在windows下硬盘分区很简单,有专门的磁盘管理工具,还有众多的第三方软件可以对硬盘进行分区,都是图形化的,操作简单方便。所以这里我们就不多说。
今天主要将的是在Linux下用 fdisk 这个命令来对硬盘进行分区的。Linux下对硬盘分区大致可以分为七步。
1、添加并识别硬件设备 fdisk -l 查看是否识别 或者 ls -l /dev/sdb 查看是否有这个设备
2、创建分区并识别分区 fdisk /dev/sdb 按照步骤一步步对硬盘分区,然后保存退出
3、制作文件系统 mkfs.ext4 /dev/sdb1 对sdb硬盘的第一个分区制作ext4文件系统
4、制作磁盘标签 e2lable /dev/sdb1 newpart 给分区起一个别名
5、创建挂载点 mkdir /mnt/sdb1 在/mnt 目录下新建一个挂载点
6、将分区信息写入文件系统分区表 修改/etc/fstab文件,将分区信息写入,保存退出
7、挂载文件系统 mount -a 读取fstab文件,挂载文件中所有文件系统。 df -Th 查看是否挂载上
第一步:我系统原来有一块硬盘 /dev/sda 大小60G,后来我再加了一个20G的硬盘,可以看到,已经识别到了: /dev/sdb
**第二步:**接下来我要对 sdb 进行分区,使用 fdisk /dev/sdb 命令 ,进入 fdisk 模式。这时,有好多选项:
我们输入 l 查看一下支持哪些磁盘分区类型,可以看到,支持这么多种分区类型。
我们输入 n 创建新的磁盘分区。
然后让我们选择Partition Type 分区类型,默认是 primary 主分区,还有 extend 扩展分区。我们选择默认,直接回车即可。
然后让我们选择分区数字,范围1-4。默认是从1开始的。如果上一步选的是扩展分区,则选择4。我们直接回车默认即可。
然后让我们选择扇区起始编号,默认是2048,我们也选默认,回车即可。
然后就让我们输入这个分区的大小了。这里我们输入的是 +5G ,即第一块分区的大小是5G。
这样,我们就已经建好了一个标准的Linux格式的分区类型了。
我们再建四个分区,一个swap分区类型的sdb2分区,一个FAT32分区类型的sdb3分区。一个extend扩展分区sdb4,扩展分区里面有一个逻辑分区 sdb5。
sdb2和sdb3都是主分区,建立方法和第一个差不多,只不过建成后输入 t 然后修改分区类型,再输入对应的分区类型ID即可。
扩展分区sdb4和逻辑分区sdb5建立方法有点不同。建立sdb4的时候,选择分区类型 e ,即扩展分区。然后一路回车即可。就是把剩下的所有空间都给sdb4。sdb4只是相当于一个容器,并不能真正的使用,要在其中建立逻辑分区才可以使用。所以我们新建逻辑分区sdb5,一路回车即可。就是把扩展分区的容量都给了逻辑分区sdb5了。然后输入 p 查看已分配的分区。输入 w 保存退出!
识别新分区: partprobe /dev/sdb
cat /proc/partitions 查看已识别的分区。这里我们可以看到已经识别到了我们刚刚建立的所有分区。
**第三步:**创建好了新分区后,我们就要对新分区分配文件系统了,不同的分区类型有不同的文件系统,使用的指令也不一样。扩展分区是一个容器,不用分配文件系统。sdb2交换分区类型是用命令 mkswap。其他几个分区类型用的是 mkfs 命令,sdb1和sdb5用的是标准的ext4文件系统,sdb3用的是vfat文件系统。(本来sdb5想用xfs文件系统,结果kali不支持)
**第四步(可选):**我们就可以给分区制作LABEL标签了,也就是别名,这一步可做可不做。只不过在最后修改fstab文件的时候可以用别名表示分区。e2label /dev/sdb1 newpart 。然后使用 blkid 可以查看已经制作好的文件系统的信息。
第五步: 我们就去/mnt/ 文件下建立挂载点,分别是 sdb1 、sdb3 、sdb5的挂载点。sdb2 交换分区不需要挂载点,sdb4扩展分区也不需要挂载点。
第六步: 我们就可以去修改 /etc/fstab 文件了,把我们的分区信息写入进去,保存退出,这里要注意的是swap分区类型的挂载点就是swap,文件系统也是swap。这里有6个字段:
第七步: 就是挂载文件系统了,使用mount -a ,就是挂载fstab文件中的所有文件系统。
然后使用 df -Th 查看已挂载的所有文件系统。
swap分区sdb2不显示在这里,因为它没有挂载点。
extend扩展分区sdb4也不会显示在这里,因为他仅仅是一个分区,并没有分配文件系统。
swap分区的作用是创建一个虚拟内存,开启虚拟内存的指令为 swapon -a,将开启所有fstab文件中的swap分区
关闭使用swapoff,如果只是关闭一个分区,swapoff /dev/sdb2,关闭所有 swapoff -a
查看虚拟内存空间变化可以使用 free -m ,查看当前的虚拟内存可以用 swapon -s
可以看到,开启了我们创建的虚拟内存后,虚拟内存数量多了一个,虚拟内存空间也变大了
现在把我们上面建立的几个分区都给卸载了
**第一步:**先卸载所有已挂载的分区。先查看哪些分区已经挂载上 df -Th ,再依次卸载。最后关闭虚拟分区,因为系统原来就分配有虚拟分区,所以我们只关闭我们自己新建的虚拟分区 swapoff /dev/sdb2 。再最后查看是否已卸载完
如果umount的时候,显示设备正忙。可以使用 fuser -mv /mnt/sdbx 来查看哪个进程在使用这个设备,然后kill掉即可。
**第二步:**修改 /etc/fstab 文件,把我们这几个分区的信息都给删除了或者注释掉
**第三步:**进入/dev/sdb 里面, fdisk /dev/sdb ,一路按 d ,把创建的所有分区给删除了,然后 p 查看是否删除干嘛 ,w 保存。
刷新一下 sdb 磁盘的分区信息 partprobe /dev/sdb
然后查看识别到的分区信息 cat /proc/partitions ,可以看到已经删除干净了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。