raid(6)のすべての2TBディスクを4TBディスクに置き換えましたが、mdadm --grow /dev/md0 --size=max
fdiskは次のエラーを報告します。The backup GPT table is corrupt, but the primary appears OK, so that will be used.
gdiskはもっと怖いです。
root@nas:~# gdisk /dev/md0
GPT fdisk (gdisk) version 0.8.10
Warning! Read error 27; strange behavior now likely!
Caution: invalid backup GPT header, but valid main header; regenerating
backup header from main header.
Warning! Error 27 reading partition table for CRC check!
Warning! One or more CRCs don't match. You should repair the disk!
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: damaged
****************************************************************************
Caution: Found protective or hybrid MBR and corrupt GPT. Using GPT, but disk
verification and recovery are STRONGLY recommended.
****************************************************************************
チームを元のサイズに復元すると問題が解決しました。 fdiskとgdiskのこれらのエラーについて心配する必要がありますか?正しいアプローチは何ですか?
答え1
The backup GPT table is corrupt, but the primary appears OK, so that will be used
これは予想されます。バックアップGPTテーブルはディスクの末尾にあります。ディスクを増減すると、それに応じてエンドミルが移動するため、fdisk
バックアップされたGPTテーブルが見つかりません。
fdiskとgdiskのこれらのエラーについて心配する必要がありますか?正しいアプローチは何ですか?
デフォルトのGPTテーブルは通常の操作に使用されるため、これは無害です。それでもバックアップテーブルがあるのは良いことなので、再作成する必要があります。を使用してgdisk
現在のパーティションテーブルを変更するのではなく、w
ディスクに書き込み(コマンド)するだけです。これを行うと、バックアップGPTも再構築されるため、これ以上問題は発生しませんgdisk
。
答え2
問題は、32ビットカーネルの使用に関連しています。バージョン4カーネルでは、32ビットカーネルにアクセスできる最大RAIDサイズはRealSizeモジュールで16TiBですが、バージョン5では最大サイズは16TiBよりわずかに小さいです。
したがって、16TiBを超えると、パーティショニングソフトウェアはディスクの最後に格納されているセカンダリパーティションテーブルを読み書きできず、エラー27が発生します。