linux – 非アクティブなRAIDデバイスを再び動作させるには?

linux mdadm raid software-raid ubuntu

起動後、RAID1デバイス(/dev/md_d0 *)が変な状態になってマウントできなくなることがあります

* 元々は/dev/md0を作っていたのですが、いつの間にか/dev/md_d0に変わってしまいました

# mount /opt
mount: wrong fs type, bad option, bad superblock on /dev/md_d0,
missing codepage or helper program, or other error
(could this be the IDE device where you in fact use
ide-scsi so that sr0 or sda or so is needed?)
In some cases useful info is found in syslog - try
dmesg | tail  or so

RAID デバイスが何かの拍子にアクティブでないように見える

# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5]
[raid4] [raid10]
md_d0 : inactive sda4[0](S)
241095104 blocks

# mdadm --detail /dev/md_d0
mdadm: md device /dev/md_d0 does not appear to be active.

質問なのですが、どのようにしてデバイスを再びアクティブにするのでしょうか(mdmadmを使用して、私は推測しています)?

(それ以外の時は起動後は問題なく(アクティブになって)手動でマウントできています。しかし、/etc/fstabに入れていても自動でマウントされません

/dev/md_d0        /opt           ext4    defaults        0       0

そこでボーナスの質問ですが、起動時に/optでRAIDデバイスを自動的にマウントするにはどうすればいいのでしょうか?)

Ubuntu 9.10のワークステーションです。この質問の私のRAIDセットアップの背景情報

編集:私の/etc/mdadm/mdadm.confはこんな感じです。このファイル、少なくとも手で触ったことはありません

# by default, scan all partitions (/proc/partitions) for MD superblocks.
# alternatively, specify devices to scan, using wildcards if desired.
DEVICE partitions

# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes

# automatically tag new arrays as belonging to the local system
HOMEHOST <system>

# instruct the monitoring daemon where to send mail alerts
MAILADDR <my mail address>

# definitions of existing MD arrays

# This file was auto-generated on Wed, 27 Jan 2010 17:14:36 +0200

/proc/partitionsでは、最後のエントリはmd_d0で、少なくとも今は、再起動後、たまたまデバイスが再びアクティブになったときに、md_d0になります。(非アクティブの時も同じようになるかどうかはわかりませんが)

解決方法:Jimmy Hedmanが提案したようにmdadm --examine --scanの出力を取りました

ARRAY /dev/md0 level=raid1 num-devices=2 UUID=de8fbd92[...]

を使って、/etc/mdadm/mdadm.confで追加したところ、主な問題が解決したようです。/etc/fstabを変更して/dev/md0を再び使用するようにしたら(/dev/md_d0の代わりに)、RAIDデバイスも自動的にマウントされるようになりました!

  31  Jonik  2010-03-09


ベストアンサー

ボーナスの質問に

mdadm --examine --scan >> /etc/mdadm/mdadm.conf

25  Jimmy Hedman  2010-03-10


Linux が再起動時にマウントするためには、手動で /etc/mdadm/mdadm.conf に配列を追加する必要があることがわかりました。それ以外の場合は、md_d1非アクティブなデバイスなど、あなたが持っているものと同じものが得られます

conf-file は以下のようになっているはずです – つまり、各 md-device に対して ARRAY 行のファイルです。私の場合、このファイルには新しい配列がありませんでしたが、もしそれらがリストアップされているのであれば、おそらくこれは問題を解決するものではないでしょう

# definitions of existing MD arrays
ARRAY /dev/md0 level=raid5 num-devices=3 UUID=f10f5f96:106599e0:a2f56e56:f5d3ad6d
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=aa591bbe:bbbec94d:a2f56e56:f5d3ad6d

md-deviceごとに1つの配列を追加し、上記のコメントの後、またはコメントがない場合はファイルの最後に追加します。UUID は sudo mdadm -E --scan で取得します

$ sudo mdadm -E --scan
ARRAY /dev/md0 level=raid5 num-devices=3 UUID=f10f5f96:106599e0:a2f56e56:f5d3ad6d
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=aa591bbe:bbbec94d:a2f56e56:f5d3ad6d

ご覧のように、スキャン結果からの出力をファイルにコピーすることができます

私はubuntuのデスクトップ10.04 LTSを実行し、私が覚えている限り、この動作はUbuntuのサーバーバージョンとは異なりますが、それは私が間違っている可能性がありますサーバー上で私のmd-devicesを作成したような長い時間前だった。また、私はちょうどいくつかのオプションを逃したことかもしれません

とにかく、conf-fileに配列を追加すると、トリックを行うようです。私は上記のレイド1とレイド5を何年も何の問題もなく実行してきました

11  Erik  2011-08-01


警告。もしあなたが復元不可能なデータを持っているのであれば、以下のいずれかを試す前に、関係するパーティションのコピーを作成することをお勧めします。しかし、これは私の場合はうまくいきました

私も同じ問題を抱えていました。配列が非アクティブな状態で表示され、ここで他の人が提案してくれた “mdadm –examine -scan >/etc/mdadm.conf “を含め、何もしていませんでした

私の場合、ドライブ交換後にRAID-5アレイを起動しようとすると、ダーティ(dmesg経由)と言っていました

md/raid:md2: not clean -- starting background reconstruction
md/raid:md2: device sda4 operational as raid disk 0
md/raid:md2: device sdd4 operational as raid disk 3
md/raid:md2: device sdc4 operational as raid disk 2
md/raid:md2: device sde4 operational as raid disk 4
md/raid:md2: allocated 5334kB
md/raid:md2: cannot start dirty degraded array.

/proc/mdstatで非アクティブと表示されるようになりました

md2 : inactive sda4[0] sdd4[3] sdc4[2] sde4[5]
3888504544 blocks super 1.2

確かに、交換したドライブ(/dev/sdb4)を除いて、すべてのデバイスで同じイベントが発生していました

[root@nfs1 sr]# mdadm -E /dev/sd*4 | grep Event
mdadm: No md superblock detected on /dev/sdb4.
Events : 8448
Events : 8448
Events : 8448
Events : 8448

しかし、アレイの詳細を見ると、5つのデバイスのうち4つのデバイスが利用可能であることがわかりました

[root@nfs1 sr]# mdadm --detail /dev/md2
/dev/md2:
[...]
Raid Devices : 5
Total Devices : 4
[...]
Active Devices : 4
Working Devices : 4
[...]
Number   Major   Minor   RaidDevice State
0       8        4        0      inactive dirty  /dev/sda4
2       8       36        2      inactive dirty  /dev/sdc4
3       8       52        3      inactive dirty  /dev/sdd4
5       8       68        4      inactive dirty  /dev/sde4

(上記は「状態」欄の記憶からのもので、スクロールバックバッファには見当たらない)

配列を止めて、再度組み立てることで解決できました

mdadm --stop /dev/md2
mdadm -A --force /dev/md2 /dev/sd[acde]4

その時点でアレイは立ち上がっていて、5つのデバイスのうち4つで動作していましたが、交換用のデバイスを追加することができ、再構築中です。ファイルシステムには問題なくアクセスできました

7  Sean Reifschneider  2012-03-21


私はUbuntu 10.04でFStabのエラーでサーバーが起動しないという問題を抱えていました

上記の解決策にあるように、このコマンドを実行してみました

mdadm --examine --scan >> /etc/mdadm/mdadm.conf

これにより、”mdadm –examine -scan “の結果が”/etc/mdadm/mdadm.conf “に追加されます

私の場合は、これでした

ARRAY /dev/md/0 metadata=1.2 UUID=2660925e:6d2c43a7:4b95519e:b6d110e7 name=localhost:0

これはfakeraid 0です。 /etc/fstabで自動マウントするための私のコマンドは以下の通りです

/dev/md0 /home/shared/BigDrive ext3 defaults,nobootwait,nofail 0 0

ここで重要なのは、「nobootwait」と「nofail」があることです。nobootwaitは起動を妨げているシステムメッセージをスキップしてくれます。私の場合、これはリモートサーバ上にあったので必須でした

これが何人かの人の助けになることを願っています

5  Nick Woodhams  2012-04-24


でmdデバイスをアクティベートすることができます

mdadm -A /dev/md_d0

私は、RAIDメンバーの1つが発見される前に、いくつかのスタートアップスクリプトが早すぎて起動してしまったか、または似たような問題があったのだと思います。手っ取り早い回避策として、/etc/rc.local に以下の行を追加することができるはずです

mdadm -A /dev/md_d0 && mount /dev/md_d0

編集 : /etc/mdadm/mdadm.confには古い設定名が残っているようです。このファイルを編集して、md0をmd_d0に置き換えてください

2  wazoox  2010-03-09


md_d0 : inactive sda4[0](S) は、RAID1 アレイとしては間違っているように見えます。これは、アレイにはアクティブなデバイスがなく、予備のデバイスが 1 つあることを示唆しているようです ((S)で示されるように、故障したデバイスには(F)が表示され、OK/アクティブなデバイスには何も表示されません) – デグレードされていない RAID1 アレイには、少なくとも 2 つの OK/アクティブなデバイスがあるはずです (そして、デグレードされたアレイには)。少なくとも 1 台の OK/アクティブなデバイス)そして、故障していないスペア デバイスがない RAID1 アレイをアクティブにすることはできません (別のドライブが故障したときにアクティブになるまで、スペアにはデータのコピーが含まれていないからです)。/proc/mdstat の出力を正しく読めば、現在の状態ではアレイをアクティブにすることはできません

マシンにスピンアップに失敗した物理ドライブがありますか?ls /dev/sd*は、そのマシンに通常表示されると思われるすべてのドライブとパーティションをリストアップしていますか?

2  David Spillett  2010-03-10


私も同じような問題を抱えていました…私のサーバは、関連デバイスのパーティションを増やした後、md2をマウントしませんでした。このスレッドを読んで、md2のRAIDデバイスには新しいUUIDがあり、マシンは古いものを使おうとしていることがわかりました

提案されたように… ‘md2’ の出力を使って

mdadm --examine --scan

/etc/mdadm/mdadm.confを編集して、古いUUIDの行を上記のコマンドから出力されたものに置き換えたところ、問題は解決しました

2  Peter Errity  2011-08-15


/dev/md[012346789}で何かをするふりをすると/dev/md{126,127...}に行く。/dev/md0/dev/md126/dev/md127でマウントされ続ける

umount /dev/md127 または umount /dev/md126

これは一時的なもので、システムを停止することなくコマンドや一部のアプリケーションを実行できるようにするためのものです

2  Vanderj68  2012-11-26


ハードウェアに問題がなく、アレイを起動するのに十分なドライブやパーティションがあると仮定して、アレイを起動させる簡単な方法は以下の通りです

md20 : inactive sdf1[2](S)
732442488 blocks super 1.2

sudo mdadm --manage /dev/md20  --run

何らかの理由でアレイは正常に動作しているのですが、何かの原因で起動や構築ができなくなっている可能性があります。私の場合は、mdadmが元のアレイ名がmd127であることを知らず、そのアレイ用にすべてのドライブが接続されていなかったことが原因でした。再接続する際には、手動でアセンブルしなければなりませんでした (おそらく、オフラインの古いアレイ名のために、mdadmがアレイがすでにアクティブになっていると考えたバグでしょう)

2  Areeb Soo Yasir  2017-02-14


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