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サーバを用意するだけでなく、ここへデータをがんがん入れて、加工したデータを利用することを考えているので、プログラムからの利用についてもこれから検討するつもりです。