今天打算更新一下centos的repo源,把原先国外的repo地址换成国内的,速度快一些。主要替换的文件是/etc/yum.repos.d/Centos-Base.repo 。替换的时候,不知道大家有没有去注意里边的内容,还是简简单单换一下baseurl,可能是我比较闲,然后就研究了一下里边的几个变量分别是啥意思。先看一下替换前的文件长什么样。上图:

在这里出现了几个奇怪的变量,那么是什么意思,值是什么呢?上网查了一下,翻看了多个网页,开动了小脑筋,然后总结一下,过程比较艰辛和漫长,不在此细说,哥是个很低调的人哈哈哈哈哈。

公布结果:

  /etc/yum.repos.d/CentOS-Base.repo文件中的$releasever 值是先参考/etc/yum.conf中的distroverpkg的值,大家可以去看看,如果有这个值的话,那么就会用到这个值,比如我电脑上这个值是centos-release,这个值怎么用呢?其实是将$releasever的值设置为当前系统中已经安装的centos-release包的版本号。具体怎么看这个已安装的包的版本号呢?很简单,

          rpm -q centos-release   #查看系统已安装的包的名字

这个命令查看的是包的名字,在我的系统上是

centos-release-6-4.el6.centos.10.i686

那么版本号是多少呢?

centos-release-6-4.el6.centos.10.i686

答案是6,就是这么6,所以折腾了半天,$releasever 的值等于  6 !!!!

为啥要费这么大劲呢????!!!

为了升级 redhat-release 包之后可以自动升级整个系统上的软件。

这么看,似乎还是有那么一点点道理的,但是是不是搞得太复杂了呢,大家自行保留意见。

接着看baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/

可以看到还有$basearch的值不是很明确,那么这个值从哪里来呢?

i686 and i586 machines both have a base architecture of i386, and AMD64 and Intel64 machines have a base architecture of x86_64.

也就是说,32位系统是i386,64位系统是x86_64

那么上面的baseurl就可以拼凑完成了,我们访问一下看看,

http://mirror.centos.org/centos/6/os/x86_64/

事实证明了,可以访问。

刚才说到,如果/etc/yum.conf中如果有distroverpkg的值的话,是这样的一个流程,那么如果没有这个值的话,怎么办呢?

答案是参考/etc/redhat-release中的值,我的电脑是CentOS release 6.4 (Final)
所以应该是会抽取出来其中的6,然后作为$releasever的值。

yum.repos.d中的变量($releasever与$basearch)的更多相关文章

  1. yum-config-manager YUM安装遭遇: [Errno 256] No more mirrors to try CentOS yum之$releasever和$basearch

    YUM安装遭遇: [Errno 256] No more mirrors to try createrepo 有问题. CentOS yum之$releasever和$basearch分类: 操作系统 ...

  2. 互联网同步yum服务器,中科大 rsync createrepo

    参考文章 https://blog.csdn.net/chenjia6605/article/details/82734945 1.本机安装所需工具: yum -y install rsync cre ...

  3. 关闭安装包更新使用YUM在Linux中(RHEL / CentOS / Fedora)

    YUM (Yellowdog Updater Modified)  是一个开源的命令行工具,以及基于图形的软件包管理工具, 用于基于 RPM (RedHat Package Manager) 的 Li ...

  4. yum配置文件下使用自定义变量

    yum的配置文件中,可以使用的变量,简称为yum变量: 默认的yum变量有: $releasever(Release Version),发行版的版本 $arch,CPU体系结构,通过 Python 的 ...

  5. CentOS下Yum的$releasever和$basearch的取值

    CentOS下Yum源配置文件中如CentOS-Base.repo的$releasever和$basearch的取值 $releasever的值,这个表示当前系统的发行版本,可以通过如下命令查看: r ...

  6. yum使用过程中的常见错误

    (1) 使用yum安装相关软件包时一直提示以下错误:repodata/repomd.xml: [Errno 4] IOError: <urlopen error (113>, Error: ...

  7. Create a /etc/yum.repos.d/mongodb-org-4.0.repo

    Install MongoDB Community Edition on Red Hat Enterprise or CentOS Linux — MongoDB Manual https://doc ...

  8. centos7不小心删除了/etc/yum.repos.d/CentOS-Base.repo文件..........

    一步小心使用rm -rf /etc/yum.repos.d/CentOS-Base.repo 删除了base.repo文件,导致使用yum安装时报错. 解决如下,使用阿里云的镜像: wget -O / ...

  9. shell脚本介绍、shell脚本结构和执行、date命令用法、shell脚本中的变量

    7月11日任务 20.1 shell脚本介绍20.2 shell脚本结构和执行20.3 date命令用法20.4 shell脚本中的变量 20.1 shell脚本介绍 1.shell脚本语言是linu ...

随机推荐

  1. 软件“美不美”,UI测试一下就知道

    摘要:软件测试的最高层次需求是:UI测试,也就是这个软件"长得好不好看". 为了让读者更好地理解测试,我们从最基础的概念开始介绍.以一个软件的"轮回"为例,下图 ...

  2. Golang字符串是否存在于切片或数组中的小工具(基本等同于python in语法)

    // golang中是没有判断字符串是否存在数组或切片里的内置方法, 所以我们可以自己搞一个快速小组件 func Find(slice []string, val string) (int, bool ...

  3. MySql创建存储过程,并使用事件定时调用

    一.使用命令行创建存储过程的步骤 :参数详情参考 https://www.mysqlzh.com/ 1.模板  delimiter $$ # 设置分隔符为 '$$' ,mysql默认的语句分隔符为 ' ...

  4. Java 中的 equals() 和 hashCode()

    equals() 和 hashCode() 在 Object 类中以本地方法的形式存在,Java 中所有的类都继承了 Object 类,因此所有的类中都包含了这两个方法.这两个方法在 Java 开发中 ...

  5. SpringCloud系列之SpringCloud Stream

    SpringCloud Stream SpringCloud Config SpringCloud Gatewa SpringCloud Hystrix SpringCloud 第一部分 文章目录 S ...

  6. Azure Table Storage(一) : 简单介绍

    Azure Table Storage是什么: Azure Table Storage是隶属于微软Azure Storage这个大服务下的一个子服务, 这个服务在Azure上算是老字号了, 个人大概在 ...

  7. ctfhub技能树—web前置技能—http协议—基础认证

    打开靶机环境 下载附件后发现是常用密码字典,于是考虑本题可能是考察密码爆破 打开环境 发现需要认证,于是考虑使用暴力破解 使用burpsuite抓包,查看 发现最下面一行有加密后的密文 使用base6 ...

  8. Ice系列--傻瓜式服务开发IceBox

    前言 相信大家在没有接触过框架之前,都自己或多或少的开发过一些应用服务.每个应用服务除了业务配置还有很多环境配置,资源配置等,这些跟部署相关的配置.服务跟配置文件是一种静态绑定的方式,更新配置还需要重 ...

  9. 前端知识(一)02 初识 Node.js-谷粒学院

    目录 初识Node.js 一.Node.js的概念 1.JavaScript引擎 2.什么是Node.js 3.Node.js有什么用 二.BFF 1.BFF 解决什么问题 2.BFF是什么 三.安装 ...

  10. mysql+MHA高可用

    MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Facebook公司)开发,是一套优秀 ...