前回の続きです。
元々3TB×2台のLANDISKに対して、前回は壊れたHDDを6TBに変更しました。
もちろん、RAID1ですから少ないほうの容量に合わせて3TBとして利用していました。
今回、もう片方のHDDも6TBに変更して6TBのRAID1にしましたので、その手順を紹介します。
前回同様にまねする場合は自己責任でお願いします。なお、今回紹介する手順をRAID0のものに適用してしまうと一貫の終わりなので気を付けてください。
HDDを取り出しLinuxに接続する
新しく買った6TBのHDDを接続する前に、既存の6TBのHDDのパーティション拡張などを行います。
まずLANDISKを停止し、6TBと3TBのHDDを取り出します。3TBのHDDは何かあった時のために取り出してそっとしておきます。
6TBのHDDをLinuxにつないでパーティション拡張を行うのですが、今回は、SATAのHDDをUSB接続できるキットを用いてパソコン(Windows)につなぎ、Hyper-Vを通してCentOS 7に接続することにしました。
CentOS 7はこちらの記事などを参考にインストールしておいてください。
まずWindows上でHDDをオフラインにします。「ディスクの管理」を開いて、赤枠の部分で右クリックして出てくるメニューから「オフライン」を選択します。
次にHyper-Vマネージャーを開きます。HDDを追加するCentOSは起動しておいてください。
該当のCentOSの「設定」を開きます。SCSIコントローラーにて「ハードドライブ」を選らび「追加」をクリックします。
「物理ハードディスク」を選んでプルダウンから該当のHDDを選択後、「OK」をクリックします
これでHDDを接続することができました。
パーティション拡張する
次に、パーティション拡張をします。mdadminがない場合はyumでインストールしておきます。
#yum install mdadm
私の環境では、今回接続したHDDは/dev/sdc で認識されているようでした。以下、必要に応じて読み替えてください。
RAID構成を確認します。
# cat /proc/mdstat Personalities : [raid1] md124 : inactive sdc6[2](S) 2925941076 blocks super 1.0 md125 : inactive sdc1[1](S) sdb1[0](S) 1048448 blocks md126 : inactive sdc2[1](S) sdb2[0](S) 2097024 blocks md127 : inactive sdc5[1](S) sdb5[0](S) 1048448 blocks unused devices: <none>
一番大きなsdc6(md124)がデータ領域なので、これをactiveにします。
# mdadm --run /dev/md124 mdadm: started array /dev/md/6_0 # cat /proc/mdstat Personalities : [raid1] md124 : active (auto-read-only) raid1 sdc6[2] 2925941012 blocks super 1.0 [2/1] [_U] md125 : inactive sdc1[1](S) sdb1[0](S) 1048448 blocks md126 : inactive sdc2[1](S) sdb2[0](S) 2097024 blocks md127 : inactive sdc5[1](S) sdb5[0](S) 1048448 blocks unused devices: <none>
activeになりました。マウントして中身を見てみます。
# mkdir /mnt/test # mount /dev/md124 /mnt/test # ls /mnt/test AppleDB dlna model raps share Program Files dms nasdsync_download_tmp remotelink2
ディスクの中身が覗けるようになりました。
この状態でdfをすると、
# df -hT ファイルシス タイプ サイズ 使用 残り 使用% マウント位置 ・・・ /dev/md124 xfs 2.8T 2.3T 472G 84% /mnt/test
と、容量は2.8TBとなっていることが確認できます。
拡張前のArray Sizeを確認しておきます。
# mdadm --detail /dev/md124 /dev/md124: Version : 1.0 Creation Time : Sat Nov 15 14:42:28 2014 Raid Level : raid1 Array Size : 2925941076 (2790.39 GiB 2996.16 GB) Used Dev Size : 2925941076 (2790.39 GiB 2996.16 GB) Raid Devices : 2 Total Devices : 1 Persistence : Superblock is persistent Update Time : Thu Jun 13 07:52:41 2019 State : clean, degraded Active Devices : 1 Working Devices : 1 Failed Devices : 0 Spare Devices : 0 Consistency Policy : resync Name : 6 UUID : dd133c5b:542fbd1b:dc7d7889:1cc6db99 Events : 450647 Number Major Minor RaidDevice State - 0 0 0 removed 2 8 38 1 active sync /dev/sdc6
「Array Size : 2925941076 (2790.39 GiB 2996.16 GB)」でした。
いよいよ容量拡張します。
# parted /dev/sdc GNU Parted 3.1 /dev/sdc を使用 GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。 (parted) unit s (parted) print モデル: External USB 3.0 (scsi) ディスク /dev/sdc: 11721045168s セクタサイズ (論理/物理): 512B/4096B パーティションテーブル: gpt ディスクフラグ: 番号 開始 終了 サイズ ファイルシステム 名前 フラグ 1 40s 1048623s 1048584s ext3 primary 2 1048624s 3145783s 2097160s primary 3 3145784s 7340095s 4194312s linux-swap(v1) primary 4 7340096s 7602247s 262152s primary 5 7602248s 8650831s 1048584s primary 6 8650832s 5860533127s 5851882296s xfs primary (parted) rm 6 エラー: パーティション 6 (/dev/sdc 上) できませんでした。おそらく、使用中だったのが原因だと思われます。そのため、古いパーティション情報がそのまま使われます。さらなる変更をする前に再起動してください。
エラーが出てしまいました。が、printしてみると、
(parted) print 番号 開始 終了 サイズ ファイルシステム 名前 フラグ 1 40s 1048623s 1048584s ext3 primary 2 1048624s 3145783s 2097160s primary 3 3145784s 7340095s 4194312s linux-swap(v1) primary 4 7340096s 7602247s 262152s primary 5 7602248s 8650831s 1048584s primary
ちゃんと消えていますね。大丈夫そうなので続けます。
(parted) mkpart prmimary 8650832s 100% 警告: 操作の結果できるパーティションはアライメントが正しくないためにパフォーマンスがでません。 無視(I)/Ignore/取消(C)/Cancel? I
警告が出ましたが気にせず Ignoreしました。
(parted) print モデル: External USB 3.0 (scsi) ディスク /dev/sdc: 11721045168s セクタサイズ (論理/物理): 512B/4096B パーティションテーブル: gpt ディスクフラグ: 番号 開始 終了 サイズ ファイルシステム 名前 フラグ 1 40s 1048623s 1048584s ext3 primary 2 1048624s 3145783s 2097160s primary 3 3145784s 7340095s 4194312s linux-swap(v1) primary 4 7340096s 7602247s 262152s primary 5 7602248s 8650831s 1048584s primary 6 8650832s 11721045134s 11712394303s xfs primary
パーティション拡張が成功しました。次にRAIDのサイズを変えます。
# mdadm --grow /dev/md124 -z max mdadm: component size of /dev/md124 has been set to 5856197076K
増えました。次にファイルシステムの拡張を行います。
# xfs_growfs /dev/md124 meta-data=/dev/md124 isize=256 agcount=4, agsize=182871314 blks = sectsz=512 attr=2, projid32bit=0 = crc=0 finobt=0 spinodes=0 data = bsize=4096 blocks=731485253, imaxpct=5 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=0 log =internal bsize=4096 blocks=32768, version=2 = sectsz=512 sunit=0 blks, lazy-count=0 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 731485253 to 1464049269 # df -h ファイルシス サイズ 使用 残り 使用% マウント位置 ・・・ /dev/md124 5.5T 2.3T 3.2T 42% /mnt/test
しっかり容量が増えました。HDDを取り外します。
# umount /mnt/md124
Hyper-Vからの割り当ても削除しておきます。
パーティション拡張したHDDのみをLANDISKにセットして起動する
このHDDだけをLANDISKにセットし、起動します。
起動するとディスクエラーであり、全てのパーティションが壊れているというエラーが発生していました。(スクリーンショット撮り忘れ)
どうやら仕様で出てしまうみたいで、慌てず、容量が増えていることと、データ領域にアクセスできることを確認します。
新しいHDDもセットして起動する
確認出来たらいったんLANDISKをシャットダウンし、新しく買った6TBのHDDを空きポートにセットし、LANDISKを起動します。
ちゃんと起動できると、RAIDの再構築が始まります。(前回起動時に発生してたディスクエラーは解消されていました)
RAIDの再構築が完了したら作業完了です。空き容量が増えてうれしい限りです。