potpro (ぽとぷろ)
Full-stuck engineer(Not Full-stack)
JS/PHP/Go/Docker/Nginxなど。技術または趣味寄りの発信ブログです。
全 85 記事Mastodonのサーバを1カ月ロールバックしました、一体なぜ?
Mastodonのサーバを1カ月ロールバックしました、一体なぜ?
この記事はFediverse (2) Advent Calendar 2022の21日目です。
せっかくなので書きます。いつもは技術記事をしっかり書いてますが、たまにはすごい雑に日記感覚で書きます。
Fediverseでもっと有益なこと発信できることあるだろと思ったけどもうこれでやる気が全部失われたので無理です。
突如として投稿が全て消えてしまった
突如起こった悲劇。
2022年12月12日、私はいつものようにMastodonでどうでもいいことをつぶやいておりました。
Twitterがどうとか、仕事がどうとか、ゲームがどうとか。そんなことです。
うちのMastodonはおひとりさま鯖。もうどうかすると6年目に入ろうとしています。6年・・・下手なソシャゲーのサービス期間より長いです。
そのため、Mastodonの運用に関してはかなり自信があったというか、まあほぼ自動化しており、かつサーバスペックにも余裕があったので、最近は不自由なく稼働してました。
で、特に何も考えずに投稿ページを見てますと、
・・・あれ、あの投稿なんで表示されないんだ?というか少ない?
統計を見てみると、たったの136投稿との表示。
・・・え?
いやいやいやいや、1万投稿を超えたことをお祝いした記憶があり、かつ5年分のデータがあるはずです。こんなに少ないわけがありません。
最初はものすごい狼狽しました。何故だ?アップデートミスったか?それともデータ消失したか?など。
いやいや、v4へのアップデートは何事も無く終わったし、アップデート直後は問題なかったはずだ。と。どのタイミングで無くなった?と。
原因
さてさて、原因なんですが、単純なことです。
Mastodonはv4になってから、ユーザー設定の欄に「投稿の自動削除」が追加されました。
投稿の自動削除機能自体は、v3から存在していた機能らしいです。v4になってわかりやすい位置に配置されたとか。
この機能は、古い投稿を自動的に削除することで、ディスク容量の削減を行うものです。
もうお分かりですね?
私は「古い投稿を自動的に削除する」設定をしたので、「古い投稿が自動的に削除」されたんですね。(新次郎構文)
はい。アホですね。
もうアホ過ぎました。そもそもなんでこの設定を入れたかと言うと、リモートの投稿を削除する機能と考えて雑にチェックを入れてました。自分の投稿は削除されないだろうと。
多分チェックした時は何も考えてませんでした。もう最悪ですね。こんな奴がSNSを偉そうに語ったり、6年も運用続けてたから自信があったとかお笑いです。
そもそもこれは不具合でも無く技術的なミスでも無く、ただのオペミスです。こういうのが一番怖いんですよね。しっかり運用された企業サービスなどのデータ消失事件はこうやって起きるんですね、実感しました。
そして自分の心境的にはワザップジョルノで騙されたような心境ですが、完全に自分のやらかしなので誰も詐欺罪と器物損壊罪で訴えることはできません。この行き場のない悲しみは誰にぶつけることも出来ない・・・。
対処
ロールバックするか悩んだのですが、今までの1万を超える投稿が消えることに関しては耐えれないなと思ったため、泣く泣くロールバックしました。
問題無くロールバックは出来ましたが、 バックアップから1カ月前のDBに戻したので一部のデータに不整合があります。逆に言えば11-12月の投稿も消えてしまいました。
なので11月~12月にフォローして頂いた方のフォローも外れてしまいました。申し訳ないです。
まだパワーが出なくて一部のメディアは壊れてます・・・データはあるので気力があるときにでも復旧させます。
最後に
この悲劇を繰り返さないために今一度周知します。
Mastodonの設定ページにある「古い投稿を自動的に削除する」にチェックを入れることは非常に危険です。一部のメディア以外の古いデータは思いっきり消されます。
物理削除なのでバックアップを取っておかない限り復旧することも出来ません。
自分はおひとりさま鯖なのでロールバックと言う手段が取れましたが、共有のサーバでかつ個人ユーザーの場合は復旧は簡単ではないので管理人に泣きついてもまず復旧は出来ないと思ったほうがいいでしょう。
Mastodonユーザーの皆さんは覚えておいてください。自分のようなバカなことをしないよう、設定には充分お気を付けください。また間違えて設定した場合に、覚悟の準備をさせられないようお気を付けください。
それでは、皆さん良いお年を。