Redmine升级

上篇文章介绍如何安装Redmine,运行一段时间,发现Redmine都已经发布1.2版本,跟chrome有得一拼了。好了,本文记录将redmine从1.0.4升级到1.1.3的过程。

按照官方的最新文档升级RedmineUpgrade,稍有修改。

检查安装环境

即将安装的Redmine版本,需要满足该版本所需的基本配置,见Requirements

备份

1.利用Mysqldump或者Phpmyadmin导出数据库备份

2.备份上传的文件,在根目录下的files文件夹

执行升级

假设你的目录结构和我一样

[cce]
/opt/www 
        pms/ 
        redmine-1.1.3 
[/cce] 

其中pms是正在运行的1.0.3版本的redmine。

复制daatbase.yml到新目录下

[cce]cp pms/config/database.yml redmine-1.1.3/config[/cce]

复制email.yml到新目录下

[cce]cp pms/config/email.yml redmine-1.1.3/config[/cce]

复制附件到新目录下

[cce]cp -r pms/files redmine-1.1.3/[/cce]

复制你的插件到新目录下

[cce]cp -r pms/vender/plugin/action_mailer_optional_tls redmine-1.1.3/vender/plugin[/cce]

复制你的主题的到新目录下

[cce]cp -r pms/public/themes/BaseCamp/ redmine-1.1.3/public/themes/[/cce]

复制你的favicon.ico和robots.txt

[cce]cp pms/public/favicon.ico pms/public/robots.txt redmine-1.1.3/public/[/cce]

生成你的随机密钥的文件(config/initializers/session_store.rb) 用来加密会话数据。

[cce] cd redmine-1.1.3 rake generate_session_store[/cce]

升级数据库

[cce]rake db:migrate RAILS_ENV=production[/cce]

清理

清理缓存和会话

[cce]
rake tmp:cache:clear 
rake tmp:sessions:clear[/cce]

Done!

Nginx 平滑升级

Nginx(“engine x”) 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器 。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的Rambler.ru 站点开发的,它已经在该站点运行超过四年多了。Igor 将源代码以类BSD许可证的形式发布。自Nginx 发布四年来,Nginx 已经因为它的稳定性、丰富的功能集、 示例配置文件和低系统资源的消耗而闻名了。最近nginx又发布1.0.0正式版,所以将服务器上nginx升级了,特此记录一下升级的过程。

首先从nginx的官网下载nginx源代码

[cce]
cd /opt/download/ 
wget -c http://nginx.org/download/nginx-1.0.0.tar.gz 
tar xvzf nginx-1.0.0.tar.gz 
cd nginx-1.0.0 [/cce]

查看编译参数

[cce]
/opt/nginx/sbin/nginx -V
nginx version: nginx/0.7.67 
built by gcc 3.4.6 20060404 (Red Hat 3.4.6-11) 
configure arguments: --prefix=/opt/app/nginx-0.7.67
[/cce]

开始编译nginx源代码,假设你的目录结构跟我一样

[cce] /opt/download/nginx-1.0.0 /opt/app/nginx-0.7.67 /opt/nginx –>/opt/app/nginx-0.7.67 [/cce]


要想平滑升级,按照最第一次编译参数进行编译即可,configure之后make,但不要进行make install。由于我想安装/opt/app/nginx-1.0.0,所以修改了下参数

[cce]
./configure --prefix=/opt/app/nginx-1.0.0
make
[/cce]

重命名旧版本的nginx执行文件,copy新版本的nginx到目录。

[cce]
mv /opt/nginx/sbin/nginx /opt/nginx/sbin/nginx.old
cp objs/nginx /opt/nginx/sbin/
cd /opt/app
mkdir /nginx-1.0.0
cp /opt/app/nginx-0.7.67/ nginx-1.0.0/ –r
[/cce]

升级nginx

[cce] cd /opt/download/nginx-1.0.0 make upgrade [/cce]


出现出现make错误,查看nginx,已经正常和旧版本的nginx一起工作了。

[cce] /opt/app/nginx-1.0.0/sbin/nginx -t nginx: the configuration file /opt/app/nginx-1.0.0/conf/nginx.conf syntax is ok nginx: configuration file /opt/app/nginx-1.0.0/conf/nginx.conf test is successful kill -USR2 `cat /opt/app/nginx-1.0.0/logs/nginx.pid` sleep 1 test -f /opt/app/nginx-1.0.0/logs/nginx.pid.oldbin make: *** [upgrade] Error 1 [/cce]


找到旧版本的nginx的进程号,kill掉即可。

[cce] cat /opt/app/nginx-0.7.67/logs/nginx.pid.oldbin 14004 kill –9 14004即可 [/cce]


添加链接到nginx-1.0.0

[cce] ln –s /opt/nginx /opt/app/nginx-1.0.0 sh /opt/nginx/sbin/restart.sh[/cce]

 

看多么可爱的nginx啊!

Red Hat 安装配置Yum

在公司接手一台服务器,准备做点想做的事,发现竟然连vim都没有,没事,我自己装,悲剧的发现连Yum都没装…..

服务器的的环境是Red Hat Enterprise Linux AS release 4 (Nahant Update 8),这都早八百年的老系统了,服务器的配置还行。好了,我们开始干正事,我的目标是:

  1. 1. 安装Yum,配置好CentOS的源,选了网易163的源
  2. 2. 顺便用Yum安装一个Vim来玩

首先从这篇文章Red Hat 安装Yum,按照下面的步骤来安装Yum

先下载Yum的rpm包


cd /syr/local/
wget -c http://yum.baseurl.org/download/2.0/yum-2.0.8-1.src.rpm

使用rpm方式安装


rpmbuild --rebuild yum-2.0.8-1.src.rpm
cd /usr/src/redhat/RPMS/noarch/
rpm -ivh yum-2.0.8-1.noarch.rpm

运行yum会出现报错


retrygrab() failed for:   http://mirror.dulug.duke.edu/pub/yum-repository/redhat/4AS/i386/headers/header.info
Executing failover method
failover: out of servers to try
Error getting file http://mirror.dulug.duke.edu/pub/yum-repository/redhat/4AS/i386/headers/header.info
[Errno 4] IOError: 

Red Hat默认的源太老了,都没办法更新了,得更换为163的源.

修改yum.conf配置文件

vi /etc/yum.conf

详细配置如下


[main]
cachedir=/var/cache/yum
debuglevel=2
logfile=/var/log/yum.log
pkgpolicy=newest
installonlypkgs=kernel kernel-smp kernel-devel kernel-smp-devel kernel-largesmp kernel-largesmp-devel kernel-hugemem kernel-hugemem-devel
distroverpkg=centos-release
tolerant=1
exactarch=1
retries=20
obsoletes=1
gpgcheck=1
plugins=1 

# PUT YOUR REPOS HERE OR IN separate files named file.repo 

# in /etc/yum.repos.d

根据163的说明,配置好/etc/yum.repos.d/CentOS-Base.repo文件,就可以开始安装Vim了。

先找到Vim的安装包

yum list | grep vim

会列出与vim相关的包


vim-minimal.i386                         1:6.3.046-2.el4.1      installed
vim-X11.i386                             1:6.3.046-2.el4.1      base
vim-common.i386                          1:6.3.046-2.el4.1      base
vim-enhanced.i386                        1:6.3.046-2.el4.1      base

安装vim-enhanced.i386这个包就可以了

yum install vim-enhanced.i386

会提示你是否导入GPG key,输入y即可


warning: rpmts_HdrFromFdno: V3 DSA signature: NOKEY, key ID 443e1821
Public key for vim-enhanced-6.3.046-2.el4.1.i386.rpm is not installed
Retrieving GPG key from http://mirror.centos.org/centos/RPM-GPG-KEY-centos4
Importing GPG key 0x443E1821 "CentOS-4 key "
Is this ok [y/N]: y

最后终于安装成功了,Vim我爱死你了。


Key imported successfully
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing: vim-common                   ######################### [1/2]
  Installing: vim-enhanced                 ######################### [2/2]

Installed: vim-enhanced.i386 1:6.3.046-2.el4.1
Dependency Installed: vim-common.i386 1:6.3.046-2.el4.1
Complete!

Done!