2011年11月17日木曜日

Redmine 1.2.2 アップグレード

Redmine1.2.1(開発版)を1.2.2へアップ

●環境(詳しくはこちら
CentOS 5.5
Apache 2.2.19
Passenger 3.0.7
Ruby Enterprise Edition
Rails 2.3.11
PostgreSQL 8.4.8

RedmineはSVNチェックアウト(http://redmine.rubyforge.org/svn/trunk/)
インストールディレクトリ(/home/project/public_html)

●アップ
# cd /home/project/public_html
# svn update

U    test/unit/token_test.rb
U    test/unit/repository_git_test.rb
U    test/unit/repository_mercurial_test.rb
U    test/unit/issue_relation_test.rb
 ・
 ・
 ・
※ヘルプファイルは日本語版に差し替えているので衝突してしまった。
Conflict discovered in 'public/help/wiki_syntax_detailed.html'.
Select: (p) postpone, (df) diff-full, (e) edit,
        (mc) mine-conflict, (tc) theirs-conflict,
        (s) show all options: p ←入力
 ・
 ・
 ・
Updated to revision 7822.
Summary of conflicts:
  Text conflicts: 1


# rake db:migrate RAILS_ENV="production"
# rake db:migrate_plugins RAILS_ENV=production
# rake tmp:cache:clear
# rake tmp:sessions:clear
# Apacheの再起動

これでOKと思いきや!パーミッションエラーが・・・


Exception Errno::EACCES in PhusionPassenger::ClassicRails::ApplicationSpawner (/usr/local/lib/ruby/1.8/logger.rb:518:in `initialize': Permission denied - /home/project/public_html/log/production.log) 


# ls -al /home/project/public_html/log/

total 100
drwxr-xr-x  3 daemon daemon  4096 Aug 12 02:36 .
drwxr-xr-x 16 daemon daemon  4096 Nov 17 13:55 ..
-rw-r--r--  1 daemon daemon    36 Aug 12 02:31 delete.me
-rw-r--r--  1 daemon daemon 78480 Nov 17 14:42 production.log
drwxr-xr-x  6 daemon daemon  4096 Nov 17 14:42 .svn


production.logは644のようだが・・・Apacheのユーザ以外からの書き込みがあるのだろうか?
試しに別マシンのRedmine(1.2.1)をチェックすると所有者、グループ共にdaemonで777だったため同じように777に変更してみた。


# chmod 777 /home/project/public_html/log/production.log


アクセスできるようになりました。
Redmine 1.2.2.devel.7822 (PostgreSQL)


しかしファイルレポジトリ、Plugin assetsディレクトリも書き込みできないことが判明!(情報ページから)結局、全ファイルの所有者、グループをdaemon(Apacheユーザ)にしてしまいました。
# chown -R daemon:daemon /home/project/


問題なく動作しているようです。
 

Google検索