配置本地yum源,网络yum源

祈愿平安& 2024-08-22 14:07:02 阅读 88

一、什么是yum源

1、概念:

     yum(Yellowdog Updater, Modified)是一个在基于RPM的Linux发行版(如Fedora、CentOS、RHEL等)中广泛使用的包管理器。它用于自动化地安装、更新、删除和管理软件包及其依赖关系。yum通过访问一个或多个软件仓库(通常称为“yum源”或“软件源”)来获取软件包及其信息。

yum源(或软件源)是一个存储了软件包及其元数据的仓库。这些软件包可以是编译好的二进制文件,可以直接安装在系统上。每个软件包都包含了软件本身、安装脚本、版本信息、依赖关系等。元数据则包括了软件包的描述、版本号、依赖关系等信息,yum利用这些信息来解析依赖关系,确保安装的软件包能够正确地协同工作。

yum源可以是本地仓库(例如,一个包含rpm包的目录),也可以是远程仓库(例如,一个网络上的HTTP、FTP或NFS服务器)。远程仓库特别有用,因为它们允许用户访问大量的软件包,这些软件包由发行版的官方维护者或第三方社区维护。

2、yum优点:

Rpm安装(下载软件,单独安装,需要解决依赖关系) 源码安装 configure make make install  yum基于rpm,相当于rpm升级版,自动解决依赖关系

3、分类:

本地yum源  :yum仓库在本地,系统光盘/镜像文件

网络yum源:aliyun 163源   sohu源  清华源  centos源  redhat源   epel源 

特定软件:nginx  mysql zabbix

4、本地yum源备份

(1)找到源⽂件

# 当前在etc⽬录,跳转到yum.repos.d⽬录

[root@localhost etc]# cd yum.repos.d/

#查看默认的源⽂件

[root@localhost yum.repos.d]# ls

CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo

 mysql-community.repo

CentOS-CR.repo CentOS-Media.repo CentOS-x86_64-kernel.repo

 mysql-community-source.repo

CentOS-Debuginfo.repo CentOS-Sources.repo mysql-communitydebuginfo.repo

[root@localhost yum.repos.d]# pwd

/etc/yum.repos.d

(2)将所有的repo⽂件做成压缩包,命名为repo.tar.gz

[root@localhost yum.repos.d]# tar -zcvf repo.tar.gz ./*.repo

./CentOS-Base.repo

./CentOS-CR.repo

./CentOS-Debuginfo.repo

./CentOS-fasttrack.repo

./CentOS-Media.repo

./CentOS-Sources.repo

./CentOS-Vault.repo

./CentOS-x86_64-kernel.repo

./mysql-community-debuginfo.repo

./mysql-community.repo

./mysql-community-source.repo

您在 /var/spool/mail/root 中有新邮件

# 查看⽂件信息

[root@localhost yum.repos.d]# ls

CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo

 mysql-community.repo

CentOS-CR.repo CentOS-Media.repo CentOS-x86_64-kernel.repo

 mysql-community-source.repo

CentOS-Debuginfo.repo CentOS-Sources.repo mysql-communitydebuginfo.repo repo.tar.gz

(3)删除所有的repo⽂件

[root@localhost yum.repos.d]# rm -rf ./*.repo

您在 /var/spool/mail/root 中有新邮件

[root@localhost yum.repos.d]# ls

repo.tar.gz

5、本地yum源光盘配置

查看本地源

Loading mirror speeds from cached hostfile

repolist:

0

#

所有的

yum

都已经被删除了

(1)使⽤光盘作为yum源仓库

在vmware中装载centos7.6光盘镜像

(2)把光盘挂载到指定⽬录下

[root@localhost ~]# mount /dev/sr0 /mnt/ -o ro

您在 /var/spool/mail/root 中有新邮件

[root@localhost ~]# ls /mnt/

CentOS_BuildTag EULA images LiveOS repodata RPMGPG-KEY-CentOS-Testing-7

EFI GPL isolinux Packages RPM-GPG-KEY-CentOS-7

TRANS.TBL

解除挂载

将挂载添加到开机启动⽂件中

chmod +x /etc/rc.local    添加权限

 echo 'mount -o ro /dev/sr0 /mnt' >> /etc/rc.local    向⽂件中添加⼀⾏

# 查看磁盘挂载情况

[root@localhost ~]# umount /mnt

您在 /var/spool/mail/root 中有新邮件

[root@localhost ~]# ls /mnt/

[root@localhost ~]# lsblk

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT

sda 8:0 0 20G 0 disk

"#sda1 8:1 0 1G 0 part /boot

$#sda2 8:2 0 19G 0 part

 "#centos-root 253:0 0 17G 0 lvm /

 $#centos-swap 253:1 0 2G 0 lvm [SWAP]

sr0 11:0 1 8.8G 0 rom

(3)执行开机自动挂载

方式一:

编写本地repo⽂件创建⼀个repo⽂件编辑内容

[root@localhost ~]# vim /etc/rc.local

方式二:

[root@localhost ~]# echo 'mount -o or /dev/sr0 /mnt' >> /etc/rc.local

[root@localhost ~]# ls -l /etc/rc.local

lrwxrwxrwx. 1 root root 13 6⽉ 16 20:18 /etc/rc.local -> rc.d/rc.local

(4)编写本地repo文件

yum仓库格式:

[root@localhost~]#vim /etc/yum.repos.d/local.repo

(5)yum缓存

[root@localhost ~]# yum clean all   #清除缓存

[root@localhost~]#yum makecache

[root@localhost~]#yum -y remove httpd

(6)测试yum---安装httpd

[root@localhost ~]# yum -y install httpd

[root@localhost ~]# rpm -q httpd

6、网络yum源

(1)知名站点

搜索阿里镜像源

根据提示配置yum源

https://developer.aliyun.com/mirror/centos

复制阿⾥云提供的url,下载⽂件

[root@localhost yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo

https://mirrors.aliyun.com/repo/Centos-7.repo

--2024-07-14 20:00:04-- https://mirrors.aliyun.com/repo/Centos-7.repo

正在解析主机 mirrors.aliyun.com (mirrors.aliyun.com)... 117.23.49.221,

117.23.49.224, 58.222.47.210, ...

正在连接 mirrors.aliyun.com (mirrors.aliyun.com)|117.23.49.221|:443... 已

连接。

已发出 HTTP 请求,正在等待回应... 200 OK

⻓度:2523 (2.5K) [application/octet-stream]

正在保存⾄: “/etc/yum.repos.d/CentOS-Base.repo”

100%

[======================================================================

>] 2,523 --.-K/s ⽤时 0s

2024-07-14 20:00:04 (469 MB/s) - 已保存 “/etc/yum.repos.d/CentOSBase.repo” [2523/2523])

# 查看下载的⽂件

[root@localhost yum.repos.d]# ls

20240714001.repo CentOS-Base.repo repo.tar.gz

[root@localhost yum.repos.d]#

3.运⾏ yum makecache⽣成缓存 yum clear

4.查看源

[root@localhost yum.repos.d]# yum repolist all

已加载插件:fastestmirror

Loading mirror speeds from cached hostfile

 * base: mirrors.aliyun.com

 * extras: mirrors.aliyun.com

 * updates: mirrors.aliyun.com

源标识 源名称

 状态

base/7/x86_64 CentOS-7 - Base -

mirrors.aliyun.com 启⽤: 10,072

centosplus/7/x86_64 CentOS-7 - Plus -

mirrors.aliyun.com 禁⽤

contrib/7/x86_64 CentOS-7 - Contrib -

mirrors.aliyun.com 禁⽤

extras/7/x86_64 CentOS-7 - Extras -

mirrors.aliyun.com 启⽤: 526

local local0

 启⽤: 9,911

updates/7/x86_64 CentOS-7 - Updates -

mirrors.aliyun.com 启⽤: 6,173

repolist: 26,682

5.再次安装httpd

[root@localhost yum.repos.d]# yum -y install httpd

已加载插件:fastestmirror

Loading mirror speeds from cached hostfile

 * base: mirrors.aliyun.com

 * extras: mirrors.aliyun.com

 * updates: mirrors.aliyun.com

正在解决依赖关系

--> 正在检查事务

---> 软件包 httpd.x86_64.0.2.4.6-99.el7.centos.1 将被 安装

--> 解决依赖关系完成

依赖关系解决

=======================================================================

=========================================

 Package 架构 版本

源 ⼤⼩

=======================================================================

=========================================

正在安装:

 httpd x86_64 2.4.6-99.el7.centos.1

 updates 2.7 M

事务概要

=======================================================================

=========================================

安装 1 软件包

总下载量:2.7 M

安装⼤⼩:9.4 M

Downloading packages:

httpd-2.4.6-99.el7.centos.1.x86_64.rpm

 | 2.7 MB 00:00:02

Running transaction check

Running transaction test

Transaction test succeeded

Running transaction

 正在安装 : httpd-2.4.6-99.el7.centos.1.x86_64

 1/1

 验证中 : httpd-2.4.6-99.el7.centos.1.x86_64

 1/1

已安装:

 httpd.x86_64 0:2.4.6-99.el7.centos.1

完毕!

[root@localhost yum.repos.d]#

5.清除缓存,生成缓存

查看yum源

[root@localhost ~]# ls /etc/yum.repos.d/

6、腾讯镜像

https://mirrors.cloud.tencent.com/

查看帮助⽂档

https://mirrors.cloud.tencent.com/help/centos.html

安装nginx

[root@localhost ~]# yum list | grep nginx

[root@localhost ~]# yum -y install nginx.x86_64 

[root@localhost ~]# nginx

[root@localhost ~]# curl http://localhost

[root@localhost ~]# nginx -s stop

[root@localhost ~]# curl http://localhost

删除nginx

[root@localhost ~]# yum -y remove nginx

nginx镜像

[root@localhost ~]# vim /etc/yum.repos.d/nginx.repo

[root@localhost ~]# ls /etc/yum.repos.d/

bak.tar.gz  CentOS-Base.repo.bakup  local.repo.bakup  nginx.repo

[root@localhost ~]# cp /etc/yum.repos.d/CentOS-Base.repo.bakup /etc/yum.repos.d/CentOS-Base.repo

[root@localhost ~]# vim /etc/yum.conf

测试:(tree)

[root@localhost ~]# yum -y remove tree

 

[root@localhost ~]# yum -y install tree

 

[root@localhost ~]# cd /var/cache/yum/

 

[root@localhost yum]# ls

 

x86_64

 

[root@localhost yum]# cd x86_64/

 

[root@localhost x86_64]# ls

[root@localhost x86_64]# cd 7/

 

[root@localhost 7]# ls

 

AppStream  centos  extras  nginx-stable  timedhosts.txt

 

base       epel    local   timedhosts    updates

 

[root@localhost 7]# find ./ -name "*tree"

 

[root@localhost 7]# find ./ -name "*tree*"

 

./base/packages/tree-1.7.0-15.el8.x86_64.rpm

 

[root@localhost 7]# ls -l ./base/packages/tree-1.7.0-15.el8.x86_64.rpm

 

-rw-r--r--. 1 root root 60780 7月   2 2019 ./base/packages/tree-1.7.0-15.el8.x86_64.rpm

安装createrepo制作仓库的软件

[root@localhost ~]# yum -y install createrepo

                 



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。