Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5386141
  • 博文数量: 890
  • 博客积分: 12876
  • 博客等级: 上将
  • 技术积分: 10760
  • 用 户 组: 普通用户
  • 注册时间: 2004-10-04 14:18
个人简介

猝然临之而不惊,无故加之而不怒。

文章分类

全部博文(890)

文章存档

2016年(1)

2014年(18)

2013年(41)

2012年(48)

2011年(65)

2010年(84)

2009年(121)

2008年(101)

2007年(129)

2006年(95)

2005年(118)

2004年(69)

分类: LINUX

2007-10-10 09:01:31

Linux操作系统的免费升级工具-使用YUM升级Redhat AS3
ZT:

在目前应用比较广泛的各个操作系统中,软件的升级和更新一直都被认为是保证系统安全的有力措施,因为一些过时或者是设计上有bug的软件将会严重威胁着整 个操作系统的安全,如果不能及时升级程序,就容易让黑客有机可乘。而这一步的实现往往依靠于管理员的敏锐的洞察力和手动操作能力,对部分管理员来说,还是 也是相当困难。在类UNIX的阵营中,就有Solaris,IRIX,HP-UX,AIX,FreeBSD,Linuxt等版本。据我所知,如果要在 Solaris下安装新软件,用户不得不寻找为其特定的操作平台预编译的二进制文件,然后自己手动安装它。因为Solaris是完全不源于gcc(标准的 GNU C/C++编译器)。其它的一些系统,如IRIX和HP-UX跃然是源于gcc,但是用户仍然需要为其寻找源码,运行其配置脚本,编译(这一步在开源软件 中总是说来容易做亦难)和安装。
这一点上,不同的Linux版本和FreeBSD向前迈进了一大步,引入了“packages”概念,即是把适合你的系统的二进制文件和所有所需要的库打 包成一个功能齐全的软件包。FreeBSD的核心开发人员使用了一种packages管理系统-pkg_*工具,可以通过简单的比较,决定安装,更新及卸 载软件及所需要的各类依赖库文件,同时它还有一个称为“ports”的辅助系统,能自动的从指定的FTP站点下载远程软件包,执行升级工作,极大的方便了 管理员的工作。其实,在Linux下也有如此神奇的工具,众所周知,RPM(Redhat Packages Manager)是linux下最著名的包管理工具,它是一个被设计成容易安装,更新,卸载并且具有检验软件完整性功能的有力工具,同时它也是基于GNU 许可的打包程序,正因为RPM的流行对推动Redhat成为最大的Linux分支也起到很大的推动作用。当然还有其它的很优秀的升级工具,如后起之秀的 Debian(Linux的另一版本,由全世界的工程师维护的自由版本)所使用的独特的APT升级工具,还有欧州发行量最大的SUSE版本,所拥有的 YasT工具。在这里我们暂且只介绍几种基于RPM包升级的工具。
Redhat操作系统的安全性在业界一直是为人称赞的。所以,在很多实际应用环境中,大都采用的基于Redhat的操作系统。在以前的redhat版本 中,其实已经有一个自动检测并提示更新的小工具(Up2date),有心的朋友早就注意并使用过这个工具了。虽然它是最早使用的程序,但由于它是一个增值 服务,面向的是商业用户,并且要付款给Redhat公司购买此服务。因此对普通用户来说,并不能享受它所带来的便捷。因此,在我维护服务器工作中,我基本 上不用这个工具。后来,我也曾经尝试着使用了一种类似Debian的工具apt tool for redhat,通过它自动去freshrpms站点下载相应的更新程序。但是使用一段时间发现,它的更新速度差强人意,不能紧跟实际的需要。因此,对于维 护服务器正常工作和保护服务器安全,作为管理员的我一般都是通过几个途径来关注linux的安全和软件的使用安全:
1.     订阅有关的安全邮件列表,如
2.     时常留意Redhat官方网站上的警告提示信息
当得知有最新的软件出来时,自己就会去Redhat的官方站点下载对应的源码包,自己编译并且手动安装到各个服务器上去。如果是基于同一平台的服务器,只 需要编译一次,就可以安装到所有的服务器上。即是如此,对于一个维护着近20台Redhat服务器的管理员来说,也是一个不小的工作量了。如果是不同平台 的服务器,那更是无比麻烦的事情了。因此,寻找一个更好的方式来帮助减轻我的负担一直是我在留意的目标。
当YUM这个软件出现我的面前也是非常偶然的事情,同事饶有兴趣的安装了一个Fedora Core操作系统玩玩时,我忽然发现,出现了一个YUM的新工具,通过查阅帮助文档,发现它是一个能帮助我的工具。YUM(Yellow Dog Update Manager)原来是名叫yellowdog操作系统的基于RPM包的管理程序,它会根据系统已经安装的软件,自动判断软件包的依赖关系。由于它具有更 高的灵活性和智能化,目前它已经被正式应用于Rehat Network上的Up2date更新系统的主要程序了。
于是,我决定试用这个软件,下面就把我的使用经验与大家一起分享吧。
1. 首先去网上下载YUM软件,开始我希望能下载一个适用于AS3平台的YUM,结果,搜索到YUM只有for Fedora以及7.3,8.0,9.0版本,并没有我想像中的有for AS3的版本,但是由于Fedora使用的glibc和AS3是相同的,因此, 下载一个for Fedora的YUM安装。AS3的RPM管理器可以正确识别并安装上YUM,后来,我又下载了其它版本的YUM,发现都可以顺利安装,看来这个程序和系 统本身库的关系不是很大。如果你不能正确安装,请注意以下这几个软件是否已经安装了。
n     Rpm(主要的包管理程序)
n     Rpm-python(RPM包和python的依赖包)
n     Gnupg (用来检验文件完整性的工具)
n     Python(脚本语言,YUM是用它编写的,所以一定要有)
n     Popt (。。。。)
这样,这一步就完成了。
2. 配置YUM
YUM的配置文件被安装在/etc/yum.conf中,此文件配置是决定了YUM从哪些指定的站点下载更新的软件包。仔细分析,其实此文件非常简单,只 需要找到相应的提供RPM编译好的源包站点就可以自动更新了。目前REDHAT官方网站只提供了编译好的Fedora的源码安装包,却没有提供AS3的, 原因很简单,AS3是需要收到技术支持费的,幸好,还有其它公司提供了源码安装包,下面推荐一个开放的基于RPM包(rebuild)的商业操作系统 centos,这是几个RHEL Rebuild中最活跃的一个,我们可以从它的网站上可以获知,cAos的目标是:
·     提供免费的,稳定的,企业级的linux解决方案
·     遵循统一业界标准
·     应用最流行的软件包和企业需求配置
下面我们就可以用它来升级系统,首先配置yum.conf文件,具体如下:
[main]
cachedir=/var/cache/yum
debuglevel=2
logfile=/var/log/yum.log
pkgpolicy=newest
exclude=kernel* #加入这一行就可以不升级kernel

[redhat-os]
name=Red Hat Linux $releasever ($basearch)
baseurl=
   
gpgcheck=1
failovermethod=priority

[redhat-updates]
name=Red Hat Linux $releasever ($basearch) updates
baseurl=
   
gpgcheck=1
failovermethod=priority

[fedora-stable]
name=Fedora Linux / stable for Red Hat Linux $releasever ($basearch)
baseurl=
   
gpgcheck=1
failovermethod=priority
接下来,只要简单的运行一下命令:
    #yum update         就可以坐享其成等着系统升级了。
如果要安装指定新软件包,如mc
# yum install mc
下面是yum命令常用的一些选项,可供参考 :
l     install package1 [ package2 ]     安装指定软件包
l     update package1 [ package2 ] 升级指定软件包,如果不加参数,就升级所有系统已有的软件包
l     check-update     检查可用的升级软件包,列出可供软件列表
l     upgrade           大规模升级系统版本,比如从redhat 8.0升级到redhat 9.0
l     remove package1 [ package2 ] 删除指定软件包
l     list                   功能与check-update相当
l     provides *keyword*     列出可用软件列表中包括关键字的软件包及配置文件
l     search               功能与provides相当
l     info     package1     列出包的依赖性和摘要
l     clean               清除yup缓存目录中的垃圾
如果你想了解yum究竟升级了系统中哪些软件,你可以在/var/log/yum.log文件找到答案,如果你还想让升级工作更加自动化,也可以为其定制一个crontab任务,如:
00 01 * * * /usr/bin/yum update 每天凌晨1点定时升级系统
YUM软件的使用就介绍到这里,具体用法可以用man yum获取更多信息。
阅读(992) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~