Entries Tagged as 'upgrade'

upgrading from rhel as4 to rhel as5

一台rhel as4的机器要升级成rhel as5
由于其包管理软件apt不在其repository(储藏室,库)里
所以不能通过apt-get来同时升级自己和所依赖的软件包
貌似as5u2里有了yum
但是我的as4下又没有,只有装的第三方的apt-get
本来我想的过程是
1,先装上as5的release的rpm包
2,再用apt-get升下rpm*相关软件包,尽量再装上yum
3,如果上一步能装上yum,那就好办了,直接update就ok了;否则只能rpm手工安装yum,最后再yum update
但是实际上
我第2步apt-get升级rpm*就出错了
于是只有用rpm手工升级rpm(听起来有点绕口:)
期间删了一大堆的rpm,以下仅是一部分

rpm -e openldap-clients cups-libs openldap elinks ckermit nmap cyrus-sasl-devel pwlib curl neon libwvstreams wpa_supplicant stunnel pyOpenSSL dhcpv6_client rhnlib wvdial openh323 openldap-devel nss_ldap libuser cyrus-sasl nss_ldap compat-openldap cyrus-sasl-ntlm cyrus-sasl-gssapi cyrus-sasl-plain cyrus-sasl-md5 libuser-devel usermode passwd nfs-utils autofs nfs-utils-lib kbd system-logviewer authconfig-gtk usermode-gtk –allmatches

后来当了一大堆的rpm包,用rpm –force装上了(这里的apt也是从第三方当下来的)

rpm -Uvh –force device-mapper-1.02.24-1.el5.i386.rpm lvm2-2.02.32-4.el5.x86_64.rpm device-mapper-event-1.02.24-1.el5.x86_64.rpm readline-5.1-1.1.x86_64.rpm apt-0.5.15lorg3.2-1.el5.rf.x86_64.rpm python-2.4.3-21.el5.x86_64.rpm rpm-libs-4.4.2-48.el5.x86_64.rpm db4-4.3.29-9.fc6.x86_64.rpm openssl-0.9.8b-10.el5.x86_64.rpm rpm-4.4.2-48.el5.x86_64.rpm elfutils-libelf-0.125-3.el5.x86_64.rpm sqlite-3.3.6-2.x86_64.rpm beecrypt-4.1.2-10.1.1.x86_64.rpm popt-1.10.2-48.el5.x86_64.rpm wget-1.10.2-7.el5.x86_64.rpm openssh-clients-4.3p2-26.el5.x86_64.rpm openssh-server-4.3p2-26.el5.x86_64.rpm openssh-4.3p2-26.el5.x86_64.rpm nss-3.11.99.5-2.el5.x86_64.rpm nspr-4.7.0.99.2-1.el5.x86_64.rpm pam-0.99.6.2-3.27.el5.x86_64.rpm libselinux-1.33.4-5.el5.x86_64.rpm libsepol-1.15.2-1.el5.x86_64.rpm mcstrans-0.2.7-1.el5.x86_64.rpm

这一步做完后,最麻烦的就算是过去了
然后用新的apt-get
apt-get update
然后报错,这个错误以前碰到过,见这里
于是按照上面的方法解决

反正最后是用apt-get update;apt-get check;apt-get -y upgrade;apt-get -y dist-upgrade搞定
(期间也出过n多的问题,幸好都一一解决了)

upgrading from fc6 to fc7 online by using yum

官方文档在这里

yum install yum-utils; package-cleanup –orphans
yum install yum-fastestmirror
yum clean all
rpm -Uhv ftp://download.fedora.redhat.com/pub/fedora/linux/releases/7/Fedora/i386/os/Fedora/fedora-release-*.noarch.rpm

这里在官方文档上写的是:

rpm -Uhv ftp://download.fedora.redhat.com/pub/fedora/linux/releases//Fedora//os/Packages/fedora-release-*.noarch.rpm

这个路径有问题
fedora-release-*-noarch.rpm不在Packages下,而在Fedora下,不知道别的版本是否是这样,反正fedora7是这样的
然后再继续:

cd /etc/yum.repos.d/;mv fedora-updates.repo.rpmnew fedora-updates.repo;mv /etc/yum.repos.d/fedora.repo.rpmnew /etc/yum.repos.d/fedora.repo
yum update rpm\* yum\*
yum -y upgrade
yum groupupdate Base

我的系统貌似没有自动安装新的fc7的kernel
我有手工安装之:

yum install kernel-PAE.i686

最后

reboot

文档上讲
由于fc7开始修改了ide的设备号
如果系统原来有ide硬盘(设备号/dev/hd?)
需要在重启前修改/etc/fstab
将其改为/dev/sd?
而且还要grub-install /dev/sd?
由于我这里没有ide硬盘
所以没做
还有
貌似fc7带的grub-0.97-13这个版本在硬盘是HP Smart Array CCISS的时候(我正好是这种硬件)
具体见这里
grub-install会有问题
于是我又升级了下grub
最后才重起

fc5升级到fc6的时候的错误

当yum update rpm yum成功后
再运行yum upgrade的时候报错:

/usr/lib/python2.4/site-packages/rpm/_rpmmodule.so: undefined symbol: rpmdbCheckTerminate

后来发现是因为rpm-libs包没有升级的原因
于是从安装服务器上抓来正确的rpm-libs包装上了事
rpm -Uvh http://192.168.1.1/pub/os/Linux/Fedora/i386/6/RPMS.updates/rpm-libs-4.4.2.1-2.fc6.i386.rpm
# 192.168.1.1是安装服务器ip

upgrade from fedora core 5 to fedora core 6

yum clean all
rpm -Uvh http://192.168.1.1/pub/os/Linux/Fedora/i386/6/RPMS.os/fedora-release-6-4.noarch.rpm http://192.168.1.1/pub/os/Linux/Fedora/i386/6/RPMS.os/fedora-release-notes-6-3.noarch.rpm
# 192.168.1.1是内网的安装服务器,fedora-release-6依赖于fedora-release-notes-6,所以这里需要同是升级
yum update rpm\* yum\*
# 注意这里一定要加上”\*”,我曾经直接用yum update rpm yum,结果没有升级rpm-libs包,导致再次运行yum失败
rpm -e VFlib2 bg5ps
# 删掉一些出依赖错误但又不重要的软件包
yum upgrade
reboot

upgrading from fedora core 4 to fedora core 5

yum clean all
rpm -Uvh http://192.168.1.1/pub/os/Linux/Fedora/i386/5/RPMS.os/fedora-release-5-5.noarch.rpm
rpm -e iiimf-server iiimf-libs iiimf-le-chinput iiimf-le-xcin iiimf-le-chinput howl-libs xorg-x11-devel libgnomeui openmotif synaptics xorg-x11-xfs pcmcia-cs hal gnome-vfs2 gd-devel memprof gnome-python2 chkfontpath NetworkManager pm-utils kudzu system-config-packages gnome-python2-bonobo gnome-python2-gnomevfs libgnome-2.10.0-3.i386 libbonoboui gtkhtml2 gnome-python2-canvas gnome-python2-extras system-config-printer-gui gnome-python2-gnomevfs-2.10.0-1.i386 system-config-network system-config-httpd urw-fonts apmd system-config-network-tui system-config-mouse system-config-soundcard smartmontools microcode_ctl gnome-python2-gtkhtml2 system-config-date ghostscript ghostscript-fonts system-config-printer
yum update yum rpm
yum upgrade
reboot
#起来后再把原来fc4的kernel删掉(rpm -e kernelxxx)

upgrading from fc3 to fc5 directly

yum clean all
rpm -Uvh http://10.0.0.1/pub/os/Linux/Fedora/i386/5/RPMS.os/fedora-release-5-5.noarch.rpm

# 上面的10.0.0.1是公司内部的一台有fedora core 5安装树的服务器

rpm -e pcmcia-cs openmotif howl-libs xorg-x11-xfs synaptics gcc-g77 libgnomeui lm_sensors iiimf-le-chinput gnome-vfs2 chkfontpath gnome-python2 memprof net-snmp libgnome libbonoboui gnome-python2-bonobo gtkhtml2 urw-fonts gnome-python2-gtkhtml2 gnome-python2-canvas system-config-httpd system-config-network system-config-packages system-config-printer-gui ethereal ghostscript ghostscript-fonts system-config-printer kernel-2.6.9-1.667 kernel-smp-2.6.9-1.667 kudzu system-config-mouse system-config-network-tui system-config-soundcard kernel-utils hal NetworkManager umb-scheme guile swig

# 删掉一大堆可能跟升级yum*和rpm*产生依赖错误的软件包

yum install yum* rpm*

# 首先升级yum和rpm的相关包

yum install kernel-smp kernel

# 安装新的版本的kernel,因为新版的hal与<2.6.15的kernel冲突,而fc3的kernel正是小于2.6.15的

sync
sync
sync
reboot

# 用fc5的kernel(2.6.20)起起来

rpm -e kernel-2.6.12-1.1381_FC3 kernel-smp-2.6.12-1.1381_FC3

# 删掉与新版本hal冲突的kernel版本,如果有<2.6.15的kernel都要删掉

yum update

# 升级系统

rpm -qa | grep -i fc3

# 看看还有没有for fc3的软件包

rpm -e ace-5.6.1-2.423.sogou.fc3 iiimf-csconv-12.1-10.FC3.1

# 有的话删掉

ntsysv

# 从启动中去掉不需要的服务

reboot

upgrade fedora core from version 3 to 4 by yum

一台fc3(fedora core 3)的机器
上面有lvm分区,跑proftpd
老是kernel panic
也查不出什么原因
于是我一气之下将其升级为fc4(fedora core)
for a in $(find /etc /var -name ‘*.rpm?*’); do b=${a%.rpm?*}; diff -u $a $b; done
rpm -Uvh http://192.168.1.1/pub/os/Linux/Fedora/i386/4/RPMS.os/fedora-release-4-2.noarch.rpm
# 192.168.1.1是内网的安装服务器
yum clean all
rpm -e gcc-g77 gcc-java umb-scheme guile swig subversion
yum update yum rpm
yum update
最后reboot
OK

再贴一个用yum升级fedora core的文档(fc5->fc6)

官方关于Fedora Core用yum升级的文档在这里
以下过程也是参照这个文档
然后在自己机器上的实际升级步骤(”xxx.xxx.xxx.xxx”是内网上的一台install server的ip地址)
yum clean all
cd /tmp
wget http://xxx.xxx.xxx.xxx/pub/os/Linux/Fedora/i386/6/RPMS.os/fedora-release-6-4.noarch.rpm
wget http://xxx.xxx.xxx.xxx/pub/os/Linux/Fedora/i386/6/RPMS.os/fedora-release-notes-6-3.noarch.rpm
rpm -Uvh fedora-release-6-4.noarch.rpm fedora-release-notes-6-3.noarch.rpm
yum update rpm\* yum\*

rpm -e kernel-*-6.15…….(将6.17以下的kernel的rpm都干掉)
rpm -e libgnome-java libglade-java glib-java libvte-java cairo-java libgtk-java frysk bind caching-nameserver NetworkManager(这里是解决upgrade的时候有可能会出现的Missing Dependency的情况的)
yum upgrade
reboot

That’s OK!

upgrade cacti from 0.8.6k to 0.8.7

以前为了解决cact的一个bug(详细情况看这里)
把系统升级到了当时最新的0.8.6-svn
其中的版本就是0.8.6k
现如今cacti的最新的stable版本都已经是0.8.7了
于是我也想升级
当我当下来0.8.7的文件
升级的时候,发现系统报不支持从0.8.6k升级到0.8.7
查了查升级脚本,果然是没有对0.8.6k的支持
于是就求助于cacti的官方论坛
很快有了答案
于是照着做:
1,停掉apache
2,停掉Cron(啊!?这步我没做!!!)
3,备份mysql库
4,取回0.8.7的包,包含patches(我是从这里取了patch回来,不知道对不对)
5,编辑文件install/0_8_6j_to_0_8_7.php,把在其中注释为“Add 1 min rra”的这段程序注释掉
6,在mysql里,执行”

update version set cacti=’0.8.6j’ where cacti=’0.8.6k’

“(其实还要先用use命令进入cacti所用的数据库)
7,把原来0.8.6k的include/config.php拷贝过来到include/config.php
8,把apache起起来
9,通过浏览器访问cacti系统
10,根据提示升级,碰到sql语句执行失败手工确认(因为0.8.6k和0.8.6j的数据库结构还是有变化的,这里等于是强制把0.8.6k当作0.8.6j来往0.8.7上升级,有错基本上是正常的)
11,如果没有问题,再把Cron打开

我照着做了
基本上解决了问题
只有一点:升级完成后,貌似所有的图都给删掉了然后重建的,所以以前的数据图上就显示不出来了
这也许是我没有按回帖里写的那样先停掉Cron最后再启动的原因吧