百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程网 > 正文

教你分分钟搞定Linux下yum源配置 linux如何配置yum源

yuyutoo 2024-10-16 15:39 6 浏览 0 评论

Linux操作系统对于我们技术人员,不管是开发,测试还是运维都应该是耳熟能详的一个操作系统。既然如此,那么就绕不开在Linux操作系统下安装软件包。在Linux下安装软件包的方式有三种,分别是rpm安装、源码编译安装、yum安装。接下来我们就重点介绍一下最常用、最好用的一种安装方式,即yum方式安装,因为它能够帮助我们解决软件包之间的依赖关系来提高工作效率哦

一、yum知多少

1. yum是如何安装软件的

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

2. yum源作用

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

3. yum源优势

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

4. yum源分类

① 本地yum源

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

② 网络yum源

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

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

二、yum源配置

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

1. 本地yum源配置

① 挂载镜像到本地操作系统

手动挂载光盘到指定目录
[root@Heima ~]# mount -o ro /dev/sr0 /mnt
开机自动挂载
[root@Heima ~]# echo "mount -o ro /dev/sr0 /mnt" >> /etc/rc.local
或者
[root@Heima ~]# 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表示校验

2. 网络yum配置

① 方法1:

直接通过修改配置文件来指定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

② 方法2:

通过安装软件包,自动创建.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]

2)安装软件包

[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%]

3)检查配置文件

[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软件包的最大优势就是解决软件包的依赖关系,提高工作效率。

相关推荐

对volatile,synchronized,AQS的加锁解锁原理的一些理解

一、为什么要加锁,要实现同步多线程编程中,有可能会出现多个线程同时访问同一个共享、可变资源的情况,这个资源我们称之其为临界资源;这种资源可能是:对象、变量、文件等。...

注意,不能错过的CAS+volatile实现同步代码块

前言:最近看到有人说可以使用CAS+volatile实现同步代码块。心想,确实是可以实现的呀!因为AbstractQueuedSynchronizer(简称AQS)内部就是通过CAS+...

面试并发volatile关键字时,我们应该具备哪些谈资?

提前发现更多精彩内容,请访问https://dayarch.top/提前发现更多精彩内容,请访问https://dayarch.top/提前发现更多精彩内容,请访问https://dayarch...

无锁同步-JAVA之Volatile、Atomic和CAS

1、概要本文是无锁同步系列文章的第二篇,主要探讨JAVA中的原子操作,以及如何进行无锁同步。关于JAVA中的原子操作,我们很容易想到的是Volatile变量、java.util.concurrent....

C/C++面试题(二):std::atomic与volatile

volatile是C/C++中的一个关键字,用于告知编译器某个变量的值可能会在程序的控制之外被意外修改(例如被硬件、中断服务程序、多线程环境或其他外部代理)。为了防止编译器对代码进行某些可能破坏...

VOCs(Volatile Organic Compounds)挥发性有机化合物及测试方法

经常看到一些三防漆、涂料、油漆类产品的介绍中提到VOC、VOCs等概念,那么什么是VOC、VOCs和TVOC,VOCs主要包括哪些物质?VOCs的来源有哪些?VOCs的危害及国家标准是什么?一、V...

对volatile 及happen—before的理解

happen—before规则介绍Java...

这一篇我们来了解Synchronized、Volatile、Final关键字

题外话:蓝银王觉醒了!!--来自于一个斗罗大陆动漫爱好者(鹅,打钱!)湿兄这两天回家了,办了点大事,回来的时候我弟弟还舍不得我,哭着不愿意让我回京(我弟还是小学),我也心里很不舍,但是还是要回京奋斗...

关于 Java 关键字 volatile 的总结

1什么是volatilevolatile是Java的一个关键字,它提供了一种轻量级的同步机制。相比于重量级锁synchronized,volatile更为轻量级,因为它不会引起线程上下文...

大白话聊聊Java并发面试问题之volatile到底是什么?

用最简单的大白话,加上多张图给大家说一下,volatile到底是什么?...

为什么要有volatile关键字(volatile 关键字为什么不能保证原子性)

在嵌入式编程和多线程编程中,我们常会见到volatile关键字声明的变量。下面说一下volatile关键字的作用:1.保持变量内存可见简而言之就是用volatile声明的变量会告诉编译器和处理器,这个...

Java的volatile到底怎么理解?(java volatitle)

我们都知道,在Java中有很多的关键字,比如synchronize比如volatile,这些都是一些比较关键的,还有final,今天我们就来聊一下这个volatile因为这个vo...

Java多线程编程中的volatile关键字:解密神秘的共享内存

Java多线程编程中的volatile关键字:解密神秘的共享内存在Java多线程编程的世界里,volatile关键字就像一位低调却至关重要的守护者。它默默无闻地站岗放哨,确保多个线程之间能够正确地共享...

你了解volatile关键字的作用吗?(关键字volatile有什么含意?并举出三个不同的例子?)

【死记硬背】volatile关键字主要用于保持内存的变量可见性和禁止重排序。变量可见性:当一个线程改变了变量的值,那么新的值对于其他线程也是可以立即获取到的。禁止重排序:...

谈谈你对volatile 关键字作用和原理的理解

一位6年工作经验的小伙伴,在某里二面的时候被问到“volatile”关键字。然后,就没有然后了…同样,还有一位4年的小伙伴,去某团面试也被问到“volatile关键字“。然后,也没有然后了…...

取消回复欢迎 发表评论: