我正在尝试制作一个带有本地存储库/目录的USB磁盘,用于
Linux服务器的离线安装(或升级).为什么!
很简单,我正在维护庞大的星号IP PBX-es集群,asterisk(和dahdi,和……)是针对内核源代码构建的,如果内核版本发生了变化(不同于我习惯的那个)然后,这是一场等待发生的灾难.现在,我的想法是将所有rpm / srpm安装在一台服务器(开发)上,并将所有其他服务器安装/升级到相同版本的rpm.
简单的方法是强制YUM将所有已安装的rpm下载到某个目录,然后将它们复制到usb-flash_disk并在所有其他服务器上执行“yum install ./*.rpm”!那么我的所有系统都在相同的版本!
很简单,我正在维护庞大的星号IP PBX-es集群,asterisk(和dahdi,和……)是针对内核源代码构建的,如果内核版本发生了变化(不同于我习惯的那个)然后,这是一场等待发生的灾难.现在,我的想法是将所有rpm / srpm安装在一台服务器(开发)上,并将所有其他服务器安装/升级到相同版本的rpm.
简单的方法是强制YUM将所有已安装的rpm下载到某个目录,然后将它们复制到usb-flash_disk并在所有其他服务器上执行“yum install ./*.rpm”!那么我的所有系统都在相同的版本!
问题是:如何告诉YUM(仅)下载所有安装的rpm?
有2个选项
使用rpm(Red Hat Package Manager)或yum(Yellowdog Updater / Modifier)
1)RPM
rpm -qa > to_be_installed; while read -r package; do yum -y install "$package"; done < to_be_installed
2)YUM
yum list installed | awk '{print $1}' > to_be_installed; while read -r line; do yum -y install "$line"; done < to_be_installed
希望这能为您提供一些如何做到这一点的想法.