自宅鯖のレスポンスが無くなっていた件

最近は育児優先のため、自宅鯖の管理が疎かになっていたのが原因か、
pingも返ってこない状態になっていたため、一度クローゼットからNUCを取り出して、
起動してみたら、どうやらファイルシステムが破損していて起動出来ない為、
fsckでファイルシステムを修復して再度クローゼットにNUCを戻したら
また応答が無くなったため、本格的に対処するために作業を行っている机の裏に仮設置して、
アップデートやバックアップを行いました

現行の環境はubuntu18.04LTSで古いため、騙し騙し使っていた環境だったので、
この際OSをアップグレードすることにしました。
その作業と並行して3台あるNUCのうち1台にubuntu22.04LTSのserver版を入れて、
移行先の環境を構築したのですが、7月辺りからメモリの価格が暴落しているため、
8GB×2のDDR3L1600をAmazonで4400円程度で購入して、
4GBのDDR3Lモジュールから8GBのDDR3Lモジュールに交換することにしました。

NUCは簡単に開けられるので、メモリの交換自体は5分程度で完了

新しい環境はPHP8.1のため、PHPで廃止された関数が有ったりして、
これを対処するのに少し手間が掛かり、更にphpMyAdminを使って
従来の環境のwordpressのテーブルをエクスポートして、
新たに構築した環境へエクスポートしたら、投稿やコメントが一切出来ない状態になりました。

とりあえず、PHP8.1での動作が怪しいプラグインは全て削除して、投稿は出来るようになりましたが、
やはりコメントが出来ない状況は改善されず。

テーブルを修正しようにも、最新のphpMyAdmin5.2.0ではユニークなキーとなる、主キーが無いと編集が出来ない仕様なので、
一度からのwordpressのテーブルを作り、そのSQLのCREATE TABLEとテーブルインデックス、テーブルのAUTO_INCREMENTだけを
抜き出して、従来の環境からエクスポートしたSQLのINSERT INTOを入れ込んだSQLを流す事で、コメントが出来るようになりました

wordpressはバージョン1.5とか2.0辺りから使っていて、サーバを再構築する度にphpMyAdminかwordpressのエクスポート/インポート機能で
テーブルデータをコピーしてきているため、何処かで各テーブルに主キーとAUTO_INCREMENTを設定するようになったんでしょうか

とりあえずは、今のところ問題はなさそうですが、問題が発生したらその都度対処していこうかと思います

8 comments to 自宅鯖のレスポンスが無くなっていた件

  • mokekyo

    外部確認要員のmokekyoですよ。
    これが書き込めれば、自前の回線以外でも
    書き込みができるってことかな。

  • ありがとうございます

    ようやくubuntu22.04LTSで安定してきました

    外部からコンスタントに確認できると
    直ぐに気が付くんですけどね

  • mokekyo

    経験値としてサーバの生存確認の仕組みを
    用意するのがいいかな。単純に外部のレンタルサーバなどから
    pingやWebの反応を確認してエラーの場合、
    携帯のメールに届くとか。

    内部だけならメールを飛ばすだけなので楽なんだけどね。

  • mokekyo

    >実家で
    下手なレンタルよか自由度があるから良いかも。
    そちらもすぐには手を出せないので、1日1回は
    メールを送るとかも必要かもしんない。

    サーバとしてはラズパイゼロのような小さいのが良いかも。

    • ラズパイにubuntu22.04を入れましたが、
      実家のネットワークだとグローバルIPが使えない気がします

      放置プレイで只管監視させるか、上手い仕組みを考えないとダメかも

  • mokekyo

    ご実家の環境だとWebページの特定データを見て
    生存確認になるかな(このページのタイトルとかね)
    それだとグローバルIPでなくてもいけるでしょう。

    久しぶりにプログラム脳が動いてる感じがする(w

    • そうですね、cronでHTMLは取得できるので、
      その応答によってメール送信するとかでしょうか

      何か問題が有ったときに遠隔で対処できないという課題は残りますが

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>