fdisk和parted命令区别

吾爱主题 阅读:278 2024-04-05 15:10:46 评论:0

前言

提示:这里可以添加本文要记录的大概内容:

二者都可以对linux的硬盘进行分区,但是二者细节上来说,又有很大的区别,如果不适用就会造成磁盘空间浪费。

提示:以下是本篇文章正文内容,下面案例可供参考

一、fdisk

1

fdisk [必要参数][选择参数]

必要参数:

  • -l 列出素所有分区表

  • -u 与"-l"搭配使用,显示分区数目

选择参数:

  • -s<分区编号> 指定分区

  • -v 版本信息

菜单操作说明

  • m :显示菜单和帮助信息

  • a :活动分区标记/引导分区

  • d :删除分区

  • l :显示分区类型

  • n :新建分区

  • p :显示分区信息

  • q :退出不保存

  • t :设置分区号

  • v :进行分区检查

  • w :保存修改

  • x :扩展应用,高级功能

1.fdisk命令只支持msdos,分区的时候只支持小容量硬盘(<=2T),但是如果不需要分区的话,那么整块sdb硬盘,类型为msdos,那么他的大小是可以大于2T的。

2.fdisk命令不支持gpt,所以当使用fdisk命令给gpt类型硬盘分区是会出现告警,就像下面例子中的WARNING

[root@linux ~]# fdisk /dev/sdc

WARNING: GPT (GUID Partition Table) detected on '/dev/sdc'! The util fdisk doesn't support GPT. Use GNU Parted.        
#这里明确提示fdisk不支持GPT;请使用 gnu parted来操作


WARNING: The size of this disk is 5.4 TB (5368709120000 bytes).
DOS partition table format can not be used on drives for volumes
larger than (2199023255040 bytes) for 512-byte sectors. Use parted(1) and GUID 
partition table format (GPT).


WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): #这里可以按 e  或help查看帮助
    

3.当使用parted命令给一个5T的硬盘分好三个分区之后,在使用fdisk命令查看,会不兼容(parted打印的分区有三个,而fdisk命令打印的分区只有一个)

[root@linux ~]# parted /dev/sdc print
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 5369GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start  End  Size  File system  Name  Flags

[root@linux ~]# parted /dev/sdc
GNU Parted 2.1
Using /dev/sdc
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mkpart a 1 100G
(parted) mkpart b 100G 500G                                               
(parted) mkpart c 500G 2000G
(parted) print                                                            
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 5369GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  100GB   100GB   ext4         a
 2      100GB   500GB   400GB                b
 3      500GB   2000GB  1500GB               c

(parted) quit                                                             
Information: You may need to update /etc/fstab.                           

[root@linux ~]# fdisk -l /dev/sdc

WARNING: GPT (GUID Partition Table) detected on '/dev/sdc'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sdc: 5368.7 GB, 5368709120000 bytes
255 heads, 63 sectors/track, 652708 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1      267350  2147483647+  ee  GPT
[root@linux ~]# 

二、parted

  parted [选项] [设备] [命令[参数]]

        选项:

            -l,–list:显示所有块设备;

        [命令[参数]]:

            mklabel label-type:设置分区表类型;

                label-type:

                   aix,amiga,bsd,dvh,gpt,loop,mac,msdoc,pc98,sun

            name partition name:设置分区名;                

                partition:分区号码;

                    从1开始的数字,例如:指定/dev/sda5分区,name 5 即可;

            mkpart part-type [fs-type] start end:创建分区;

                part-type:分区类型;

                    primary:主分区;

                    extended:扩展分区;

                    logical:逻辑分区;

                fs-type:文件系统类型;

                    ext[2|3|4],linux-swap,xfs等;

                start:分区开始位置;

                end:分区结尾位置;   

            print:查看指定磁盘的分区表;

            rescue start end:恢复已被删除的分区;

            rm partition:删除指定分区;

                partition:分区号码;

                    从1开始的数字,例如:想要删除指定/dev/sda5分区,rm 5 即可;      

            set partition flag state:设置分区标记;

                flag:

                    boot:引导分区;

                    hidden:隐藏分区;

                    raid:磁盘阵列;

                    lvm:逻辑卷;

                    注意:此处不支持swap分区,swap分区可以在创建分区时指定。

                state:

                    on:激活状态;

                    off:关闭状态;

            quit:退出parted交互模式;

            select device:选择操作的磁盘,交互模式中使用。

1.支持msdos和gpt,可以支持大硬盘,也支持小硬盘。

2.区分parted命令给msdos类型和gpt类型硬盘分区的不同:

(1)给msdos类型硬盘分区:

[root@linux ~]# parted /dev/sdb
GNU Parted 2.1
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print        
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 53.7GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start  End  Size  Type  File system  Flags

(parted) mkpart aaa 1 10G          #使用mkpart添加分区
parted: invalid token: aaa         #显示无效的输入
Partition type?  primary/extended? primary            #这里要求选择分区类型(主分区/扩展分区?)先创建一个主分区                    
File system type?  [ext2]? ext4                 #这里提醒确定文件系统的类型,输入ext4                          
Start? 1                                        #分区的开始:1                         
End? 10G                                        #分区结束:10G那么就确定了分区是一个10G大小的分区                         
(parted) print                                  #print打印分区表                          
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 53.7GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type     File system  Flags
 1      1049kB  10.0GB  9999MB  primary
                                                       #这里可以看到一个大小为10G,类型为主分区的文件系统已经创建完成                                  
(parted) 

(2)给gpt类型类型硬盘分区:

[root@linux ~]# parted /dev/sdc print
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 5369GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start  End  Size  File system  Name  Flags

[root@centos6 ~]# parted /dev/sdc
GNU Parted 2.1
Using /dev/sdc
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mkpart a 1 100G
(parted) mkpart b 100G 500G                                               
(parted) mkpart c 500G 2000G
(parted) print                                                            
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 5369GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  100GB   100GB   ext4         a
 2      100GB   500GB   400GB                b
 3      500GB   2000GB  1500GB               c

(parted)

代码如下(示例):

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import  ssl
ssl._create_default_https_context = ssl._create_unverified_context

总结

提示:这里对文章进行总结:

msdos

  • 支持小于2T的硬盘,不支持大于2T的硬盘
  • 有主分区,扩展分区,逻辑分区
  • 如果使用fdisk命令给一个大于2T的msdos类型硬盘分区,只能给2T的部分分区,超过2T的部分不能使用,也就浪费了

gpt

  • 支持大小容量的硬盘
  • 不区分主分区,扩展分区,逻辑分区,也没有4个分区数量的限制

到此这篇关于fdisk和parted命令区别的文章就介绍到这了,更多相关内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文地址:https://blog.csdn.net/LShuo666/article/details/129120696

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容