Linux--YUM远程仓库部署(FTP源)

本文详细介绍YUM(Yellowdog Updater Modified)在Linux系统中如何实现软件包的自动依赖解决和更新,涵盖YUM工具的基本概念、命令使用、配置文件解析及缓存管理。并深入讲解了如何通过构建FTP源来部署YUM远程仓库,包括服务端的配置步骤,如挂载光盘、安装vsftp服务、复制软件源到ftp站点、建立yum索引环境和开启ftp服务,以及客户端的配置流程,如测试访问、配置软件仓库、清除缓存和安装软件验证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一:YUM概述

  • YUM (Yellow dog Updata Modified )
  • 基于RPM软件包构建的软件更新机制
  • 可以自动解决依赖关系
  • 所有软件包由集中的YUM软件仓库提供

在这里插入图片描述

二:YUM工具概述

2.1:关于yum命令

  • 由软件包yum-3.4.3-150.el7.centos.noarch提供
  • 用来访问YUM仓库、查询、下载及安装、卸载软件包

2.2:YUM的配置文件

  • 基本设置:/etc/yum.conf
  • 仓库设置:/etc/yum.repos.d/*.repo
  • 日志文件:/var/log/yum.log

2.3:YUM缓存目录

  • 存放下载的软件包、仓库信息等数据
  • 位于/var/cashe/yum/ b a s e a r c h / basearch/ basearch/releaserver
  • 清楚缓存:yum clean all

2.4:查询软件包

  • yum list 软件名 ##查看软件列表##
  • yum info 软件名 ##查看软件包详细信息##
  • yum whatprovides 文件/目录 ##查看文件/目录归属于哪个软件包##
  • yum updata ##即更新软件包,同时也更新系统内核##
  • yum upgrade ##只更新软件包##

三:服务端配置

以CentOS 7 为类

3.1:构建FTP源

3.1.1:挂载光盘

[root@server ~]# mount /dev/sr0 /mnt   ##以cetos7光盘作为软件仓库##
mount: /dev/sr0 写保护,将以只读方式挂载

3.1.2:安装vsftp服务

[root@server ~]# yum install vsftp* -y

3.2:复制软件源到ftp站点

[root@server ~]# cd /var/
[root@server var]# ls
account  adm  cache  crash  db  empty  ftp  games  gopher  kerberos  lib  local  lock  log  mail  named  nis  opt  preserve  run  spool  tmp  yp
[root@server var]# cd ftp/
[root@server ftp]# ls
pub
[root@server ftp]# mkdir centos7
[root@server ftp]# ls
centos7  pub
[root@server ftp]# cp -rf /mnt/* ./centos7 &
[1] 9924
[root@server ftp]# 

3.3:建立yum索引环境

[root@server ftp]# mkdir other
[root@server ftp]# ls
centos7  other  pub
[root@server ftp]# createrepo -g /mnt/repodata/repomd.xml  ./other
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
[root@server ftp]# cd other
[root@server other]# ls
repodata
[root@server other]# cd repodata/
[root@server repodata]# ls
01a3b489a465bcac22a43492163df43451dc6ce47d27f66de289756b91635523-filelists.sqlite.bz2
12bbefc88e08f473cf860b4c150a9a8627f68eb256c9d54b80940e5dc224e85c-repomd.xml.gz
401dc19bda88c82c403423fb835844d64345f7e95f5b9835888189c03834cc93-filelists.xml.gz
5dc1e6e73c84803f059bb3065e684e56adfc289a7e398946574d79dac6643945-primary.sqlite.bz2
6bf9672d0862e8ef8b8ff05a2fd0208a922b1f5978e6589d87944c88259cb670-other.xml.gz
7c36572015e075add2b38b900837bcdbb8a504130ddff49b2351a7fc0affa3d4-other.sqlite.bz2
cdcb85c0e4daf1675d1ab6c42b0cacc6f9460d938296f7bf52678514a86a0554-repomd.xml
dabe2ce5481d23de1f4f52bdcfee0f9af98316c9e0de2ce8123adeefa0dd08b9-primary.xml.gz
repomd.xml
[root@server repodata]# 

3.4:开启ftp服务

[root@server ~]# setenforce 0
[root@server ~]# iptables -F
[root@server ~]# systemctl start vsftpd

四:客户端配置

4.1:测试访问ftp服务

[root@client ~]# yum install ftp -y
[root@client ~]# ftp 192.168.209.134   ##服务端IP地址##
Connected to 192.168.209.134 (192.168.209.134).
220 (vsFTPd 3.0.2)
Name (192.168.209.134:root): ftp  ##匿名用户##
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> 

4.2:配置yum软件仓库

[root@client ~]# cd /etc/yum.repos.d/
[root@client yum.repos.d]# mkdir bak
[root@client yum.repos.d]# move  *.repo  bak
[root@client yum.repos.d]# vim ftp.repo
[ftp]
name=centos7.packages
baseurl=ftp://192.168.209.134/centos7
enabled=1
gpgcheck=1
gpgkey=ftp://192.168.209.134/centos7/RPM-GPG-KEY-CentOS-7
[other]
name=other.packages
baseurl=ftp://192.168.209.134/other
enabled=1
gpgcheck=0

4.3:清楚yum缓存

[root@client yum.repos.d]# yum clean all

4.4:安装软件进行验证

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值