我的位置:主页 > 帮助教程 > 其他教程 >

fdisk/gdisk磁盘分区工具

易我分区大师-专业版 分区软件下载

  fdisk是Linux/Unix系统中的一款交互式磁盘分区工具,尤其适合新手用户(除非明确发出“w”指令存盘,否则不会真的修改磁盘结构;即使不小心做了错误的分区操作,也可以使用“q”退出程序)。

  较新版本的fdisk支持典型的GPT、MBR分区表,以及Sun、SGI和BSD分区表。gdisk与fdisk的作用类似,用法也基本一样,主要区别在于:

  fdisk主要用于MBR分区(早期的fdisk不支持GPT)

  gdisk主要用于GPT分区(如果是操作GPT分区,推荐使用gdisk)

  一、磁盘分区基本知识

  ++ 操作系统使用磁盘的典型过程

  1)内核识别到磁盘(启动时自动识别,可通过lsblk、fdisk -l等方式检查)

  2)为磁盘分区(系统安装时,或者后续使用fdisk、gdisk、parted等工具)

  3)格式化分区(使用mkfs.*、mkswap等工具)

  4)将格式化好的分区挂载到目录(使用mount手动挂载,或者配置/etc/fstab开机挂载、autofs自动挂载)

  5)访问挂载点目录(使用cp、vim、cat、…… 等文档管理命令存入/读出数据)

  ++ 磁盘分区表类型

  1)MBR(Master Boot Record,主引导记录)

  使用磁盘的第一个扇区(512字节)存储分区边界、类型、启动标识等信息。最多支持4个主分区(或3个主分区+1个扩展分区),使用扩展分区可以容纳更多数量的逻辑分区;MBR分区表通常也称为msdos分区表、dos分区表,支持的最大磁盘容量为2.2TB。【注:部分硬盘厂家将扇区容量升级为4KB,这样的话MBR最大支持的磁盘容量允许提升到16TB】

  2)GPT(GUID Partition Table,全局唯一标识分区表)

  使用磁盘的前33个LBA逻辑区块(默认512字节/块)和最后33个LBA备份区块来记录分区信息,其中LBA0的512字节用于兼容MBR的保护性区块,方便升级转换。GPT分区表支持2.2TB以上的大容量磁盘,可管理的硬盘大小达到了18EB(1EB=1024PB=1,048,576TB);GPT模式的每一个分区都是主分区,不再有扩展分区、逻辑分区。

  ++ Linux系统中的磁盘表示

  ++ 内核识别的磁盘类型:hd(IDE硬盘)、sd(SCSI硬盘/U盘/移动硬盘)、vd(虚拟硬盘)

  ++ 每块磁盘按字母编序(sda、sdb、sdc、……)

  ++ 每个分区按数字编序(sda1、sda2、sda3、……)

  ++ 操作磁盘或分区时,可指定设备位置(/dev/sda、/dev/sda1)

  二、分区前,检查磁盘及分区列表

  1)使用lsblk工具(比较简洁)

 

  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
[root@svr7 ~]# lsblkNAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTsda               8:0    0   80G  0 disk ├─sda1            8:1    0    1G  0 part /boot└─sda2            8:2    0   79G  0 part  ├─centos-root 253:0    0   50G  0 lvm  /  ├─centos-swap 253:1    0    2G  0 lvm  [SWAP]  └─centos-home 253:2    0   27G  0 lvm  /homesdb               8:16   0   20G  0 disk  //无任何有效分区

2)使用fdisk的-l选型(比较详细)

 

  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
[root@svr7 ~]# fdisk  -l
磁盘 /dev/sda:85.9 GB, 85899345920 字节,167772160 个扇区Units = 扇区 of 1 * 512 = 512 bytes扇区大小(逻辑/物理):512 字节 / 512 字节I/O 大小(最小/最佳):512 字节 / 512 字节磁盘标签类型:dos磁盘标识符:0x000cef1b   设备 Boot      Start         End      Blocks   Id  System/dev/sda1   *        2048     2099199     1048576   83  Linux/dev/sda2         2099200   167772159    82836480   8e  Linux LVM
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区Units = 扇区 of 1 * 512 = 512 bytes扇区大小(逻辑/物理):512 字节 / 512 字节I/O 大小(最小/最佳):512 字节 / 512 字节
.. ..

 

三、fdisk分区操作  

1)进入分区操作界面

 

  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
[root@svr7 ~]# fdisk  /dev/sdb欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。使用写入命令前请三思。
Device does not contain a recognized partition table使用磁盘标识符 0x9bcb848a 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):

2)获取分区操作帮助(使用m指令,gdisk还可使用?号)

 

  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
命令(输入 m 获取帮助):m命令操作   a   toggle a bootable flag  //标记为“启动分区”   b   edit bsd disklabel   c   toggle the dos compatibility flag   d   delete a partition //删除分区   g   create a new empty GPT partition table  //创建全新的GPT分区表   G   create an IRIX (SGI) partition table   l   list known partition types  //列出已知的分区类型及ID编码   m   print this menu //显示这个指令帮助菜单   n   add a new partition //新建分区   o   create a new empty DOS partition table  //创建全新的DOS分区表(缺省)   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)

 

3)MBR分区操作示例

目标:2个主分区(1GiB、2GiB)、1个扩展分区(全部剩余空间)、2个逻辑分区(3GiB、4GiB,其中一个标记为交换分区)

 

  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
[root@svr7 ~]# fdisk  /dev/sdb欢迎使用 fdisk (util-linux 2.23.2)。.. ..命令(输入 m 获取帮助):nPartition type:   p   primary (0 primary, 0 extended, 4 free)   e   extendedSelect (default p):Using default response p分区号 (1-4,默认 1):起始 柱面 (1-2610,默认为 1):将使用默认值 1Last 柱面, +柱面 or +size{K,M,G} (1-2610,默认为 2610):+1G分区 1 已设置为 Linux 类型,大小设为 1 GiB
命令(输入 m 获取帮助):nPartition type:   p   primary (1 primary, 0 extended, 3 free)   e   extendedSelect (default p): //选择p表示要创建主分区Using default response p分区号 (2-4,默认 2):起始 柱面 (132-2610,默认为 132):将使用默认值 132Last 柱面, +柱面 or +size{K,M,G} (132-2610,默认为 2610):+2G //通过“ +大小”表示结束位置分区 2 已设置为 Linux 类型,大小设为 2 GiB
命令(输入 m 获取帮助):nPartition type:   p   primary (2 primary, 0 extended, 2 free)   e   extendedSelect (default p): e //选择e表示要创建扩展分区分区号 (3,4,默认 3):起始 柱面 (394-2610,默认为 394):将使用默认值 394Last 柱面, +柱面 or +size{K,M,G} (394-2610,默认为 2610):将使用默认值 2610分区 3 已设置为 Extended 类型,大小设为 17 GiB
命令(输入 m 获取帮助):nPartition type:   p   primary (2 primary, 1 extended, 1 free)   l   logical (numbered from 5)Select (default p): l  //选择l表示要创建逻辑分区添加逻辑分区 5起始 柱面 (394-2610,默认为 394):将使用默认值 394Last 柱面, +柱面 or +size{K,M,G} (394-2610,默认为 2610):+3G分区 5 已设置为 Linux 类型,大小设为 3 GiB
命令(输入 m 获取帮助):nPartition type:   p   primary (2 primary, 1 extended, 1 free)   l   logical (numbered from 5)Select (default p): l  //选择l表示要创建逻辑分区添加逻辑分区 6起始 柱面 (787-2610,默认为 787):将使用默认值 787Last 柱面, +柱面 or +size{K,M,G} (787-2610,默认为 2610):+4G分区 6 已设置为 Linux 类型,大小设为 4 GiB
命令(输入 m 获取帮助):t  //更改分区ID编码分区号 (1-3,5,6,默认 6):6Hex 代码(输入 L 列出所有代码):82  //82对应SWAP类型,83对应EXT4/3类型已将分区“Linux”的类型更改为“Linux swap / Solaris”
命令(输入 m 获取帮助):p //查看分区表信息,确认操作结果
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区Units = 柱面 of 16065 * 512 = 8225280 bytes扇区大小(逻辑/物理):512 字节 / 512 字节I/O 大小(最小/最佳):512 字节 / 512 字节磁盘标签类型:dos磁盘标识符:0xc5f8558e
   设备 Boot      Start         End      Blocks   Id  System/dev/sdb1               1         132     1058816   83  Linux/dev/sdb2             132         394     2097152   83  Linux/dev/sdb3             394        2610    17807833    5  Extended/dev/sdb5             394         787     3155968   83  Linux  //逻辑分区从编号5开始(1~4预留给主分区和扩展分区)/dev/sdb6             787        1309     4199424   82  Linux swap / Solaris

 

 

4)退出分区操作界面(如果不需要保存分区结果,使用q退出)

 

  •  
  •  
  •  
命令(输入 m 获取帮助):q
[root@svr7 ~]#

 

 

5)GPT分区操作示例(推荐GPT,只有主分区,操作/理解都更简单) 

目标:2个主分区(5GiB、10GiB)

  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
[root@svr7 ~]# fdisk  /dev/sdb欢迎使用 fdisk (util-linux 2.23.2)。.. ..命令(输入 m 获取帮助):g //创建GPT分区表Building a new GPT disklabel (GUID: E382208C-4113-4A54-86EA-F1F4574109A1)
命令(输入 m 获取帮助):n分区号 (1-128,默认 1):第一个扇区 (2048-41943006,默认 2048):Last sector, +sectors or +size{K,M,G,T,P} (2048-41943006,默认 41943006):+5G已创建分区 1
命令(输入 m 获取帮助):n分区号 (2-128,默认 2):第一个扇区 (10487808-41943006,默认 10487808):Last sector, +sectors or +size{K,M,G,T,P} (10487808-41943006,默认 41943006):+10G已创建分区 2
命令(输入 m 获取帮助):p //查看分区表信息,确认操作结果磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区Units = 扇区 of 1 * 512 = 512 bytes扇区大小(逻辑/物理):512 字节 / 512 字节I/O 大小(最小/最佳):512 字节 / 512 字节磁盘标签类型:gptDisk identifier: E382208C-4113-4A54-86EA-F1F4574109A1
#         Start          End    Size  Type            Name 1         2048     10487807      5G  Linux filesyste 2     10487808     31459327     10G  Linux filesyste

 

 

6)退出分区操作界面(如果需要保存分区结果,使用w退出)

 

  •  
  •  
  •  
  •  
  •  
  •  
命令(输入 m 获取帮助):wThe partition table has been altered!
Calling ioctl() to re-read partition table.正在同步磁盘。[root@svr7 ~]#

 

 

 

四、分区后,刷新分区表  

++ 对新的空磁盘作分区操作,一般只需要使用partprobe检测、刷新分区表即可

++ 如果是更改已经使用的磁盘的分区表,建议最好reboot重启一次,以便完全识别更改后的分区表

 

  •  
  •  
  •  
  •  
  •  
  •  
[root@svr7 ~]# partprobe   /dev/sdb[root@svr7 ~]# lsblk  /dev/sdbNAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINTsdb      8:16   0  20G  0 disk├─sdb1   8:17   0   5G  0 part└─sdb2   8:18   0  10G  0 part

 

 

五、格式化分区  

++ 根据需要的格式选择分区工具,执行格式化操作

1)将分区/dev/sdb1格式化成XFS文件系统

 

  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
[root@svr7 ~]# mkfs.xfs  /dev/sdb1meta-data=/dev/sdb1              isize=512    agcount=4, agsize=327680 blks         =                       sectsz=512   attr=2, projid32bit=1         =                       crc=1        finobt=0, sparse=0data     =                       bsize=4096   blocks=1310720, imaxpct=25         =                       sunit=0      swidth=0 blksnaming   =version 2              bsize=4096   ascii-ci=0 ftype=1log      =internal log           bsize=4096   blocks=2560, version=2         =                       sectsz=512   sunit=0 blks, lazy-count=1realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@svr7 ~]# blkid  /dev/sdb1 //确认结果/dev/sdb1: UUID="cbfb1e19-79b4-4576-91ec-de228220cc53" TYPE="xfs" PARTUUID="e91cf9ec-7087-42b1-9f40-7fe6ed8c7ab5"

 

 

2)将分区/dev/sdb2格式化成EXT4文件系统

 

  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
[root@svr7 ~]# mkfs.ext4  /dev/sdb2mke2fs 1.42.9 (28-Dec-2013)文件系统标签=.. ..    Allocating group tables: 完成正在写入inode表: 完成Creating journal (32768 blocks): 完成Writing superblocks and filesystem accounting information: 完成
[root@svr7 ~]# blkid  /dev/sdb2  //确认结果/dev/sdb2: UUID="cf6f0e56-e910-4d8b-91aa-7854b280ddc6" TYPE="ext4" PARTUUID=

本文为原创,转载请注明原网址:https://www.yiwofenqu.com/qtjc/201.html

本文关键词: 磁盘分区工具 k磁盘分区

易我分区大师-免费版 分区工具下载
上一篇:U盘无法格式化怎么办?怎么用分区工具恢复? 下一篇:【磁盘分区工具】扩容分区后数据还在吗?

使用教程分类

标签

相关教程

最新教程