什么是 yum 源?
yum源是一个软件集合地,只需要搜索并安装想要的软件,它就会帮你解决大部分软件的依赖问题
本地yum源:比如说镜像光盘里一般会附带软件,这时候就可以把光盘当成本地源来安装软件
网络yum源:比如aliyun的镜像网站,这就属于网络源,可以通过互联网把软件下载然后安装
能够从指定的服务器下载RPM包并安装,可以自动处理依赖性关系
并且一次性安装所有依赖的包软件包,无需一次次频繁安装
步骤一:准备一台新的虚拟机 server,将 ip 设置为 172.25.254.150
含有7.3版本的dvd镜像
步骤二:将镜像文件挂载到一个指定的目录下,本次实验将挂载目录设定为/ahtlsource
提示信息意思是镜像光盘的挂载信息是只读的
步骤三:挂载完毕后进入/ahtlsource 后ls查看文件
有Packages就说明有yum仓库了,也就是系统官方软件的安装库
repodata 表示数据库有依赖性的信息,此时安装官方软件,不许处理依赖性的问题
步骤四:在/etc/yum.repos.d/ 目录中编写以 .repo 结尾的 yum 源文件
安装源指向是一个命名以 .repo 结尾的文件,里面放的是本地yum源软件仓库的一些信息,必须切换到该路径下编辑以 .repo 结尾文件,这样yum源才可以生效。
注意:该地址下所有文件必须都是有效文件,无效的不能在此目录下否则会影响yum源的使用。
步骤五:yum clean all
步骤六:此时就可以看到具有软件安装仓库了,含有4751个软件
补充:若以 .repo 结尾的 yum 源文件中 gpgcheck = 1,则书写规范如下:
找到 gpgkey 的位置
yum clean all | 清除原有yum缓存 |
---|---|
yum repolist | 列出仓库信息 |
yum list software | 查看软件 |
yum list all | 列出所有安装包 |
yum list installed | 列出已经安装的 |
yum list available | 列出可以安装但没有安装的 |
yum remove software | 卸载软件 |
yum install software | 安装软件 |
yum reinstall software | 重新安装软件 |
yum update | 更新软件 |
yum search software信息 | 根据软件信息查找软件 |
yum whatprovides 文件 | 根据文件找出包含此文件的软件 |
yum reinstall software | 重新安装软件 |
yum localinstall 第三方软件 | 安装第三方软件并解决依赖关系 |
yum info software | 查询软件信息 |
yum groups list | 列出软件组 |
yum groups install | 安装组 |
yum groups remove | 卸载组 |
yum groups info | 查看组信息 |
yum history | 查看安装历史 |
yum history info 数字 | 对以该数字为id的信息进行显示 |
yum list software 查看软件
yum repolist 列出仓库信息
yum info software 查询软件信息
yum search software信息 ##根据软件信息查找软件
yum whatprovides 文件 ##根据文件找出包含此文件的软件
yum history 查看安装历史
yum groups install 安装组
软件组
在企业中一次性加入多台新的服务器时,此时服务器都是信息系统,没有yum源,不能安装软件。如果每台服务器都一个个去配置本地 yum 源的话会非常麻烦所以使用配置好 yum 源的一台主机,共享给其他主机,这样就很方便。
步骤一:yum install httpd
共享前需要安装这个软件,提供超文本传输协议来实现 yum 源的文件共享,通过这个协议使 yum 源共享
步骤二:配置网络yum源
只有开启了httpd服务,将真机的本地yum源挂载在/var/www/html/下才能实现yum源共享
当真机共享/rhel7.3下文件给其他主机时,必须关闭防火墙
在真机中
设置开机启动httpd服务
关闭防火墙,并且设置开机关闭
将镜像挂载在 /var/www/html/ 下才能共享yum源,在 /var/www/html 下创建 /rhel7.3 文件夹为挂载文件夹
步骤三:挂载成功,然后在虚拟机浏览器中输入 172.25.254.50/rhel7.3 就可以看到真机共享的目录了
步骤四:在虚拟机中 /etc/yum.repo.d下设置一个以.repo结尾的文件作为系统安装源导向
使虚拟机和真机重启之后依然有本地的yum源
步骤一:编辑 vim /etc/rc.d/rc.local
步骤二:chmod +x /etc/rc.d/rc.local 给文件一个可执行权限,系统在开机时会自动执行此脚本,即可实现永久挂载
1.什么是rpm?
rpm 是以一种数据库记录的方式来将所需要的软件安装到 Linux 系统的一套管理机制。
rpm 最大的特点是将要安装的软件先编译过,并且打包成 rpm 机制的安装包,通过包装好的软件里默认的数据库记录这个软件要安装的时候必须具备的依赖属性软件。当安装在Linux 主机时,rpm 会先依照软件里面的数据查询 Linux 主机依赖属性软件是否满足,若满足则予以安装,若不满足则不允许安装。那么安装的时候就将该软件信息整个写入 rpm 的数据库中,以便未来的查询、验证和反安装。这样一来的优点是:
(1).由于已经编译完成并且打包完毕,所以软件传输与安装上很方便(不需要再重新反复编译);
(2).由于软件的信息都已经记录在 Linux 主机的数据库上,很方便查询、升级与反安装。
2.为什么要使用rpm?
只有本地yum源的时候安装第三方软件会出现死循环,此时就要用rpm强行安装一个,再用yum命令寻找依赖性的那个软件再安装,yum与rpm一起使用;
用yum命令进行安装可以解决大多数问题,但是不能解决死循环问题;
用rpm命令安装软件可以解决死循环的问题,系统是什么版本就用什么安装包;
由于yum源软件仓库里没有第三方的软件安装包,所以只能在官方浏览器下载第三方的软件安装包,然后再用yum命令安装,但是利用下载下来的第三方软件安装包安装软件时要处理依赖性关系。
3.rpm 的相关命令
-i | 安装 |
---|---|
-v | 显示过程 |
-h | hash加密 |
-e | 卸载 |
-q | 查看 |
-a | 所有 |
-p | 软件包 |
-ql | 查看软件在系统中的安装文件路径 |
-qlp | 查看未安装的软件包在系统中如果安装后产生文件的路径 |
-qf | 根据某个文件找出此文件属于哪个安装包 |
-qc | 查看软件的配置文件名称 |
-qd | 查看软件的帮助文件 |
–scripts | 查看脚本 |
–nodeps | 安装软件忽略软件的依赖 |
–force | 强行安装软件 |
-Kv | 检测软件包是否被篡改 |
实验:在虚拟机安装 kolour 画图软件
步骤一:下载需要使用的安装包
步骤二:首先用rpm -ivh 安装,发现有很多依赖性的问题
步骤三:rpm -ivh kolour-lib --nodeps (解决能解决的依赖性问题)
步骤四:rpm -ivh kolour --nodeps (解决能解决的依赖性问题)
步骤五:kolour 发现需要解决依赖性
步骤六:下载所需要的软件