首页 > 系统相关 >yum配置及仓库搭建

yum配置及仓库搭建

时间:2024-05-05 17:00:24浏览次数:26  
标签:ftp 仓库 repo yum 软件包 root localhost 搭建

yum实现

YUM 是一个在 Linux 系统中用于管理软件包的工具,可以在服务器和客户端之间跨网络使用。在这种系统中,服务器上通常会存储软件包(RPM 包)和相应的元数据(repodata 文件夹中的内容)。

  • RPM 包:这些是实际的软件包文件,它们包含了应用程序、库文件、配置文件等。这些包被存储在服务器的特定目录中,供客户端下载和安装。

  • 元数据:这些数据提供了关于软件包的详细信息,比如软件包的名称、版本、描述、依赖关系等。repodata 文件夹中的内容包括了目录信息、软件包的依赖关系、软件包的位置等。这些元数据被客户端用于确定需要下载哪些软件包以及它们之间的依赖关系。

当客户端执行 YUM 命令时,它会连接到服务器并请求更新软件包信息。服务器会提供最新的元数据,客户端使用这些信息确定要安装、更新或删除的软件包,并下载相应的 RPM 包。然后客户端会安装这些软件包,同时处理它们之间的依赖关系,确保系统中的软件包是正确的版本并且满足所有依赖关系。

仓库类型:

  • 光盘的仓库基本仓库

  • epel扩展仓库

yum配置文件

主配置文件

位置:/etc/yum.conf           //主配置文件
[root@localhost]#vim /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever //yum下载的RPM包的缓存目录 $basearch代表硬件架构 $releasever系统版本比如7
keepcache=0                                   //是否保存缓存  0代表不保存,1代表保存
debuglevel=2                                  //调试级别了解即可
logfile=/var/log/yum.log                     // 日志文件位置
exactarch=1                                     //是否允许不同版本的rpm安装
obsoletes=1                                    //update 的一个参数是否可以允许旧版本的运行    
gpgcheck=1                                  //验证秘钥
plugins=1                                   //是否允许插件1代表可以
installonly_limit=5                         //保存几个内核 5代表5个
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release

仓库设置文件

位置:/etc/yum.repos.d/*.repo     //**yum仓库文件位置**

yum的repo配置文件中可用的变量:
$releasever: 当前OS的发行版的主版本号,如:8,7,6
$arch: CPU架构,如:aarch64, i586, i686,x86_64等
$basearch:系统基础平台;i386, x86_64
$contentdir:表示目录,比如:centos-8,centos-7
$YUM0-$YUM9:自定义变量

可以直接在CentOS-Base.repo中修改baseurl改变yum源。

 日志文件

位置:/etc/yum.repos.d/*.repo     //**yum仓库文件位置**

 yum命令

命令不加关键字加入关键词、软件包、软件包组
yum list 显示所有可用包 单个的可安装包
yum info 显示所有可用包的信息 单个具体的信息
yum search \ 模糊查找所有的相关信息
yum provides \ 精确查找,某个命令却不知道具体的包可以用此命令查找
yum grouplist 显示所有可用包组 显示具体的包组
yum groupinfo 显示所有的包组具体信息 显示具体的包组的具体信息
yum install \ 安装具体软件包
yum groupinstall \ 安装具体软件包组
yum update 所有软件升级 具体软件升级
yum group update 所有包组升级 具体包组升级
yum remove \ 卸载具体软件
yum groupremove \ 卸载具体包组软件
yum history 查看当前yum操作历史 \
yum history undo 加入序号卸载序号里安装的软件 \
yum history redo 加入序号重新执行序号里的操作 \

搭建yum仓库

软件仓库的提供方式

本地目录:file://绝对路径 (file:///mnt 此处第三个/为根目录)。

HTTP服务:http://域名或者ip地址/站点里的路径。

FTP服务:ftp://ip地址/站点里路径。

本地yum仓库

挂载光驱镜像文件

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

新建.repo文件

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# mkdir bak
[root@localhost yum.repos.d]# mv *.repo bak/
[root@localhost yum.repos.d]# vim local.repo
[base]
name=local
baseurl=file:///mnt
gpgcheck=0

清理缓存

[root@localhost ~]# yum clean all ; yum makecache 

搭建阿里云仓库 (http方式外网环境)

和本地源同样将其他的,repo文件放到bak文件夹下。

新建ali.repo文件

[root@localhost yum.repos.d]# vim ali.repo 
[ali]
name=aliyun
baseurl=https://mirrors.aliyun.com/centos/$releasever/os/$basearch/
gpgcheck=0

[epel]
name=epel
baseurl=https://mirrors.aliyun.com/centos/7/extras/x86_64/
gpgcheck=0

[update]
name=update
baseurl=https://mirrors.aliyun.com/centos/7/updates/x86_64/
gpgcheck=0

清理缓存

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

 服务端

  • 下载http服务
yum install httpd
  • 挂载光盘镜像到/var/www/html/centos7/
[root@localhost html]# mkdir centos7
[root@localhost html]# mount /dev/sr0 /var/www/html/centos7/
  • 重启httpd
[root@localhost ~]# systemctl restart httpd.service 
  • 放通防火墙
[root@localhost ~]# firewall-cmd --permanent --add-service=http
success
[root@localhost ~]# firewall-cmd --reload 
success
  • 查看网页

 客户端

  • 配置.repo文件
[root@hx2 ~]# cd /etc/yum.repos.d/
[root@hx2 yum.repos.d]# vim http.repo
[http]
name=http
baseurl=http://192.168.146.150/centos7
gpgcheck=0
  • 清理缓存

 ftp方式内网环境搭建yum仓库

客户端和服务器和http的搭建方式几乎一样,只要在服务端开启ftp服务,改变yum源位置;在客户端开启ftp服务,改变.repo中baseurl即可。

服务端

  • 安装vsftpd

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

  • 开启vsftpd
[root@localhost ~]# systemctl status vsftpd.
  • 放通防火墙和selinux
[root@localhost ~]# firewall-cmd --permanent --add-service=ftp 
success
[root@localhost ~]# firewall-cmd --reload 
success
[root@localhost ~]# setenforce 0
  • 挂载光盘文件到ftp目录下
[root@localhost ~]# mkdir /var/ftp/centos7
[root@localhost ~]# mount /dev/sr0 /var/ftp/centos7/

客户端

  • 安装ftp
[root@localhost ~]# yum install ftp
  • 放通防火墙和selinux
[root@localhost ~]# firewall-cmd --permanent --add-service=ftp 
success
[root@localhost ~]# firewall-cmd --reload 
success
[root@localhost ~]# setenforce 0
  •  ftp登录服务端成功

  •  搭建yum仓库ftp.repo
[root@localhost yum.repos.d]# vim ftp.repo
[ftp]
name=ftp
baseurl=ftp://192.168.146.146/centos7
gpgcheck=0
  • 清理缓存
[root@localhost yum.repos.d]# yum clean all ; yum makecache 

 

标签:ftp,仓库,repo,yum,软件包,root,localhost,搭建
From: https://www.cnblogs.com/hxqwe/p/18173467

相关文章

  • 搭建自己的博客
    基于github和Hexo搭建自己的博客【摘要】该教程基于个人的虚拟机和个人的GitHub,过程会详细注明对应的安装包的版本。1、搭建hexo环境环境配置本地虚拟机:ubuntu20.4(也可以基于对应的服务器)Hexo搭建步骤1.安装nodejs和npm由于Ubuntu20通过apt安装nodejs默认只能到10.xxx版......
  • linux的yum软件包管理器
    一、yum基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以处理依赖性关系,并且一次安装所有依赖的软件包,无需繁琐下载多个文件。yum与yum镜像源密切相关,yum镜像源可以理解为一个在线的镜像软件仓库,你所需要下载的软件需要在里面有。yuminstallxxx*安装yumremove......
  • 【转载】Godot-GDExtension C++ 环境搭建 (Docker+MinGW/跨平台)
    本文原链接见 Godot-GDExtensionC++环境搭建(Docker+MinGW/跨平台)|Convexwf'sKirakiraBlog。Godot在4.X之后推出了GDExtension,通过第三方绑定扩展功能,目前官方支持的语言只有C++。通过使用GDExtensionC++编写扩展插件,可以作为库文件在Godot中交互使用。GDExten......
  • 接口自动化测试框架搭建的思路
    参数替换的思路为什么替换参数:请求参数不一定全部都是写死的,有可能存在接口之间的数据依赖在Excel中写入特殊标记(如#key#),说明写了特殊标记的地方需要做替换处理读取Excel中的参数,通过正则表达式提取出来需要被替换的key,得到一个list遍历list,根据list中不同的参数,去不同的地方......
  • 图床搭建(零成本)
    图床搭建(零成本)基于博客园搭建图床,目前最好的,最简便以及无成本的性价比最高的方法前言:使用typora发布博客以及发送给朋友md文档需要打包成压缩包,csdn还无法解码url,于是搭建免费版github+pic图床,但github图床限制1G,超过就会有人工审核,并且传输不稳定,时好时坏七牛虽然高速,但免......
  • Halo博客搭建小记
    准备工作阿里云服务器,操作系统为CentOS7.9.2009x86_64(Py3.7.9)宝塔面板Nginx1.24.0(用于反向代理)已备案的域名ssl证书(https访问)参考官方文档,这里使用DockerCompose进行部署官方文档:使用DockerCompose部署|Halo文档一、安装Docker和DockerCompose1、使用宝......
  • 从零搭建Prometheus监控报警系统
    从零开始搭建Prometheus自动监控报警系统 从零搭建Prometheus监控报警系统什么是Prometheus?Prometheus是由SoundCloud开发的开源监控报警系统和时序列数据库(TSDB)。Prometheus使用Go语言开发,是GoogleBorgMon监控系统的开源版本。2016年由Google发起Linux基金会旗......
  • GeoServer开发环境搭建
    前言本文用于记录GeoServer开发环境的搭建过程通过GeoServer发布计划可以看到,在2.23.x版本开始,会移除对jdk1.8的支持。那么当前我们会选择2.22.x版本进行研究环境JAVA:1.8或11MavenGitAction获取源码gitclonegit://github.com/geoserver/geoserver.gitgeoserver#......
  • 阿里云ECS服务器快速搭建企业建站环境
    截止目前,wdCP是小编用过最适合菜鸟的一套通过WEB控制和管理服务器的linux服务器管理系统以及虚拟主机管理系统。安装步骤如下:第一步:远程下载安装压缩包wgethttp://dl.wdlinux.cn/files/lanmp_v3.1.tar.gz第二步:解压缩包tarzxvflanmp_v3.1.tar.gz第三步:执行安装shlanmp.......
  • [附视频教程]DNF_地下城与勇士_单机+联网 搭建架设教程
    搭建源码文件+视频教程联网:https://githubs.xyz/boot/?app=14单机:https://githubs.xyz/boot/?app=15注意:请不要将游戏进行商业化,一切后果概不负责。仅供单机,好友之间进行娱乐!!注意:请不要将游戏进行商业化,一切后果概不负责。仅供单机,好友之间进行娱乐!!注意:请不要将游戏进行商......