CentOS6.6にownCloud8.0インストール

以前から気になっていたownCloudをインストールした時のログです。

まず始めに、ownCloudの推奨環境を調べたところ

  • PHP 5.4以上
  • MySQL 5.5.31以上

という記事を見つけたので上記パッケージを持っているremiリポジトリを追加し、アップデート、apacheの再起動

# rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
# yum update --enablerepo=remi mysql*
# service httpd restart

MySQLをアップデートする際に、依存関係によりPHPもアップデートしてくれたので上記コマンドでバージョンアップ終了

 

(余談)
ブログ執筆時に公式サイトを見に行ったらMySQLについて

  • MySQL/MariaDB 5.x

という記述を見つけたのでMySQLは無理して5.5にバージョンアップしなくてもよかった。。
(余談終わり)

 

次に、データベース作成

# mysql -u root -p
mysql> create database owncloud default character set utf8;
mysql> grant all privileges on owncloud.* to owncloud@localhost identified by '(パスワード)';
mysql> flush privileges;
mysql> quit

 

ownCloudをダウンロード
(2015年4月11日時点での最新安定版はバージョン8.0.2)

# wget https://download.owncloud.org/community/owncloud-8.0.2.tar.bz2
# tar jxvf owncloud-8.0.2.tar.bz2

 

解凍したディレクトリをDocumentRoot以下に配置し、オーナーを変更

# cp -r owncloud /var/www/ssl/
# chown -R apache:apache /var/www/ssl/owncloud/

 

データ用のディレクトリを別に作成し、オーナーを変更

# mkdir /data/owncloud
# chown -R apache:apache /data/owncloud/

 

ブラウザでownCloudを配置したディレクトリにアクセスすれば、初期設定画面が出てくるので、ユーザ名とパスワードを登録
(この時にPHP関連のパッケージが入っていないというメッセージが表示されたら適宜インストール)
(例)

# yum install --enablerepo=remi php-gd
初期設定画面
初期設定画面

 

「ストレージとデータベース」をクリックして、データ用ディレクトリとDB(MySQL/MariaDB)の設定を入力する

初期設定画面2
初期設定画面2

 

「セットアップを完了します」をクリックすれば完了

ownCloudのページ
ownCloudのページ

 

追記(2015年4月12日)

ファイルアップロードの上限値が2MBだったので、その上限値を1GBに変更

# vim /etc/php.ini
memory_limit = 1G
post_max_size = 1G
upload_max_filesize = 1G

# service httpd reload

CentOS6.5にfmlを導入

ConoHaでメールサーバを構築するで構築したメールサーバにfmlを導入してメーリングリスト(ML)機能を追加したので、その時のログです。
fmlを導入する際には、管理・運用体制をどのようにするかによってインストール方法が変わるのですが、今回は「グループfmlに所属しているユーザはMLの作成ができる」を運用ポリシーにしました。

fmlの実行スクリプトはperlで書かれているが、そのファイル内ではパスが「/usr/local/bin/perl」と指定されていて、元のパス(「/usr/bin/perl」)とは違っているのでシンボリックリンクを追加

# ln -s /usr/bin/perl /usr/local/bin/perl

グループfmlとユーザfmlを作成

# groupadd fml
# useradd -g fml fml

自分が普段使用している一般ユーザ(username)をグループfmlに追加

# vim /etc/group
fml:x:501(←ここの数字は環境によって違う):username

ディレクトリ作成とオーナー・権限変更

# mkdir /usr/local/fml
# mkdir /var/spool/ml
# chown fml:fml /usr/local/fml
# chown fml:fml /var/spool/ml
# chmod g+ws /var/spool/ml

fmlをインストールするディレクトリへ移動し、fmlのソースコードをダウンロード、fmlをインストール

# cd /usr/local/src

# wget ftp://ftp.fml.org/pub/fml/stable/fml-4.0-stable-20040215.tar.gz
# tar zxvf fml-4.0-stable-20040215.tar.gz

# cd fml-4.0-stable-20040215
# su fml
$ perl makefml install
unshift(@INC, /usr/local/src/fml-4.0-stable-20040215/src)
---NOT USING configuration file (for the first time)

THIS HOST (www.tetsis.com) IS [x86_64-unknown-linux-gnu]

---Please Define Your Fml System Configurations

Personal Use or ML-Admin-Group-Shared or fmlserv you use?
Personal, Group, Fmlserv (personal/group/fmlserv) [personal] group

Please define the group (in /etc/group) ML Operators use
Group of Mailing List Operators (fml or GID ([\w\d]+)) [fml]

DOMAIN NAME               [tetsis.com]
FQDN                      [www.tetsis.com]
EXEC FILES DIRECTORY      [/usr/local/fml]
TOP LEVEL ML DIRECTORY    [/var/spool/ml]

Language (Japanese or English) [English] Japanese

TimeZone (TZ: e.g. +0900, -0300) [+0900]

--- summary ---
DOMAIN: tetsis.com
FQDN: www.tetsis.com
EXEC_DIR: /usr/local/fml
ML_DIR: /var/spool/ml
Language: Japanese
TimeZone: +0900

15/03/29 00:27:04 makefml::mkdir /usr/local/fml/.fml (fml)

The current configuration is saved in /usr/local/fml/.fml/system

---Install the Fml system to /usr/local/fml. (y/n) [n] y

(以下インストールが始める)

$ exit

Postfixの設定を変更してPostfixを再起動

# vim /etc/postfix/main.cf
allow_mail_to_commands = alias, forward, include

# service postfix reload

テストMLを作成し、Postfixの設定を変更して、Postfixを再起動
(ここはmain.cfの設定を一度で済ませたいところだが、最初にalias_mapsとalias_databaseを変更すると、newmlを実行した際に/var/spool/etc/aliasesファイルがないとかで、処理が途中で止まってしまう。なので一旦newmlによりMLを作成し、aliasesファイルが生成された後にalias_mapsとalias_databaseに設定を加える流れを採用した。もっとスマートなやり方があればご教授願いたい)

# su fml
$ /usr/local/fml/makefml newml fml-test
$ exit

# vim /etc/postfix/main.cf
alias_maps = hash:/etc/aliases, hash:/var/spool/ml/etc/aliases
alias_database = hash:/etc/aliases, hash:/var/spool/ml/etc/aliases

# service postfix reload

newaliasesを実行し、aliases.dbファイルを生成
そして、aliases.dbのオーナー・権限を変更

# newaliases

# chmod 666 aliases.db
# chown root:root aliases.db

これによりfmlの導入は完了

あとはaddコマンドでメンバーを追加すればMLとして使用できる

$ /usr/local/fml/makefml add fml-test (メールアドレス)

 

おまけ

毎回makefmlする度に「/usr/local/fml/makefml」と打つのは面倒なのでシンボリックリンクによりパスを通す

# ln -s /usr/local/fml/makefml /usr/bin/makefml

 

(2015/06/19追記)

ずっと探していたテンプレートファイルの場所が分かった

/usr/local/fml/etc/makefml/cf

これを変更することでnewmlした際に作成されるML内のcfに反映される
でも、それよりもコマンドのほうが分かりやすいかも

$ makefml config-template

このコマンドで設定したファイルは「/var/spool/ml/etc/makefml/cf」に作成され、上記と同様にnewmlした際に反映される
ただしこの場合はcfファイルの権限をグループfmlに与えなければfmlグループの他のユーザが作成したMLには反映されないので注意

(参考文献)
http://www.fml.org/fml/INSTALL/9.html

http://www.fml.org/software/fml8/Documentation/ja/tutorial/changes.cui.html