2011年10月2日日曜日

gdisk コマンド (Fedora 16 からは GPT がデフォルト)

Fedora 16 からは、パーティションテーブルがデフォルトで GPT になります。

http://fedorapeople.org/groups/docs/release-notes/ja/sect-Release_Notes-Changes_for_Sysadmin.html

次は、VMware 上に Fedora 16 Alpha をインストールした環境での見え方です。
[root@fedora16 ~]# fdisk -l /dev/sda

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


Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders, total 41943040 sectors
Units = sectors of 1 * 512 = 512 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/sda1               1    41943039    20971519+  ee  GPT
[root@fedora16 ~]# parted -s /dev/sda print
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system     Name  Flags
 1      1049kB  3146kB  2097kB                        bios_grub
 2      3146kB  527MB   524MB   ext4            ext4  boot
 3      527MB   1052MB  524MB   linux-swap(v1)
 4      1052MB  21.5GB  20.4GB
sda1 (bios_grub) には、GRUB2 の stage2 が格納されており、EFI 対応でない旧来のシステム (旧来のBIOS搭載システム) でも、この bios_grub 領域を使うことで、GPT パーティションが使用されているディスクからブート可能になるようです。

さて、GPT を扱うツールと言うと、parted があるわけですが、fdisk とは異なり、指示した操作が即座にコミットされるという怖さがあります。幸いにも、fdisk と似た操作性で GPT を扱うことを可能とした gdisk というツールが普及しつつあります。
次は、gdisk でパーティション一覧を表示したサンプルです。
[root@fedora16 ~]# gdisk -l /dev/sda
GPT fdisk (gdisk) version 0.7.2

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 41943040 sectors, 20.0 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): BD020EE9-4CD0-45E3-8244-C1BEE950D2CB
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 41943006
Partitions will be aligned on 2048-sector boundaries
Total free space is 4029 sectors (2.0 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048            6143   2.0 MiB     EF02  
   2            6144         1030143   500.0 MiB   EF00  ext4
   3         1030144         2054143   500.0 MiB   8200  
   4         2054144        41940991   19.0 GiB    0700
fdisk と似たコマンド体系になっています。
[root@fedora16 ~]# gdisk /dev/sda
GPT fdisk (gdisk) version 0.7.2

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.

Command (? for help): ?
b       back up GPT data to a file
c       change a partition's name
d       delete a partition
i       show detailed information on a partition
l       list known partition types
n       add a new partition
o       create a new empty GUID partition table (GPT)
p       print the partition table
q       quit without saving changes
r       recovery and transformation options (experts only)
s       sort partitions
t       change a partition's type code
v       verify disk
w       write table to disk and exit
x       extra functionality (experts only)
?       print this menu

Command (? for help):
gdisk は、つい最近 EPEL に追加されました (9月に正式なリポジトリーに公開されました)。CentOS 5 以上 (もちろん RHEL5 以上も可) でも利用可能です。2TB を越えるディスクを扱う場合に重宝すると思います。parted が気に入っているというなら、それでも良いでしょうが、操作ミスにお気をつけください。

2014-02-02追記
いつの間にか fdisk が GPT 対応になっていることに気づきました。Fedora 20 環境で発見。
http://blog.stgolabs.net/2012/09/fdisk-updates-and-gpt-support.html
ということは、将来の RHEL7 や CentOS 7 には、GPT 対応の fdisk が収録されそうですね。Fedora 20 に収録されている GPT 対応の fdisk は、なかなかよく出来ている印象です。

2014-04-27追記
RHEL7 beta を触ってみたら、GPT 対応の fdisk が収録されていました。ただし、man は古いままで、GPT は扱えないとの記載のままでした。
# fdisk /dev/sda
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


コマンド (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
...
なお、RHEL7 beta には gdisk も収録されてました。もちろん parted もありました。というわけで3本立てになっちゃってます。

2015-01-31追記
追記していませんでしたが、gdisk は、最終的に RHEL7/CentOS7 に収録されています。ですので、これから先は gdisk の利用人口が増える(したがってネット上の情報も増える)ものと思われます。ちなみに、見つけてから 3 年ほど、たびたび gdisk のお世話になっていますが、特に不都合/不具合に遭遇したことはありません。そのため、未だに parted は苦手(GParted のほうは時々使います)ですが、RHEL7 に収録されたし、gdisk が消え去ることは無いと思えるので、基本 gdisk を使っていこうと思います。

2015-05-29追記
いつの間にやら、RHEL6.6/CentOS6.6 で gdisk が標準で同梱されるようになってました。これで利用者も更に増える(ネットの情報量も増える)でしょう。いままででも不都合に遭遇したことは無かったですが、頼れるツール(枯れたツール)に成長していくことと思います。んが、一方で最新の fdisk は、GPT にも対応しているので、将来はわかりませんね。果たして gdisk が淘汰されるでしょうかね。。。

0 件のコメント:

コメントを投稿

人気ブログランキングへ にほんブログ村 IT技術ブログへ