ソフトウエアRAIDでストレージを構築しマウントする方法 ディスクの高速化・冗長化
[参考記事] RAIDの種類
[参考記事] WindowsでソフトウエアRAIDを構築する方法
RAIDを新規で組むと、RAID構成しようとするストレージ内のデータはすべて消去されます。
データがある場合は、別のディスクにデータをバックアップします。
LINUXでソフトウエアRAIDを組むには、mdadmパッケージをインストールします。
CentOS・RHELでは
# yum -y install mdadm
Debian・Ubuntuでは
# apt -y install mdadm
fdiskで接続されているストレージの/dev/から始まるデバイス名を調べます。
# fdisk -l …… … …… ディスク /dev/sdd: 5.5 TiB, 6001175126016 バイト, 11721045168 セクタ 単位: セクタ (1 * 512 = 512 バイト) セクタサイズ (論理 / 物理): 512 バイト / 4096 バイト I/O サイズ (最小 / 推奨): 4096 バイト / 4096 バイト ディスクラベルのタイプ: gpt ディスク識別子: D1029528-5C95-4070-8E2D-96CA4583A079
既存でマウントされて使用されているストレージはdfで調べることができます。
$ df …… /dev/sda1 7814025724 1275915532 6538110192 17% /mnt/disk1
/dev/sdc、/dev/sddのようなものがディスクのデバイス名です。
これに数字の付いた/dev/sdc1、/dev/sdc2のようなものがディスク内のパーティションのデバイス名です。
fdiskやpartedでパーティションを作成します。
(fdiskコマンドは2TBまでしか扱うことができません。)
# parted /dev/sdd GNU Parted 2.1 /dev/sdd を使用 GNU Parted へようこそ!コマンド一覧を見るには 'help' と入力してください。
2TBを超えるディスクは、GPTラベルを付けます。
(parted) mklabel gpt
すでにパーティションがあるかprintで確認します。
pでも同じです。
(parted) p モデル: BUFFALO External HDD (scsi) ディスク /dev/sdf: 6001GB セクタサイズ (論理/物理): 512B/4096B パーティションテーブル: gpt ディスクフラグ: 番号 開始 終了 サイズ ファイルシステム 名前 フラグ 1 524kB 6001GB 6001GB ntfs
パーティションがある場合は、rmでパーティション番号を指定して削除します。
(parted) rm 1
mkpartでパーティションを作成します。
(parted) mkpart
パーティションの名前? []? primary ファイルシステムの種類? [ext2]? ext4 開始? 0% 終了? 100%
1行でまとめて実行することもできます。
(parted) mkpart primary ext4 0% 100%
printで作成されたパーティションIDを確認します。
pでも同じです。
(parted) p モデル: BUFFALO External HDD (scsi) ディスク /dev/sdf: 6001GB セクタサイズ (論理/物理): 512B/4096B パーティションテーブル: gpt ディスクフラグ: 番号 開始 終了 サイズ ファイルシステム 名前 フラグ 1 524kB 6001GB 6001GB ext4
この番号の部分がパーティションIDです。
パーティションIDに対して、raidフラグを付けます。
(parted) set 1 raid on
printでraidフラグが付いていることを確認します。
(parted) p モデル: BUFFALO External HDD (scsi) ディスク /dev/sdf: 6001GB セクタサイズ (論理/物理): 512B/4096B パーティションテーブル: gpt ディスクフラグ: 番号 開始 終了 サイズ ファイルシステム 名前 フラグ 1 524kB 6001GB 6001GB ext4 raid
quitでpartedを終了します。
qでも同じです。
(parted) q
これをRAID構成するストレージすべてで行います。
すでに作成したいファイルシステムでパーティションが存在している場合は、raidフラグを付けるだけでよいです。
mdadm --createでRAIDアレイを作成します。
# mdadm --create /dev/md1 --level=0 --raid-devices=3 /dev/sdd1 /dev/sde1 /dev/sdf1 mdadm: Defaulting to version 1.2 metadata mdadm: array /dev/md0 started.
/dev/md1 | デバイス名 |
--level=0 | RAIDレベル RAID1なら1 |
--raid-devices=3 | ディスク数 |
/dev/sdd1 /dev/sde1 /dev/sdf1 | 構成するディスクのデバイス名 |
構成するディスクはまとめて記述することもできます。
# mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sd[bc]1
RAID構成をすると1つのパーティションとして扱えるので、フォーマットします。
mkfs -t ext4 /dev/md1
マウントポジションを作成します。
# mkdir -p /mnt/raid
マウントします。
# mount /dev/md1 /mnt/raid
これでマウントポジション以下がRAIDディクス領域となります。
再起動後にもマウントされるようにするには、fstabに記述します。
# vi /etc/fstab /dev/md1 /mnt/raid ext4 defaults 0 0
記述の確認をします。
# mount -a
RAIDの確認は次のようにします。
# cat /proc/mdstat Personalities : [raid0] md1 : active raid0 sdf1[2] sde1[0] sdd1[1] 17581169664 blocks super 1.2 512k chunks unused devices: <none>
RAIDの詳細は次のようにすると確認できます。
# mdadm --detail /dev/md1
RAIDを停止するには
# mdadm --misc --stop /dev/md1
RAID情報を削除するには
# mdadm --misc --zero-superblock /dev/sdd1 /dev/sde1 /dev/sdf1
関連記事
- コマンドやプロセス名から検索して一括でkillする方法
- PostgreSQLでSCRAM authentication requires libpq version 10 or aboveと出るとき
- Apacheで所有権や書き込み権限があるにも関わらずPermissions deniedが出る場合
- SSDの現在のTBWを調べる方法 SSDの残り寿命 (Windows Linux CentOS)
- RAIDの種類
- NTFSのディスクをLinuxにマウントすると読み込み専用でマウントされてしまう
- Ubuntu/Debian/Raspberry PiでChia Network(XCH)をHDDマイニングする方法
- CentOSでChia Network(XCH)をHDDマイニングする方法
- CentOSにHomeBridgeをインストールする方法
- GnuTLS: The Diffie-Hellman prime sent by the server is not acceptable (not long enough).の解決法
- Linux・WindowsでMTUを変更する方法(ジャンボフレーム)
- LinuxでPDFを画像に変換したりテキストを抽出する方法
- Logitec HDDケース(HDD4台用) ガチャベイ LHR-4BNHEU3 LGB-4BNHEU3
- Linuxにffmpegをインストールする方法 CentOS Stream
- SELinuxのpermissiveとdisableの違い
- SELinuxを無効にする方法
- SELinuxの管理で使用するsemanageコマンドをインストールする方法
- LinuxにImageMagickをインストールする方法 CentOS Stream
- Linuxでrarファイルを圧縮・解凍する方法(CentOS)
- NTFSフォーマットのストレージの読み書きが異常に遅い場合
- Linuxで接続されているUSBのバージョンを確認する方法
- Linuxでストレージの型番やシリアルを確認する方法(HDD SSD NVMe)
- CPUやストレージの温度を調べる方法(CPU HDD SSD NVMe)
- CentOS7からCentOS8へのアップグレード
- 各ストレージの速度一覧 規格速度や実効速度(HDD/SSD/M2/NVMe/USBメモリ)
- Poderosa5で「インデックスが配列の境界外です。」と出る場合の対処法(CentOS8 Ubuntu)
- マウントするときに、$MFTMirr does not match $MFT NTFS is either inconsistent, or there is a hardware faultのエラーが出る場合
- Sambaで認証パスワードなし(ゲストユーザー)でアクセスする方法
- Amazon Linux2をローカルのVirtualBoxで起動する方法
- VirtualBox Interfaceが起動していてシャットダウンができないとき
- Gitを自動的にpullする方法(常に最新の状態にする)
- Gitの最新版をインストールする方法(CentOS7に2系をインストール)
- SSHで初めて接続するホストで、接続するかどうかyes/noを聞かれないようにする
- HPのパソコンでVirtualBoxが起動しない(HP ProtectTools Security Manager)
- yumのius(iuscommunity.org)でエラーが出る場合
- iusリポジトリで公開されているパッケージの一覧
- GoogleChromeでSSL接続を強制される設定(HSTS)のキャッシュを消す方法
- phpMyAdminでログイン画面を出さずにデータベースに接続する方法
- さくらサーバ(さくらのレンタルサーバ)でcronを使ってPHPを定時実行する
- php.ini が見つからない時
- PHPでMySQLなどにPDO接続をすると、could not find driverのエラーが出る場合
- ホスト名(ドメイン)をローカルIPに名前解決させる方法(ローカルDNS不要)
- MySQLやMariaDBは標準ではログローテートされない
- SONYのnasneをLinuxにマウントする方法
- 数日おきに設定したcronの実行が1日ずれる理由
- LinuxでNTFS(Windows形式)のフォーマットをする方法
- target is busyやdevice is busyをumountする方法
- /dev/random と /dev/urandom の違い
- 2TBを超えるHDDを増設する方法(パーティション・フォーマット)
- 破損したストレージからのデータ復旧
- HDDやSSDなどのストレージをリスト形式で表示する方法
- blkidコマンドでUUIDが表示されない場合
- HDDやSSDなどのストレージのUUIDを調べる方法
- glibcを更新するとdateコマンドが新元号の令和に対応します
- cron設定ファイルの実体の保存先
- Fail2ban ログを集計して不正アクセスを防ぐ
- mvコマンドの挙動(コピーが完了したものから削除する方法)
- 『Table is marked as crashed and should be repaired』の修復方法
- PostfixサーバからGmailサーバへメールを送信できない場合の対処法
- ImageMagick更新で『PHP Startup: Unable to load dynamic library '/usr/lib/php/modules/imagick.so'』エラーが出る場合
- 起動時に『UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.』と出た場合の修復方法
- kernel-develのインストール
- LinuxサーバでWindowsのファイルシステムNTFSを読み込む方法
- 拡張リポジトリEPELを使用する方法(インストール)
- wgetが遅い場合の対処法
- WgetがFTPでダウンロードできない場合
- WgetがSSLでダウンロードできない場合
- Wgetの基本的な使い方など(ユーザーエージェントの設定・POSTデータの送信)
- lsコマンドで秒を表示する方法(タイムスタンプの書式指定)
- PDO_MYSQLをインストールする方法
- PEAR・PECLをインストールする方法
- シェルスクリプトを実行すると『そのようなファイルやディレクトリはありません』や『コマンドが見つかりません』と出る場合
- 画面のバックライトを消す方法(モニタ電源を消す) vbetool
- telnetの反応がなくなった時に接続を強制的に切断する方法
- サーバの負荷や使用率などを見るコマンドの一覧
- PHPでロードアベレージを表示させる方法
- Apacheで出力されるログを変更する方法 レスポンスにかかった時間やリファラ、ユーザーエージェントを記録する
- ログをリアルタイムに表示させて監視する方法
- 起動時にネットワークを有効にする方法(eth0を起動する方法)
- IPアドレスを変更する方法
- cron実行時の標準出力のメールを飛ばさない方法(cron実行時に毎回メールを飛ばさない)
- cron実行時のPATHなどの環境変数を確認する方法
- cronのメール送信先を指定する方法(cronごとに送信先のメールアドレスを指定する方法)
- cron実行時に『/bin/sh: 〜〜: command not found』と出てcronが実行されない場合
- 『crontab -r』でcronの設定を間違って消してしまった場合の対処法
- cronを実行すると『TERM environment variable not set.』というエラーメールが飛ぶ
- Apacheから2GB以上のファイルをダウンロードしようとすると403エラーが出ます
- Linux起動時の自動ファイルシステムチェックの間隔を変更する、無効にする方法
- [warn] _default_ VirtualHost overlap on port 80, the first has precedence エラー
- yumでupdateするときにconflictsエラーが出る場合 file xxx from install of xxx-jason conflicts with file from package xx.remi
- Gitをyumでインストールする方法
- vsftpdでファイルの所有者をUID(数字)ではなくユーザー名で表示する方法 chrootするとtext_userdb_names=YESできない
- SELinuxが有効になっているサーバではvsftpdのデータ転送が使用できない
- サービスに接続できるユーザー(IP)を制限する Connection closed by foreign host.
- 1枚のNIC(ネットワークカード)に複数のIPアドレスを設定する方法(Linux)
- Apacheを起動するときに、ほかのプロセスによってポートが使用されていた場合
- PEARを更新する方法
- zend_mm_heap corrupted とは
- yum コマンドでTransaction Check Error
- yumを自動で更新チェックする、自動で更新する
- httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
- Apacheをyumでインストールする
- KNOPPIX
- ディレクトリ以下のファイル数、ファイル容量を調べる
- PHPをyumでインストールする
- Linuxでホスト名を変更する方法
- Postfixからpostmaster宛に451Server configuration errorメールが届く
- Postfixの容量制限 (main.cfの設定)
- Debianのインストール
- memcachedのインストール
- Linuxのカーネル情報やディストリビューションを調べるコマンド
- Rubyのインストール
- PostgreSQLのインストール
- PHPのインストール
- zlibのインストール
- Apacheのインストール
- MySQLのインストール
- IPアドレスを調べる
- ファイルを検索するコマンド locate (updatedbの高速化)
- スペシャルファイル
- MergeLog 複数のログファイルを時系列に並べ替える
- CentOS5のインストール
- Another app is currently holding the yum lockとは
- yumで、より新しいパッケージをインストールする方法(CentOS)
- apacheのSSL設定
- Subversionのインストール
- 毎朝午前4時に行われる動作
- /tmpや/var/tmpのファイル消えるタイミング
- ユーザーとグループ
- ログインできるユーザーに変更する
- SSHのインストール
- OpenSSL
- RFC2142で定められた「組織で用意したほうがよいメールアドレス」のガイドライン
- named.local [Bindの設定ファイル]のデフォルト
- localhost.zone [Bindの設定ファイル]のデフォルト
- named.ca [Bindの設定ファイル]のデフォルト
- named.conf [Bindの設定ファイル]のデフォルト
- vsftpd.conf [vsftpd設定ファイル]のデフォルト
- proftpd.conf [Proftpd設定ファイル]のデフォルト
- php.ini [PHP設定ファイル]のデフォルト
- main.cf [Postfix設定ファイル]のデフォルト
- sendmail.mc のデフォルト
- httpd.conf [apache設定ファイル]のデフォルト fedora
- httpd.conf [apache設定ファイル]のデフォルト
- ディレクトリの削除
スポンサーリンク