Andrew Huang 转载请保留作者名字和联络方式
Linux的软件安装方式有几种,一种是tarball形式。即软件以源码压缩包的形式,如tar.gz,或tar.bz2安装,这是最保险的机制。一般是configure/make/make install即可安装成功。
这种方式是缺点是如果是依赖库比较多,则要把库也要同样方式编译安装,特别了引用了GTK等图形界面的程序,需要编译大量库。这种方法比较合适专业的开发人员。
所以自Redhat早期版本开始,提供了编译好的二进制包 rpm安装包形式。简单用rpm这个工具就能把编译好*.rpm后缀程序安装或卸载。而且能使用图形界面来操作,这样跟Windows类似的界面让Linux安装和卸载程序不再成一般使用者头痛的问题。
rpm问题与tarball类似,就是一个rpm包,需要其它的rpm包依赖包,一时很难找到,而且一般依赖还有一个版本问题,即必须要合适的版本的依赖库的rpm包,才能安装应用程序。因此如果找到合适库的rpm成为最头痛的问题。
Linux的debian版本,有一个比较方便的apt可以从网络进行安装。它原因是当你用网络安装一个应用程序时,apt除了从网上查找应用程序的安装包,还会自动查找它的依赖包进行安装。一切都是自动进行。采用debian做为底层的Unbuntu也采用apt来网络安装程序,但是它安装是.deb格式二进制程序,
的RHEL采用类似的机制yum.来安装rpm包。
yum 是 Yellow dog Updater, Modified的缩写.
它相对于apt更加灵活。一是配置文件简单,二是可以从多种安装源安装(HTTP,FTP和本地光盘)
yum的配置文件有两处,一处是/etc/yum.conf,另一处就是/etc/yum.repos.d/ 保存着安装源信息,这一目录下所有.repo文件将被当做安装源来处理。
在yum.repos.d的配置文件可以配多个源,每一个源是一个段。在yum安装依次使用这一些源。
每一个源的服务器(FTP/HTTP/本地文件)必须有一个repodata目录,里面用一个xml文件记录的源服务器安装包信息。
你可以在安装时,用yum --enablerepo=c5-media 来指定某一个段的源安装
-.RHEL5使用yum
----------------------------------------------------------------
其默认的配置
/etc/yum.conf,基本上无需改变
[main] cachedir=/var/cache/yum keepcache=0 debuglevel=2 logfile=/var/log/yum.log pkgpolicy=newest distroverpkg=redhat-release tolerant=1 exactarch=1 obsoletes=1 gpgcheck=1 plugins=1 metadata_expire=1800
# PUT YOUR REPOS HERE OR IN separate files named file.repo # in /etc/yum.repos.d
|
"/etc/yum.repos.d/rhel-debuginfo.repo使用RDHAT的相关源,使用时需要把enabled=1
[rhel-debuginfo] name=Red Hat Enterprise Linux $releasever - $basearch - Debug baseurl=ftp://ftp.redhat.com/pub/redhat/linux/enterprise/$releasever/en/os/$basearch/Debuginfo/ enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
|
这是每段最重要是baseurl .它将使用是的ftp上的源码
使用本地光盘作为yum源
建立任意的 /etc/yum.repos.d/*.repo
在其中建立一个段
其中baseurl="file:///光盘mount目录。enabled=1
[Cluster] name=Red Hat Enterprise Linux $releasever - $basearch - Cluster baseurl=file:///media/rhel/Cluster enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[ClusterStorage] name=Red Hat Enterprise Linux $releasever - $basearch - ClusterStorage baseurl=file:///media/rhel/ClusterStorage enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[Server] name=Red Hat Enterprise Linux $releasever - $basearch - Server baseurl=file:///media/rhel/Server enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[VT] name=Red Hat Enterprise Linux $releasever - $basearch - VT baseurl=file:///media/rhel/VT enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
|
2.将光盘可用
mkdir -p /media/rhel
mount /dev/cdrom /media/rhel
# mount -o loop rhel-5-server-i386-dvd.iso /media/rhel
如果需要开机自动mount可以,编译/etc/fstab 加入如下一行
/dev/cdrom /media/rhel iso9660 ro 0 0
使用第三方源
[source] name=source baseurl=
enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
|
这一些源可以是FTP/HTTP地址。要示源目录上必须repodata/*.xml
以下是一个网上大家常用可用源
[dag] name=Dag RPM Repository for RHEL5 baseurl= enabled=1 gpgcheck=1 gpgkey= |
二.CentOS使用yum
----------------------------------------------------------------
使用本地光盘作为yum源
假设光盘Mount在 /media/CentOS上。
[CentOS] name=CentOS
baseurl=file:///media/CentOS/
enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
|
其余跟RHEL相同
国内较快的CentOS yum源RHEL可用
首先在RHEL 使用把这个文件里的全部置换成 .(因为服务器路径发现变化)
或下面现成的。
|
文件: |
CentOS-Base.repo.zip |
大小: |
0KB |
下载: |
下载 | |
然后把这个文件拷贝到/etc/yum.repos.d成一个repo后缀的文件
三.yum的使用
----------------------------------------------------------------
在RHEL5下首选。
在CentOS首选中科大的
1.调整yum
第一次使用yum需要在RHN注册。否则运行yum会提示
This system is not registered with RHN.
RHN support will be disabled.
不注册想升级,安装一个不需要验证的yum版本.
rpm -qa yum
rpm -e yum-3.0.5-1.el5 #删除yum
下载无需验证的
rpm -ivh yum-3.0.5-1.el5.centos.5.noarch.rpm
每一个源如果想使用导入key.
rpm --import
2.yum命令
yum clean all #清除缓冲
yum list #列出所有可安装包
yum remove
#卸载指定包
yum update #更新指定包
3.常见错误处理
运行提示.Existing lock /var/run/yum.pid: another copy is running. Aborting.
处理
rm -f /var/run/yum.pid
service yum-updatesd stop
阅读(1797) | 评论(0) | 转发(0) |