実機でリカバリ実行!と思ったら。。。zfsに”pool1”は既にあるよ”と叱られました(^^;;)。【注*1】
0. いざ、実機でリカバリ。と思ったら。。。
(1)zfsに叱られた
実機でリカバリをしようとしたら、”pool1”は既にあるよ”と叱られました😅。
| [root@main_sv] # zpool import -XF -m -f -o readonly=on pool1 |

既にzfsに認識されている”pool1”をimportしようとしても無理な話です😅。
当たり前と言えば当たり前の話でした😅。。。。
(2)さてどうするか。。。
zfsに特定のpoolを認識させなくする方法など、”経験がない”/”遭遇したことがない”、そもそも”必要がなかった”ので、ググってみると、”zpool destroy コマンドを使用”というリンクばかりがリストアップされます😑。
”zpool destroy”では、pool内の情報すべてが時空のかなたに消えると思うので、これは怖くて使えません🤔。
根気強く探してみたところ、資料[*2]を発見😀。
資料によれば、” zpool exportを実行したあとは、プールはシステムから認識されなくなります。”とのことなので、このやり方を試して見ることにします😀。
試すにしても、経験のない作業を、いきなり実機で行うと、せっかくここまで来たのに、泥沼にはまりそうですので😅、別のFreeBSDサーバーで試行してみる事にします😀。
1. リカバリテストの準備
一時ファイル保管/Replicate用ファイルサーバーに、USB/HDDを付けて試してみることにします。
(1)テスト用USBハードディスク(HDD)の準備
古いハードディスク(HDD:250Gbyte、通電時間17,198時間)を、中身を取り出して別用途に使った[*3]予備のUSBなケースに取り付けます。
保管ディスクにはポストイットで、”Ubuntu24.04”とメモが張ってありましたので、VirutalBox専用機を最初に試作した際のシステムディスクだった気がします。
VirutalBox専用機は既に別のHDDで安定運用しており、このHDDの中身は特に必要ありませんので、テストに活用します。
まずは、dmesgでUSB/HDDのデバイス名を確認。
| [root@file_sv] # dmesg | less |

(2)USB/HDDの初期化
中身を綺麗にするために初期化しておきます。
まず、ファイルサーバーに接続したUSB/HDDに”zfsプール”を作成します。
| [root@file_sv] # zpool create pool1 da0 | ; | 。 |
| [root@file_sv] # zpool status | ; | 。 |

"pool1"はデフォルトのマウントポイントである、”/pool1”にマウントされています。
(4)poolの初期化
一応、poolを初期化してきます。
| [root@file_sv] # zpool initialize pool1 | ; | pool1を初期化。 |
イニシャライズ中でも作業はできますが、問題が生じたとき、イニシャライズ中だったせいなのか、試行内容に問題があったのかを切り分けるのに手間がかかります。🤔
そこで、イニシャライズが終わるのを気長に待つことにします😑。
2. リカバリテスト
(1)テストデータ準備
試行前後のファイル名とタイムスタンプに差分が生じるかを確認するために、適当なフォルダ/ファイルを”/pool1”にコピーしておきます😀。
今回は、リカバリ試行で、ActiveDirectoryドメインコントローラー(AD-DC)のデータバックアップ用エンクロージャーに引き上げた、”作業記録htmlファイル用フォルダ”をrsyncで”/pool1”にコピー。
(2)"zfs export"/"zfs import"のテスト
テスト用USB/HDDに作成したpoolに対して"zfs export"を試行。
| [root@file_sv] # zpool export pool1 | ; | |
| [root@file_sv] # zpool status | ; | |
| [root@file_sv] # zfs list | ; |



