linuxOPS基础_yum详解

news/2024/7/7 19:44:40

yum是如何安装软件的

在这里插入图片描述

  • yum仓库(也称yum源)用于存放各种rpm的软件包以及软件包之间的依赖关系(repodata目录)
  • 需要安装软件的计算机连接到指定yum仓库来安装软件包

yum源作用

软件包管理器,类似Windows下的软件管家

yum源优势

解决软件包之间的依赖关系,提高运维人员的工作效率。

yum源分类

本地yum源

所谓本地yum源是指yum仓库在本地,一般是本地系统光盘或镜像文件。

网络yum源

所谓网络yum源是指yum仓库在远程(不在本地),需要联网才能安装。

  • 国内较知名的网络源(aliyun源,163源,sohu源,知名大学开源镜像等)
  • 国外较知名的网络源(centos源、redhat源、红帽扩展epel源等)
  • 特定软件相关的网络源(Nginx、MySQL、Zabbix等)

yum源配置

以下操作系统以Centos 6.5为例,其他Linux系统类似。

本地yum源配置

挂载镜像到本地操作系统

#手动挂载光盘到指定目录
mount -o ro /dev/sr0 /mnt
# 开机自动挂载
echo "mount -o ro /dev/sr0 /mnt" >> /etc/rc.local
或者
echo "/dev/sr0 /mnt iso9660 defaults,ro 0 0" >> /etc/fstab

说明:

  1. /etc/rc.local文件是操作系统开机最后读取的一个文件,该文件需要有可执行权限,开机时系统会帮你自动挂载,建议使用该方式。

  2. /etc/fstab文件也可以,但是如果修改错误可能会导致系统起不来。

通过配置文件指定yum仓库

进入到指定目录里,清空操作系统默认的Centos源
[root@Heima ~]# cd /etc/yum.repos.d/
[root@Heima yum.repos.d]# rm -f ./*
在该目录下创建以.repo结尾的文件
[root@Heima yum.repos.d]# vim local.repo 
[local]					仓库的名字,不要有特殊符号(自定义)
name=local yum			仓库描述,可以不写
baseurl=file:///mnt		指定yum仓库的路径(重要),file://表示本地仓库
enabled=1					表示启用该仓库,1表示启用;0表示不启用
gpgcheck=0				不用校验仓库里软件包的签名,0表示不校验;1表示校验

网络yum配置

直接通过修改配置文件来指定yum仓库即可。
特定软件的网络源:

[root@Heima yum.repos.d]# cat nginx.repo 
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/6/$basearch/
gpgcheck=0
enabled=1

基本软件的网络源:
[root@Heima yum.repos.d]# cat 163.repo 
[163]
name=163 network yum
baseurl=http://mirrors.163.com/centos/6/os/x86_64/
enabled=1
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/6/os/x86_64/RPM-GPG-KEY-CentOS-6

[root@Heima yum.repos.d]# cat aliyun.repo 
[aliyun]
name=aliyun
baseurl=http://mirrors.aliyun.com/centos/6/os/x86_64/
enabled=1
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/6/os/x86_64/RPM-GPG-KEY-CentOS-6

通过安装软件包,自动创建.repo文件(自动配置)。

配置epel源为例:

1)下载epel源软件包

[root@Heima ~]# wget -P /tmp https://mirrors.aliyun.com/epel/6/x86_64/epel-release-6-8.noarch.rpm --no-check-certificate
--2019-02-20 09:42:41--  https://mirrors.aliyun.com/epel/6/x86_64/epel-release-6-8.noarch.rpm
Resolving mirrors.aliyun.com... 119.96.206.232, 116.211.153.230, 116.211.153.236, ...
Connecting to mirrors.aliyun.com|119.96.206.232|:443... connected.
WARNING: certificate common name “img.ucdl.pp.uc.cn” doesn’t match requested host name “mirrors.aliyun.com”.
HTTP request sent, awaiting response... 200 OK
Length: 14540 (14K) [application/x-redhat-package-manager]
Saving to: “/tmp/epel-release-6-8.noarch.rpm”

100%[================================================================================>] 14,540      --.-K/s   in 0.03s   

2019-02-20 09:42:41 (538 KB/s) -/tmp/epel-release-6-8.noarch.rpm” saved [14540/14540]

安装软件包

[root@Heima ~]# rpm -ivh /tmp/epel-release-6-8.noarch.rpm 
warning: /tmp/epel-release-6-8.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
Preparing...                ########################################### [100%]
   1:epel-release           ########################################### [100%]

检查配置文件

[root@Heima ~]# ls /etc/yum.repos.d/epel*
/etc/yum.repos.d/epel.repo  /etc/yum.repos.d/epel-testing.repo

yum工具相关命令

yum install package -y

默认是安装来自仓库里的软件,指定的是软件名字。多个包空格隔开;-y (取消交互)

# yum install ./xxx.rpm
或者
# yum localinstall ./xxx.rpm

安装来自本地指定路径下的rpm包,而不是来自仓库

yum remove 或者 erase package

卸载软件包

 yum update

更新仓库里所有比本机已经安装过的软件要的软件

yum update package

指定升级的软件

yum search mysql

搜索出所有软件名字“mysql”关键字的软件

 yum provides  "libaudiofile.so.0"

找出模块由哪些软件包提供

yum clean all

清空之前的yum列表缓存

yum makecache

创建新的缓存

yum list

列出仓库里的所有软件包

 yum repolist

列出已配置的软件仓库

 yum list |grep 关键字

@代表已经安装成功

yum list installed

查看已安装的包

yum grouplist

查看包组

yum groupinstall  "包组"

安装包组

yum groupremove "包组"

总结

  1. yum是Linux下用于安装rpm软件包的一个工具,要使用它安装软件包,必须提前配置yum源。

  2. yum源分为本地yum源和网络yum源。本地yum源指软件仓库在本地;网络yum源指软件仓库在远程。

  3. 软件仓库里既有软件包也要有repodata目录,即存放软件之间的依赖关系

  4. yum工具安装rpm软件包的最大优势就是解决软件包的依赖关系,提高工作效率。


http://lihuaxi.xjx100.cn/news/1243651.html

相关文章

为什么超三成制造企业上市公司选择用友U9 cloud?

导读:30%制造企业上市公司和40%专精特新制造业上市公司都选择用友U9 cloud 当前,数智化转型已经成为中国制造重构竞争力、实现高质量发展的必经之路。《“十四五”智能制造发展规划》提出,到2025年,70%的规模以上制造业企业基本实…

由于找不到msvcr120.dll,无法继续执行代码,多种解决方法修复这个故障

在使用电脑时,我们常常会遇到各种各样的问题。其中一个比较常见的问题是“由于找不到msvcr120.dll,无法继续执行代码”。这个问题可能会让一些用户感到困惑和无助。那么,究竟什么是msvcr120.dll?它缺失了会有什么后果?如何修复这个…

SpringBatch从入门到实战(六):ItemReader

一&#xff1a;ListItemReader 用于简单的开发测试。 Bean public ItemReader<String> listItemReader() {return new ListItemReader<>(Arrays.asList("a", "b", "c")); }二&#xff1a;FlatFileItemReader 1.1 完全映射 当文件…

【计算机网络基础】第3章 单元复习

文章目录 一. 单选题(共22题)二. 填空题(共7题)三. 判断题(共5题)一. 单选题(共22题) (单选题)以下哪一个不是关于千兆位以太网的正确描述( D )。 A. 支持全双工传送方式 B. 帧格式与以太网帧格式相同 C. 数据传输速率为1000Mb/S D. 只能基于光纤实现 (单选题)下列设…

clickhouse--通过命令行导入、导出数据示例

导入、导出的数据格式 ClickHouse可以接受和返回各种格式的数据,如CSV、JSON、XML、PARQUET等 输入支持的格式可用于解析提供给insert的数据,从文件支持的表(如File、URL或HDFS)执行select,或读取字典。支持的输出格式可用于安排SELECT的结果,并在文件支持的表中执行inser…

电商--抢购架构总结

文章目录 背景业务流程业务难点技术难点技术方案技术方向具体落地客户端流控网关流控容器流控后端接口流控数据库流控 流控总结优化读取加速异步化流程处理系统扩容 压测监控 总结参考文献 背景 这是个在做NFT电商项目时遇到的场景&#xff0c;要求运营可以商家某个系列的NFT商…

软件测试“入坑”学习指南:如何系统的学习

最近收到很多知友的**&#xff0c;说&#xff0c;想自学软件测试的一些知识&#xff0c;有没有好点的学习路线或者学习规划呢&#xff1f;本期&#xff0c;小编就简单整理一波学习知识点&#xff0c;作为分享。 一、软件测试工程师的职责 随着技术的发展&#xff0c;各种应用…

Unity3D:自定义 Editor 工具

推荐&#xff1a;将 NSDT场景编辑器 加入你的3D工具链 3D工具集&#xff1a; NSDT简石数字孪生 使用自定义 Editor 工具 从 Scene 视图中可以访问使用工具模式 API 创建的自定义工具。 您可以通过以下方式来访问自定义工具&#xff1a; 单击场景视图工具工具条叠加中的可用自…