CrescPia

彼岸の夜、イメージ保存に救わるる

夜な夜なサーバーのバージョンアップを試みるもうまくいかず。
イメージ保存をしていたために簡単に戻せてほっとした様子を詠っています。

味わい深いです。
以下、春の夜の実況です。

スクリプト

ちょっとした便利スクリプトを書くのは、シェルスクリプトを書ければいいのですが、分岐とかループをしようとするとよくわからず敬遠してしまいます。
Python で書こう!と思ったのですが、外部パッケージを利用しようと思うとインストールする環境も一緒に作らないといけません。
そうだ!Go 言語なら実行ファイルひとつだけですむので扱いが楽そう!
Go 言語でコマンドを作成しました。


作成したコマンドは VPS のサーバーで実行するためのものです。
Go なら実行ファイルをコピーするだけで OK。


サーバーで実行すると、エラー発生。

$ ./main
./main: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by ./main)
./main: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by ./main)

サーバーの共有ライブラリが古いようです。
Go でもこんな落とし穴があるんですね・・・。

バージョンアップ

サーバー OS のバージョンが古かったので、ついでに OS ごとバージョンアップをしてしまいます。
バージョンアップ実行!


完了後、SSH で接続しようとしてもつながりません。
(スクリプトを実行したかっただけなのにどんどん離れていく・・・。)
すぐには解決しなかったので、元に戻しました。

イメージ保存

バージョンアップ前に「イメージ保存」をしていました。
これのおかげで、完全に元通りに戻せました。
バージョンアップは何があるか分からないので、「イメージ保存」は必須です。

VPS は ConoHa を使っています。 ConoHa の場合は以下のようなコントロールパネルです。
コントロールパネル
サーバーをシャットダウンした状態で、「イメージ保存」で保存できます。
元に戻すときは「サーバー再構築」で保存したイメージを選択すると戻せます。

まとめ