一、准备工作
获取安装介质:
 如果你有CentOS的安装ISO文件或DVD介质,可以直接使用它来设置本地yum源。
 如果没有,你需要在一个有网络连接的CentOS系统上下载所需的rpm包和依赖。
 创建挂载点(如果你使用的是ISO文件):
 在你的CentOS系统上,创建一个挂载点,例如/mnt/yum。
 使用mount命令将ISO文件挂载到这个挂载点上。
二、下载rpm包及其依赖
在另一台有网络连接的CentOS系统上,你可以使用以下方法来下载yum及其依赖的rpm包:
使用yum的downloadonly插件:
 安装yum-plugin-downloadonly插件(如果尚未安装):
 bash
 yum -y install yum-plugin-downloadonly
 使用yum install --downloadonly --downloaddir=<目录> <包名>命令下载yum及其依赖的rpm包。例如:
 bash
 yum install --downloadonly --downloaddir=/path/to/yum-rpms yum
 注意:这个命令只会下载yum包及其直接依赖,而不会下载所有间接依赖。
 使用repotrack工具(更全面地下载依赖):
 安装yum-utils包(如果尚未安装),它包含了repotrack工具:
yum -y install yum-utils
使用repotrack命令下载yum及其所有依赖的rpm包。例如:
repotrack yum -p /opt/yum-rpms
这个命令会下载yum包及其所有依赖到指定的目录。
三、传输rpm包到离线系统
将下载的rpm包及其依赖通过USB驱动器、移动硬盘或其他介质传输到你的CentOS离线系统上。
四、安装yum及其依赖
创建本地yum仓库(可选):
 将rpm包复制到一个目录中,例如/var/local/yum。
 使用createrepo命令在这个目录中创建一个本地yum仓库:
createrepo /var/local/yum
编辑yum配置文件:
 创建一个新的yum仓库配置文件,例如/etc/yum.repos.d/local.repo。
 在该文件中添加你的本地仓库信息,包括仓库的ID、名称、基础URL(指向你的rpm包目录)以及是否启用GPG检查等。
 安装yum及其依赖:
 使用yum命令从你的本地仓库安装yum包。但是,由于此时yum可能尚未安装或配置不正确,你可能需要使用rpm命令直接安装rpm包:
rpm -ivh /opt/yum-rpms/*.rpm --nodeps --force
注意:–nodeps和–force选项会忽略依赖关系并强制安装,这可能会导致问题,因此请确保你已经下载了所有必要的依赖包。
 五、验证和配置
 安装完成后,使用yum check-update命令验证yum是否正常工作。
 根据需要配置yum仓库和其他相关设置。
 请注意,上述步骤可能因你的CentOS版本和具体配置而有所不同。此外,直接使用rpm命令安装yum可能会绕过一些重要的依赖检查和配置步骤,因此请务必小心操作,并确保你了解每一步的含义和潜在影响。如果可能的话,最好在一个测试环境中先进行操作。
五、配置yum镜像源
配置yum镜像源通常涉及以下步骤:
备份原有的yum配置文件:
 在进行任何操作之前,首先需要备份原有的CentOS官方源配置文件,以便在出现问题时可以恢复到原有状态。配置文件通常位于/etc/yum.repos.d/目录下,名为CentOS-Base.repo。
sudo cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
下载镜像源的yum配置文件:
 使用wget命令或手动下载镜像源提供的yum配置文件,并将其保存到/etc/yum.repos.d/目录下。例如,要配置阿里云的yum镜像源,可以执行以下命令:
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
注意:镜像源的配置文件可能会随着版本更新而发生变化,请确保下载的是最新版本的文件。
替换原有的yum配置文件(如果需要):
 如果下载的是新的yum配置文件,并且希望直接使用它,可以将原有的CentOS-Base.repo文件替换为新下载的文件。但请注意,这一步不是必需的,因为你可以直接在原文件中修改baseurl等配置项。
 编辑yum配置文件(如果需要):
 如果你选择直接在原文件中修改,可以使用文本编辑器(如vi、nano等)打开CentOS-Base.repo文件,并找到相关的仓库配置段(如[base]、[updates]等),将其中的baseurl行替换为镜像站点提供的地址。
 清除yum缓存并重新生成缓存:
 在修改完yum配置文件后,需要清除yum的缓存并重新生成缓存,以确保系统能够识别并使用新的镜像源。
sudo yum clean all  
sudo yum makecache
验证配置:
 通过执行yum repolist命令来验证yum源是否配置成功。如果命令输出显示了你所配置的镜像源,并且包的数量不为0,则表示配置成功。
使用yum update更新yum
yum repolistyum update
六、yum命令
yum是CentOS(以及其他基于RPM的Linux发行版)中用于管理软件包的强大工具。它提供了安装、更新、删除软件包以及管理仓库等功能。以下是一些yum的常用命令及其说明:
- 安装软件包
 yum install [package_name]:安装一个或多个指定的软件包。如果加上-y参数,则会自动回答所有提示为“yes”,无需人工干预。
- 卸载软件包
 yum remove [package_name]:从系统中移除一个或多个软件包。同样,-y参数可以用于自动回答提示。
 yum groupremove [group_name]:从系统中移除一个软件包组。
- 更新软件包
 yum update:更新系统中所有已安装的软件包到最新版本。
 yum update [package_name]:更新指定的软件包到最新版本。
 yum upgrade [package_name]:与update类似,但会考虑软件包之间的取代关系。
 yum check-update:检查系统中是否有软件包可以更新,但不执行更新操作。
- 显示软件包信息
 yum info [package_name]:显示指定软件包的详细信息。
 yum list:列出所有已安装和可安装的软件包。可以结合管道符和grep命令来过滤输出。
 yum list installed:仅列出所有已安装的软件包。
 yum list updates:仅列出所有可更新的软件包。
 yum groupinfo [group_name]:显示指定软件包组的详细信息。
- 搜索软件包
 yum search [keyword]:根据关键字搜索软件包。
 yum provides [filename]:查找提供指定文件的软件包。这对于不知道文件属于哪个包时特别有用。
- 管理yum仓库
 yum repolist:显示已配置的仓库及其状态。
 yum list available --repoid=[repo_id]:列出指定仓库中所有可安装的软件包。
- 清空缓存
 yum clean packages:清除缓存目录下的软件包。
 yum clean headers:清除缓存目录下的headers。
 yum clean oldheaders:清除缓存目录下旧的headers。
 yum clean all 或 yum clean:清除缓存目录下的所有内容,包括软件包和headers。
- 其他常用命令
 yum reinstall [package_name]:重新安装指定的软件包。
 yum deplist [package_name]:列出指定软件包的依赖关系。
 yum localinstall [local_rpm_file]:安装本地的rpm软件包,同时解决依赖关系。
 这些命令是yum在CentOS(及其他基于RPM的Linux发行版)中最常用的功能之一,它们提供了强大的软件包管理能力,使得系统管理员和用户能够轻松地安装、更新、删除和管理软件包。
常用的yum包
#安装wget
yum install -y wget
#安装yum-utils
yum -y install yum-utils#安装netstat(作用查询端口号是否占用:netstat -tunlp | grep 端口号):
yum install net-tools -y
#安装wget(作用wget访问:wget 下载路径)
#yum -y install wget
#安装lsof(作用也是查端口:lsof -i:端口号)
yum -y install lsof