centos repo,centos sudo
大家好,今天来为大家分享centos repo的一些知识点,和centos sudo的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!
centos8 yum源安装报错解决方案
面对Centos8停止服务,使用yum源安装时出现“错误:「Failed to download metadata for repo‘AppStream’: Cannot prepare internal mirrorlist: No URLs in mirrorlist」”的问题,我们可以通过以下步骤解决:
第一步,进入yum的repos目录。通过命令cd/etc/yum.repos.d/,定位到存放所有yum源配置的目录。
第二步,修改所有的CentOS文件内容。需要重点修改与CentOS相关的repo文件,如CentOS.repo等。修改时,删除或注释掉所有与CentOS相关的源地址,确保只保留第三方或替代源的配置。
第三步,更新yum源为阿里镜像。访问阿里云官方提供的Centos源地址,如``,复制最新的yum源配置文件内容。将文件内容粘贴到修改后的repo文件中,替换原有的源地址。确保文件内容完整、无误。
第四步,完成修改后,重启yum服务以应用更改。使用命令`systemctl restart yum`进行重启。重启后,yum服务将使用新配置的源进行更新。
最后一步,进行yum安装测试。打开终端,尝试执行简单的yum安装命令,如`yum install `,以验证是否可以正常安装所需软件包。如果操作顺利,说明yum源已成功更新并启用。
按照上述步骤操作后,您将能够正常使用yum进行软件安装,解决Centos8使用yum源安装时遇到的问题。
Linux里面repo文件作用是什么
什么是repo文件?
repo文件是Fedora中yum源(软件仓库)的配置文件,通常一个repo文件定义了一个或者多个软件仓库的细节内容,例如我们将从哪里下载需要安装或者升级的软件包,repo文件中的设置内容将被yum读取和应用!
YUM的工作原理并不复杂,每一个 RPM软件的头(header)里面都会纪录该软件的依赖关系,那么如果可以将该头的内容纪录下来并且进行分析,可以知道每个软件在安装之前需要额外安装哪些基础软件。也就是说,在服务器上面先以分析工具将所有的RPM档案进行分析,然后将该分析纪录下来,只要在进行安装或升级时先查询该纪录的文件,就可以知道所有相关联的软件。所以YUM的基本工作流程如下:
服务器端:在服务器上面存放了所有的RPM软件包,然后以相关的功能去分析每个RPM文件的依赖性关系,将这些数据记录成文件存放在服务器的某特定目录内。
客户端:如果需要安装某个软件时,先下载服务器上面记录的依赖性关系文件(可通过WWW或FTP方式),通过对服务器端下载的纪录数据进行分析,然后取得所有相关的软件,一次全部下载下来进行安装。
vi/etc/yum.conf
[main]
cachedir=/var/cache/yum
#cachedir:yum缓存的目录,yum在此存储下载的rpm包和数据库,一般是/var/cache/yum。
debuglevel=2
#debuglevel:除错级别,0──10,默认是2貌似只记录安装和删除记录
logfile=/var/log/yum.log
pkgpolicy=newest
#pkgpolicy:包的策略。一共有两个选项,newest和last,这个作用是如果你设置了多个repository,而同一软件在不同的repository中同时存在,yum应该安装哪一个,如果是newest,则yum会安装最新的那个版本。如果是last,则yum会将服务器id以字母表排序,并选择最后的那个服务器上的软件安装。一般都是选newest。
distroverpkg=centos-release
#指定一个软件包,yum会根据这个包判断你的发行版本,默认是redhat-release,也可以是安装的任何针对自己发行版的rpm包。
tolerant=1
#tolerent,也有1和0两个选项,表示yum是否容忍命令行发生与软件包有关的错误,比如你要安装1,2,3三个包,而其中3此前已经安装了,如果你设为1,则yum不会出现错误信息。默认是0。
exactarch=1
#exactarch,有两个选项1和0,代表是否只升级和你安装软件包cpu体系一致的包,如果设为1,则如你安装了一个i386的rpm,则yum不会用1686的包来升级。
retries=20
#retries,网络连接发生错误后的重试次数,如果设为0,则会无限重试。
obsoletes=1
gpgcheck=1
#gpgchkeck=有1和0两个选择,分别代表是否是否进行gpg校验,如果没有这一项,默认是检查的。
reposdir=/etc/yy.rm#默认是/etc/yum.repos.d/低下的 xx.repo后缀文件
#默认都会被include进来也就是说/etc/yum.repos.d/xx.repo无论配置文件有多少个每个里面有多少个[name]最后其实都被整合到一个里面看就是了重复的[name]后面的覆盖前面的
exclude=xxx
#exclude排除某些软件在升级名单之外,可以用通配符,列表中各个项目要用空格隔开,这个对于安装了诸如美化包,中文补丁的朋友特别有用。
keepcache=[1 or 0]
#设置 keepcache=1,yum在成功安装软件包之后保留缓存的头文件(headers)和软件包。默认值为 keepcache=0不保存
reposdir=[包含.repo文件的目录的绝对路径]
#该选项用户指定.repo文件的绝对路径。.repo文件包含软件仓库的信息(作用与/etc/yum.conf文件中的 [repository]片段相同)。
第二部分:
vi/etc/yum.repo.d/xx.repo
这个字段其实也可以在yum.conf里面直接配置
[serverid]
#其中serverid是用于区别各个不同的repository,必须有一个独一无二的名称。重复了前面覆盖后面--还是反过来呢???用enabled测试是后面覆盖前面
name=Some name for this server
#name,是对repository的描述,支持像$releasever$basearch这样的变量; name=Fedora Core$releasever-$basearch- Released Updates
baseurl=url://path/to/repository/
#baseurl是服务器设置中最重要的部分,只有设置正确,才能从上面获取软件。它的格式是:
baseurl=url://server1/path/to/repository/
url://server2/path/to/repository/
url://server3/path/to/repository/
#其中url支持的协议有 http:// ftp:// file://三种。baseurl后可以跟多个url,你可以自己改为速度比较快的镜像站,但baseurl只能有一个,也就是说不能像如下格式:
baseurl=url://server1/path/to/repository/
baseurl=url://server2/path/to/repository/
baseurl=url://server3/path/to/repository/
其中url指向的目录必须是这个repository header目录的上一级,它也支持$releasever$basearch这样的变量。
#mirrorlist=$releasever&arch=$basearch
#上面的这一行是指定一个镜像服务器的地址列表,通常是开启的,本例中加了注释符号禁用了,我们可以试试,将$releasever和$basearch替换成自己对应的版本和架构,例如10和i386,在浏览器中打开,我们就能看到一长串镜可用的镜像服务器地址列表。
url之后可以加上多个选项,如gpgcheck、exclude、failovermethod等,比如:
gpgcheck=1
exclude=gaim
#其中gpgcheck,exclude的含义和[main]部分相同,但只对此服务器起作用,
failovermethod=priority
#failovermethode有两个选项roundrobin和priority,意思分别是有多个url可供选择时,yum选择的次序,roundrobin是随机选择,如果连接失败则使用下一个,依次循环,priority则根据url的次序从第一个开始。如果不指明,默认是roundrobin。
enabled=[1 or 0]
#当某个软件仓库被配置成 enabled=0时,yum在安装或升级软件包时不会将该仓库做为软件包提供源。使用这个选项,可以启用或禁用软件仓库。
#通过 yum的--enablerepo=[repo_name]和--disablerepo=[repo_name]选项,或者通过 PackageKit的"添加/删除软件"工具,也能够方便地启用和禁用指定的软件仓库
几个变量
$releasever,发行版的版本,从[main]部分的distroverpkg获取,如果没有,则根据redhat-release包进行判断。
$arch,cpu体系,如i686,athlon等
$basearch,cpu的基本体系组,如i686和athlon同属i386,alpha和alphaev6同属alpha。
对yum.conf设定完成,我们就可以好好体验yum带来的方便了。
还有一件事没有做。那就是导入每个reposity的GPG key,前面说过,yum可以使用gpg对包进行校验,确保下载包的完整性,所以我们先要到各个repository站点找到gpg key,一般都会放在首页的醒目位置,一些名字诸如 RPM-GPG-KEY.txt之类的纯文本文件,把它们下载,然后用rpm--import xxx.txt命令将它们导入,最好把发行版自带GPG-KEY也导入,rpm--import/usr/share/doc/redhat-release-*/RPM-GPG-KEY官方软件升级用的上。
参考:
centos7yum报错解决方法
在centos7中运行yum时,若出现“There are no enabled repos.”提示,表示已启用的仓库列表为空。首先,可执行命令“yum repolist all”查看现有仓库,确定是否有需要的仓库存在。
若需要启用Red Hat订阅管理仓库,使用命令“subscription-manager repos--enable”进行启用。如果是为了启用自定义仓库,则执行“yum-config-manager--enable”。
若以上方法无法解决问题,尝试安装yum-utils工具:执行命令“yum-y install yum-utils”。若yum源未配置正确,可以替换yum源,方法如下:首先将原配置文件备份,命令为“mv/etc/yum.repos.d/CentOS-Base.repo/etc/yum.repos.d/CentOS-Base.repo.backup”,然后下载并替换配置文件,使用wget或curl命令从指定源下载新的配置文件到“/etc/yum.repos.d/CentOS-Base.repo”路径下。