我想为rhel 5和6设置本地回购。可以在1台服务器上完成,还是每个主要版本都需要一台服务器?
我们与RH有合法的合法订阅,但是我们不愿意为RH卫星付费。
您可以在EL6盒子上构buildEL5包装,但问题是EL6具有较新版本的RPM,用于写入与EL5附带的RPM版本不兼容的文件。 在构build源代码包时,可以使用rpmbuild一些参数来解决这个问题,最好是在包装器脚本中。 像这样的事情会导致rpmbuild使用旧的格式:
#!/bin/bash # Assumes you have an RPM environment set up in ~/rpmbuild using rpmdev-setuptree # Argument 1: a spec file in ~/rpmbuild/SPECS # Build the EL6 SRPM rpmbuild -bs $1 # Build the EL5 SRPM rpmbuild \ --define "_source_filedigest_algorithm 1" \ --define "_binary_filedigest_algorithm 1" \ --define "_binary_payload w9.gzdio" \ --define="dist .el5" \ --define="el5 1" \ $1
一旦build立了SRPM,你就可以分别在EL5和EL6 SRPM上运行mock :
for el in 5 6; do for package in ~/rpmbuild/SRPMS/*.el{$el}.src.rpm; do for arch in x86_64 i386; do mock -r epel-{$el}-{$arch} $package done done done