软件包版本号如果最后一位是奇数的话,那么就表明这个软件还处于测试阶段,可能有一些BUG等不确定因素,不具有稳定性,反之偶数就是稳定版。
rpm基本命令安装:
rpm -ivh [rpm包名] # 可选项 -h哈希值 -v详细信息 rpm -ivh [rpm包名] --force # 强制安装(即使已存在)查看:
rpm -aq # 查看所有已安装,可配合`rep`滤 rpm -q [软件名] # 查看某个软件是否以安装 rpm -ql[软件名] # 查看某个软件的安装位置 rpm -qi[软件名] # 查看某个软件的安装详情卸载:
rpm -e [软件名] # 可能出问题 rpm -e [软件名] --nodeps # 强制卸载示例演示:
[root@localhost Packages]# rpm -ivh dnsmasq-2.66-21.el7.x86_64.rpm --force 警告:dnsmasq-2.66-21.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY 准备中... ################################# [100%] 正在升级/安装... 1:dnsmasq-2.66-21.el7 ################################# [100%] [root@localhost Packages]# rpm -aq | grep 'dnsmasq' dnsmasq-2.66-21.el7.x86_64 [root@localhost Packages]# rpm -e dnsmasq --nodeps [root@localhost Packages]# rpm -aq | grep 'dnsmasq' [root@localhost Packages]# rpm在线自动安装在线自动安装
通过CentOS官网进行下载rpm安装包。再手动安装
首先查看自身系统编号:
[root@localhost Packages]# cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core)
复制出连接直接安装就好:
rpm -ivh [链接] wget手动下载安装注意pwd位置一定要在你想要下载到的位置。
使用wget跟上链接地址,这种方式非常常用!
wget [链接] yum基本命令使用上面的rpm安装方式会经常遇见一个问题。那就是依赖组件的问题,很多依赖组件莫名其妙不知道是什么东西去哪里下载,那么如何解决这个问题呢?可以使用yum来解决。
yum会自动安装rpm软件,并且会自动安装其依赖软件。
基本命令:
yum install [软件名] # 安装某个软件, 使用 -y 来让所有选项都确定,yum install [软件名] -y yum remove [软件名] # 卸载某个软件 yum reinstall [软件名] # 更新某个软件 yum makecache # 创建缓存文件,有效提升网络安装的速度 yum clean all # 清理缓存 yum groupulist # 批量安装成批工具,如yum groupulist '开发者工具' yum与依赖环境yum分为本地仓库和远程仓库。
建立本地仓库
手动配置yum仓库文件:
# 新建仓库文件 [root@localhost /]# vim /etc/yum.repos.d/local.repo # file路径必须//开头跟上路径 [local] name=local yum baseurl=file:///run/media/yunya/CentOS\ 7\ x86_64/ enabled=1 gpgcheck=0 # 意思就是所使用yum命令时,从该路径安装rpm包查看仓库
除开我们自己配置的仓库外,其实他还有很多的自带仓库。可以查看/etc/yum.repos.d,这些文件都是网络源。
[root@localhost /]# ls /etc/yum.repos.d/ CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo local.repo
yum执行流程
那么yum安装的流程到底是怎么样去执行的呢?怎么样找到依赖关系并找到安装包?可以看下面的这张图。
如果仓库里给定的路径没有repodata这个目录,那么必定安装失败。
以上这些都是yum的一个原理流程图。我们可以查看一下在本地镜像中的repodata/repomd.xls
[root@localhost /]# ls /run/media/yunya/CentOS\ 7\ x86_64/repodata/ | grep 'repomd.xml' repomd.xml这个就是依赖环境的文件,通过这个文件可以找到Packages下的所有安装包进行安装,如果没有就不会安装,而是通过网络的方式去查看repodata文件。
在这里也可以看到基于网络的仓库信息。它的路径是在/etc/yum.repos.d下面。