目录
一、rpm
红帽开发了RPM软件包管理器,RPM=Redhat Package Manager。RPM软件包名的格式为<name>-<version>-<release>.<arch>.rpm。比如,httpd-tools-2.4.6-7.el7.x86_64.rpm,其中name=httpd-tools,version=2.4.6,release=7.el7,arch=x86_64。
安装和升级。这里的安装,也就是-ivh是不解决依赖关系的,同时也不会删除既有的包。通常可以用来进行内核升级。这样,在升级失败的情况下,还可以回滚到之前可用的内核。
[root@server0 ~]# rpm -ivh <package>.rpm # -i表示安装install
[root@server0 ~]# rpm -Uvh <package>.rpm # -U表示升级update
常用的rpm选项
[root@server0 ~]# rpm -qa # 列出所有安装的包
[root@server0 ~]# rpm -qi yum # 显示yum这个包的详细信息,相当于yum info
[root@server0 ~]# rpm -qc yum # 列出yum这个包的配置文件在哪里
/etc/logrotate.d/yum
/etc/yum.conf
/etc/yum/version-groups.conf
[root@server0 ~]# rpm -qd yum # 列出yum这个包的文档放在哪里
/usr/share/doc/yum-3.4.3/AUTHORS
/usr/share/doc/yum-3.4.3/COPYING
/usr/share/doc/yum-3.4.3/ChangeLog
/usr/share/doc/yum-3.4.3/INSTALL
/usr/share/doc/yum-3.4.3/PLUGINS
/usr/share/doc/yum-3.4.3/README
/usr/share/doc/yum-3.4.3/TODO
/usr/share/man/man5/yum.conf.5
/usr/share/man/man8/yum-shell.8
/usr/share/man/man8/yum.8
[root@server0 ~]# rpm -q --scripts openssh-server # 查看一个包的安装脚本
还可以用rpm通过已安装的文件查询是哪个包提供的。
[root@server0 ~]# rpm -qf /etc/yum.repos.d/ # 查询/etc/yum.repo.d/目录是哪个包安装时提供的
yum-3.4.3-117.el7.noarch
二、yum
yum命令在多个存储库中搜索软件包和其依赖项,以便一起安装他们,从而解决依赖性问题。yum的主要配置文件在/etc/yum.conf,其他的存储库配置文件在/etc/yum.repo.d目录中。
在/etc/yum.repo.d目录创建存储库,配置文件以repo结尾。每个存储库至少要包含:一个存储库ID(方括号中),一个名称(name=),一个软件包存储库的URL(url=)。另有3个可选的内容:是否启用这个存储库(enable=),是否启用gpg公钥验证(gpgcheck=),gpg公钥位置(gpgkey=)。存储库的URL可以指向本地文件或者网络共享文件,支持的协议有file://、http://和ftp://。将该URL粘贴到浏览器中,显示的内容应该有RPM软件包以及包含软件包相关信息的repodata目录。
[root@desktop0 yum.repos.d]# cat my.repo
[MyRepo]
name=rhel7_dvd
url=http://172.25.254.254/content/rhel7.0/x86_64
gpgcheck=0
enable=1
[root@desktop0 yum.repos.d]# yum repolist
Loaded plugins: langpacks
repo id repo name status
MyRepo rhel7_dvd 0
yum下常用的几个命令。
yum clean all # 清空本地yum缓存
yum makecache # 创建yum缓存yum search httpd # 按照包名来搜索包
yum provides httpd # 按照命令由哪个包提供来搜索包,哪个包提供了httpd这个命令
yum repolist all # 列出所有存储库
yum repolist enabled # 列出启用的存储库
yum repolist disabled # 列出禁用的存储库
yum list php* # 列出所有名字符合规则的包,比如列出所有以php开头的包
yum info httpd # 显示包的详细信息 相当于 rpm -qi httpdyum install httpd # 安装包,及依赖包。只需要写包名。
#默认安装最高版本。相同版本,安装最新发行版
yum remove httpd # 卸载包,及依赖包。
yum update httpd # 升级包,及可能需要升级的依赖包。# 如果不写报名,那么升级所有包,很危险!!
yum groups list # 列出所有可用的组安装。
yum groups info "Development Tools" # 显示组的详细信息
yum groups install "Development Tools" # 组安组,安装开发工具组件
yum groups remove "Development Tools" # 卸载组yum localinstall /path/to/local.rpm # 安装本地rpm包
yum的配置文件是/etc/yum.conf。这个文件配置了安装包的缓存目录,默认是/var/cache/yum/x86_64/7 目录。配置文件的 keepcache 选项默认0表示不缓存包,可以改为1缓存安装的rpm包。