Debian 9(stretch) から 10(buster) に更新した&やらかした話

 ARGAS.NET 他各種ドメインが動いているサーバーは OS として Debian を利用しているのですが、WordPress で PHP のバージョンが古いと警告されるようになってしまい、PHP のバージョンアップついでに Debian も 9(stretch) から 10(buster) に更新しました。もっとも「ついでに」なんて書いていますが、実際のところ Debian 9(stretch) 向けには PHP 7.0 のパッケージしか(Debian 公式のリポジトリー上は)提供されていないので、アップグレードは必須だったりします。
 これに伴って色々パッケージもバージョンが変わったのですが、当サーバーにおいて影響があった(あるいは今後も引きずりそうな)ものは、いまのところ Perl が見つかっています。

 Perl は 5.24 から 5.28 に更新されましたが、5.26 から @INC にカレントパス(.)が含まれなくなりました。これはセキュリティ上の要因なので、対応策としては include や require でファイル名だけを指定している箇所では、./ファイル名 のようにカレントパスであってもパスを追加する必要があります。
 もし設置されている Perl スクリプトがうまく動作しないという場合は、include や require の見直し、使っているパッケージの更新が必要になるでしょう。


 それはさておき、アップグレード時に何をやらかしたのかと言いますと、nginx の設定ファイルを綺麗さっぱり消してしまったのでした。
 気がついたのはアップグレードして再起動後、ある程度の動作チェックが完了したところで、最後にアップグレード後の手順に従って apt purge を実施したところ、一番最初に nginx を導入したときに合わせてインストールした、nginx-common に含まれるコンフィグファイルもすべて削除されてしまったのでした。
 現在インストールしている nginx は nginx.org のリポジトリーから導入されているものなので、nginx-common は使われておらず、コンフィグファイルだけが長らく使われたままとなっていたのですが、それをすっかり忘れ、ほぼ最後のクリーンアップで apt purge を実行したため、設定ファイルは電子の藻屑となってしまった、というワケです。(extundelete も試しましたが、1ファイルだけ救済できたものの、肝心の *.conf ファイルは見つからずじまいでした)
 クリーンアップ中だったのですでにバックアップはなく、やむなく再設定を行い、(再度の動作確認も合わせて)4時間ほどかけて復旧しました。これをお読みの方はそんなに急いでバックアップを消してしまうということはないと思いますが、お気をつけいただけたらと思います。

“Debian 9(stretch) から 10(buster) に更新した&やらかした話” に対するコメントはありません。

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください