ownCloud 8.1.3 を 8.2.0 へアップデート

この記事は公開されてから時間が経っています

ここではない さくらインターネットさんのレンタルサーバーで運営している ownCloud を二本、8.2.0 へアップデートしました

一本目は上手く行ったんだけど、二本目で冷や汗をかいたので、次回困らないようにかいておこう!

基本的には、ここにかいてある Manual Upgrade Procedure を実行するだけなんだけどねぇ…
https://doc.owncloud.org/server/8.2/admin_manual/maintenance/upgrade.html#manual-upgrade-procedure

二本とも、サーバーサイドで暗号化してる
前回、自分用で暗号化失敗しているので始める前から気が重い..
微妙な違いがあって、後で焦った原因がそこに潜んでいた…

一本目は問題なく動きました

一本目は、機能評価やテーマなどのチューニング用に空き領域で運転している

具体的には、

  1. メンテナンスモードに移行する
  2. config.php をダウンロード
  3. データディレクトリをバックアップ
    TeraTerm で ownCloud ディレクトリ-を tgz にまとめてダウンロード
  4. テーマもダウンロード
  5. 新しい格納先のディレクトリを作成
  6. 新しい .zip をアップロード
  7. 解凍する
  8. 現行のディレクトリーをリネーム
  9. 解凍したディレクトリーを現行と同じ名前にリネーム
  10. .htaccess の Options をコメントアウト
  11. ブラウザーで表示
  12. アップデート
  13. メンテナンスモードの解除を config.php で行う
  14. テーマの変更

上手く行った..
 

二本目も、同様にいくだろう…

コッチは本番なので、胃が痛む ^^;

手順は同じだ…
同じだったはずだ..
なのになぜ表示が違う?
ううぅぅ..
胃が痛い…

なぜ、リロードの指示が?
..え!リロードしても表示が変わらない…
…え!なんでもう一回アップデートしてるの?…
….え!occ コマンドでアップデートしろって?…

と思ったら、プロトコルでした…(ホントか??..)

一本目はテスト用なのでサーバー証明を取得していません
なので、http://xxxxxxx.jp/owncloud
二本目は本番なので、サーバー証明を取得している…
なので、https://xxxxxx.com/owncloud

これだ…

config.php で、
 'overwriteprotocol' => 'https',
を設定してあるので、プロトコルは https:// になるだろう..

と思っていたら、http:// のままログインしようとしていて、これがおかしな挙動の源泉らしい….

https://xxxxxx.com/owncloud
で繋がないとログインできなくなってしまった…
が、セキュアなので良いんじゃ!
とごまかしておく…

config.php に proxy の設定が増えたようで、overwrite…..っていう項目が増えていた…
ちょっと読み切れて無いけど、この辺りのチューニングで上手く行くのかな..

 

それと、ログアウトすると https:// でログインしていたのに http:// へ戻ってしまう..
再度ログインしようとすると、もちろん、ログインできずにトップページをループします///

さて…

レンサバ、ダメなのかな…
VPS + Ubuntu で行きたいな…
更新、コマンドイッパツだし..
/boot だけ気を付ければ良いし..
AWS 互換のストレージ、安いみたいだし…

(雑文)

 

2件のコメント

  1. 初めまして、似たようなことやろうとしてて何点か教えてもらえませんでしょうか。

    大ざっぱに言って旧環境をリネームして待避させたうえで、新環境を旧環境と同じディレクトリ名の配下に展開して・・・だと思うんですが、Options をコメントアウトした後、ブラウザで初期画面を表示される前あたりで、旧環境の config.php を新環境にコピーしたりする必要はないのでしょうか。

    「メンテナンスモードの解除を config.php で行う」というのは、新旧どちらの config.php に対してでしょう・・・(これ以前に旧をコピーしてます?)

    8.1.3 より古い環境のときには、config.php のことは全く無視して、旧環境をリネームしたうえで、setup-owncloud.php を配置・叩いて、以前のディレクトリ名を指定し、管理者ユーザーだけは一時的なものを設定しつつデータベース関係は以前と同じ設定値を投入することで、初回に「データベースをアップグレードします」的な画面になり、うまく移行できていたのですが、8.1.3→8.2 においては、同じ方法が使えず困ってました。(データベースを作りに行こうとして失敗してしまう)

     

    p.s.

     この記事の次のエントリーにある項ですが、私のほう上記とは別にクリーンなところへ 8.2.0 を入れた環境を用意して、8.2.1.4へのアップデートを試みましたが、Unable to move ~ のエラー出ました。

     アップグレード中の様子を WinSCP で観察してたら、新しいパッケージは取得できているものの、その解凍が出来てない感じでした。(_oc-upgradeディレクトリが掘れていない)

     権限の関係か何か?私のほうも解決できていませんが、rootのないレンサバで動作させるあたりは、owncloudの中の人、あまり真剣に考えてくれていない気がしますね。

     

    1. ハジメマシテ…

      別記してありますが、同じエラーで 8.2.1 への更新はエラーしました..
      パッケージがエラーしてるのか?と思いましたが、ちょっと時間的に調べてる余裕がありませんので、8.2.1 はあきらめようと思っています
      ロードマップによると、来月の 22 日あたりにアップデートが有るようです
      (原因を突き止めて、管理してる数本同じ手順を取るのも億劫だし…)

      次にメンテナンスモードの解除ですが、
      アップデートの最初にメンテナンスモードにしていますので、古いディレクトリーの config.php はメンテナンスモードのままです
      https://doc.owncloud.org/server/8.2/admin_manual/maintenance/upgrade.html#manual-upgrade-procedure
      ここの手順1. と 7. ですね…
      (記事の 13. の解除は、”古い config.php は  ‘maintenance’ => true, ですので false に書き換えないといけない” という事です)

      本家の手順の 10. までに config.php が転載されていないといけないということだと思います
      さくらさんはレンサバなので、apache の再起動はできませんが、ここからがアップデータでの作業だと思います

      この辺りまでに、.htaccess を修正しておけばいいんだと思います
      (Internal Server Error が表示されてからでも大丈夫です…Options をコメントアウトして F5 しても..)

      空の config.php を用意して、ダウンロードした物から、コピペしても良いでしょうし、ファイルをそのまま旧ディレクトリから、新ディレクトリへコピーしても良いと思います

      ですが、ownCloud の人たちは、マイナーバージョンの更新でも、結構 config.php の設定項目を弄ってくるようです
      ご存じだと思いますが、config.php.sample を覗いたり、リリースノートなどで変更内容を確認された方が良いと思います
      (英語が苦手なので、結構 時間がかかる..しかも今回、一本だけ overwrite….. って言うオプションでハマってしまいました ^^…)

      あと、データベースの更新は、マイグレータが有ったともいます
      occ にデータベースのリビルドオプションもあったような気がしますけど、未検証です(無責任ですいません…)

      ownCloud の人たちは、マイナーバージョンのアップグレードでもきつい更新をしてきますね ^^..
      メンテバージョンくらいしかアップデータは使えないような気がします
      config.php の内容も、結構な修正がありますね…

      雑文ですいません..

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です