NASのRAID5の修正を停止し、今mdadmを使用して回復しようとします。

NASのRAID5の修正を停止し、今mdadmを使用して回復しようとします。

私は4x4TBハードドライブを搭載したZyxxel NAS540を実行しています。数日前、NASでビープ音が鳴り始め、RAIDのパフォーマンスが低下したことを確認しました。ドライブの1つのSMART値が非常に悪かったので、NASをシャットダウンして交換用ディスクを注文した後、それを挿入してWebインターフェースを介して回復プロセスを開始しました。

数日後(週末に行った)進捗状況を確認したかったのですが、Webインターフェイスにログインできなくなりました。 NASにはディスクアクティビティも表示されません(LEDの点滅やノイズはありません)。 SSHとmdadmを介して状態を取得しようとしましたが、3つのドライブがきれいな状態で、1つが待機状態にあるとします。だから修理が成功する前と同じですか?アクセスもなく、ディスクアクセスもない状態でNASを再起動しました。

これで、Webインターフェイスは再び機能しますが、「ボリュームが小さく」と表示されます。メニューから解決する方法はありません。また、ディスクをクリックすると、ディスク 1,2,3 が「ホットスペア」と表示されます。ディスク4には状態がない。交換したディスクは3番ディスクです。

それ以来、NASへのSSHアクセスも失われていたので、ディスクを自分のPCに入れて、いくつかのコマンドを実行して状況を把握しました。出力は次のとおりです。

猫/proc/mdstat

Personalities : [raid6] [raid5] [raid4]
unused devices: <none>

sudo mdadm --check /dev/sd[abcdef]3

/dev/sda3:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x0
     Array UUID : 73e88019:b7cf694c:8584cbaa:47f57992
           Name : NAS540:2
  Creation Time : Tue Nov 24 23:18:19 2015
     Raid Level : raid5
   Raid Devices : 4

 Avail Dev Size : 7805773824 (3722.08 GiB 3996.56 GB)
     Array Size : 11708660160 (11166.25 GiB 11989.67 GB)
  Used Dev Size : 7805773440 (3722.08 GiB 3996.56 GB)
    Data Offset : 262144 sectors
   Super Offset : 8 sectors
   Unused Space : before=262064 sectors, after=384 sectors
          State : clean
    Device UUID : ac8c7cd6:a8f3d86e:cb210c2b:bcdfc2eb

    Update Time : Thu Nov 14 16:31:43 2019
       Checksum : 667f486f - correct
         Events : 1210

         Layout : left-symmetric
     Chunk Size : 64K

   Device Role : Active device 3
   Array State : AAAA ('A' == active, '.' == missing, 'R' == replacing)
/dev/sdb3:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x0
     Array UUID : 73e88019:b7cf694c:8584cbaa:47f57992
           Name : NAS540:2
  Creation Time : Tue Nov 24 23:18:19 2015
     Raid Level : raid5
   Raid Devices : 4

 Avail Dev Size : 7805773824 (3722.08 GiB 3996.56 GB)
     Array Size : 11708660160 (11166.25 GiB 11989.67 GB)
  Used Dev Size : 7805773440 (3722.08 GiB 3996.56 GB)
    Data Offset : 262144 sectors
   Super Offset : 8 sectors
   Unused Space : before=262064 sectors, after=384 sectors
          State : active
    Device UUID : 1bbec5f9:dec5a68a:d07cfdbe:e05d0cb4

    Update Time : Mon Nov 11 18:02:11 2019
       Checksum : 1cd3509 - correct
         Events : 74

         Layout : left-symmetric
     Chunk Size : 64K

   Device Role : Active device 2
   Array State : AAAA ('A' == active, '.' == missing, 'R' == replacing)
/dev/sdd3:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x0
     Array UUID : 73e88019:b7cf694c:8584cbaa:47f57992
           Name : NAS540:2
  Creation Time : Tue Nov 24 23:18:19 2015
     Raid Level : raid5
   Raid Devices : 4

 Avail Dev Size : 7805773824 (3722.08 GiB 3996.56 GB)
     Array Size : 11708660736 (11166.25 GiB 11989.67 GB)
    Data Offset : 262144 sectors
   Super Offset : 8 sectors
   Unused Space : before=262064 sectors, after=0 sectors
          State : clean
    Device UUID : 78f30bc0:b68074ee:9a3a223c:93decfd4

    Update Time : Sun Nov 17 23:41:48 2019
       Checksum : c9cda273 - correct
         Events : 1230

         Layout : left-symmetric
     Chunk Size : 64K

   Device Role : Active device 0
   Array State : AA.. ('A' == active, '.' == missing, 'R' == replacing)
/dev/sde3:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x0
     Array UUID : 73e88019:b7cf694c:8584cbaa:47f57992
           Name : NAS540:2
  Creation Time : Tue Nov 24 23:18:19 2015
     Raid Level : raid5
   Raid Devices : 4

 Avail Dev Size : 7805773824 (3722.08 GiB 3996.56 GB)
     Array Size : 11708660736 (11166.25 GiB 11989.67 GB)
    Data Offset : 262144 sectors
   Super Offset : 8 sectors
   Unused Space : before=262064 sectors, after=0 sectors
          State : clean
    Device UUID : 85b74994:874b016e:609081d6:4cfcd0ee

    Update Time : Sun Nov 17 23:41:48 2019
       Checksum : d1f8a2d1 - correct
         Events : 1230

         Layout : left-symmetric
     Chunk Size : 64K

   Device Role : Active device 1
   Array State : AA.. ('A' == active, '.' == missing, 'R' == replacing)

sudo mdadm --examine --brief --scan --config=パーティション

ARRAY /dev/md/2  metadata=1.2 UUID=73e88019:b7cf694c:8584cbaa:47f57992 name=NAS540:2
ARRAY /dev/md/0  metadata=1.2 UUID=b705c51b:2360cd8e:6b81c03f:2072f947 name=NAS540:0
ARRAY /dev/md/1  metadata=1.2 UUID=186ed461:615007c3:ab9e4576:7b5f7084 name=NAS540:1
ARRAY /dev/md/2  metadata=1.2 UUID=73e88019:b7cf694c:8584cbaa:47f57992 name=NAS540:2

sudo mdadm --assemble --scan

mdadm: Devices UUID-73e88019:b7cf694c:8584cbaa:47f57992 and UUID-73e88019:b7cf694c:8584cbaa:47f57992 have the same name: /dev/md/2
mdadm: Duplicate MD device names in conf file were found.

今、次のステップはどのように見えるか疑問に思います。重複したエントリを削除するために/etc/mdadm.confを手動で編集したいくつかの同様の状況が見つかりました。

他の場合、RAIDは手動で組み立てられますが(例:mdadm --assemble /dev/mdX /dev/sda3 /dev/sdb3 ...)ここでは私のRAID名(mdX)がわかりません。

進行方法のアイデアはありますか?

PS:はい、重要なファイルのバックアップがありますが、他のすべてのファイルを復元することはまだ問題がありません。

私はもう少し前に進んだ。私は次のように配列を再構築しました。

mdadm --create --assume-clean --level=5  --raid-devices=4 --metadata=1.2 --chunk=64K  --layout=left-symmetric /dev/md2 /dev/sdd3 /dev/sde3 missing /dev/sda3

次に、次を使用してパーティションレイアウトをコピーします。

sfdisk -d

最後に、新しいディスクを追加します。

sudo mdadm --manage /dev/md2 --add /dev/sdb3

mdadm --details の出力には、各デバイスが「clean」と表示され、raid 状態が「AAAA」と表示されます。 Raidをインストールしようとすると、次のエラーが発生します。

sudo mount /dev/md/2 /media/raid
mount: /media/raid: wrong fs type, bad option, bad superblock on /dev/md2, missing codepage or helper program, or other error.

これで、ヘッダーのビットマップから来ると疑われるデータオフセットに違いがあります。

Data Offset : 262144 sectors
Data Offset : 264192 sectors

mdadm のマニュアルページには次のように表示されます。

When creating an array on devices which are 100G or larger, mdadm automatically adds an internal bitmap as it will usually be beneficial. This can be suppressed with --bitmap=none or by selecting a different consistency policy with --consistency-policy.

では、.man--bitmap=noneページに記載されているように実行してこの問題を解決できますか?それとも問題が発生しますか?

If the word none is given with --grow mode, then any bitmap that is present is removed.

データオフセットを手動で指定して配列を再作成しました。

sudo mdadm --create --assume-clean --level=5  --raid-devices=4 --metadata=1.2 --chunk=64K  --layout=left-symmetric --data-offset=262144s /dev/md2 /dev/sdd3 /dev/sde3 /dev/sdc3 /dev/sda3

これでインストールしてデータにアクセスできます。 NASでも動作します。

ベストアンサー1

編集で述べたように、mdadm --create正しいデータオフセットでコマンドを再実行して問題を解決しました。私の攻撃隊をもう一度読むことができます。すでに新しいdisk3でリカバリを実行しているため、OPの説明に従ってコマンドを実行できましたが、エラーの最初の場所にあると仮定すると、次のようになります。

sudo mdadm --create --assume-clean --level=5  --raid-devices=4 --metadata=1.2 --chunk=64K  --layout=left-symmetric --data-offset=262144s /dev/md2 /dev/sdd3 /dev/sde3 missing /dev/sda3

続いて

sudo mdadm --manage /dev/md2 --add /dev/sdb3

もちろん、代わりに独自の指定子を使用してくださいsdbX

おすすめ記事