aa0660 发表于 2018-5-21 07:42:23

linux 下的GPT分区

  Linux下的GPT分区,这是另外一种分区,针对MBR分区,它有很多优点:
  

  (1)几乎突破了分区个数的限制。
  

  在GPT分区表中最多可以支持128个主分区。
  

  (2)单个分区容量几乎没有限制。
  

  单个分区最大支持1EB容量。
  

  因此GPT分区中,主分区和扩展分区,逻辑分区的概念已经很模糊了。甚至没必要这么叫。其实我们知道
  

  扩展分区之所以存在,意义就是为了解决MBR中分区个数的限制问题。既然在GPT中,分区个数几乎没有了
  

  限制,那么这些概念当然就模糊起来了。
  

  (3)以下是创建GPT分区的步骤:

  

  依然是新加入了一块硬盘,我们要为它分区。使用的工具是”parted”,这个工具既可以做MBR分区,又可以做GPT分区。当然了,还是主要用它来做GPT分区,下面是分区的操作流程:
  

  1.在命令行键入命令“parted”,如下:
  # parted
  GNU Parted 2.1
  使用 /dev/sda
  Welcome to GNU Parted! Type 'help' to view a list of commands.
  (parted)
  

  2.先来看看parted这个工具的帮助信息吧,键入help,出现如下信息,以下信息可以帮我们进行分区:
  align-check TYPE N                        check partition N for
  TYPE(min|opt) alignment
  check NUMBER                           do a simple check on the
  file system
  cp FROM-NUMBER TO-NUMBER   copy file system to
  another partition
  help                            print general help, or
  help on COMMAND
  mklabel,mktable LABEL-TYPE               create a new disklabel
  (partition table)
  mkfs NUMBER FS-TYPE                      make a FS-TYPE file
  system on partition NUMBER
  mkpart PART-TYPE START END   make a partition
  mkpartfs PART-TYPE FS-TYPE START END   make a partition with a
  file system
  move NUMBER START END                  move partition NUMBER
  name NUMBER NAME                         name partition NUMBER as
  NAME
  print    display the partition
  table, available devices, free space, all found partitions,
  or a particular partition
  quit                                     exit program
  rescue START END                         rescue a lost partition
  near START and END
  resize NUMBER START END                  resize partition NUMBER
  and its file system
  rm NUMBER                              delete partition NUMBER
  select DEVICE                            choose the device to
  edit
  set NUMBER FLAG STATE                  change the FLAG on
  partition NUMBER
  toggle ]                   toggle the state of FLAG
  on partition NUMBER
  unit UNIT                              set the default unit to
  UNIT
  version                                  display the version
  number and copyright information of GNU Parted
  

  

  

  3.下面选择新加入的那块硬盘,在这里,它的名字是/dev/sdb,选择这个设备进入分区即可:
  (parted) select /dev/sdb
  使用 /dev/sdb
  (parted)
  

  

  4.接着要选择分区表的格式,应该选为gpt格式。表示我们是GPT分区,键入”mklabel gpt”,如下:
  (parted) select /dev/sdb
  使用 /dev/sdb
  (parted) mklabel gpt
  (parted) mklabel gpt
  警告: The existing disk label on /dev/sdb will be destroyed and all
  data on this disk will be lost. Do you want to continue?
  是/Yes/否/No? y
  

  5.在parted中,既可以选择交互式的分区(即有问有答的方式),也可以选择
  

  命令的方式,我们用交互式的方式分区。
  

  键入命令mkpart,如下:
(parted) mkpart
分区名称?[]? fuly
  6.这里是让我们给分区起一个名字。因为GPT分区中模糊了主分区,扩展分区的概念,就没有了那些规定,
  

  因此分区的名称可以随意来起来。随便起一个名字”fuly“,如下:
  (parted) mkpart
  分区名称?[]? fuly
  文件系统类型??
  

  7.又让你来选择文件系统的类型了,这里先不管,默认即可。直接按下enter键,如下:
  (parted) mkpart
  分区名称?[]? fuly
  文件系统类型??
  起始点?
  

  8.这里是让输入文件大小的起始点。注意,这里不同于MBR分区中的起始点。在这里输入的是实际文件的大小起始点。
  

  比如我想给这个分区分200M,那么它的起始点在这里就是0,键入0,如下:
  起始点? 0
  结束点? 200
  警告: The resulting partition is not properly aligned for best
  performance.
  忽略/Ignore/放弃/Cancel? Cancel
  

  9.尽然弹出了警告,大概意思就是磁盘中的存储没有达到最好的对齐方式,造成的原因就是我们的起点从0开始了。
  

  如果你不理解,就记住即可。这里我们取消,然后从1开始即可。如下:
  (parted) mkpart
  分区名称?[]? fuly
  文件系统类型??
  起始点? 1
  结束点? 2000
  

  10.这样子再一步如图中操作,就完成了这个分区了。那么我们来看看这个分区存在了否,键入print即可,如下:
  (parted) print
  Model: VMware, VMware Virtual S (scsi)
  Disk /dev/sdb: 21.5GB
  Sector size (logical/physical): 512B/512B
  Partition Table: gpt
  

  NumberStart   End   Size    File systemName标志
  1      1049kB2000MB1999MB               fuly
  

  

  11.从上图中看到我们刚刚创建的分区fuly。也可以看到它的大小实际上是1999MB。
  

  上面是用交互式的方法来分区的。下面我们再来一个分区,使用命令行的方式分区。如下:
  (parted) mkpartmage 2000 3000
  (parted)
  

  是不是更简单了,其实这条命令的意思就是创建一个名为mage的分区,大小为1000M,起始点为2000(
  

  因为我们刚才的终点是2000嘛),终点自然就是3000了。
  

  12.那么分区成功了吗?再用print看一下,如下:
  (parted) print
  Model: VMware, VMware Virtual S (scsi)
  Disk /dev/sdb: 21.5GB
  Sector size (logical/physical): 512B/512B
  Partition Table: gpt
  

  NumberStart   End   Size    File systemName标志
  1      1049kB2000MB1999MB               fuly
  2      2000MB3000MB1000MB               mage
  

  (parted)
  

  分区mage 存在了。
  

  13.好了,假设我们就需要两个分区,那么分区已经完成了。怎么保存退出呢?
  

  只要键入quit即可。如下:
  (parted) quit
  信息: You may need to update /etc/fstab.
  

  好了,不同于MBR还有用w来写入分区表,GPT使用quit退出时就直接生效了。
  

  这样子我们的整个分区工作就完成了。
  

  14.我们曾经用”fdisk -l”命令查看硬盘分区情况,现在再来试试,如下:
  # fdisk -l
  

  Disk /dev/sda: 21.5 GB, 21474836480 bytes
  255 heads, 63 sectors/track, 2610 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: 0x0006a288
  

  Device Boot      Start         End      Blocks   IdSystem
  /dev/sda1   *         1      1020   8192000   83Linux
  Partition 1 does not end on cylinder boundary.
  /dev/sda2            1020      1275   2048000   82Linux swap / Solaris
  

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

  

  Disk /dev/sdb: 21.5 GB, 21474836480 bytes
  255 heads, 63 sectors/track, 2610 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   IdSystem
  /dev/sdb1               1      2611    20971519+eeGPT
  

  我们发现此时并不能查看到我们刚才的分区信息。因为使用fdisk工具无法查看gpt分区类型的详细信息。
  只能查看msdos类型的分区信息(即MBR分区)。那么怎么查看呢?还是要使用parted工具。先选中gpt这样子分区

  

  的硬盘,然后print即可。你可以直接键入命令“print all".如下:
  # parted
  GNU Parted 2.1
  使用 /dev/sda
  Welcome to GNU Parted! Type 'help' to view a list of commands.
  (parted) print all
  Model: VMware, VMware Virtual S (scsi)
  Disk /dev/sda: 21.5GB
  Sector size (logical/physical): 512B/512B
  Partition Table: msdos
  

  NumberStart   End   Size    Type   File system   标志
  1      1049kB8390MB8389MBprimaryext4            启动
  2      8390MB10.5GB2097MBprimarylinux-swap(v1)
  

  

  Model: VMware, VMware Virtual S (scsi)
  Disk /dev/sdb: 21.5GB
  Sector size (logical/physical): 512B/512B
  Partition Table: gpt
  

  NumberStart   End   Size    File systemName标志
  1      1049kB2000MB1999MB               fuly
  2      2000MB3000MB1000MB               mage
  

  

  警告: 无法以读写方式打开 /dev/sr0 (只读文件系统)。/dev/sr0 已按照只读方式打开。
  Model: NECVMWar VMware IDE CDR10 (scsi)
  Disk /dev/sr0: 7770MB
  Sector size (logical/physical): 2048B/2048B
  Partition Table: msdos
  

  NumberStart   End   Size    Type   File system标志
  2      10.6MB36.3MB25.7MBprimary
  

  综上所述GPT分区就创建完成了。
  

  
页: [1]
查看完整版本: linux 下的GPT分区