ownCloudを10.7.0から10.8.0にアップデート

■アップデートしようと思ったきっかけ

ownCloudに10.8.0が使えると,しつこく表示されるようになった。
↓ ↓ ↓ ↓

念のためロリポップの管理ページを見てみる。
なんと,「ownCloud簡単インストール」の下のほうに,こんな記述が・・・
「ownCloudのアップデートが可能な場合は,最新版にアップデートしてください。」
どうやってやるのか,よくわからないのでネットを頼りに作業開始した。

■まずは 10.8.0 のファイルをアップロードすることに

ownCloudのサーバダウンロードのページでは2種類のアップデートファイルがダウンロードできました。
  owncloud-complete-20210721.zip
  owncloud-10.8.0.tar.bz2

PCで解凍してからFTPでアップロードは大変すぎます。
サーバで解凍したいので,とりあえず,2種類のファイルをアップロードしました。

■さて解凍

「ロリポップ!FTP」には昔 zip ファイルの解凍ボタンがあったらしいのですが,今はありません。ネットでphpで解凍する方法を見つけたので,検索リンクを・・・・

 「ロリポップ zip 解凍 php」でgoogleを検索 

参考にしたhttps://bistro.site/さんのソースで解凍することができました。

■しかし,なんと!簡単に解凍できるじゃないか

SSHで接続して,次の呪文を・・・・

[ ]$ tar -jxvf owncloud-10.8.0.tar.bz2

だめか・・・・・
では,これではどうだ!

[ ]$ unzip owncloud-complete-20210721.zip

いけた!
なんだ unzip コマンドは有効だったのかw
これで ,アップデートのファイルを準備できるようになった。

■調べたアップデートの手順

  1. メンテナンスモードを「On(true)」にする
  2. WEBサーバーとcronを停止
  3. データベースと現行ownCloudディレクトリをバックアップ
  4. 新しいバージョンのownCloudファイルを準備する
  5. 旧ownCloudの設定ファイル(config.php)を新ownCloudディレクトリにコピーする
  6. 旧ownCloudのdataフォルダとapps-externalフォルダを新ownCloudディレクトリにコピーする
  7. メンテナンスモードを「Off(false)」にする
  8. ownCloudサイトにアクセスしてアップデートする

これで良いかどうかは不安ですが、あとは野となれ山となれ。
さあ,やってみるぞ~~~!!!

■[1]メンテナンスモードを「On(true)」にする

メンテナンスモードは前にやる方法がわかっていたので,問題なくできました。
これができなかったら,アップデートやろうなんて考えもしなかった。
owncloud/config/config.phpを編集して,次の一行を記述(追加)すると,メンテナンスモードなる

'maintenance' => true,

■[2]WEBサーバーとcronを停止

ロリポップのサーバで,こんなのできないので無視します。

■[3-1]データベースをバックアップ

データベースのバックアップはロリポップにログインして,
「サーバーの管理・設定」>「データベース」>▼操作する> ▼ phpMyAdminを開く
でバックアップを取ります。
今回は,ほとんどファイルをアップしていない初期の段階だったので,データベースのバックアップは取りませんでした。

「ロリポップ データベース バックアップ」でgooleを検索

http://vdeep.net/lolipop-db-backupさんのページがわかりやすいと思います。

■[3-2]現行ownCloudディレクトリをバックアップ

これは,簡単。
バックアップというよりは,ディレクトリ名の変更のみです。

[ ]$ mv owncloud owncloud_old

■[4]新しいバージョンのownCloudファイルを準備する

前段で解凍しておいた新バージョンの owncloud ディレクトリを owncloud_old ディレクトリと同じところに準備します。
以下は,どこかに解凍済みの場合のコマンド例ですので,そのまま入力しないで。

[ ]$ mv hoge/hogeo/owncloud ./

■[5]旧ownCloudの設定ファイル(config.php)を新ownCloudディレクトリにコピーする

設定はメンテナンスモードになったままの config.php です。

[ ]$ cp -v owncloud_old/config/config.php owncloud/config/config.php

■[6]旧ownCloudのdataフォルダとapps-externalフォルダを新ownCloudディレクトリにコピーする

これを忘れると,データが消える。

[ ]$ cp -v -r owncloud_old/apps-external/ owncloud/
[ ]$ cp -v -r owncloud_old/data/ owncloud/

オプションは,ディレクトリまとめてなので ’-r’ を付けてます。なんも表示されないのは不安なので ’-v’ も。

■[7~8]メンテナンスモードを「Off(false)」にする~ownCloudサイトにアクセスしてアップデートする

手順の[1]と同じで, owncloud/config/config.php ファイル(実際はコピーしたもの)を次のように変更。

'maintenance' => false,

あとは,いつもの ownCloud のページにアクセスすると,アップテートするように促されるので,アップデートをクリックして正常終了すれば終わり。

その後,普通に使えた。ファイルも消えずに残ってました。
備忘録で,SSとか無くてごめんなさい。

ownCloudでファイルが削除できない・・・

ownCloudをインストールして弄っていたたら,ファイルが削除できなくなった。

いろいろネットを調べたら,メンテナンスモードにして,データベースを操作すると削除できるようになるらしい。

ロリポップって ”sudo -u” 使えたか?・・・・・・・

よくよく調べたら,/config/config.php に以下を追記するとできるらしい。(デフォルトのconfig.phpには記述がなかったorz)

‘maintenance’ => true,

追記の場所はどこが正解なんだろ。とりあえず,メール設定の項目の直前にしてみた。

うまくいったようだ・・・・

さて,データベースを操作する。次のやつの中味を削除する。

ocxxxxxxxxx_file_locks

さて,メンテナンスモードを解除。 もちろん /config/config.php を以下に修正。(またあるかもしれないので,消さずに修正w)

‘maintenance’ => false,

ロックされたファイルを無事に削除することができた。めでたしめでたし!