ホーム領域を回復させるための事前準備が整いましたので、飛ばしたzfs/poolのデータをサルベージします。【注*1】
- 小生の健忘禄、兼作業記録になっていますことをお詫び申し上げます🙇♂️
1. 飛ばしたpool1のインポート
これまでに、飛ばしたpoolの回復処理を2回行っています😀。
1回目はテストとしてReplicateサーバーで、2回目はFreeBSD8.4なメインファイルサーバーで実施して、回復したデータは、ファイルサーバー[*2]に取り付けたReplicateストレージと、ActiveDomainコントローラ(AD-DC)に取り付けたバックアップ用ストレージ[*3]に、引き上げを行いました[*4]。
サルベージした、データをネットワーク経由で復元するのも手ですが、データ量が多いためネットワーク経由での復元は時間がかかります😅。
そこで、最後にもう1回、FreeBSD13.5な実機上でサルベージを行います😀。
(1)” -o readonly=on”オプションなしでpoolをインポートしてみる
現状では、失敗しても傷が浅いので、試しに” -o readonly=on”オプションなしで”zpool import”を試してみる事にしました🤔。
| root@mainsv:# zpool import -XF -m -f -o readonly=on pool1 | ; | pool1をインポート。 |
” -o readonly=on”オプションなしだと無言Panicでサーバーが落ちてしまいました😵!!
(2)” -o readonly=on”オプションありでpoolをインポート
無言Panicでサーバーが落ちた後なので、”sync”が行われなかったためバックグランドで”fsck”が実行されましたので、”fsck”が完了してから、これまでのpoolの回復処理と同じく、” -o readonly=on”オプションありでpoolをインポートします。
| root@mainsv:# zpool import -XF -m -f -o readonly=on pool1 | ; | pool1をインポート。 |
この後は、pool1のサルベージが完了するまで、メインファイルサーバーは連続運転です(*5)😅。
2. pool1の中身をサルベージ
(1)ホーム領域のサルベージ
まずは、ホーム領域を、再構築したpool[*6]にサルベージします。
まずは、再構築したRAID5上にホーム領域用の”ファイルシステム領域”を作成します。
| root@mainsv:# zfs create pooln0/myshare | ||
| root@mainsv:# zfs create pooln0/myshare/Home | ||
| root@mainsv:# zfs list |
pooln0にはマウントポイントを設定していないため、作成した”ファイルシステム領域”のマウントポイントも設定されません😅。
新しく作った”ファイルシステム領域”のマウントポイントを設定します。
この段階では、トップディレクトリ”myshare”には、インポートした損傷したpoolが”read only"でマウントされていますので、仮のマウントポイントとして、/pooln0の下にマウントするように設定します😀。
| root@mainsv:# zfs set mountpoint=/pooln0/myshare/Home pooln0/dbs/Home | ; | 。 |
損傷したpoolから再構築したRAID5上にホーム領域用の”ファイルシステム領域にデータをサルベージします😀。
| root@mainsv:# rsync -avh /myshare/Home/ /pooln0/myshare/Home/ | ; | 。 |
(2)その他のファイルシステム領域
飛ばしたzfs/poolのRAID5ディスクを再構築するために、pool1に含まれている残りの”ファイルシステム領域”も同様に再構築したRAID5上にホーム領域用の”ファイルシステム領域にサルベージしていきます😀。
| root@mainsv:# zfs create pooln0/myshare/Share | ||
| root@mainsv:# zfs set mountpoint=/pooln0/myshare/Share/ pooln0/myshare/Share | ||
| root@mainsv:# zfs list |
| root@mainsv:# zfs create pooln0/myshare/Share/DataBank | ||
| root@mainsv:# zfs set mountpoint=/pooln0/myshare/Share/DataBank pooln0/myshare/Share/DataBank | ||
| root@mainsv:# zfs list | ||
| root@mainsv:# rsync -avh /myshare/Share/DataBank/ /pooln0/myshare/Share/DataBank/ | ||
| [..] | ||
| root@mainsv:# zfs create pooln0/myshare/Share/DataBase | ||
| [..] |
【次回に続く予定】