linux下redmine安装笔记(转载)
2012-11-21 17:14
453 查看
linux下redmine安装笔记
转载自:/article/5682017.htmlredmine安装相对trac要简单一点。
一、安装ruby
下载ruby-1.8.7
http://www.ruby-lang.org/en/downloads
#tar xzvf ruby-1.8.7.tar.gz
#cd ruby-1.8.7
#./configure --prefix=/usr/local/ruby
#make && make install
设置环境变量 vim /etc/profile
export PATH=/usr/local/ruby/bin:$PATH
二、安装rubygems
如果系统中已经存在rubygems,可以通过如下方法卸载:
#ruby -e 'puts $:' //查找rubygems安装目录
#cd /usr/local/ruby/lib/ruby/site_ruby/1.8/
#rm -rf ubygems.rb rubygems rubygems.rb
#which gem gem1.8 //查找gem包的安装目录
#rm -rf /usr/local/ruby/bin/gem
下载rubygems-1.3.5
#tar zxvf rubygems-1.3.5
#cd rubygems-1.3.5
#ruby setup.rb
#gem -v //查看版本
注意:开始时把rubygems更新到最新版本1.6.2了,最后用rake创建表时失败,郁闷。
安装完rubygems后注意修改更新站点,否则有的包可能无法正常安装。
#gem source -r http://gems.rubyforge.org 删除以前的更新站点
#gem source -a http://rubygems.org 添加现在的更新站点
三、安装rails
#gem install rails -v=2.3.5
Fetching: rake-0.8.7.gem (100%)
Fetching: activesupport-2.3.5.gem (100%)
Fetching: activerecord-2.3.5.gem (100%)
Fetching: rack-1.0.1.gem (100%)
Fetching: actionpack-2.3.5.gem(100%)
Fetching: actionmailer-2.3.5.gem(100%)
Fetching: activeresource-2.3.5.gem(100%)
Successfully installed rake-0.8.7
Successfully installed activesupport-2.3.5
Successfully installed activerecord-2.3.5
Successfully installed rack-1.0.1
Successfully installed actionpack-2.3.5
Successfully installed actionmailer-2.3.5
Successfully installed activeresource-2.3.5
Successfully installed rails-2.3.5
8 gems installed
Installing ri documentation for rake-0.8.7 ...
Installing ri documentation for activesupport-2.3.5 ...
Installing ri documentation for activerecord-2.3.5 ...
Installing ri documentation for rack-1.0.1 ...
Installing ri documentation for actionpack-2.3.5 ...
Installing ri documentation for actionmailer-2.3.5 ...
Installing ri documentation for activeresource-2.3.5 ...
Installing ri documentation for rails-2.3.5 ...
Installing RDoc documentation for rake-0.8.7 ...
Installing RDoc documentation for activesupport-2.3.5 ...
Installing RDoc documentation for activerecord-2.3.5 ...
Installing RDoc documentation for rack-1.0.1 ...
Installing RDoc documentation for actionpack-2.3.5 ...
Installing RDoc documentation for actionmailer-2.3.5 ...
Installing RDoc documentation for activeresource-2.3.5 ...
Installing RDoc documentation for rails-2.3.5 ...
四、安装i18n
#gem install i18n -v=0.4.2
Fetching:i18n-0.4.2.gem (100%)
Successfully installed i18n-0.4.2
1 gem installed
Installing ri documentation for i18n-0.4.2...
Installing RDoc documentation for i18n-0.4.2...
五、安装ruby-mysql
#gem install ruby-mysql
Successfully installed ruby-mysql-2.9.4
1 gem installed
Installing ri documentation for ruby-mysql-2.9.4...
Installing RDoc documentation for ruby-mysql-2.9.4...
补充 mysql的安装:
创建mysql用户名,用户组
# groupadd mysql
# usradd -g mysql mysql
下载mysql源码 http://www.mysql.com/downloads/mysql #cd mysql-5.0.22
#./configure --prefix=/usr/local/mysql
--datadir=/mydata //数据库存放目录
--with-charset=utf8 //使用UTF8格式
--with-extra-charsets=complex //安装所有的扩展字符集
--enable-thread-safe-client //启用客户端安全线程
--with-big-tables //启用大表
--with-ssl //使用SSL加密
--with-embedded-server //编译成embedded MySQL library (
libmysqld.a)
--enable-local-infile //允许从本地导入数据
--enable-assembler //汇编x86的普通操作符,可以提高性能
--with-plugins=innobase //数据库插件
--with-plugins=partition //分表功能,将一个大表分割成多个小表
#make && make install
初始化mysql数据库
#chown -R mysql:mysql /usr/local/mysql
#cp mysql-5.0.22/support-files/my-medium.cnf /etc/my.cnf
#cd /usr/local/mysql
#bin/mysql_install_db --user=mysql
#chown -R mysql:mysql /usr/local/mysql/var/ //把初始化的数据库目录给MySQL所有者
#/usr/local/mysql/bin/mysqld_safe --user=mysql & //启动MySQL
配置开机自动启动
#cp mysql-5.0.22/support-files/mysql.server /etc/init.d/mysqld
#chmod 755 /etc/init.d/mysqld
#chkconfig --add mysqld
#chkconfig mysqld on
#service mysqld restart
补充 mysql的配置:
配置my.cnf
配置主要把安装的目录的那几项打开就行.
改动如下:
[client]
#password = your_password
port = 3306
socket = /tmp/mysql3306.sock
# The Mysql server
[Mysqld]
port = 3306
socket = /tmp/mysql3306.sock
打开下面几项
innodb_data_home_dir = /usr/local/mysql/var/
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /usr/local/mysql/var/
innodb_log_arch_dir = /usr/local/mysql/var/
六、安装redmine
注意redmine的版本
Redmine version | Supported Ruby versions | Required Rails version | Required Rack version |
---|---|---|---|
current trunk | ruby 1.8.6, 1.8.7 | Rails 2.3.11 | Rack 1.1.0 |
trunk from r2887 tor4903 | ruby 1.8.6, 1.8.7 | Rails 2.3.5 | Rack 1.0.1 |
trunk from r2493 tor2886 | ruby 1.8.6, 1.8.7 | Rails 2.2.2 | |
trunk before r2493 | ruby 1.8.6, 1.8.7 | Rails 2.1.2 | |
1.1.x | ruby 1.8.6, 1.8.7 | Rails 2.3.5 | Rack 1.0.1 |
1.0.x | ruby 1.8.6, 1.8.7 | Rails 2.3.5 | Rack 1.0.1 |
0.9.x | ruby 1.8.6, 1.8.7 | Rails 2.3.5 | Rack 1.0.1 |
0.8.x | ruby 1.8.6, 1.8.7 | Rails 2.1.2 |
#mkdir /usr/local/redmine
#cd /usr/local/redmine
#svn co http://redmine.rubyforge.org/svn/branches/1.0-stable redmine-1.0
#cd /usr/local/redmine/redmine-1.0/config
#cp database.yml.example database.yml
#vim database.yml //数据库配置文件
production:
adapter: mysql
database:redmine
host: localhost
username: mysql //数据库访问用户名
password: "123456" //数据库访问密码
encoding: utf8
使用rake创建表
# rake db:migrate RAILS_ENV="production"
a.报错:uninitialized constant ActiveSupport::Dependencies::Mutex
解决方法:rails和rubygems版本不匹配,rubygems降到1.3.5试试
b.报错:A key is required to write a cookie containing the session data. Use config.action_controller.session = {:key=>"_myapp_session", :secret=> "some secret phrase" } in config/environment.rb
解决方法:rake config/initializers/session_store.rb
c.报错: No such file or directory - /tmp/mysql.sock
解决方法: 由于之前在mysql配置时my.cnf配置了socket导致
vim config/database.yml
在production栏目最后一行添加 socket: /tmp/mysql3306.sock
注意: socket的“:"后面必须有个空格,再接"/tmp/mysql3306.sock"
d.报错:
!!! The bundled mysql.rb driver has been removed from Rails 2.2. Please install the mysql gem and try again: gem install mysql.
rake aborted!
需要安装mysql适配器。gem install mysql
e.#mysql报错:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'(2)
解决:mkdir /var/run/mysqld
ln -s /tmp/mysql.sock /var/run/mysqld/mysqld.sock
sudo chown mysql:mysql /var/run/mysqld
sudo /etc/init.d/mysqld restart
f.报错:
Access denied for user 'mysql'@'localhost' (using password: YES)
解决办法:
#mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.0.22-log
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
mysql>grant all privileges on *.* to 'mysql'@'localhost' identified by 'mysql' with grant option;
mysql>flush privileges;
mysql>exit;
注:http://liuxinxiu.com/grant_all_privileges_on/
grant all privileges on *.* to 'mysql'@'localhost' identified by 'mysql' with grant option;
mysql> grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’;
权限1,权限2,…权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file 等 14个权限。
当权限1,权限2,…权限n被all privileges或者all代替,表示赋予用户全部权限。
当数据库名称.表名称被*.*代替,表示赋予用户操作服务器上所有数据库所有表的权限。
用户地址可以是localhost,也可以是ip地址、机器名字、域名。也可以用’%'表示从任何地址连接。
‘连接口令’不能为空,否则创建失败。
注意:此处 by 'mysql' with grant option;的mysql与/usr/local/redmine/redmine1.1.0/congfig/database.yml中的production:assword: "mysql"一致。
g.ERROR 1045 (28000): Access denied for user 'zouweiwei'@'localhost' (using password: NO)
权限问题,换成root权限
h.报错:Unknown database 'redmine'
解决办法:创建数据库redmine
mysql>create database redmine;
i. 报错:rake aborted!
no such file to load -- openssl
解决办法:进入ruby源码目录
(1)cd ext/openssl
(2)ruby ./extconf.rb(报错:“=== OpenSSL for Ruby configurator ===
=== Checking for system dependent stuff... ===
checking for t_open() in -lnsl... no
checking for socket() in -lsocket... no
checking for assert.h... yes
=== Checking for required stuff... ===
checking for openssl/ssl.h... no
=== Checking for required stuff failed. ===
Makefile wasn't created. Fix the errors above. ”;
解决方法:http://netfork.iteye.com/blog/432928
下载了:openssl-0.9.8k.tar.gz。
# tar –zxvf openssl
# cd openssl
# ./config --prefix=/usr/local/openssl
# make
# make install
终于安好了。在安装后的文件下搜ssl.h,发现这个文件存在了,看到点希望了。
ruby extconf.rb --with-openssl-include=/usr/local/ssl/include/ --with-openssl-lib=/usr/local/ssl/lib)。
(3)make(报错:/usr/bin/ld: /usr/local/ssl/lib/libssl.a(s2_meth.o): relocation R_X86_64_32 against `.data' can not be used when making a shared object; recompile with -fPIC
/usr/local/ssl/lib/libssl.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make: *** [openssl.so] 错误 1
解决方法:重新编译openssl (http://dawning126.iteye.com/blog/1189889,http://dodowolf.blog.51cto.com/blog/793581/659618 )
./config -fPIC --prefix=/usr/local/openssl enable-shared
如果还不行就
make clean
./config -fPIC --prefix=/usr enable-shared
安装在/usr目录下就省去了链接。
(4)make install
注:(2)(3)应该可以一步解决:
下载了:openssl-0.9.8k.tar.gz。
# tar –zxvf openssl
# cd openssl
# ./config -fPIC --prefix=/usr/local/openssl
# make
# make install
加载默认配置
# rake redmine:load_default_data RAILS_ENV="production"
这里会要求选择默认语言,选中文zh:
Select language: bg, ca, cs, da, de, en, es, fi, fr, he, hu, it, ja, ko, lt, nl, no, pl, pt, pt-br, ro, ru, sk, sr, sv, th, tr, uk, vn, zh, zh-tw [en] zh
这个默认设置只是在未登录时的界面语言,当用户登录后,默认语言还是英语,在My account里可以修改成其它语言。
启动WEB服务
# ruby script/server webrick -e production
或# ruby /usr/local/redmine/redmine-1.0/script/server webrick -e production
更换web服务器
redmine自带的webrick太慢,特别是局域网,据说是需要解析目标地址的主机名,直接给ip不用,硬要绕一圈。
使用网上推荐的 mongrel
# gem install mongrel
# ruby /usr/local/redmine/redmine-1.0/script/server mongrel -e production
本机ip为192.9.100.106,至此在本机使用http://192.9.100.106:3000 或 http://127.0.0.1:3000均能访问,但局域网其他机器仍然无法访问。 原因:redhat防火墙屏蔽了端口3000
解决办法: 配置防火墙,开放宽口3000
# /sbin/iptables -I INPUT -p tcp --dport 3000 -j ACCEPT
# /etc/rc.d/init.d/iptables save
# service iptables restart
至此,redmine安装完成。后面需要完成redmine、apache、subversion的整合。
以上安装在虚拟机上完成,PC 192.9.100.105上始终安装不上,一样的步骤,在gem install时老提示:
ERROR: http://gems.rubyforge.org/ does not appear to be a respository
ERROR: While executing gem ... (Gem::RemoteFetcher::FetchError)
bad response Not Found 404 (http://gems.rubyforge.org/yaml)
在apache上部署
转载自http://www.blueidea.com/tech/program/2010/7780_4.asp
其自带的webrick可能不能满足使用需求,那么就把它配置到apache上。
apache运行ROR有多种方式,这里使用passenger。
#apt-get install build-essential
#apt-get install apache2-prefork-dev libaprutil1-dev libapr1-dev ruby1.8-dev
然后安装 passenger
#gem install passenger
#passenger-install-apache2-module
如果报passenger-install-apache2-module这条命令找不到的话,那么通过下面的命令查看执行路径:
#gem environment
RubyGems Environment:
- RUBYGEMS VERSION: 1.3.5
- RUBY VERSION: 1.8.7 (2008-05-31 patchlevel 0) [x86_64-linux]
- INSTALLATION DIRECTORY: /usr/local/ruby/lib/ruby/gems/1.8
- RUBY EXECUTABLE: /usr/local/ruby/bin/ruby
- EXECUTABLE DIRECTORY: /usr/local/ruby/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-linux
- GEM PATHS:
- /usr/local/ruby/lib/ruby/gems/1.8
- /home/zouweiwei/.gem/ruby/1.8
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- :sources => ["http://gems.rubyforge.org/", "http://rubygems.org"]
- REMOTE SOURCES:
- http://gems.rubyforge.org/
- http://rubygems.org
其中,EXECUTABLE DIRECTORY就是命令的全路径,所以对于我例子里的情况执行
代码:
# /usr/local/ruby/bin/passenger-install-apache2-module
根据提示安装和部署:
passenger会在本机编译并成为apache的一个模块。首先,编辑apache的配置文件并添加下面的信息:
代码:
#vim /etc/apache2/apache2.conf
添加
LoadModule passenger_module /var/lib/gems/1.8/gems/passenger-2.2.13/ext/apache2/mod_passenger.so
PassengerRoot /var/lib/gems/1.8/gems/passenger-2.2.13
PassengerRuby /usr/bin/ruby1.8
然后添加一个站点:
#cd /etc/apache2/sites-available
#gedit redmine
并添加如下内容:
RailsBaseURI /redmine
在web根目录建立redmine主目录的符号链接,并设置权限:
#ln -s /usr/local/redmine/redmine-1.1.0/public /var/www/redmine
#chown -R www-data:www-data /var/www
启用redmine站点:
#a2ensite redmine
最后重启apache:
#/etc/init.d/apache2 restart
或,重新加载配置:
#/etc/init.d/apache2 reload
打开浏览器,如果你能够访问到redmine,那么恭喜你,redmine已经在apache上运行良好!
Redmine邮件的配置
修改Redmine下文件夹config中的email.yml,信息如下:
production:
delivery_method: :smtp
smtp_settings:
address: mail.XXXXX
port: 25
domain: XXXXX.com
# authentication: :login
# user_name: redmine@XXXXX.com
# password: XXXXXX
development:
delivery_method: :smtp
smtp_settings:
address: mail.XXXXX
port: 25
domain: XXXXX.com
# authentication: :login
# user_name: redmine@XXXXX.com
# password: XXXXXX
注意用#注销掉的那三行信息,那是邮件服务器身份验证信息,但是如果你的用户已经使用了域验证,就不需要那三行信息,像我自己用的就是内部的邮件服务器(MS Exchange),就无须身份验证的必要。如果使用的是外面邮件服务器,一般是需要的;参数设置好了,然后重启Redmine服务,在配置中设置好发送邮件的帐号,然后测试(测试功能在右下角,我觉得自己眼神实在差,居然没有发现那个功能,还抱怨Redmine怎么那么笨的,没有提供邮件测试的功能,每次测试都在实际操作中进行,比较更新问题等,哈哈,傻了)。
相关文章推荐
- linux下redmine安装笔记
- linux下redmine安装笔记
- (转载)Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记
- linux下redmine安装笔记
- linux下redmine安装笔记
- kvm虚拟化学习笔记(二)之linux kvm虚拟机安装
- mysql5.6 linux下安装笔记
- Linux学习笔记一:yum本地源配置和stardict安装
- Linux 下安装配置 JDK7(转载)
- linux--基础学习笔记--软件安装
- 硬盘安装RedHat Enterprise Linux 6(转载)
- 在Redhat Enterprise Linux 5.3下安装Oracle10g Release2(转载)
- 10.11 笔记-Linux 下安装 samba 方法
- 一篇非常好的linux学习笔记(转载)
- linux 自动执行 crontab学习笔记(转载)
- linux环境的Discuz 安装笔记
- Linux环境下Redmine的安装(二)
- Linux运维笔记-课后作业-软件安装
- 如何在Linux(Ubuntu)上安装Redmine
- 64位ubuntu安装QQ for linux 笔记[转]