そのため、FreeNas 7システムに接続されているUSBドライブが故障したため、この状況をFreeNas 8にアップグレードする機会として使用しました。問題は、ZFSを起動するのに問題があることです。
[root@media] ~# zpool import
pool: filetank
id: 17702465758427828599
state: FAULTED
status: The pool was last accessed by another system.
action: The pool cannot be imported due to damaged devices or data.
The pool may be active on another system, but can be imported using
the '-f' flag.
see: http://www.Sun.com/msg/ZFS-8000-EY
config:
filetank FAULTED corrupted data
raidz1 FAULTED corrupted data
ada3 ONLINE
ada1 ONLINE
ada4 ONLINE
ada2 ONLINE
[root@media] ~# zpool import -f filetank
cannot import 'filetank': one or more devices is currently unavailable
奇妙なのは、raidzが破損していると言っているだけで、どうしたらよいかわからないことです。私が見つけることができるほとんどのものは、個々のデバイスを交換することを含みますが、特定のデバイスが故障したようには見えませんか? FreeNas 7に戻って同じエラーが発生しましたが、これは基本的に私が期待していたことです。
zpool import -f -F -n filetank
をお試しください。
それは実際にはプールをインポートしませんが、それが回復可能かどうかを教えてくれます。
それがあなたに緑色の光を与えるならば、それから次に進んでください:
zpool import -f -F filetank
これらのオプションの詳細は、manページから:
-f
Forces import, even if the pool appears to be poten-
tially active.
-F
Recovery mode for a non-importable pool. Attempt to
return the pool to an importable state by discarding
the last few transactions. Not all damaged pools can
be recovered by using this option. If successful,
the data from the discarded transactions is irre-
trievably lost. This option is ignored if the pool
is importable or already imported.
...
-n
Used with the -F recovery option. Determines whether
a non-importable pool can be made importable again,
but does not actually perform the pool recovery. For
more details about pool recovery mode, see the -F
option, above.
数値識別子(ID)を使用してインポートしてみてください。これはしばしば魔法を行います。
zpool import -f 17702465758427828599
ここで古いZFSインポートのバグが発生している可能性があります。これにより、強制インポートはIDで実行した場合にのみ可能になります。この投稿へのコメントの説明を参照してください。
これで問題が解決すれば嬉しいです。
そうでない場合は、チェックサムの不一致について不平を言っているzfsがないかログを確認する必要があります。この場合、メタデータの破損を意味するため、zdb -l/dev/dsk/ad *がディスクについて何を示しているかを確認する必要があります。