パソコン鳥のブログ

アクセスカウンタ

zoom RSS ownCloud7から 8へのアップデートで大変なことになった

<<   作成日時 : 2015/07/11 09:22   >>

ブログ気持玉 0 / トラックバック 0 / コメント 0

以前紹介した ownCloudを 7から 8へアップデートしましたが、ownCloudを再インストールする羽目になりました。

Dropboxのようなサービスを自前で運用できる ownCloud パソコン鳥のブログ/ウェブリブログ

結論から言うと、暗号化モジュール Encryption を導入していると、ownCloudを 7から 8へのアップデートで、暗号化済みファイルの復号が出来なくなったので、ownCloud を再インストールしました。
Encryption を導入していない場合は、アップデートできました。

以降で、アップデートの説明をします。
Encryption を導入している場合は、再インストールの説明です。
なお、Ubuntu14.04 での説明になります。


暗号化 Encryption を導入していない場合


ownCloud はapt-get upgrade 実行ではアップデートされないので、明示的にアップデートします。

apt-get upgrade owncloud


アップデート後、https://xxxxx/owncloud/ のようにブラウザで ownCloud にアクセスします。

「アップデートを開始」ボタンを押します。
画像



下記画面になります。
「アプリにinfo.xmlが入っていません」と出ます。
画像


再度 https://xxxxx/owncloud/ のようにブラウザで ownCloud にアクセスします。
「アップデートを開始」ボタンがあるので、再度押すと、今度はアップデートが成功します。



暗号化 Encryption を導入している場合


結論から言うと、ownCloudを 7から 8へのアップデートで、暗号化済みファイルの復号が出来なくなったので、ownCloud を再インストールしました。

問題に対するパッチが下記でリリースされていますが、これを適用してもダメでした。
そのうち、これが反映したバージョンがリリースされると思います。
それまでアップデートを見送るのもいいと思います。

more secure way to update the database by schiesbn · Pull Request #17473 · owncloud/core · GitHub
Don't try to move files to the trashbin outside of user/files by schiesbn · Pull Request #17474 · owncloud/core · GitHub


アップデートする場合は、再インストールになります。
ownCloudを一旦削除し、新バージョン8をインストールします。
また、サーバ上の暗号化済みファイルの復号が出来ないので、一旦サーバ上からファイルを削除した上で、クライアント上の同期フォルダからサーバに同期させます。


1.クライアントPCの owncloudクライアントを終了させます。

2.サーバ上で owncloud を削除
apt-get remove owncloud を実行して削除します。

3.サーバ上でユーザデータの削除
rm -fr /var/www/owncloud/data/ユーザ名/* を実行します。

4.サーバ上で owncloud をインストール
apt-get install owncloud を実行します。
2015/7/10時点で、ownCloud 8.1.0 がインストールされます。

5.ownCloud にアクセスし、管理者ユーザでログイン
https://xxxxx/owncloud/ のようにブラウザでログインします。

6.暗号化モジュール Encryption を有効化する
画面左上のメニューで ファイル -> アプリ を選択します。
画像


選択後、「無効」を選択し、「Default Encryption module」で「有効にする」を押します。
画像


ブラウザでアクセスしている ownCloud からログアウトします。

7.クライアントPC で ownCloudクライアントを開始
スタートメニューから owncloud を実行し、ownCloudクライアントを開始します。

8.下記表示で「ファイルを残す」を選択
必ず「ファイルを残す」を選択して下さい。
画像


9.「削除」ボタンを押して同期フォルダを削除
同期フォルダの指定が削除されるだけで、フォルダ自体が削除されることはありません。

10.「フォルダーを追加」を行う
先ほど削除したフォルダと同じフォルダを追加します

11.サーバへの同期開始
これで、クライアント上のファイルがサーバへ同期開始されます

なお、同期中に下記表示が出た場合は、クライアントの同期フォルダ内の Documents、Photosフォルダを別名にリネームして下さい。
どうもサーバでも Documents、Photosフォルダが作られていて、それがクライアントに同期される際にファイル名重複でエラーになるようです。
クライアントPCでのリネームでしか回避できなかったので、Documents、Photosフォルダを別名にリネームします。

画像




以上、ownCloudの 7から 8へアップデートです。

正直、暗号化 Encryption を導入している場合は、今すぐのアップデートはおすすめしません。
修正パッチが反映されるまで、しばらく待つ方が良いと思います。


なお、暗号化 Encryption を導入している際に、どのような問題があってアップデート出来ないかですが、手順で下記コマンドを実行する必要がありますが、これがエラーになります。


sudo -u www-data php /var/www/owncloud/occ encryption:migrate


下記のようになります。

画像


「SQLSTATE[23000]」の表示が出て、最後に「encription:migrate [user_id1] ... [user_idN]」の表示で終わります。


これに対するパッチが下記でリリースされています。
これらを適用で上記エラーは無くなったのですが、それでも暗号化済みファイルの復号が出来ず、アップデート前のファイルにアクセスできませんでした。

more secure way to update the database by schiesbn · Pull Request #17473 · owncloud/core · GitHub
Don't try to move files to the trashbin outside of user/files by schiesbn · Pull Request #17474 · owncloud/core · GitHub

そのほかにもパッチが必要のようです。
そのうち、それらも反映したバージョンがリリースされると思いますので、それまでアップデートを見送るのもいいと思います。

テーマ

関連テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
ownCloud7から 8へのアップデートで大変なことになった パソコン鳥のブログ/BIGLOBEウェブリブログ
文字サイズ:       閉じる