CentOS7.6配置及同步yum源

本文详细介绍了YUM源的配置方法,包括本地光盘源、网络源和局域网源的设置步骤,以及YUM运行的基本原理,如如何从YUM源下载RPM包及其依赖关系。

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

yum 运行原理:

1.YUM客户端安装的所有RPM包都是来自YUM服务端,YUM源端通过HTTP或者FTP服务器发布。而YUM客户端能够从YUM源端下载依赖的RPM包是由于在YUM源端生成了RPM包的基准信息,包括RPM包版本号、配置文件、二进制信息、依赖关系等。

2.YUM客户端需要安装软件或者搜索软件,会查找/etc/yum.repos.d下以.repo结尾文件,CentOS Linux默认的.repo文件名为CentOS-Base.repo,该文件中配置了YUM源端的镜像地址,所以每次安装、升级RPM包,YUM客户端均会查找.repo文件。

3.YUM客户端如果配置了网络源,客户端操作系统必须能联外网,满足网络条件,才能下载软件并安装,如果没有网络,也可以构建光盘源或者内部YUM源。

4.在只要YUM客户端时,YUM客户端安装软件,默认会把YUM源地址、Header信息、软件包、数据库信息、缓存文件存储在/var/cache/yum中,每次使用YUM工具,YUM优先通过Cache查找相关软件包,Cache中不存在,然后在访问外网YUM源。

5.访问外网YUM 源时,本地客户端也会从外网源上面下载对应的软件。

1.YUM本地光盘源配置

将光盘挂到本地
[root@192 ~]# mount /dev/cdrom /media
[root@192 ~]# cd /etc/yum.repos.d/
[root@192 yum.repos.d]# vim server.repo #必须以.repo的文件
[server] #YUM库名称
name=server #描述信息
baseurl=file:///media #YUM源目录,源地址,及RPM软件包目录
enable=1 #是否启用,1表示启用,0表示不启用
gpgcheck=0 #检查GPG-KEY,0为不检查,1为检查

[root@192 yum.repos.d]# yum makecache #制作缓存,生成RPM包的基准信息,包括RPM版本号,配置文件,二进制信息,依赖关系等,形成yum格式数据库,每当安装软件,就会查询数据库,从而查询依赖,安装依赖。

在这里插入图片描述
[root@192 yum.repos.d]# yum repolist all #查看是否配置成功

在这里插入图片描述

2.YUM配置网络源

yum配置网络镜像源,可以从网络上面直接拉去镜像缓存,如果需要某个软件,会从镜像缓存的查询,然后从网络下载对应的软件。
常见的网络源:阿里云,腾讯云,网易,清华大学,搜狐,epel扩展源
示例(阿里云源):
打开官网:https://opsx.alibaba.com/mirror

在这里插入图片描述
选择Centos系统,点击帮助
在这里插入图片描述

1、备份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2、下载新的CentOS-Base.repo 到/etc/yum.repos.d/
CentOS 7
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
3、之后运行yum makecache生成缓存(生成了RPM包的基准信息,包括RPM包版本号、配置文件、二进制信息、依赖关系
等,形成yum 格式数据库,每当安装软件,就会查询数据库,从而查询依赖,安装依赖。)
4、其他
非阿里云ECS用户会出现 Couldn’t resolve host ‘mirrors.cloud.aliyuncs.com’ 信息,不影响使用。用户也可自行修改相关配置: eg:
sed -i -e ‘/mirrors.cloud.aliyuncs.com/d’ -e ‘/mirrors.aliyuncs.com/d’ /etc/yum.repos.d/CentOS-Base.repo

在这里插入图片描述

3.YUM局域网源配置

实验环境:
两台Centos7.6
CentOS7.6-1 192.168.1.201 服务端
CentOS7.6-2 192.168.1.202 客户端

  1. 服务端安装nginx
    安装nginx 官方repo源
    [root@localhost ~]# cat /etc/yum.repos.d/nginx.repo
    [nginx-stable]
    name=nginx stable repo
    baseurl=http://nginx.org/packages/centos/ r e l e a s e v e r / releasever/ releasever/basearch/
    gpgcheck=1
    enabled=1
    gpgkey=https://nginx.org/keys/nginx_signing.key

或源码安装,这里以源码安装为例
[root@192 ~]# tar xzvf nginx-1.14.0.tar.gz
[root@192 ~]# yum install gcc gcc-c++ pcre pcre-devel zlib zlib-devel -y
[root@192 nginx-1.14.0]# ./configure --prefix=/usr/local/nginx && make && make install
[root@192 nginx-1.14.0]# /usr/local/nginx/sbin/nginx
在这里插入图片描述
2.cp 光盘内的软件包到nginx发布目录
[root@192 nginx-1.14.0]# cp -a /media/* /usr/local/nginx/html/
[root@192 ~]# rm -f /usr/local/nginx/html/index.html #删除Nginx默认发布页面
3.修改nginx的配置
vim /etc/nginx/nginx.conf
autoindex on; #开启目录服务,在http{}段配置该代码
4.使用Createrepo创建本地源,执行如下命令会在html目录生成repodata目录
[root@192 ~]# yum install createrepo* -y
[root@192 nginx-1.14.0]# cd /usr/local/nginx/
[root@192 nginx]# createrepo html/
在这里插入图片描述
5.重启Nginx,测试是否成功

在这里插入图片描述

6.客户端配置局域网源

在这里插入图片描述
在这里插入图片描述

4.同步外网Yum源
获取外网YUM源软件常见方法包括Rsync、Wget、Reposync,三种同步方法的区别Rsync方式需要外网YUM源支持RSYNC协议,Wget 可以直接获取,而Reposync可以同步几乎所有的YUM源。
1.reposync 命令更新阿里云镜像源。

[root@192 yum.repos.d]# yum install yum-utils -y	#通过yum-utils软件包安装reposync命令
reposync 命令:
-r 指定repo 文件中 标识符id ,例如[base] [updates]
-p 指定下载路径
使用格式:reposync -r [repoid] -p 下载路径
reposync -r base -p /etc/yum.repo.d/

在这里插入图片描述
建议不更新,10000多个,更新贼慢,直接wget获取。

### 配置Yum并安装VNC服务器 #### 修改默认Yum 为了确保能够顺利下载所需的软件包,在开始之前建议先备份现有的`/etc/yum.repos.d/CentOS-Base.repo`文件,之后可以替换为阿里云或腾讯云提供的优化过的镜像站点链接[^1]。 对于国内用户来说,推荐使用如下命令切换至更快速稳定的国内镜像站: ```bash wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo ``` 完成上述更改后执行更新缓存的操作使新的配置生效: ```bash yum clean all && yum makecache ``` #### 安装必要的组件和服务 由于VNC依赖于图形界面的支持,因此需要先行安装一个轻量级的桌面环境比如XFCE4。这一步骤可以通过运行以下指令达成目的: ```bash yum groupinstall "X Window System" yum install xfce4 xfce4-goodies -y ``` 接着就是正式安装TigerVNC服务端程序及其配套工具集: ```bash yum install tigervnc-server -y ``` #### 设置防火墙规则允许外部访问VNC端口 考虑到安全性因素,默认情况下CentOS的安全策略会阻止未经许可的数据传输请求穿过网络边界。所以要特别注意开放对应的服务端口号以便后续能正常建立远程连接: ```bash firewall-cmd --permanent --add-service=vnc-server firewall-cmd --reload ``` 另外还需确认SELinux状态不影响到实际应用层面的功能表现,必要时调整其工作模式或者创建自定义安全上下文映射关系。 #### 创建VNC实例并设定开机自动启动 针对每位独立用户的个性化需求,应该单独为其分配专属的VNC显示编号以及相应的权限范围。这里以root账户为例展示具体做法: 复制官方模板文件作为基础蓝本进行定制修改: ```bash cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service ``` 编辑新生成的服务单元描述文档内的关键参数项,如分辨率大小、色彩质量等级等细节选项;同时指定正确的用户名身份认证信息用于登录验证过程中的校验环节。 最后重启整个systemctl守护进程让刚才所做的变动立即得到体现,并开启随系统引导而同步加载该功能模块的能力特性开关: ```bash systemctl daemon-reload systemctl start vncserver@:1 systemctl enable vncserver@:1 ``` 此时应当已经可以在本地通过netstat命令查看到监听状态下的TCP端点列表里包含了预期的目标条目记录了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值