新しいパーティションをディスクに追加して、再起動せずにそれを RHEL6 で使用する方法
Environment
- Red Hat Enterprise Linux (RHEL) 6
Issue
- 既にマウントされているパーティションがあるディスクに新しいパーティションを追加しました。再起動せずにその新しいパーティションを RHEL6 で使用できますか?
Resolution
RHEL 5 では、ディスク上のパーティションテーブルが変更したことを OS に知らせるために、通常は partprobe
が使用されます。RHEL 6 では、partprobe
は使用されていない (マウントされていない) ディスク上のパーティションを更新するために OS をトリガーします。ディスク上のパーティションが使用中の場合、partprobe
はシステムでパーティションを更新する事をトリガーしません。なぜなら、安全でないと見なされる場合があるからです。
そのため、一般的には、以下をお勧めします。
- ディスク上のパーティションテーブルを変更する前にそのディスクのパーティションをすべてアンマウントし、システムのパーティションを更新するために
partprobe
を実行してください。 - これが可能でない場合 (たとえばマウントされたパーティションがシステムパーティションである場合、) パーティションテーブルを修正してからシステムを再起動してください。再起動後にパーティション情報が再度読み込まれます。
新しいパーティションを追加しただけで既存のパーティションが変更されていない場合、システムパーティションテーブルを更新するために partx
コマンドを使用できます。partx
コマンドはシステムの新しいパーティションテーブルか既存のパーティションテーブルかチェックせず、何を行っているのかお客様自身が分かっているのが前提である事に注意してください。もし既存のパーティションが変更されていたり正しく設定されていない場合、ディスク上のデータが破損します。したがいまして、お客様の責任において使用してください。
たとえば、パーティション #1 が既存のパーティションで、fdisk
によって新しいパーティション #2 が既に /dev/sdb
に追加されています。ここで、システムに新しいパーティションを追加するために partx -v -a /dev/sdb
を使用します。
# ls /dev/sdb*
/dev/sdb /dev/sdb1
ディスクのパーティションテーブルの一覧を表示します。
# partx -l /dev/sdb
# 1: 63- 505007 ( 504945 sectors, 258 MB)
# 2: 505008- 1010015 ( 505008 sectors, 258 MB)
# 3: 0- -1 ( 0 sectors, 0 MB)
# 4: 0- -1 ( 0 sectors, 0 MB)
ディスクを読み込み、すべてのパーティションをシステムに登録します。
# partx -v -a /dev/sdb
device /dev/sdb: start 0 size 2097152
gpt:0 slices
dos:4 slices
# 1: 63- 505007 ( 504945 sectors, 258 MB)
# 2: 505008- 1010015 ( 505008 sectors, 258 MB)
# 3: 0- -1 ( 0 sectors, 0 MB)
# 4: 0- -1 ( 0 sectors, 0 MB)
BLKPG:Device or resource busy
error adding partition 1
(パーティション 1 は パーティション 2 が追加される前にすでにシステムに追加されているため、ここの最後の 2 行はこの例では正常です。)
/dev/sdb
のデバイスノードそのパーティションのデバイスノードがある事を確認します。
# ls /dev/sdb*
/dev/sdb /dev/sdb1 /dev/sdb2
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Comments