存档

文章标签 ‘yum’

从as4迁移到centos4.9

2011年4月21日 没有评论

  有些机器,年代久远,装的是redhat advance server 4的系统,暂时又不能下线,也不能重装,怎么办?“升级”到centos4.9吧。
  具体流程是这样的:

rpm --import http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-4
rpm -ivh http://mirror.centos.org/centos/4.9/os/i386/CentOS/RPMS/yum-2.4.3-4.el4.centos.noarch.rpm \
 http://mirror.centos.org/centos/4.9/os/i386/CentOS/RPMS/python-elementtree-1.2.6-5.el4.centos.i386.rpm \
 http://mirror.centos.org/centos/4.9/os/i386/CentOS/RPMS/python-sqlite-1.1.7-1.2.1.i386.rpm \
 http://mirror.centos.org/centos/4.9/os/i386/CentOS/RPMS/python-urlgrabber-2.9.8-2.noarch.rpm \
 http://mirror.centos.org/centos/4.9/os/i386/CentOS/RPMS/yum-metadata-parser-1.0-8.el4.centos.i386.rpm \
 http://mirror.centos.org/centos/4/os/alpha/CentOS/RPMS/centos-yumconf-4-4.5.noarch.rpm \
 http://mirror.centos.org/centos/4.9/os/i386/CentOS/RPMS/sqlite-3.3.6-2.i386.rpm
vim /etc/yum.repos.d/CentOS-Base.repo
#将所有的$releasever替换成4
yum -y install kernel-smp.i686 screen
screen -d -m yum -y update
#这里引入screen命令是因为update过程比较长,怕session挂掉,用screen之后就让他在screen里跑了

等update动作做完,稍稍检查下(主要是检查下grub啥的)没有问题,就

reboot

重启吧,应该没有问题的。

分类: tips 标签: , , ,

rhel5.3的yum的错误

2010年7月22日 没有评论

今天在一台rhel(redhat enterprise linux)5 update 3的机器上yum装东西
突然发现出错了
连yum update也出错,错误像下面这样:
Traceback (most recent call last):
File “/usr/bin/yum”, line 29, in ?
yummain.user_main(sys.argv[1:], exit_code=True)
File “/usr/share/yum-cli/yummain.py”, line 229, in user_main
errcode = main(args)
File “/usr/share/yum-cli/yummain.py”, line 145, in main
(result, resultmsgs) = base.buildTransaction()
File “/usr/lib/python2.4/site-packages/yum/__init__.py”, line 647, in buildTransaction
(rescode, restring) = self.resolveDeps()
File “/usr/lib/python2.4/site-packages/yum/depsolve.py”, line 696, in resolveDeps
CheckDeps, checkinstalls, checkremoves, missing = self._resolveRequires(errors)
File “/usr/lib/python2.4/site-packages/yum/depsolve.py”, line 779, in _resolveRequires
thisneeds = self._checkInstall(txmbr)
File “/usr/lib/python2.4/site-packages/yum/depsolve.py”, line 851, in _checkInstall
provs = self.tsInfo.getProvides(*req)
File “/usr/lib/python2.4/site-packages/yum/transactioninfo.py”, line 432, in getProvides
result.update(self.getNewProvides(name, flag, version))
File “/usr/lib/python2.4/site-packages/yum/transactioninfo.py”, line 414, in getNewProvides
for pkg, hits in self.pkgSack.getProvides(name, flag, version).iteritems():
File “/usr/lib/python2.4/site-packages/yum/packageSack.py”, line 300, in getProvides
return self._computeAggregateDictResult(“getProvides”, name, flags, version)

最有
重新yum clean all后好了
问题真奇怪

分类: TroubleShooting 标签: , , ,

oracle带来的linux发布,真是好东东呀

2009年9月17日 没有评论

以前仅知道oracle以redhat enterprise linux为蓝本
出了个linux的发布,名字叫enterprise linux
这个enterprise可以用来跑oracle for linux
不成想
这个oracle的enterprise linux
不仅可以免费下载
而且其yum server还可以免费更新!!!
要知道
redhat的enterprise linux的yum更新可视需要花钱订阅服务的呀
以前老用基于redhat enterprise linux的另外一种版本centos来取代rhel(redhat enterprise linux)
这下可好
有了oracle的enterprise linux
起码是多了一种选择吧
何况其后面还有oracle的支持呢

rhel的半官方源EPEL

2009年2月12日 2 条评论

公司服务器大多是rhel(Red Hat Enterprise Linux)的as(Advance Server)
这个版本有个缺点
就是官方源里的软件比较少
很多很多好用的新的gnu的软件都没有包含进去
如:nginx等等等等
于是
EPEL(Extra Packages for Enterprise Linux)出现了
EPEL是fedora社区志愿维护的一个rhel的软件仓
里面全是一些非常新的、非常好用的但rhel官方源里又没有的软件
因为是fedora社区维护的
所以称之为“半官方”
这个新的源又怎么用呢
很简单

su -c ‘rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm’
如果你是rhel4的系统地话
su -c ‘rpm -Uvh http://download.fedora.redhat.com/pub/epel/4/i386/epel-release-4-9.noarch.rpm’
相应你如果是x86_64的系统呢
su -c ‘rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-3.noarch.rpm’
su -c ‘rpm -Uvh http://download.fedora.redhat.com/pub/epel/4/x86_64/epel-release-4-9.noarch.rpm’

然后
就可以用yum安装东西了
比如:

yum install nginx

upgrade from as4u6 to as5u2 on a x86_64 linux server

2008年12月30日 没有评论

这次要升级的是x86_64的系统
而且这次没有将其先升级为as4的最新版
而是直接从as4u6升到as5的
因而碰到的问题大多跟以前大不一样
首先:

rpm -Uvh http://10.0.0.1/pathto5Server/RPMS.os/redhat-release-5Server-5.2.0.4.i386.rpm http://10.0.0.1/pathto5Server/RPMS.os/redhat-release-notes-5Server-12.i386.rpm
apt-get clean all

vim /etc/apt/source.list
将其指向as5的安装软件仓
apt-get update;apt-get check

apt-get install rpm-libs rpm-python rpm yum

这时,出了一大堆的conflict的错误
但是好像所需软件包都当下来了
于是就想干脆强制手工升级得了

cd /var/cache/apt/archives
wget http://10.0.0.1/pathto5server/RPMS.os/glib2-2.12.3-2.fc6.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/glib2-2.12.3-2.fc6.i386.rpm http://10.0.0.1/pathto5server/RPMS.os/e2fsprogs-libs-1.39-15.el5.i386.rpm http://10.0.0.1/pathto5server/RPMS.os/SysVinit-2.86-14.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/rsyslog-2.0.0-11.el5.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/kernel-2.6.18-92.el5.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/initscripts-8.45.19.EL-1.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/rsyslog-2.0.0-11.el5.x86_64.rpm http://10.0.0.1/pathto5server/dmraid-1.0.0.rc13-9.el5.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/libsysfs-2.0.0-6.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/kpartx-0.4.7-17.el5.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/udev-095-14.16.el5.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/mkinitrd-5.1.19.6-28.i386.rpm http://10.0.0.1/pathto5server/RPMS.os/e2fsprogs-1.39-15.el5.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/procps-3.2.7-9.el5.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/rsyslog-2.0.0-11.el5.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/sysklogd-1.4.1-44.el5.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/uuidd-1.39-15.el5.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/e2fsprogs-libs-1.39-15.el5.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/device-mapper-multipath-0.4.7-17.el5.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/nash-5.1.19.6-28.x86_64.rpm http://10.0.0.1/pathto5server/RPMS.os/lm_sensors-2.10.0-3.1.x86_64.rpm

这里之所以wget抓这么多东西回来
主要是因为这些包都是下面yum update时需要的,所以就干脆先做了

rpm -Uvh *.rpm –replacefiles

强制升级
完毕后
vim /etc/yum/yum.conf
将yum的源指向我们自己的软件仓
yum update
这时出rpm库打不开的错误
具体见这里
然后按照上面文章里的解决方法解决后
接着

yum update
yum groupinstall base

然后再ntsysv配一下启动的服务就差不多了
reboot

“yum update”时的错误

2008年12月29日 没有评论

系统报错:

/usr/lib/python2.4/site-packages/_sqlitecache.so: undefined symbol: g_assert_warning

google了一下
原来是glib2这个包没有升级的缘故
于是手工rpm -Uvh 了一下
然后就好了

upgrading from as4 to as5 online(success!)

2008年12月16日 2 条评论

又一次干脏活
把某一台rhel4(as4)的机器在线升级到rhel5(as5)
as4上原来的包管理用的是第三方的apt(apt不在我们的as5的repos仓里)
由于有了上一次的经验
这一次我先稳打稳扎
先用

apt-get update;apt-get check;apt-get -y upgrade;apt-get -y dist-upgrade

先把系统升级成as4的最新版
如果升级了kernel还需要用新kernel重起
(其实最后看起来这一步实属多余,而且还可能添加更多的麻烦,其实只是需要安装as4的最新的kernel即可的)
然后正式开始升级工作
首先

rpm -Uvh http://10.0.0.1/pathto5Server/RPMS.os/redhat-release-5Server-5.2.0.4.i386.rpm http://10.0.0.1/pathto5Server/RPMS.os/redhat-release-notes-5Server-12.i386.rpm

这里的10.0.0.1是局域网上的一台维护着as4、as5仓(repository)的服务器
然后

apt-get clean all # 清apt缓存
vim /etc/apt/sources.list # 更改apt的安装源为as5的安装仓(repository)

再接着

apt-get update;apt-get check

接着升级rpm*并安装上yum*

apt-get install rpm* rpm\* yum* yum\*

到这里,第一个考验来了,系统抱错:

“srptools: Obsoletes: openib-srptools”

rpm -qa | grep srptools没发现系统装的有srptoolsopenib-srptools
但是在as4的仓里有openib-srptools、as5的仓里有srptools

rpm -ivh http://10.0.0.1/pathto4Server/RPMS.os/openib-srptools-0.0.6-7.i386.rpm http://10.0.0.1/pathto4Server/RPMS.os/openib-1.2-7.i386.rpm http://10.0.0.1/pathto4Server/RPMS.os/libibumad-1.0.5-7.i386.rpm http://10.0.0.1/pathto4Server/RPMS.os/libibcommon-1.0.3-7.i386.rpm

上面这一步其实可能不用,因为后来openib-srptools又给删掉了

rpm -ivh http://10.0.0.1/pathto5Server/RPMS.os/srptools-0.0.4-2.el5.i386.rpm

你要srptools我就给你装srptools

rpm -e openib-srptools

删掉openib-srptools

rpm -e openldap-clients cups-libs openldap elinks ckermit nmap cyrus-sasl-devel pwlib curl neon libwvstreams 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 system-config-network-tui system-config-lvm system-config-packages system-config-language system-config-date system-config-nfs system-config-services system-config-securitylevel system-config-soundcard system-config-rootpassword system-config-keyboard system-config-network redhat-lsb system-config-users system-config-mouse sendmail cyrus-sasl-sql mutt python-ldap apr-util-devel up2date cadaver curl-devel php php-gd php-mysql php-mbstring php-pear python-ldap kdebase samba-common samba-client gnupg evolution-data-server httpd apr-util samba-common samba-client libgnomeprint22-2.8.0-3.i386 ghostscript kdelibs ghostscript tog-pegasus mdadm fetchmail httpd-devel kdemultimedia gnome-panel cups-libs httpd kde-i18n-Chinese kde-i18n-Chinese-Big5 gimp-print iiimf-gnome-im-switcher tog-pegasus-devel ghostscript-fonts httpd-suexec libgnomeprintui22 gtksourceview libgnomecups cups rpm-devel rpm-build redhat-rpm-config bg5ps VFlib2 dmraid

再删掉一大堆妨碍升级rpm*并安装yum*的东东
反正到最后

apt-get install rpm-libs rpm-python rpm yum

成功了
这一步的时候,貌似apt就给删掉了,否则还需要rpm -e apt一下
然后把yum的安装源指向我们自己的仓
再执行升级

yum update

完成后再做一次base安装,因为前面删的东西太多了,怕有的东西是必须的,所以做一次base安装

yum groupinstall base

这个时候会出一个”device-mapper“相关的错误
这是因为系统目前的device-mapper包(as4的)比安装仓(as5)里的device-mapper的版本还要新!
这也就是我前面说为什么升级之前把系统升级成as4的最新版也许还添了麻烦的原因
没办法
先强行升级device-mapper

rpm -Uvh –force http://10.0.0.1/pathto5Server/RPMS.os/device-mapper-1.02.24-1.el5.i386.rpm

最后yum groupinstall base完成后
再装下新kernel(如果没自动装的话)

yum install kernel-PAE kernel-PAE-devel kernel-doc

再用新kernel起起来就ok了

分类: Operation System 标签: , , , , , ,

upgrading from fc6 to fc7 online by using yum

2008年8月19日 没有评论

官方文档在这里

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
最后才重起

分类: Operation System 标签: , , , ,

upgrade fedora core from version 3 to 4 by yum

2008年1月15日 没有评论

一台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

分类: Operation System 标签: , , , ,

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

2007年12月15日 没有评论

官方关于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!