「不良」ディスクをZFSプールから削除できません

「不良」ディスクをZFSプールから削除できません
  1. プールには2つのディスクがありました /dev/sde /dev/sdf

  2. ディスク /dev/sde が破損したため、プールから除外し、新しいディスクに交換しました。RAID が劣化しました。

  3. 新しい /dev/sde ディスクをプールに追加した後、次の構成が得られました。

 zpool status
  pool: rpool
 state: DEGRADED
status: One or more devices could not be used because the label is missing or
        invalid.  Sufficient replicas exist for the pool to continue
        functioning in a degraded state.
action: Replace the device using 'zpool replace'.
   see: http://zfsonlinux.org/msg/ZFS-8000-4J
  scan: scrub repaired 0B in 0h25m with 0 errors on Wed Sep  2 18:32:39 2020
config:

        NAME        STATE     READ WRITE CKSUM
        rpool       DEGRADED     0     0     0
          mirror-0  DEGRADED     0     0     0
            old     UNAVAIL      0     0     0
            sdf2    ONLINE       0     0     0
          sde2      ONLINE       0     0     0

「古いもの」を置き換えたり、オフラインにしたり、削除したりすると、常にエラーが発生します。

zpool replace rpool old

cannot open 'old': no such device in /dev

must be a full path or shorthand device name

ファイル/etc/zfs/zpool.cacheにドライブ/dev/sde2/oldがある

サーバーを再起動したり、アレイ (アレイは /) を削除したりせずに、古いディスクを削除するにはどうすればよいですか?


root@v05:/# zpool replace rpool old sde2
invalid vdev specification
use '-f' to override the following errors:
/dev/sde2 is part of active pool 'rpool'

root@v05:/# zpool replace -f rpool old sde2
invalid vdev specification
the following errors must be manually repaired:
/dev/sde2 is part of active pool 'rpool'

sde はすでに rpool メンバーです。

プールから古いディスク (/dev/sde/old) を削除する必要があります。

新しいディスクを追加してもエラーは発生せず、すべてあなたの書いたとおりに実行されました。

答え1

問題が解決しました。

ジッド

/dev/sde/old デバイスの識別子 15497986214547762579 を見つけて削除します:

zpool オフライン -f rpool 15497986214547762579

zpool デタッチ rpool 15497986214547762579

答え2

新しいディスクを追加するときにエラーが発生した可能性があります。 を発行しzpool add rpool <newdisk>ましたが、交換する故障したディスク。つまり、次のいずれかを行う必要がありました。

  • zpool replace rpool <olddisk> <newdisk>
  • zpool detach rpool <olddisk>; zpool attach rpool sdfsdfもう一方のミラーの脚)。

私が と書いた点に注意してくださいattach。おそらく、addzpool コマンドでは を使用します。

この問題を解決するにはどうすればよいでしょうか? ZFS 0.7.xでは、追加されたデータvdevは削除できないため、残念ながら解決できません。ZFS 0.8.xは削除できますしたがって、ZFS 0.7.x を実行している場合は、まず 0.8.x にアップデートする必要があります。次に、上記のコマンドを実行して、障害が発生したディスクを交換する必要があります。

答え3

Oracle のドキュメントに従ってディスクを交換しました。コマンド出力は以下のとおりです。

root@v05:/# zpool replace rpool old sde2 無効な vdev 指定 次のエラーを無効にするには '-f' を使用します: /dev/sde2 はアクティブ プール 'rpool' の一部です

root@v05:/# zpool replace -f rpool old sde2 無効な vdev 仕様 次のエラーは手動で修復する必要があります: /dev/sde2 はアクティブ プール 'rpool' の一部です

関連情報