Project

General

Profile

ownCloud インストール

Webファイルマネージャ兼DropBoxライクなWebシステム、ownCloudのインストールについて。

ownCloud7.0.6のCentOS 6.xへのインストール

  • 注意事項
    記載時点での最新版となるバージョン8.xについてはCentOSでは7.x移行にプリインストールの
    PHP5.4系が必須となるため、ここではownCloud 7.0.6について記載する。
    (なお、7.0.7にPHP5.4必須の記載は無いけれど、実際には必須を示すエラーとなる。)
  • リソースの入手
    https://download.owncloud.org/community/owncloud-7.0.6.zip
    
    • 公開パスに配置後、所有者をapacheにしておくこと。
  • 必要パッケージの入手
    # yum install php-mysql php-xml php-mbstring php-gd php-pdo php-ldap
    
    • 今回はLDAPモジュールを利用した認証も視野に入れているのでphp-ldapも入れている。
  • php.iniの設定
    default_charset = "UTF-8" 
    date.timezone = Asia/Tokyo
    
    memory_limit = 512M
    post_max_size = 256M
    upload_max_filesize = 256M
    
    • 「memory_limit>post_max_size=upload_max_filesize」とすること。memory_limitが
      不足あるいは同等値である場合、PHPの出力が真っ白な空白ページになってしまう。
    • 変更後、apacheを再起動する。
  • my.cnfの設定
    [mysqld]
    character-set-server=utf8
    
    • 変更後、mysqldを再起動する。
  • データベース作成
    mysql> create database owncloud default character set=utf8;
    mysql> grant all privileges on owncloud.* to "owncloud"@"localhost" identified by "任意のパスワード";
    mysql> quit
    
  • httpd.confの設定
    パスは任意。ディレクティブ設定は同梱されている.htaccessを有効にするために設定する。
    Alias   /owncloud       /path/to/owncloud
    <Directory /path/to/owncloud/>
      Options All
      Require all granted
      AllowOverride All
    </Directory>
    
    
    • 補足
      Apache内蔵のmod_davとowncloud内蔵のSabreDAVが競合する場合は、Apache側を無効にしておくといい。
      NNI環境だとmod_davとSaberDAVを両方有効にしているが、mod_dav側の適用範囲をディレクティブで指定
      しているため共存が出来ている。
  • Webブラウザでアクセスして初期設定
    • 管理者ユーザ名を指定する
    • 管理者パスワードを指定する
    • データフォルダを指定する
    • データベースをSQLiteからMySQLに切り替える
    • データベース設定を行う
    • セットアップ完了ボタンを押す

以上でインストールは完了。

補足

  • LDAP認証を利用する。
    標準アプリの「LDAP user and group backend」を利用して対応可能。
    • 画面左上の「ファイル」→「アプリ」で一覧を開き、上記モジュールを有効にする。
    • 「管理」メニューでbaseDN等を入力して設定する。

ただし、不具合なのか上記モジュールの設定が完遂しても接続できない場合がある。
ldapでもldapsで聞きに行っているとか、セッションがすぐ切れるとか……。

NNIでは苦肉の対応策として次の複合的な解決策でLDAP認証を行っている。
  • Apacheのmod_davでベーシック認証をLDAP形式で設定
    • ownCloudアプリの「WebDAV backend」で上記のWebDAVアドレスを指定

形式的にはLDAP認証が走ることに違いは無いが、LDAPの情報をユーザ情報にマッピング
させることが出来ない。というかこれでは認証がLDAPである必要がない。

今後の課題。

補足2

当然ながら、PHP依存を何とかしない限りはアップグレードさせることが出来ない。
管理者アカウントでログインする度にバージョンに関するNoticeが表示される。