LoginSignup
3
3

More than 5 years have passed since last update.

ownCloudをoccを使わずにアップデートする

Last updated at Posted at 2017-02-15

前置き

※よくあることが書いてます。手順を知りたい方はスキップ

前提・背景

  • ここで記載するownCloudとはownCloud Serverのことです
  • ownCloudを既に利用中でアップデート手順を知りたい
  • アップデートにSSHを利用したくない(or利用できない)
  • サーバーサイド暗号化が有効な状態では実践していません。データの破損の可能性などが想定できないため、実施の際はご留意ください
  • 公式ページ(英語)の記載と実践結果に基いて書いてますが、環境によって違う結果もあり得ますので、あくまでも実施は自己責任でお願いします

アップデートの必要性について

ownCloudに脆弱性が発見された際、脆弱性に対応した最新バージョンにアップデートすることが求められます
基本的にはownCloud内で自動アップデートを有効にしていれば問題ないはずですが実施されない場合は手動でアップデートが必要になります

コンソールコマンドoccを使わずにアップデート

ownCloudをアップデートする際は、コンソールコマンドのoccを使う手順が一般的です
しかし、レンタルサーバ等で利用していて、sshが提供されておらずコンソールコマンドのoccを使えないケースがあります
ここではoccを使わない手順について記載します

使うもの

  • FTPクライアントソフト(FFFTPやFilezillaなど)
  • Webブラウザー
  • 圧縮解凍ソフト(zip形式が解凍できれば良い)
  • エディターソフト(メモ帳など)

ownCloudの仕様と注意ポイント

複数のメジャーリリースバージョンの存在

ownCloudは複数のメジャーリリースバージョンがあります。
また、各リリースバージョンについてサポート期間がある限り、脆弱性対応バージョンが更新されます

複数のメジャーリリースバージョンを飛ばしたアップデートは不可

現在のバージョンからアップデートをする際、この複数のメジャーリリースバージョンを順次適用する必要があります

簡単な流れ

以下で記載する作業の流れを簡単に書きます

  1. アップデート準備
  2. ownCloudを利用不可状態に変更
  3. データバックアップ
  4. アップデート作業
    1. 新バージョンのアーカイブを設置
    2. データを現行パスから新バージョンのパスへ移行
    3. ブラウザからアップデート実行
  5. ownCloudを利用可能状態に変更
  6. 残処理

手順

手順における前提

項目
現在のバージョン 8.2.7
作業後のバージョン 9.1.4
ownCloudインストールパス /htdocs/owncloud/

アップデート準備

現在のownCloudのバージョンの確認

※ 既に把握している場合は次項へ

  1. Webブラウザーでowncloudにログイン
  2. 「管理」ページの一番下の「バージョン」を確認

owncloudのアーカイブを取得

https://owncloud.org/changelog/ にアクセス
目的のリリースバージョンの最新版のzipファイルをダウンロードする
現在のバージョンから、目的のバージョンまでにリリースバージョンがある場合はそのzipファイルもダウンロードする
今回は、現在が8.2.7で目的のバージョンが9.1.4なので、
ダウンロード必要なzipファイルは、
- 9.0.xのzipファイル
- 9.1.4のzipファイル
となります

アーカイブファイルの準備

  1. 一番若いバージョンのzipファイル(今回は9.0.xのzipファイル)を解凍します
  2. 解凍後はowncloudというフォルダができます
  3. 区別する為、フォルダ名をoc90に変更しておきます
  4. oc90の中にあるconfigというフォルダは不要なので削除しておきます

ownCloudを利用不可状態に変更

おすすめな順に方法を記載します

アクセス制限をかける場合

ご契約のレンタルサーバーの管理機能などでアクセス制限をする
※ この場合はconfigファイルの編集やディレクトリ名変更が不要です

ownCloudのメンテナンスモードへの切替えをする場合

  1. /htdocs/owncloud/config/config.phpをFTPでダウンロード
  2. 記載に'maintenance'行がある場合は、falsetrueへ変更し保存
  3. 編集後のconfig.phpを元の場所へアップロード

もし元のconfig.phpにmaintenanceの行の記載が無い場合は、

  'maintenance' => true,

を他の項目に倣って追記してください

ownCloudディレクトリの名称を変える場合

FTPソフトでサーバーへ接続し、「owncloud」を「owncloud-old」へ変更

この操作により、従来のURLへアクセスされた場合、404 Not Foundの状態となりますので利用者へのアナウンスをしておきましょう(びっくりされます)

作業前のバックアップ

ここでは詳細な手順を省略させてもらいます
- データベース(phpmyadminでエクスポート)
- owncloudデータ(サーバー上で圧縮またはPCに丸ごとダウンロード)

アップデート作業

FTPで新バージョンのデータをアップロード

oc90を同じ階層にアップロードします
今回の場合はアップロード後「/htdocs/oc90」となります

転送モードはバイナリモードがおすすめです。

現在のデータを移行する

  1. owncloud/configoc90/configへ移動させます
  2. owncloud/dataoc90/へ移動させます

補足

3rd partyアプリを利用してる場合はappsを差し替え
テーマを変更している場合はthemesを差し替え

※ 前工程で現バージョンを「owncloud-old」に変更してる場合は読み替えてください

configファイル内のメンテナンス設定の解除

前工程でoc90/config/config.phpにメンテナンス設定をした場合は、前工程と同様に、truefalseに変更してください

新バージョンのディレクトリ名の変更

現行バージョンのowncloudがowncloudとして存在している場合は、owncloudowncloud-oldに名称を変更

oc90owncloudに変更
この作業後にWebブラウザにてowncloudへアクセスすると
「ownCloudはバージョンx.x.xにアップデートされます」というメッセージが表示されますのでアップデートを開始ボタンを押します

アップデート実施状態の確認

Webブラウザ上でアップデートの進捗が表示されます
データサイズやデータ数などにより長時間かかる場合があるとのことです

正常に完了した場合はF5キーなどで更新をするとログイン画面が表示されます

ownCloudを利用可能状態に変更

作業前にアクセス制限をかけた場合

アクセス制限設定を解除します

ownCloudのメンテナンスモードへの切替えた場合

アップデートツールにてメンテナンスモードは解除されてますので作業は不要です

ownCloudディレクトリの名称を変えた場合

owncloud-oldというディレクトリが残っている状態です
次項の残処理で触れます

残処理

移行元のディレクトリとしてowncloud-oldが残っていますが
データや設定などが無い状態の為、移行後のownCloudの動作で問題がなければ削除しても良いようです。
移行し忘れたテーマ(themes)などがあれば後からコピーが可能のようです。

複数メジャーリリースバージョンの場合

大変ですが上記工程を必要分だけ繰り返すことになります(汗)
(一度にバージョンアップできたらいいのですが)

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3