How To

ソフトウェアRAID「mdadm」コマンドの解説

この記事は約4分で読めます。

Ubuntu22.04でコマンドが実行できることを確認しています。

前提

次のようにデバイスが認識されているとします。

  • /dev/sda(OSがインストールされているHDD)
  • /dev/sdb(RAIDを構成するHDDその1)
  • /dev/sdc(RAIDを構成するHDDその2)
  • /dev/sdd(RAIDを構成するHDDその3)
  • /dev/sde(RAIDを構成するHDDその4)

デバイスがどのように認識されているかは、以下のコマンドを実行することで確認できます。

sudo fdisk -l

デバイスの型式も確認することができます。

ディスクのフォーマット

ディスクの枚数分だけ、このフォーマットの手順を繰り返してください。また、ディスクの内容はすべて消去されるので注意してください。

partedの起動

sudo parted <デバイス>

/dev/sdbをフォーマットする場合、コマンドは次のようになります。

sudo parted /dev/sdb

フォーマットに使うコマンドはすべて、partedで実行します。

選択したディスクの状態を確認する

print

選択したディスクが正しいディスクであることを確認しましょう。

gpt形式でフォーマット

mklabel gpt

ディスクを初期化しますかというようなことを問われるので、yesと入力してEnterを押します。

パーティションを作成

mkpart primary 0% 100%

ファイルシステムは選択しなくても良いです。

フォーマットが完了していれば、/dev/sd*1ができているはずです。

mdadmを導入する

sudo apt install mdadm

RAIDの構築

sudo mdadm --create /dev/md0 --level=raid5 --raid-devices=4 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

実行するとRAIDアレイの構成が行われます。

RAIDの状態の確認

以下のコマンドを実行すると、利用可能なRAID構成、構成されているRAIDアレイ、アレイの現在の状態が表示されます。

cat /proc/mdstat

構成ができていれば、[md0:active raid5]のように表示されているはずです。

RAIDアレイの1つの状態を詳細に確認する場合は以下のコマンドを実行します。

sudo mdadm --detail /dev/md0

RAIDアレイをフォーマット

RAIDアレイとしてmd0が構成されましたが、デバイスとして使えるようになっていないので、フォーマットを行う必要があります。以下のコマンドを実行します。

sudo mkfs.ext4 /dev/md0

これで、RAIDアレイを利用する準備ができました。

RAIDアレイをマウント

今回は/shareにmd0をマウントします。コマンドは以下のようになります。

sudo mkdir /share # shareフォルダを作る
ls -l /dev/disk/by-uuid # md0のUUIDを確認しておく
sudo nano /etc/fstab # fstabをnanoで開く

# fstabに以下の行を追加
UUID=<md0のUUID> /share ext4 defaults 0 0

# fstabの更新後
sudo mount -a # fstabに記述されているデバイスをすべてマウントする

RAIDアレイをUUIDで登録しているので、RAIDアレイが/dev/md0から変化したとしても認識することができます。

参考リンク

Ubuntu HDD等認識 (mount) – Qiita

Ubuntu18.04で4TBのソフトウェアRAID1を組む – komeの備忘録 (komee.org)

Ubuntu mdadm その46 – RAID 5とは・RAID 5アレイを作成するコマンドの説明 – kledgeb

Ubuntu mdadm その47 – RAID 5アレイを作成する基本的なコマンドの例・作成したアレイの確認と利用 – kledgeb

【Linux】mdadmを用いたソフトウェアRAID構築 | ぺんぎんや (e-penguiner.com)

UbuntuにHDDを増設する方法 – Qiita

fstabの書き方は?Linuxでファイルをマウントする方法を解説【fstabとmountコマンド】 (engineer-ninaritai.com)

コメント

タイトルとURLをコピーしました