作者:时间熔金-岁月铅华_758 | 来源:互联网 | 2023-02-05 17:30
我正在使用centos 7.在一些测试中,我不小心删除了yum.repo.d中的所有文件.有没有办法,下载和配置centos 7中的所有基本回购
1> iamauser..:
假设您正在运行CentOS-7.3,您可以通过以下方式获取repo文件,
# ReInstall the centos-release rpm
~]# rpm -Uvh --force \
http://mirror.centos.org/centos-7/7/os/x86_64/Packages/centos-release-7-3.1611.el7.centos.x86_64.rpm
# Clean YUM cache
~]# yum clean all
# Try an update
~]# yum update
centos-release
RPM包含所有repo文件,
~]# rpm -qlp \
http://mirror.centos.org/centos-7/7/os/x86_64/Packages/centos-release-7-3.1611.el7.centos.x86_64.rpm 2>/dev/null | grep repo
/etc/yum.repos.d/CentOS-Base.repo
/etc/yum.repos.d/CentOS-CR.repo
/etc/yum.repos.d/CentOS-Debuginfo.repo
/etc/yum.repos.d/CentOS-Media.repo
/etc/yum.repos.d/CentOS-Sources.repo
/etc/yum.repos.d/CentOS-Vault.repo
/etc/yum.repos.d/CentOS-fasttrack.repo
请注意,旧版本并不总是在同一个URL中.他们被转移到vault.centos.org.
2> ecwpz91..:
#!/bin/bash
install-centos-release() {
releasever="$(rpm -q --qf '%{VERSION}' "$(rpm -q --whatprovides centos-release)")" \
&& releasever="$(printf "%s" "$releasever" | sed -e 's/\..*$//g')" \
&& basearch="$(uname -m)" \
&& reposurl=$(printf "%s" "http://mirror.centos.org/centos/$releasever/os/$basearch/Packages/") \
&& releaserpm=$(curl --silent "$reposurl" | grep -oP '(?<=")centos-release.*.rpm(?=")') \
&& releaseuri=$(printf "%s%s" "$reposurl" "$releaserpm") \
&& rpm -Uvh --force "$releaseuri"
}
用法:
# Either launch a new terminal and copy `install-centos-release` into the current shell process,
# or create a shell script and add it to the PATH to enable command invocation with bash.
install-centos-release
# Refresh YUM repository(ies)
yum clean all
yum -y update