ownCloud 4.5.5へのアップグレード

ownCloudのアップグレードをしました。Google検索したところ、世の中にはJavaのCalDAV用ライブラリなどもあるようなので、icsファイルベースだったスケジュール情報の管理もネットワークベースに移行しようと思っています。


はじめに
ネットワークベースにすると、複数のPCやiPhoneなどでスケジュール共有がしやすくなるので便利なのですが、「Synchronisation | ownCloud.org」を見たりすると、Androidがちょっと厳しそうです。とはいえ、参照だけなら、AndroidのWebブラウザでもいけそうなので、当面はそれで我慢しようと考えています。CalDAV-Syncを使うと同期できるらしいのですが有料だということで躊躇しています。自分はAndroid端末はそれほど使っていないのですが、よく使っていて1台分だけで良いなら購入もありでしょう。なお、Google Calendarも多分CalDAVサーバへの接続をサポートしているはずなので、スケジュール情報がGoogle Calendarへジャジャ漏れしても構わなければ、連携させるという手もあります。ただ、その場合は最初からGoogle Calendarを使えばいいでしょうから、ownCloudを使おうとは思わないでしょう…。個人的にはサービス終了やサービス有料化といったときに対応ができるようにしておきたいので、個人データをクラウドにおいたときには、バックアップやリカバリについてどれくらいのことができるのかを考慮しています。そういう視点から、オリジナルはできるだけ自分のマシンで管理して、コピーをクラウドへおくのが基本。一時的にクラウドへファイルをおいておくこともありますが、消えてもいいものしかおかず、マスターデータはSSS(G)のサーバや自宅サーバなどの管理しやすいところへ置いています。

アップデート
ownCloudのアップデートにあたっては本家のサイト「Update and Upgrade | ownCloud.org」に資料があるので、それを見ながら実施しました。ownCloudのディレクトリとmysqlのバックアップから作業をしましたが、60分もかからなかったですね。「Install | ownCloud.org」にはインストール方法がありますから、興味があってまだインストールしてみていない人は使ってみてください。便利ですよ。

CentOS release 5.8 (Final) では、次のような感じで所有者とSELinuxコンテキストを設定すれば問題ありませんでした。ownclouodのアーカイブを展開したら、そこへ config, data だけバックアップからもってくればいいだけでした。簡単、簡単。

$ ls -ald owncloud
drwxr-xr-x 14 apache apache 4096  1月  4 10:47 owncloud
$ ls -aZld owncloud
drwxr-xr-x 14 user_u:object_r:httpd_sys_content_t apache apache 4096  1月  4 10:47 owncloud

設定見直し
アップデートを機会にいくつか設定を見直しました。タイムゾーンがAsia/Tokyoになっていない気がしたり、PHPの設定が足りていない気がしたので、一通り見直しました。

まず、ownCloudのタイムゾーンについて。ownCloudではログイン後に右の設定アイコン(歯車のアイコン)をクリックして、タイムゾーンに[Tokyo]を指定したところ、カレンダーのタイムゾーンとイベントのタイムゾーンが指定されるようになりました。

次にPHPですが、CentOSの場合は、/etc/php.ini にPHPの設定ファイルがあり、そこで date.timezone に Asia/Tokyo を指定します。ちなみにmbstring関係も気になるならUTF-8へ統一しておくと良いでしょう。

date.timezone = Asia/Tokyo
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = pass
mbstring.http_output = pass
mbstring.encoding_translation = Off
mbstring.detect_order = UTF-8,SJIS,EUC-JP,JIS,ASCII
mbstring.substitute_character = none
mbstring.strict_detection = Off

次にApacheですが、PHPから画像生成用ライブラリを使っていたりするとLinuxの環境変数が使われることがあります。これに対応するには/etc/sysconfig/httpdへ下記を追加します。

HTTPD_LANG=ja_JP.utf8

また、/etc/httpd/conf.d/owncloud.conf に設定ファイルを置いてIncludeしていますが、下記のような感じで設定をしました。本家だとOptions Noneとなったサンプルが紹介されていますが、そのままだと管理画面で警告がでたからです。基本はWebDAVですから、Indexesは必要なはず。

<IfModule mod_alias.c>
Alias /owncloud/ /var/www/owncloud/
</IfModule>
<Directory /var/www/owncloud/>
   Options Indexes FollowSymLinks
#   Options None
   AllowOverride All
   Order allow,deny
   allow from all
</Directory>

他のCalDAV
Bedework | Jasig Community」や、「DAViCal」もありますが、いまのところownCloudで満足をしています。DAViCalは以前うまくインストールができなかったのと、PHP5+PosgtreSQLがベースだということなのですが、なぜかperl-YAMLなども必要だということでインストールが面倒なように思えたので使っていません。Bedeworkは結構有名なようなのでownCloudで何か不満がでてきたときに検討するかもしれません。

おわりに
以上、簡単ですが、ownCloudのアップグレードをしたときに確認したことなどを紹介しました。CalDAVサーバを用意するだけでなく、ここへデータをがんがん入れて、加工したデータを利用することを考えているので、プログラムからの利用についてもこれから検討するつもりです。

同じタグの記事: CalDAV
同じタグの記事: iCalendar
同じタグの記事: Linux
同じタグの記事: ownCloud
同じタグの記事: PHP
同じカテゴリの記事: Linux
関連書籍: PHP