背景#
自社のコンポーネントページをメンテナンスする際、便宜上サーバーで直接デバッグするための Nginx.conf を調整しました。
やっと調整がほぼ完了し、Nginx も起動しましたが、いつもの癖で一部の一時ファイルを削除しようとしました。
しかし、手が滑って rm -rf nginx* と入力してしまい、サーバーの Nginx の設定などがすべて削除されてしまいました。
しかも、ローカルにもバックアップもなく、GIT にもプッシュしていませんでした。
幸いにもオンライン上には有識者がいて、なんとか元に戻すことができました。ここに記録しておきます。
実践手順#
- yum install gdb を実行して gdb をインストールし、Nginx のマスタープロセスのプロセス ID を見つけます。
- 以下のコマンドを実行します。
- 最後に、grep server_name mem_* コマンドで server_name を含むファイルが出力されます。
- ファイルをダウンロードした後、Visual Studio Code(バイナリファイルなので、sublime などでは開かないでください。文字化けします)を使用して、グローバル検索を実行すると、慣れ親しんだ設定情報が表示されます。
- ファイルの開始位置はおおよそ http { の位置で特定できます。
6. 直接コピー&ペーストはできませんが、何とか元に戻すことができました。自分が手が滑ったせいです QAQ