Description of problem: Installing RHEL5.2-Server-Supplementary as a yum repo during anaconda installation hilights a possible dependency issue with libelf. Version-Release number of selected component (if applicable): libspe2-2.2.80.95-1.el5 How reproducible: 100% Steps to Reproduce: 1. Start installation of RHEL5.2-Server-20080430.0/ppc 2. Use kickstart while specifying a repo for http://porkchop.redhat.com/rel-eng/RHEL5.2-Server-Supplementary-20080501.0/5/ppc/os 3. Specify all Supplementary packages in the kickstart %packages Actual results: Installing elfspe2 - 2.2.80.95-1.el5.ppc /usr/bin/elfspe-register: line 6: /proc/sys/fs/binfmt_misc/register: No such file or directory error: %post(elfspe2-2.2.80.95-1.el5.ppc) scriptlet failed, exit status 1 Expected results: - All supplementary packages install without dependency issues Additional info: - kickstart used - http://hank.test.redhat.com/autotest/testcases/rel-eng_RHEL5.2-Server-20080430.0_5-ppc/supplementary-install-via-ks-distill-rel-eng_RHEL5.2-Server-Su-distill-_base-english-nfs-VNC/ks.cfg - full install.log showing package installation order - http://hank.test.redhat.com/autotest/testcases/rel-eng_RHEL5.2-Server-20080430.0_5-ppc/supplementary-install-via-ks-distill-rel-eng_RHEL5.2-Server-Su-distill-_base-english-nfs-VNC/anamon/install.log
It appears the %script of elfspe2 attempts to tickle something in /proc/sys/fs/binfmt_misc. I guess possible solutions might be: 1) elfspe2 %script should conditionally touch /proc/sys/fs/binfmt_misc only if present --- /tmp/libspe2.new 2008-05-02 11:07:46.000000000 -0400 +++ /tmp/libspe2.spec 2008-05-02 11:06:50.000000000 -0400 @@ -115,7 +115,7 @@ %post -n elfspe2 [ -f %{_initdir}/elfspe ] && /sbin/chkconfig --add elfspe -[ -f %{_bindir}/elfspe-register -a -d /proc/sys/fs/binfmt_misc ] && %{_bindir}/elfspe-register +[ -f %{_bindir}/elfspe-register ] && %{_bindir}/elfspe-register %endif %files or 2) anaconda should mount /proc/sys/fs/binfmt_misc during install? diff --git a/loader2/init.c b/loader2/init.c index 062e001..973f476 100644 --- a/loader2/init.c +++ b/loader2/init.c @@ -616,6 +616,12 @@ int main(int argc, char **argv) { if (mount("/sys", "/sys", "sysfs", 0, NULL)) fatal_error(1); } + + printf("mounting /proc/sys/fs/binfmt_misc filesystem... "); + if (!testing) { + if (mount("/proc/sys/fs/binfmt_misc", "none", "binfmt_misc", 0, NULL)) + fatal_error(1); + } printf("done\n"); /* these args are only for testing from commandline */ Adding clumens from anaconda-devel for his thoughts on the anaconda portion.
#1 is vastly more preferable - there's no reason for the packages to expect that they're being installed on a live running system.
This request was evaluated by Red Hat Product Management for inclusion in a Red Hat Enterprise Linux maintenance release. Product Management has requested further review of this request by Red Hat Engineering, for potential inclusion in a Red Hat Enterprise Linux Update release for currently deployed products. This request is not yet committed for inclusion in an Update release.
Failing with elfspe2 package: Installing elfspe2-2.2.80.121-2.el5.ppc /usr/bin/elfspe-register: line 6: /proc/sys/fs/binfmt_misc/register: No such file or directory error: %post(elfspe2-2.2.80.121-2.el5.ppc) scriptlet failed, exit status 1 Petr, do you need another bug open for that ?
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2009-0150.html