Centos VMに、再起動せずに増加したディスクサイズを再読み込みさせる方法


16

CentOS 5 VMがあり、VMディスクを10Gから20Gに増やしたところですが、再起動しないとfdiskで新しいディスクサイズを確認できません。

試してみましecho 1 > /sys/block/sda/device/rescanたが、新しいサイズが見えることを示しているようですが、fdiskで新しいパーティションを作成すると、ディスクはまだ10Gとして表示されます。

何か案は?


仮想化プラットフォームとストレージ方法に応じて、これは可能である場合とできない場合があります。詳細が重要です。
ワンブル

追加した仮想ディスクの種類:IDEまたはSCSI?
量子

その最初のコマンドは私のために働い
ロド

回答:


11

SCSIバスに再スキャンコマンドを発行する必要があります。

VMwareでは、SCSIコントローラーが通常とは異なる場所で見つかる場合があります。最初にそれを見つけます:

find /sys -iname 'scan'

戻ってきた私にとって

/sys/devices/pci0000:00/0000:00:07.1/host0/scsi_host/host0/scan
/sys/devices/pci0000:00/0000:00:07.1/host1/scsi_host/host1/scan
/sys/devices/pci0000:00/0000:00:10.0/host2/scsi_host/host2/scan

次に、rescanコマンドを発行します

echo "- - -" >/sys/devices/pci0000:00/0000:00:07.1/host0/scsi_host/host0/scan
echo "- - -" >/sys/devices/pci0000:00/0000:00:07.1/host0/scsi_host/host1/scan
echo "- - -" >/sys/devices/pci0000:00/0000:00:10.0/host0/scsi_host/host2/scan

それ役立つはずです。:)


5
ls /sys/class/scsi_host多分速いです。
量子

11

SLES 11サーバーで同様の問題に対処する必要がありました。LVMはrawディスクで構築され、VMWare ESXiで実行されています

# pvcreate /dev/sdd; vgextend ....

しばらくしてLVMサイズを増やす必要がありましたが、以前と同様に補助ディスクを追加してからpvcreate + vgextendを追加しませんでしたが、既存のディスク(この場合は/ dev / sddのサイズを増やすことを選択しました)。VMWareの増加を行った後、私は

# rescan-scsi-bus.sh

しかし、pvdisplayは「古い」ディスクサイズを表示し続けていました。する必要がありました

# echo 1 > /sys/block/sdd/device/rescan

カーネルが/ dev / sddの新しいディスクサイズを学習するため


6
echo 1 > /sys/block/sda/device/rescanCentOSで私のために働いていた
ベネディクトケッペル

-bash:/ sys / module / scsi_mod / parameters / scan:許可が拒否されました。ユーザー名はルートです
-Sarz

7

最初にやった後 echo 1 > /sys/block/sda/device/rescan

pvresize /dev/sda 私のためにトリックをしました


3

パーティションテーブルが直接使用されている場合(たとえば、ベースパーティションを使用してファイルシステムをマウントした場合)、カーネルは、これがなくなるまで古いパーティションテーブルを使用し続けます。LVMを使用している場合、これを回避できると誰かが言ったことがあります。


2

更新: Centos 6-アクティブなディスクのパーティションテーブルをオンラインで更新できない、Centos 7- growpartで最後のパーティションを拡張するか、fdiskで新しいパーティションを作成し、partprobeで再起動せずに表示することができます。おそらくubuntu / debianでも同じです。-2.6カーネルがアクティブディスクのパーティションテーブルのオンライン再読み込みのサポートを開始した後のある時点で。質問はCentos 5向けであるため、私は仕方がないと言います。

パーティションを使用している場合は、新しいスペースを使用するために再起動する必要があります。これを回避する方法が見つかりませんでした。誰かが私に知らせた場合。

ただし、ディスク上の最後のパーティションを拡張するか、新しいパーティションを追加した後、再起動する必要があります。前に再起動する意味がありません。

再スキャン後に最初に気付くのは、fdiskおよびlsblkのディスクサイズが大きいことです。表示されない場合は、これらのecho 1およびecho---コマンドを使用する必要があります。

より多くのスペースが表示されたら、パーティションを拡張/追加し、再起動し、vgを拡張し、lvとfsを拡張します。

再起動を回避する場合は、sda1 / 2/3にパーティション化せずに、raw sda / b / cディスクをボリュームグループに割り当てる必要があります。その後、再起動する必要はありません。

LinuxがLVMから起動できなかったとき、パーティション分割が必要でしたが、今ではできます。

lsblkを実行すると、パーティションまたはlvmを使用しているかどうかに応じてパーティションまたはlvmsが表示されます。lvmを使用しない場合はすべてのパーツを、パーティションを使用しない場合はすべてのlvmsを使用できます。次に例を示します。

root@srv4 ~ $ lsblk
NAME                        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                           8:0    0  7.3T  0 disk
├─sda1                        8:1    0  500M  0 part /boot
└─sda2                        8:2    0  7.3T  0 part
  ├─vg_srv4-LogVol13 (dm-0) 253:0    0  7.1T  0 lvm  /
  ├─vg_srv4-LogVol05 (dm-1) 253:1    0  100G  0 lvm  /var/log
  ├─vg_srv4-LogVol04 (dm-2) 253:2    0   20G  0 lvm  /var
  ├─vg_srv4-LogVol01 (dm-5) 253:5    0   20G  0 lvm  /opt
  ├─vg_srv4-LogVol00 (dm-6) 253:6    0   20G  0 lvm  /home
  ├─vg_srv4-LogVol03 (dm-7) 253:7    0   20G  0 lvm  /usr
  └─vg_srv4-LogVol02 (dm-8) 253:8    0    8G  0 lvm  /tmp


-5

再起動する必要があります、それを回避する方法はありません。


強制システムが再スキャンするのはどうですか?
クォンタ

再起動する必要がありました:-(
AndyM

私も再起動する必要がありました。
オンドラ

1
これは完全に真実ではありません。再起動せずにこれを複数回行いました。
ダンカンXシンプソン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.