見出し画像

jail領域内の更新に失敗した時の話。

jail領域内のバージョンを12.3-RELEASEから13.1-RELEASEに更新しようとして、jailの母艦側から

freebsd-update -r 13.1-RELEASE -b /jail/hogehoge upgrade

みたいにやろうと思ったけども、上手く行かないので(いや、上手く行かせる方法は分かってるんだけど)jail領域内で

freebsd-update -r 13.1-RELEASE upgrade

みたいにやろうと思ったのね。
そして各種設定ファイルの調整・マージをして、

/usr/sbin/freebsd-update install

みたいにやったのね。
でも途中から、ファイルが無いとかエラーを吐き出して、なんか怪しい感じになったのね。まぁなんか一応更新ができたようなので、

/etc/rc.d/jail restart

とかやったのね。そうしたら、ld-elf.soなんちゃらエラーで起動しないのね( ノД`)シクシク…

で。

ここでミスを犯します。せっかくのjail領域なんだから、一旦領域丸ごとバックアップを取るべきだった。いや、もっと言うと、freebsd-updateを掛ける前にバックアップ取ってないとダメだったんですよね。

でまぁ、ftp.iij.ad.jpあたりからFreeBSDの塊を取ってきてですね

tar -zxpf  base.txz -C /jail/hogehoge

とかやって、ベースパッケージを上書きしてみたんですよ。
そしたら当然、/etc/master.passwdとか/etc/groupとか、その辺もみんなインストール直後の設定になるわけですよね( ノД`)

(; ・`д・´)<あたりめーだろ!

…ハイ。仕方がないので、/etc/master.passwdとか/etc/groupとかを編集して何とか対応しましたよ。

まぁアレですね。バックアップはちゃんと取っておきましょうって話で。
もっとも、tar -zxpf  base.txz -C /jail/hogehoge で真っさらなjail領域を先に作ってしまい、そこに各種ディレクトリを突っ込んでいくという手もあるか…?
いや、既存のものを生かす方が楽か…。

とりま復帰はできたのでほっと一安心。

以上。

この記事が気に入ったらサポートをしてみませんか?