yum如果备份已经安装的软件?

发布于:2025-04-22 ⋅ 阅读:(11) ⋅ 点赞:(0)

在 CentOS 系统中,你可以通过以下步骤将 yum 下载的组件打包备份到本地:


方法 1:使用 yumdownloader 直接下载 RPM 包

1. 安装 yum-utils 工具
yum install -y yum-utils
2. 下载指定软件包及其依赖
yumdownloader --resolve <package-name>
  • 示例:下载 nginx 及其所有依赖包
    yumdownloader --resolve nginx
    
  • 默认下载到当前目录,可通过 --destdir 指定保存路径:
    yumdownloader --resolve --destdir=/path/to/save <package-name>
    

方法 2:使用 yumdownloadonly 插件

1. 安装 downloadonly 插件(如果未安装)
yum install -y yum-plugin-downloadonly
2. 下载软件包及依赖(不安装)
yum install --downloadonly --downloaddir=/path/to/save <package-name>
  • 示例:下载 vim/backup/rpms 目录
    yum install --downloadonly --downloaddir=/backup/rpms vim
    

方法 3:备份已安装的软件包

如果软件包已经安装,可以通过以下步骤重新下载并备份:

yum reinstall --downloadonly --downloaddir=/path/to/save <package-name>

补充操作

1. 备份所有已安装的软件包列表
rpm -qa > installed_packages.list

将此列表保存,后续恢复时可用。

2. 批量备份所有已安装软件包
yum reinstall --downloadonly --downloaddir=/backup/rpms $(rpm -qa)
3. 打包备份目录
tar -czvf yum_backup.tar.gz /path/to/save

恢复备份的 RPM 包

  1. 将备份的 RPM 包复制到目标机器。
  2. 使用以下命令安装本地 RPM:
yum localinstall /path/to/*.rpm

或直接使用 rpm

rpm -ivh /path/to/*.rpm

高级:创建本地 YUM 仓库

  1. 将备份的 RPM 包放到一个目录(如 /backup/rpms)。
  2. 安装 createrepo 工具:
yum install -y createrepo
  1. 生成仓库元数据:
createrepo /backup/rpms
  1. 创建本地仓库配置文件:
cat > /etc/yum.repos.d/local.repo <<EOF
[local-backup]
name=Local Backup Repository
baseurl=file:///backup/rpms
enabled=1
gpgcheck=0
EOF
  1. 通过 YUM 安装软件:
yum install <package-name>

注意事项

  • 依赖完整性:确保使用 --resolve--downloadonly 参数下载所有依赖。
  • 离线环境:备份时需选择与目标系统版本一致的软件包(如 CentOS 7 和 8 的 RPM 不兼容)。
  • 存储空间:备份前检查磁盘空间是否充足。

通过以上方法,你可以轻松将 CentOS 的 YUM 组件备份到本地,并在需要时快速恢复或迁移到其他机器。


网站公告

今日签到

点亮在社区的每一天
去签到