「WebDAV」タグアーカイブ

ブログを上書きしてしまった! 復旧までの道のり  (  その 2) 作業は難航

今回のトラブルにおいて、大前提になるのは、バックアップは取ってあったと言うこと。これがなかったら復旧なんて無理でした。私のバックアップ方法もこの記事の最後の方で書きます。今回は長くなりますよ。

データベース編

今回ダメかと思っていて、ラッキーだったのはデータベースに関してでした。私は、 Lolipop さんのスタンダード・プランというのに入っていました。このプランは、データベースが 30 個まで持てるようになっています。そして、それ以前にはライト・プランというデータベースが 1 個だけのプランに入っていたのです。切り替えたのはなんと1週間ほど前。 Lolipop さんの坂元さん ( ※ ) に相談してライト→スタンダードへの切替をしていたんですね。これしてなかったら、もっと大変だったはず。

というのも、簡単インストールの時にデータベースを新規で設定していたんです。 30 個使えるので、今まで使っていたものとは別のデータベースでいいだろう。と思って新規で設定していたんです。これ幸いしました。データベースは無傷だったんですね。

もちろん、 WordPress 本体とのリンクは完全にたたれています。これを復旧させなければなりません。

※ Lolipop さんの坂元さんとは、 WordCamp Niigata 2019 の時に知り合いになりました。どこでこういう縁ができるのかわからないものですね。

Core システムの復元  WebDAV 編

やっちまった当日はデータベースのことは頭になく、データベースも復旧させねばと思っていたので、自宅に戻ってデータベースが無傷なのに気がついて安心していました。もう復旧は終わったも同然。

ところがうまくいきませんでした。 Lolipop さんのサーバーは、 WebDAV が使えます。 Mac では WebDAV は Finder との相性がいいので、普通にファイルコピーでいけると思っていたんですね。

WebDAV は以前にも使ったことがあり、 Finder の「サーバーへ接続」メニューに登録してありましたので「全ての php ファイルをコピーすれば、 OK じゃん。楽勝!」ぐらいの勢いでした。バックアップを持っていることの重要性は、精神的にも楽になりますね。

さて、何がうまくいかなかったのかと言いますと、パーミッション ( 所有権 ) の問題なんですね。マルチユーザーシステムには、パーミッションというのが存在します。勝手に他人のファイルをいじったりできなくするものですね。 WordPress を使っていると、あまり感じませんが、 WordPress 本体は Linux というシステムの上に成り立っていることが多いです。そして、パーミッション ( 所有権 ) が意外に複雑だったりします。

Mac の Finder は「自分」が書込み・読込ができるファイルに関しては問題ないのですが、制限がかかっているファイルを処理しようとするとエラーを吐き出すことが多いです。今回もそれでした。何度やってもエラーを吐く。パーミッションのエラーであることは明らかなのですが、どこまでコピーが完了したのかはっきりしなかったりするんですね。いったん頭を冷やして考えました。

Core システムの復元  SSH 接続編

色々いじっているファイル群をそのままコピーできれば、即 OK になるのですが、ファイル群はいろんなパーミッションが絡んできます。バックアップシステムは、 UpdraftPlus と言うプラグインを使っていました。この UpdraftPlus をインストールしてしまえば、バックステップからのリストアもできるのではないか。いや、できるんです。そこで、 Lolipop さんのスタンダード・プランを思い出しました。

このプラン、 SSH 接続が使えるんです。1週間前まで使っていたプランだと、使えないんですね。ラッキーです。 SSH 接続が使えれば、プレーンな WordPress 本体をインストールできます。プレーンな WordPress 本体をインストールしてしまって、 wp-config.php ファイルを書き換えてやれば、 Core システムの復元ができると言うことになります。

このインストールに関しては、あっちこっちに書いてありますので、箇条書き程度にさせていただきますね。

  • curl で WordPress システムの tar.gz ファイルをダウンロード
  • 解凍・全てのファイルを所定のフォルダに配置 
  • tar.gz ファイルなど不必要なものを削除 
  • wp-config.php に以前のデータベースとの接続を記述

最後の「以前の」がミソです。この辺の情報もしっかり記録取っておくべきですね。 wp-config.php ファイルそのものを別にしておくのもおすすめです。今回は、ハッシュを新しくしましたが、しなくてもいいかもしれません。

ここまでして、管理画面に入ることができました。ブログ本体は実は真っ白で焦りましたけど。管理画面に入ってしまえば、先に述べた UpdraftPlus をインストールして、ログイン。リストアと順番に進めれば OK です。


UpdraftPlus はバックアップ・リストア用プラグインで、実際に使えるようにするためには、いくつかステップがあります。ありますが、情報もあるので導入は簡単だと思います。私は有料プランを購入しています。それなりの値段ですが、安心が買えると思えば安いと思います。容量を気にしなくてすむ OneDrive にバックアップを取っています。更に、週1で OneDrive のファイルを iMac のローカルディスクにコピーしています。具体的な内容についてはこれも別エントリにしますね。


ほのかなるさびしさありて身をめぐるかなしみのはてにいまか来ぬらむ

若山牧水