更新手順 - Dokuwiki
手動で、Linuxコマンドによりファイルダウンロードなどを行う方法が下記の解説に書いてある。
が、毎回手動は面倒なので、基本はupgradeプラグインを使いたい。
普段はプラグインに任せときゃいいんだけど、たまーに上手く動かなくなるので、やっぱりバックアップを取るのが大事。
その他、細かな点を含めて、更新と復旧方法のLinuxコマンドについての覚え書き。
- 環境
- Ubuntu 18.04
その挙動を当面の間、旧式に戻すオプション defer_js
がWikiのサイト設定に追加されているので、不具合が生じたらOFFにし、プラグインが対応されたらONに戻す。
手順
待つ
何にでも言えるが、新しいのが出ても、リリース直後には飛びつかず、ひとまず待つ。
プラグインが最新には対応しなくなったり、何かしらバグがあったり、そういう報告が上がって、修正されるかも知れない。
バックアップ
フォルダごとバックアップ。日付を付与(dokuwiki.20201231.tgz など)
$ cd /path/to/parentdir/of/dokuwiki $ sudo tar zcvf dokuwiki.`date +"%Y%m%d"`.tgz dokuwiki
つい面倒でサボりがちなんだけど、いざ失敗したときのリカバリーが比にならないほど面倒すぎるのでやるべき。
アップデート実行
Upgradeプラグインを導入し、Dokuwikiの管理者画面より「Wikiのアップグレード」
アップデート後
問題が無かったら
新しいWikiをお楽しみください。
全てまたは特定のページが表示されなくなったら
エラー確認
Apache(nginx使ってる人はphpのログが出るとこ)のログを見る。/var/log/apache2/error.log
何かしら、エラーが出てるはず。
プラグインの無効化方法
もしバージョンアップにより、プラグインの何かがエラーを起こしていたら、それっぽい名前がphpのログに出ているはず。
そのプラグインが今も必要かどうかで、対応が異なる。
今も必要な場合は、下記の「戻す方法」などで一旦バージョンを戻して対応を待つしかない(できるなら自分で改修してもいい)。
もう不要という場合は、無効化することで新しいバージョンのまま解決する場合がある。
$ sudo vim conf/plugins.local.php
上記のファイルには、無効化するプラグインが列挙されている。Dokuwikiのセキュリティ上、所有者以外はアクセスできない権限にされているので、一般ユーザからは見えないかも知れない。
error.log 上でのプラグイン名の表記を確認して、それを追記する。
$plugins['PluginName'] = 0;
戻す方法
なんかエラーが一杯出て手に負えそうにねえ!って場合は元に戻す。
さっき作ったバックアップファイルに戻す。“p”フラグにより、圧縮時の権限を保ちつつ展開するのが重要。
$ sudo rm -r dokuwiki $ sudo tar xzvfp dokuwiki.20200603.tgz
戻す方法その2
確実に戻せる保証はないが、バックアップ取ってなかった場合。
dokuwikiのアーカイブから、動いていた古いバージョンのを持ってきて、上書きする。
念のため、今の状態のもバックアップ取っとく(本当にどうしようもなくなったとき、ファイル構成の変化などを後から調べられるようにしておく)
$ sudo tar zcvf dokuwiki.`date +"%Y%m%d"`-err.tgz dokuwiki
アーカイブから、動いていた頃のバージョンとURLを確認する。
作業用フォルダを作成(展開時、dokuwikiフォルダが無条件に上書きされるのを防ぐ)
$mkdir tmp (作業用フォルダ名は適宜変更) $ cd tmp
ダウンロード・展開(バージョン等は適宜変える)
$ curl -o dokuwiki-2018-04-22c.tgz https://download.dokuwiki.org/src/dokuwiki/dokuwiki-2018-04-22c.tgz $ sudo tar xzvfp dokuwiki-2018-04-22c.tgz
上書きコピー
“T”フラグを付けることで、フォルダの統合になる。
$ cd .. $ sudo cp -TRv tmp/dokuwiki dokuwiki
その他メモ
- アップデートプラグインページURL(ログイン後)
最後に
この内容Dokuwikiに書いても、自分のが壊れたら見れないんだよなぁ……