rpm与yum的安装

linux下的安装包多为rpm安装包。通常安装方法为

rpm -ivh 包的路径+包名.rpm 其中参数-i为安装 -v显示信息 -h显示进度条。这三个参数基本捆绑使用rpm的路径不单可以是本地磁盘也可以是ftp服务器的目录。

rpm安装的缺点在于很多安装包有依赖性装一个包就带连带着装其他包,大包套小包。当然也有相应的参数来对应

rpm -i --force 软件包名.rpm 强制安装当某个包已经安装后 但是因为某种问题需要重新安装就可以用这个命令。

rpm -i --nodeps 软件包名.rpm 当某个包安装的时候提示有依赖关系的时候加上这个参数就可以忽略依赖直接安装但是软件不一定能用

rpm -e 软件包名 卸载软件包

rpm -qa 查看已安装的所有软件包 这个命令一般搭配管道使用例如 rpm -qa |grep vim 他会将已安装的vim涉及到的包全部找到
vim-enhanced-7.0.109-7.2.el5
vim-common-7.0.109-7.2.el5
vim-minimal-7.0.109-7.2.el5

rpm -ql 软件包名 列出套件文件列表 举例 rpm -ql vim-enhanced-7.0.109-7.2.el5
/etc/profile.d/vim.csh
/etc/profile.d/vim.sh
/usr/bin/ex
/usr/bin/rvim
/usr/bin/vim
/usr/bin/vimdiff
/usr/bin/vimtutor
/usr/share/man/man1/rvim.1.gz
/usr/share/man/man1/vimdiff.1.gz
/usr/share/man/man1/vimtutor.1.gz

rpm -qi 软件全名 查看软件安装信息 例如 rpm -qi vim-enhanced

rpm -qc 软件全名 只查软件的配置文件 例如 rpm -qi vim-enhanced
/etc/profile.d/vim.csh
/etc/profile.d/vim.sh

rpm -qf 文件名 反查出该文件出自哪个软件 rpm -qf /etc/profile.d/vim.csh
vim-enhanced-7.0.109-7.2.el5

相比rpm安装来讲yum的安装更人性化。

首先rpm不用考虑依赖关系因为他会将软件包涉及到的所有依赖包都找到并安装。如果电脑连入网络它会更方便的从网络寻找依赖关系。而且不用考虑软件路径,因为yum软件会通过下载源文件来找对应的软件。

我们来先介绍一下源文件。yum源文件所在的目录为/etc/yum.repos.d/且必须在这个目录才生效,文件名后缀为.repo
这个文件的含的内容主要如下

[标题]
name=名字
baseurl=所有rpm包所在的路径可以是网站也可以是本地目录分三种格式ftp:// http:// file://
enabled=0/1这个源是否启用 0不启用1启用
gpgcheck=0/1这个包是否做key校验
gpgkey=file:///etc/pki/rpm-gpg/这个目录下的key文件。

配置好yum源后我们就可以开始安装文件了yum install -y “文件名” yum会根据yum源编辑的信息查找源目标是否存在,这个文件如果存在会立即安装且会把相关联包一并安装。其中-y这个参数表示所有安装按y的提示一律自动按y执行。

yum安装支持变量 比如yum install *Chinese* 就是搜索出yum源中所有与Chinese有关的rpm包并询问是否安装。

卸载yum remove -y 文件名 同样也会卸载依赖包

yum
list 会显示出yum源涉及到的所有包,包括已经安装和没有安装的。
yum grouplist 会显示源中所有组包比如说我安系统的时候无意间把game组给装上了,出现了一些无聊的游戏我想卸载他们
yum groupremove Games and Entertainment

同样组包的安装为 yum groupinstall 包名

yum也可以指定安装单独的rpm包 yum localinstall 路径加包名

yum search 关键字 查询源中相关的软件
yum provides 文件名 反差文件源自那个包
yum update 自动升级所有需要升级的包yum源有更新

如果是内网机/etc/yum.repos.d/ 维护人员会删除原有的repo后自己制定一个新的内repo编辑完成后一定要
yum clean all 来清空一下缓存。