web-dev-qa-db-ja.com

RAID1ディスクアレイのopenSUSE12.3 GPText4パーティションのサイズを変更します

2つの3TBディスク(sdaとsdb)からパーティションsda3とsdb3を割り当てたソフトウェアRAIDが構成されています(/ dev/md2)。パーティションタイプはLVMではなくGPTであり、ファイルシステムはext4です。現在、ルートパーティションは1 TBを使用し、ホームパーティション(RAID/dev/md3のsda4とsdb4)は1.8 TBを使用しています。ルートパーティションのサイズを変更して、250 GBのみを使用し、ホームパーティションに空き領域を割り当てたいと思いました。 md2のルートの場合は250GB、ホームの場合は2.5TBになります。これを行うために、mdadmを使用して配列ボリュームのサイズを変更するとそれが達成されることを読みましたが、問題はmd2デバイスのサイズを変更しただけで、sda3とsdb3の空き領域が使用されておらず、に割り当てる方法がないことです。 sda4とsdb4なので、md3でその余分なスペースを使用できるので、次のようになります。

At the beginning:
/dev/md2 with ext4, mounting / with quota of 1000GB
    sda3: 1000GB with ext4 using the full 1000GB
    sdb3: 1000GB with ext4 using the full 1000GB

/dev/md3 with ext4, mounting /home with quota of 1800GB
    sda4: 1800GB with ext4 using the full 1800GB
    sdb4: 1800GB with ext4 using the full 1800GB

I want:
/dev/md2 with ext4, mounting / with quota of 250GB
    sda3: 250GB with ext4 using the full 250GB
    sdb3: 250GB with ext4 using the full 250GB

/dev/md3 with ext4, mounting /home with quota of 2550GB
    sda4: 2550GB with ext4 using the full 2550GB
    sdb4: 2550GB with ext4 using the full 2550GB

And ended up with:
/dev/md2 with ext4, mounting / with quota of 250GB
    sda3: 1000GB with ext4 using only 250GB
    sdb3: 1000GB with ext4 using only 250GB

/dev/md3 with ext4, mounting /home with quota of 1800GB
    sda4: 1800GB with ext4 using the full 1800GB
    sdb4: 1800GB with ext4 using the full 1800GB

これを達成するために、私はこのWebサイトの指示に従いました: http://www.howtoforge.com/how-to-resize-raid-partitions-shrink-and-grow-software-raid

そこで、レスキューモードで再起動し、rootとして次のコマンドを実行しました。

#configure everything to edit the raid devices
modprobe linear
modprobe multipath
modprobe raid0
modprobe raid1
modprobe raid5
modprobe raid6
modprobe raid10
cp /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf_orig
mdadm --examine --scan >> /etc/mdadm/mdadm.conf
mdadm -A --scan

### Shrink md2 from 1000GB to 250GB
#check the raid disk
e2fsck -f /dev/md2
#resize the file system from 1000GB to 245GB to leave room for the partition to shrink without issues
resize2fs /dev/md2 245G
#resize the partition from 1000GB to 250GB
mdadm --grow /dev/md2 --size=262144000
#resize the file system to fit the whole 250GB
resize2fs /dev/md2
#do a disk check again
e2fsck -f /dev/md2

### Grow md3 to include md2 750GB free space
#grow md3 to the max free space
mdadm --grow /dev/md3 --size=max
#run a disk check
e2fsck -f /dev/md3
#resize the file system
resize2fs /dev/md3
#check the file system again
e2fsck -f /dev/md3

しかし、実際にサイズ変更を行うには、失敗してRAIDデバイスからパーティションを削除し、各ディスクを再パーティション化し、RAIDデバイスに追加して同期する必要があることがわかりました。

だから私はこのウェブサイトからの指示を試しました: http://www.zedt.eu/tech/linux/resize-grow-mdadm-raid1-device/

また、このserverfaultの回答から試してみました: 2つのRAID-1パーティションのサイズを変更する方法は?

私はそれをすべてやってみましたが、partedでサイズを変更しましたが、partedはパーティションのファイルシステムを認識しないというエラーを送信します。partedがext4をサポートしていない他の場所を読みましたが、サポートしていません。注意してください、私はすでにresize2fsを使用してファイルシステムのサイズを変更したので、私がする必要があるのはパーティションのサイズを変更することだけです。また、一部のサンプルでは、​​ファイルシステムの種類などを印刷するために分割された印刷出力が表示されますが、私のものを印刷すると、その情報はまったく取得されません。

Number  Start   End     Size    File system  Name  Flags
 5      1049kB  2097kB  1049kB                     bios_grub
 1      2097kB  12.9GB  12.9GB                     raid
 2      12.9GB  13.4GB  537MB                      raid
 3      13.4GB  1113GB  1100GB                     raid
 4      1113GB  3001GB  1888GB                     raid

ご覧のとおり、ファイルシステムや名前に関する情報が得られず、パーティション3(sda3とsdb3)のサイズを変更しようとするとエラーが発生します。同様に、パーティション4を拡張して空き領域に対応することもできません。

誰かがディスクのサイズを変更して、レイドデバイスがスペース全体を占有できるようにする方法を教えてもらえますか?

ありがとう!

6
Raul G

このアプローチを使用すると、良い結果が得られました。

http://www.howtoforge.com/how-to-resize-raid-partitions-shrink-and-grow-software-raid

よろしく

1