web-dev-qa-db-ja.com

zpoolデータはどこに行きましたか?

N.B. ZFSプールに関しては、私は完全な初心者です。

昨日、次のように4台の3TBHDDにZFSプールを作成しました。

2017-06-10.16:31:08 zpool create data sda sdc sdd sde
2017-06-10.16:31:29 zfs set compression=lz4 data
2017-06-10.16:31:43 zfs set atime=off data

次に、いくつかのデータをコピーし始めました。しばらくすると、プールがなくなり、ハードドライブの1つがオフラインになっていることに気付きました。オンラインに戻ることを期待して再起動を試みましたが、説明されているように、ある種のループでスタックします ここ 。昨日は対応する時間がなかったので、今まではマシンの電源を切っただけでした。

USBスティックから回復しようとしましたが、もう一度起動しようとすると、システムは正常に起動しました。 zpool listを実行すると、「使用可能なプールがありません」と表示されます。グーグルをして、zpool import dataを試してみました。エラーが発生します、

'/ data'をマウントできません:ディレクトリが空ではありません

もう一度zpool listを試しましたが、確かにオンラインに戻りました。

NAME   SIZE  ALLOC   FREE  EXPANDSZ   FRAG    CAP  DEDUP  HEALTH  ALTROOT
data  10.9T   125G  10.8T         -     0%     1%  1.00x  ONLINE  -

ls /dataを試してみましたが、そこにディレクトリがあり、すべてが良好に見えます。データを保存している私の Minio アプリを確認すると、すべてのバケットがなくなっています。案の定、/dataの-​​実際は、Minioサービスがオンラインになったときに再作成したはずの/data/minio/.minio.sysだけです。 zpool historyにはこれがあります 怖い [スクラブはOKです]その中のラインを見てください:

2017-06-11.00:24:08 zpool scrub data

しかし、私はそれを実行したことを覚えていません。しかし、私が実際に得ていない部分は、zpool list125Gがまだ使用中であると言っていることです。これは、ほぼ正しいように聞こえます。そう、

  1. どこisそのデータ?どうすれば再びアクセスできますか?
  2. その記事が示唆するようにZFS_MOUNT='no'/etc/default/zfsに追加しましたが、systemctl enable zfs-mount.targetは「操作の実行に失敗しました:そのようなファイルまたはディレクトリはありません」と言います-どうすればよいですか想定起動中にスタックしないようにZFSプールを自動マウントするにはどうすればよいですか?
  3. UUIDではなくデバイス名(例:sda)を使用してzpoolを誤って作成したようですが、今すぐ修正できますか?

私のUSBスティックには/dev/sdXの文字が割り当てられていますね?それはプールの取り付けと関係があるのではないかと思います。

1
mpen
  • 4つのディスクのストライプで構成されるzpoolを作成しました。基本的にはディスクのRAID0です。

  • SCSI/dev/sdX名を使用し、USBドライブをミックスに追加しました。これにより、SCSI列挙の問題が発生し、/ dev/sdXドライブの順序に影響を与える可能性があります。

  • / dataディレクトリにあるべきではないものがある場合は、それを削除してプールをマウントしてみてください-zpool import data

3
ewwhite