Linux搭建YUM仓库

这篇具有很好参考价值的文章主要介绍了Linux搭建YUM仓库。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、yum仓库简介

1.1简介

1.2yum的实现过程原理

二、yum配置文件以及操作

2.1 配置YUM本地仓库

2.2安装httpd服务

三、采用内网搭建yum仓库

3.1http方式内网环境搭建yum仓库

3.2 ftp方式搭建yum仓库

 四、总结


一、yum仓库简介

1.1简介

  • 基于RPM包构建的软件更新机制
  • 可以自动解决依赖关系
  • 所有软件包由集中的YUM软件仓库提供
  • c/s架构

        linux本身就是以系统简洁为自身优势,所以在安装操作系统的时候并没有将所有的库文件以及编译软件包进行安装,所以在linux操作系统上进行软件安装的时候会出现软件包依赖的情况。yum由仓库和客户端组成,也就是整个yum由两部分组成,所以yum可以存放在两台服务器上。也可以存放在一台服务器上。可以有官方来提供服务,也可以由第三方来提供,比如国内的阿里云,搜狐云,还有一些非盈利组织比如学校等。官方的源一般在国外,下载速度肯定有限,手动更改成国内的云可以大幅提升下载速度。
        yum软件仓库中的rpm软件包可以是由红帽官方发布的,也可以是第三方发布的,当然也可以是自己编写的

linux搭建本地yum仓库,云计算,云计算,安全,macos,tcp/ip,linux

 

1.2yum的实现过程原理

        先在yum服务器上创建 yum repository(仓库),在仓库中事先存储了众多rpm包,以及包的相关的元数据文件(放置于特定目录repodata下),当yum客户端利用yum/dnf工具进行安装包时,会自动下载repodata中的元数据,查询元数据是否存在相关的包及依赖关系,自动从仓库中找到相关包下载并安装。

二、yum配置文件以及操作

2.1 配置YUM本地仓库

首先我们需要挂载:

[root@localhost ~]# mount /dev/sr0/mnt                                    #挂载
mount: 在 /etc/fstab 中找不到 /dev/sr0/mnt
[root@localhost ~]# mount /dev/sr0 /mnt
mount: /dev/sr0 写保护,将以只读方式挂载
mount: /dev/sr0 已经挂载或 /mnt 忙
       /dev/sr0 已经挂载到 /run/media/weiran/CentOS 7 x86_64 上
       /dev/sr0 已经挂载到 /mnt 上
[root@localhost ~]# df
文件系统                   1K-块    已用     可用 已用% 挂载点
/dev/mapper/centos-root 20961280 3773780 17187500   19% /
devtmpfs                  917604       0   917604    0% /dev
tmpfs                     933524       0   933524    0% /dev/shm
tmpfs                     933524    9224   924300    1% /run
tmpfs                     933524       0   933524    0% /sys/fs/cgroup
/dev/sda1                5232640  182376  5050264    4% /boot
tmpfs                     186708      32   186676    1% /run/user/1000
/dev/sr0                 4414592 4414592        0  100% /mnt             #挂载成功
tmpfs                     186708       0   186708    0% /run/user/0
[root@localhost ~]# 

然后我们将repo.d下面的文件放到 创建的bak目录下

[root@localhost ~]# cd /etc/yum.repos.d/                                #进入repos.d目录
[root@localhost yum.repos.d]# ls
bak  zhu.repo
[root@localhost yum.repos.d]# mkdir bak                                 #创建bak文件
[root@localhost yum.repos.d]# mv *.repo bak/                   #将所有的红帽文件复制到bak下面

然后我们需要创建一个centos7.repo文件,并且进入编辑

[root@localhost yum.repos.d]# vim centos7.repo
[centos7]                                     #仓库的名字
name=centos7
baseurl=file:///mnt                           #所挂载的目录
enable=1                                      #1开机自启动      0是开机不自启
gpgcheck=0                                    #是否检测

接下我们需要清楚清空yum并且建立元数据   

[root@localhost yum.repos.d]# yum clean all && yum makecache           #清理缓存并建立元数据
已加载插件:fastestmirror, langpacks
正在清理软件源: centos7
Cleaning up everything
Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos
Cleaning up list of fastest mirrors
已加载插件:fastestmirror, langpacks
centos7                                                  | 3.6 kB     00:00     
(1/4): centos7/group_gz                                    | 156 kB   00:00     
(2/4): centos7/filelists_db                                | 3.1 MB   00:00     
(3/4): centos7/primary_db                                  | 3.1 MB   00:00     
(4/4): centos7/other_db                                    | 1.2 MB   00:00     
Determining fastest mirrors
元数据缓存已建立

2.2安装httpd服务

[root@localhost ~]# yum install httpd -y                         #安装指令

[root@localhost ~]# rpm -q httpd                                 #查询httpd是否安装成功
httpd-2.4.6-97.el7.centos.4.x86_64
[root@localhost ~]# 

最后我们就需要关闭防火墙和selinux

[root@localhost ~]# systemctl stop firewalld.service 
[root@localhost ~]# setenforce 0
[root@localhost ~]# 

然后我们在浏览器输入自己虚拟机的ip地址,就可以看到安装成功的提示

三、采用内网搭建yum仓库

3.1http方式内网环境搭建yum仓库

setenforce 0
systemctl stop firewalld.service


#两台机子关闭防火墙和selinux
服务端:192.168.109.131上的操作

yum install -y httpd                                         #下载httpd服务
systemctl start httpd                                        #启动服务
cd /var/www/html/                                            #切换到httpd的目录下
mkdir centos7                                                #创建centos7文件夹
ls
mount /dev/sr0 /var/www/html/centos7/                         #挂载


 
网页访问本机IP
客户端:192.168.88.100上的操作

cd /etc/yum.repos.d/                         #切换到yum.repos.d 目录下
mkdir bak                                    #创建bak文件夹
mv *.repo bak                                #复制所有的红帽软件到bak文件下
vim http.repo                                #编辑http.repo 


#####################

[http]                                                      #仓库名
name=centos 
baseurl=http://192.168.88.100/centos7                      #目标访问IP地址和文件地址
gpgcheck=0
enabled=1


#######################
 

yum clean all &&yum makecache
yum list all

3.2 ftp方式搭建yum仓库

首先我们需要下载vsftpd服务

[root@localhost ~]# yum install -y vsftpd
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 vsftpd.x86_64.0.3.0.2-22.el7 将被 安装
--> 解决依赖关系完成

启动服务

[root@localhost ~]# systemctl start vsftpd

然后我们需要下载并创建文件夹

[root@localhost ~]# systemctl start vsftpd                   #启动vsftpd服务
[root@localhost ~]# cd /var/ftp                              #切换目录
[root@localhost ftp]# mkdir centos7                          #创建centos7文件夹
[root@localhost ftp]# mount /dev/sr0 /var/ftp/centos7/       #挂载
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ftp]# systemctl restart vsftpd               #重启

然后我们需要在第二台机子(192.168.88.99)上操作:

[root@localhost ~]# yum install ftp -y                                  #下载ftp服务
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 ftp.x86_64.0.0.17-67.el7 将被 安装
--> 解决依赖关系完成
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# mkdir bak
mkdir: 无法创建目录"bak": 文件已存在
[root@localhost yum.repos.d]# mv *.repo bak
[root@localhost yum.repos.d]# vim ftp.repo

ftp.repo的具体内容如下:

[ftp]
name=centos7
baseurl=ftp://192.168.88.100/centos7
gpgcheck=0
enabled=1

~                                                                               
~                           

baseurl=ftp://192.168.88.100/centos7的意思是:从服务端的centos7目录中读取

ftp的根目录就是/var/ftp

接下来就是清空缓存并建立元数据

[root@localhost yum.repos.d]# yum clean all && yum makecache
已加载插件:fastestmirror, langpacks
正在清理软件源: ftp
Cleaning up everything
Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos
Cleaning up list of fastest mirrors
已加载插件:fastestmirror, langpacks
ftp                                                      | 3.6 kB     00:00     
(1/4): ftp/group_gz                                        | 156 kB   00:00     
(2/4): ftp/filelists_db                                    | 3.1 MB   00:00     
(3/4): ftp/primary_db                                      | 3.1 MB   00:00     
(4/4): ftp/other_db                                        | 1.2 MB   00:00     
Determining fastest mirrors
元数据缓存已建立
[root@localhost yum.repos.d]# 

 四、总结

搭建yum仓库方式

  1. FTP服务
  2. HTTP服务
  3. 本地仓库

rpm软件包的来源文章来源地址https://www.toymoban.com/news/detail-791861.html

  1. centos发布的rpm包的集合
  2. 第三方组织发布的rpm包集合
  3. 用户自定义的rpm包集合

到了这里,关于Linux搭建YUM仓库的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux(麒麟V10)搭建本地yum源

    根据服务器操作系统类型,下载对应版本iso镜像文件,我的是麒麟V10 x86架构的 下载地址为:https://www.kylinos.cn/support/trial.html?trial=5540 填写信息注册账号即可进入下载页面 我下载的系统镜像名称是:Kylin-Server-10-SP2-Release-Build09-20210524-x86_64.iso 将上传好的iso镜像文件上传至服务器

    2024年02月13日
    浏览(47)
  • Linux技能篇-yum源搭建(本地源和公网源)

    本文章基于centos7,适用于centos6,7,8,9等版本搭建yum源,文章分为网络源和本地源两部分内容。 提示:以下是本篇文章正文内容,下面案例可供参考 YUM是“Yellow dog Updater, Modified”的缩写,是一个软件包管理器,YUM从指定的地方(相关网站的rpm包地址或本地的rpm路径)自动

    2024年02月04日
    浏览(41)
  • 基于Linux系统的本地Yum源搭建与配置(ISO方式、RPM方式)

     由于公司业务服务器大部分都在内网环境下运行,内网环境无法直接使用yum安装升级更新软件,所以需要自建Yum源来满足目前日常工作需要。 YUM 常用命令参数: 1.添加YUM源配置文件 2.挂载光盘步骤 3.开启开机自启动挂载 方式一:vim /etc/fstab 方式二:vim /etc/rc.local httpd:使

    2024年02月05日
    浏览(60)
  • linux yum仓库

    yum是基于rpm包构建的软件更新机制,能够自动解决软件包之间的依赖关系。         查询        yum list  [软件名]          显示可用的安装包,如果不加软件名则显示所有的可用包        yum info  [软件名]         显示安装包的详细信息 如果不加软件名是显示所有包的

    2024年01月16日
    浏览(37)
  • Linux系统:yum仓库

    目录 一、yum 1、yum概述 2、yum仓库 3、yum实现过程原理 二、yum配置文件详解 1、主配置文件 2、yum仓库设置文件 3、yum日志文件 三、yum命令详解 1、查询 1.1 yum list [软件名] 1.2 yum info [软件名] 1.3 yum search 1.4 yum provides 1.5 yum grouplist [包组名] 1.6 yum groupinfo [包组名

    2024年01月18日
    浏览(38)
  • Linux yum(网络yum源和本地yum源)

    yum,全称“Yellow dog Updater, Modified”,是一个专门为了解决包的依赖关系而存在的软件包管理器。就好像 Windows 系统上可以通过 360 软件管家实现软件的一键安装、升级和卸载,Linux 系统也提供有这样的工具,就是 yum。 yum 是改进型的 RPM 软件管理器,它很好的解决了 RPM 所面临

    2024年02月16日
    浏览(42)
  • Linux | 本地Yum源 | 网络Yum源(阿里云Yum源)

    💗wei_shuo的个人主页 💫wei_shuo的学习社区 🌐Hello World ! 创建挂载点目录 挂载光盘 查看挂载记录 更改配置文件 进入本地yum源配置文件目录 CentOS-Base.repo:网络Yum源(默认生效) CentOS-Media.repo:光盘Yum源(默认不生效) 此处配置本地Yum需要使CentOS-Base.repo不生效,即更改后缀

    2024年02月03日
    浏览(37)
  • Linux网络服务之yum仓库

    yum是一个基于RPM包(是Red-Hat Package Manager红帽软件包管理器的缩写)构建的软件更新机制,能够自动解决软件包之间的依赖关系。 yum由仓库和客户端组成,也就是整个yum由两部分组成,所以yum可以存放在两台服务器上。也可以存放在一台服务器上。可以有官方来提供服务,也

    2023年04月24日
    浏览(42)
  • Linux 本地yum源配置

    #1、进入官方本地yum源相关的配置文件目录 #2、看/etc/yum.repos.d/目录下配置文件信息 #3、创建备份文件夹,用于存放查到的配置文件 #4、将所有以 .repo 结尾的文件移动到 repo-bak 文件夹中(备份查到的配置文件) #5、查看备份操作后 /etc/yum.repos.d/目录 的情况 #6、创建本地yum源的

    2024年02月08日
    浏览(48)
  • Linux下本地yum源配置及局域网yum配置

    本地yum源依赖于python解析,首先要确保系统的python和yum源安装完成 上传ISO镜像或使用本机镜像,使用 mount 命令挂载镜像到/dev/loop0设备文件(用于模拟块设备) 在类 UNIX 系统里,loop 设备是一种伪设备(pseudo-device),或者说是仿真设备,我们又叫它为循环接口文件,它能使我们

    2024年02月14日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包