思考実験とD.I.Y.

D.I.Y and Gedankenexperiment

【FreeBSD13.5】メインファイルサーバーのフルメンテナンス(10.5/閑話):やらかした!マウントポイント指定を間違えた

メインファイルサーバーをNFSサーバーとして運用するために最低限の設定を終えたところで、”VirtulaBox専用機”[*1]の仮想マシン(VM)用ディスクがパンク。

利用頻度の低いVMのファイル群の移動先として、再構築したzfs/pool上に新しい”ファイルシステム領域”を作成しようとしたところ。。。。*2

  • 小生の健忘禄になっていますことをお詫び申し3上げます🙇‍♂️

コマンドがすべて使えなくなった!

zfs/poolに新しい”ファイルシステム領域”の作成後、”zfs set”でマウントポイントを指定。

マウント状況を確認しようとしたところ、”zfs list”どころか、”df”/"ls"他、すべてのコマンドが使えなくなりました😵。

何もできないので、<CTRL><ALT><DEL>で再起動。

zfs/poolがすべてインポートされなくなりました😨。。。

自分は何をやらかしたのか?

作業としては、typeしないようにと、作業メモに記載した内容をコピペで実行。

作業メモをよくよく見ると。。。、余計な”スペース”が入っている😨!

新しい”ファイルシステム領域”のマウントポイントを”/(システムルート)”にしてしまっていました😢。

”コマンド完了後、ファイルが何もない”/(システムルート)”がマウントされたのでは、すべてのコマンドが使えなくなって当たり前です😅。

とりあえず

直前の作業で触ったのは、pooln1ですので、pooln0とpooln2をimportしてみます。

zfs status”で確認すると、error/warnigは表示されませんので、pooln0とpooln2は無事でした😀。

さてどうしたものか。

  • pooln1の新しい”ファイルシステム領域”のマウントポイントを修正しようにも、importしないことには、修正できません😅。
  • このまま、pooln1をimportすると、新しい”ファイルシステム領域”を”/(システムルート)”にのマウントしようとして、堂々巡りに😅。。。
  • ”snapshot”を使って新しい”ファイルシステム領域”の直前の状態に戻すにしても、import出来ていないpoolに対しては、復元処理が行えません。

進退窮まりました🤔。

これは一回、pooln1を構成するディスク(da3)を初期化して、再度、サルベージ作業かな😰と思いましたが。。。

パニクっているので、頭が回りません😵。

一旦、一呼吸。。。。

何とかなった。

pooln1をimportする際、自動マウントされないようにすればよいのでは🤔。。。

ということで、調べてみると、

Tips
  • ZFSプールをインポートする際に、ファイルシステム自動的にマウントさせないようにするには、zpool import コマンドで -N オプションを使用します。
root@server:# zpool import -N <プール名>    

 

ということで、”-N”オプションを使ってimport。

無事、import出来たので、pooln1に作った新しい”ファイルシステム領域”のマウントポイントを修正。

zfs status”で確認すると、error/warnigは表示されませんので、pooln1も無事でした。

何とか、手戻りなく済みました😮‍💨。

未然防止策を検討

  1. zfs/poolの新しい”ファイルシステム領域”を作成する/マウントポイント指定をする際には、自動的にマウントしないようにオプションを付けることを習慣にしよう😀。
    Tips
    • 新しい”ファイルシステム領域”を作成する際、自動的にマウントされない様にするには、zfs setコマンドで”canmount=noauto”を指定する。
    root@server:#  zfs set canmount=noauto mountpoint=<マウントポイント> <プール名>    

     

     

  2. すべての”ファイルシステム領域”を自動的にマウントされないようにして、起動時に実行されるローカルスクリプトでマウントすればよいのではということで、
    Tips
    • 自動マウントをしないようにするには、zfs setコマンドでで”canmount=off”を指定する。
    root@server:#  zfs set canmount=off <プール名>    

     

    こちらは、本来の作業を終えないうちに実施すると、泥沼にはまりそうなので😅、熟考してから再検討する事にします🤔。

 

【次回に続く予定】

ブログランキング・にほんブログ村へにほんブログ村 IT技術ブログへ

出典・引用・備考

*1:

*2:この投稿の内容は、特定の機種並びに特定の環境での確認結果になります。同等機種や異なる環境での動作他を保証するものではありませんので、ご留意いただけます様お願いいたします。