Ubuntu 14.04でownCloudインストールをNextcloudに変換する方法

前書き

最近、https://owncloud.org/ [ownCloud]のコア開発チームの大部分がhttps://nextcloud.com/[Nextcloud]という新しいプロジェクトを開始するために去りました。 ownCloudは引き続き開発されますが、新しいプロジェクトが提供するものを確認したい場合があります。 NextcloudとownCloudは共通のコードベースを共有しているため、既存のownCloudインストールをNextcloudに移行するのは簡単です。

このチュートリアルでは、既存のownCloudインストールをNextcloudに移行します。 このプロセスでは、コアアプリケーションファイルをNextcloudのファイルと交換し、Nextcloudのビルトインアップデーターに手間をかけます。 プロセスは簡単ですが、すべてが順調に進むことを確認するために正しい順序で実行する必要がある多くのことがあります。

前提条件

ownCloudインストールをNextcloudに移行するには、次のものが必要です。

  • Ubuntu 14.04で実行されている作業用のownCloud 9インストール。

  • `+ sudo +`でコマンドを実行できるownCloudサーバー上の非特権ユーザーアカウント。 これを構成するには、https://www.digitalocean.com/community/tutorials/how-to-create-a-sudo-user-on-ubuntu-quickstart [UbuntuでSudoユーザーを作成する方法]チュートリアルに従ってください。

手順1-Webサーバーの停止とデータのバックアップ

新しく設定したインストールで作業している場合でも、迅速なバックアップを行うことをお勧めします。 移動と削除を開始しようとしているので、まず安全に!

まだ接続していない場合、ownCloudを実行しているサーバーにログインします。

ssh @

バックアップと移行の実行中は何も変更しないようにすることが重要です。そのため、ユーザーがownCloudにアクセスできないようにウェブサーバーをシャットダウンするのが最も簡単な方法です。 このコマンドを実行してください。

sudo service  stop

Webサーバーが停止したので、サーバーがownCloudを保存するディレクトリに移動します。 Ubuntu 14.04でownCloudのワンクリックインストールを使用している場合、インストールは `+ / var / www / `ディレクトリ内にあります。 以下のコマンドを実行してこのディレクトリに切り替え、 ` owncloud / +`が含まれていることを確認します。

cd /var/www
ls

`+ owncloud +`フォルダーが表示されます。

Outputhtml

次に、 `+ tar `コマンドを使用してバックアップアーカイブを作成し、g ** z ** ip ** f ** ileを** c ** ompressし、** v ** erbose出力を画面に表示します。 新しいアーカイブは「 owncloud.tar.gz 」と呼ばれ、「 owncloud / +」ディレクトリ全体が含まれます。 次のコマンドを実行してください。

sudo tar czfv owncloud.tar.gz owncloud/

ここで、アーカイブをホームディレクトリに移動して安全を確保します。

sudo mv owncloud.tar.gz ~/

Nextcloudをインストールする前に、Ubuntu 14.04サーバーに固有のステップがもう1つあります。

ステップ2-PHPのアップグレード

Ubuntu 14.04のワンクリックインストールから移行する場合は、10.0.2よりも新しいバージョンのNextcloudを使用できるようにPHPをアップグレードする必要があります。 標準のUbuntu 14.04リポジトリにはPHP 5.5のみが含まれていますが、NextCloud 11以降ではPHP 5.6が必要です。 幸いなことに、UbuntuはPPAとして知られるサードパーティのリポジトリをサポートしています。 以前にPPAをインストールしたことがない場合は、このコマンドを実行して `+ python-software-properties +`というパッケージをインストールします。

sudo apt-get install python-software-properties

次に、更新されたバージョンのPHPを含むPPAを追加します。

sudo add-apt-repository ppa:ondrej/php

次に、PPAのパッケージを含む既知のパッケージのリストを更新するようパッケージマネージャーに指示します。

sudo apt-get update

これで、PHP7とNextcloudに必要なすべてのモジュールをインストールできます。

sudo apt-get install php7.0 php7.0-sqlite php7.0-mysql php7.0-pgsql php7.0-zip php7.0-gd php7.0-mb php7.0-curl php7.0-xml php7.0-apc

最後に、Webサーバーが使用するPHPモジュールを切り替えます。 Apacheの場合、これを行うコマンドは次のとおりです。

a2dismod php5
a2enmod php7.0

Nextcloudをインストールしましょう。

ステップ3-Nextcloudのダウンロード

Nextcloud release siteには、さまざまな形式のNextcloudリリースのリストがあります。 現在のownCloudバージョンと同じ、または1つのメジャーバージョンの後のリリースの最新の `+ .tar.gz`ファイルを見つけます。 たとえば、ownCloud 9ワンクリックインストールから移行する場合は、ファイル「+ nextcloud-10.0.2.tar.bz2 +」を探します。

ファイルが見つかったら、パソコンにダウンロードしないでください。 代わりに、ファイル名を右クリックしてリンクアドレスをコピーし、ファイルをサーバーにダウンロードできるようにします。

2つのファイルをダウンロードします。 1つ目は、Webサイトで見つけたNextcloudパッケージです。 もう1つのファイルは、「md5チェックサム」と呼ばれる検証ファイルです。 md5ファイルにはパッケージとまったく同じパスがありますが、末尾に追加の拡張子「+ .md5 +」が追加されます。 次のコマンドを実行してホームディレクトリに移動し、2つのファイルをダウンロードします。

cd ~
wget https://download.nextcloud.com/server/releases/.tar.bz2
wget https://download.nextcloud.com/server/releases/.tar.bz2.md5

`+ md5sum +`コマンドを実行してチェックサムを生成し、パッケージファイルの整合性を検証します。

md5sum .tar.bz2

次のような出力が表示されます。

Outputdc30ee58858d4f6f2373472264f7d147  nextcloud-10.0.2.tar.bz2

次に、ダウンロードした `+ .md5 +`ファイルの内容を表示します。

cat .tar.bz2.md5

このコマンドの出力は、前のコマンドの出力と同じである必要があります。

Outputdc30ee58858d4f6f2373472264f7d147  nextcloud-10.0.2.tar.bz2

出力が異なる場合は、Nextcloudを再度ダウンロードします。

ファイルを展開するには、 `+ tar +`コマンドを再度使用しますが、今回は v erbose出力で f ileを抽出します。 このコマンドを実行して、アーカイブを抽出します。

tar xfv .tar.bz2

最後に、新しく抽出した `+ nextcloud `フォルダーを ` / var / www +`フォルダーにコピーします。

sudo mv nextcloud /var/www/nextcloud

これで、ownCloudからNextcloudへのファイルの移行を開始できます。

ステップ4-データの移行とファイル所有権の設定

既存のownCloudインストールには、保存したい2つのディレクトリ「+ data / 」と「 config / 」があります。 これらを元の場所から ` nextcoud +`ディレクトリに移動しますが、最初にNextcloutに付属のデフォルトバージョンを削除する必要があります。

最初に、コマンドを実行して、デフォルトのディレクトリが存在する場合、 `+ nextcloud +`ディレクトリから削除します:

sudo rm -rf /var/www/nextcloud/ /var/www/nextcloud/

次に、古いディレクトリを `+ owncloud +`ディレクトリから移動します:

sudo mv /var/www/owncloud/ /var/www/nextcloud/
sudo mv /var/www/owncloud/ /var/www/nextcloud/

`+ sudo`コマンドでファイルを移動すると、ファイルはすべて* root ユーザーによって所有されます。 ただし、Nextcloudは常に www-data ユーザーによって実行されます。 これは、先に進む前に、 `+ / var / www / nextcloud `フォルダーとそのコンテンツの所有権を変更する必要があることを意味します。 これを行うには、 ` -R `引数を指定して ` chown`コマンドを実行し、すべてのファイル所有権を www-data *ユーザーに再帰的に変更します。

sudo chown -R www-data:www-data /var/www/nextcloud/

ファイルが配置されたので、Webサーバーにファイルへのアクセス方法を伝える必要があります。

ステップ5-Nextcloud Internalsのアップグレード

すべてのファイルを配置したら、内部アップグレードプロセスを開始できます。 NextcloudとownCloudは、 `+ occ `と呼ばれるインストールを管理およびアップグレードするツールを提供します。 ` / var / www / nextcloud / +`ディレクトリに移動します:

cd /var/www/nextcloud

`+ occ `を使用する前に、データディレクトリの新しい場所を反映するように ` / var / www / nextcloud / config / config.php `ファイルを更新する必要があります。 具体的には、 ` 'datadirectory' ⇒ '/ var / www / owncloud / data'、`の行を ` 'datadirectory' ⇒ '/ var / www / nextcloud / data'、`に変更する必要があります。 変更を簡単に行うには、「 sed +」を使用します。

sudo sed -i "s/owncloud\/data/nextcloud\/data/g" config/config.php

次に、 `+ occ +`を使用してNextcloudをメンテナンスモードにします。 これによりファイルがロックダウンされるため、アプリケーションのアップグレード中に外部から変更を加えることはできません。 次のコマンドを実行して、メンテナンスモードをオンにします。

sudo -u www-data php occ maintenance:mode --on

これは、 `+ sudo +`を使用して* www-data *ユーザーとしてコマンドを実行することに注意してください。

この出力が表示されるので、メンテナンスモードがオンになっていることを確認できます。

[secondary_output]
Nextcloud or one of the apps require upgrade - only a limited number of commands are available
You may use your browser or the occ upgrade command to do the upgrade
Maintenance mode enabled

次に、 `+ occ +`を使用して内部アップグレードプロセスを開始します。

sudo -u www-data php occ upgrade

このコマンドは、ownCloudのすべてのデータをNextcloudに移行するため、多くの出力を表示しますが、最終的には次のメッセージが表示されます。

Output...

Starting code integrity check...
Finished code integrity check
Update successful
Maintenance mode is kept active
Reset log level

アップグレードで問題が発生した場合、出力には、問題の原因と解決方法に関するフィードバックが表示されます。 アップグレードがスムーズに進み、メンテナンスモードをオフにすると仮定しました。

sudo -u www-data php occ maintenance:mode --off

ownCloudインストールはNextcloudに移行されましたが、まだ古い可能性があります。 ownCloud 9を移行した場合、Nextcloud 10にのみ移行しますが、まだ新しいバージョンがありますので、アップグレードしましょう。

ステップ6-Nextcloudのアップグレード

Nextcloudを新しいメジャーバージョンにアップグレードするには、このチュートリアルのステップ3〜5で使用したのと同じ手順を使用します。 まず、現在インストールされているNextcloudフォルダーを次のコマンドで移動します。

sudo mv /var/www/nextcloud /var/www/nextcloud.old

次に、https://download.nextcloud.com/server/releases/ [Nextcloud release site]から `+ .tar.gz +`ファイルを見つけてダウンロードし、ステップ3で行ったようにMD5チェックサムを確認します。

wget https://download.nextcloud.com/server/releases/.tar.bz2
wget https://download.nextcloud.com/server/releases/.tar.bz2.md5
md5sum .tar.bz2
cat .tar.bz2.md5

アーカイブをダウンロードして検証したら。 解凍して、Webサーバー上のNextcloudの場所に移動します。

tar xfv
mv nextcloud /var/www/nextcloud

次に、手順4で行ったように、構成ファイルとデータファイルを古いインストールから新しいインストールに移動します。

rm -rf /var/www/nextcloud/ /var/www/nextcloud/
mv /var/www/nextcloud.old/config /var/www/nextcloud
mv /var/www/nextcloud.old/data /var/www/nextcloud
sudo chown -R www-data:www-data /var/www/nextcloud/

最後に、 `+ occ +`を使用してアップグレードを実行します。

sudo -u www-data php occ maintenance:mode --on
sudo -u www-data php occ upgrade
sudo -u www-data php occ maintenance:mode --off

アップグレードする必要があるNextcloudのメジャーバージョンごとにこれらの手順を繰り返します。

すべてが最新になったので、Nextcloudにトラフィックを送信するようにWebサーバーを構成できます。

ステップ7-Webサーバーのトラフィックフローの変更

Apache Webサーバーは、仮想ホスト(vhost)を使用して異なるディレクトリに移動します。 フォルダ「+ / etc / apache2 / sites-available / 」には、サーバー用に設定された各仮想ホストの説明が含まれています。 これらの仮想ホストは、関連するファイルを ` / etc / apache2 / sites-enabled / `フォルダーにリンクすることで有効になります。 ファイル「 / etc / apache2 / sites-available / 000-owncloud.conf 」はサーバーが「 / var / www / owcloud 」を読み取るように設定し、その設定は「 / etc / apache2」にあるリンクによって有効になります/ sites-enabled / 000-owncloud.conf + `。

Nextcloudインストールを使用するようにサーバーを変換するには、ownCloud vhost構成のコピーを作成し、Nextcloudを指すように編集して、ownCloud vhostを無効にし、Nextcloud vhostを有効にします。

まず、ownCloud構成ファイルをコピーします。

sudo cp /etc/apache2/sites-available/000-owncloud.conf /etc/apache2/sites-available/000-nextcloud.conf

次に、設定ファイルの「+ owncloud 」のすべてのインスタンスを「 nextcloud 」に置き換えます。 これを行うには、テキストエディターで「 / etc / apache2 / sites-available / 000-nextcloud.conf 」を開いて自分で変更するか、正規表現と「 sed +」コマンドを使用します。

次のコマンドを実行して、vhost設定ファイルの内容を `+ sed +`で変換します。

sudo sed -i "s/owncloud/nextcloud/g" /etc/apache2/sites-available/000-nextcloud.conf

次に、リンク `+ / etc / apache2 / sites-enabled / 000-owncloud.conf `を削除して、ownCloud仮想ホストを無効にします。 Ubuntuには、サイトを無効にするための ` a2dissite +`コマンドが用意されています。 このコマンドを実行してください。

sudo a2dissite 000-owncloud.conf

最後に、Nextcloud構成ファイルへのシンボリックリンクを作成して、Nextcloud vhostを有効にします。 `+ a2ensite +`コマンドを使用してリンクを作成します。

sudo a2ensite 000-nextcloud.conf

WebサーバーがNextcloudの検索場所を認識したので、次のコマンドでバックアップを開始できます。

sudo service apache2 start

この時点で、すべてが新しいNextcloudインストールで稼働しているはずです。 Webブラウザーを開き、古いownCloudサーバーの場所に移動すると、Nextcloudログイン画面が表示されます。 古いユーザー名とパスワードはすべて、移行前と同じように機能します。 * admin *ユーザーとしてログインします。カレンダーアプリや連絡先アプリなど、一部のアプリを再度有効にする必要がある場合があります。

結論

このチュートリアルでは、以前のownCloudインストールをバックアップし、Nextcloudに移行し、ownCloudを無効にしました。 ownCloudで行ったように、Webインターフェースを使用してNextcloudにログインできるようになりました。

サーバーがNextcloudに移行されたので、使用している同期クライアントを更新します。 ownCloudと同様に、Nextcloudはデスクトップおよびモバイルデバイス用の多数の同期クライアントを提供します。

ownCloudに戻す場合は、ステップ1で作成したバックアップとバックアップした外部データベースから `+ data / `および ` config / `フォルダーを復元できます。 ` data / `および ` config / `フォルダを ` / var / www / nextcloud +`からownCloudにコピーしようとしないでください。 バックアップを復元したら、手順4と同じ手順を使用して、Nextcloud vhostを無効にし、ownCloud vhostを有効にするだけです。

Related