This may also need to be cross filed against kernel ... ======================================================== Doing an Upgrade from 6.1 to 7.1B2, the upgrade died about 60% through the upgrade, seemingly due to an uncorrectible media error with the MM media. Kernel 2.4.0-0.43-12 had been 'upgraded', and as part of the upgrade had "rpm -e oldkernel". This of course removed the old /lib/modules/* tree. It had NOT done the mkinitrd for the new kernel; this of course requires the presence of a loop device. (loop driver is present with the upgrade .img, but was unavailable becuase of the irrecoverable media error -- I could not get to console 2.) As such, when I rebooted (the old kernel) in recovery, I was unable to insmod loop, and walk it through the mkinitrd, and use lilo to recover. COMPOUNDING this, the module drivers needed had been prematurely removed. ---------------------------- This was discussed on tester's list, but seems not to have been RFE'd formally. As part of postinst, an immediate (at tome of kernel transfer) four stepprocess is needed: 1. ADD, as with an RPM -i a new kernel, and set is as the "lilo.conf" 'default'; spawn out to mkinitrd, and build /boot/initrd-xxx.img, and using links, link it is as '/boot/initrd-default.img' [2. option for extra credit -- run mkbootdisk, and save at: /boot/recoverydisk-xxx.img; link it as well as: '/bootrecoverydisk-default.img ] 3. RUN lilo, and recover from errors, as needed. 4. THEN and only then rpm -e the old kernel, and re-fixup lilo.conf -- re-run lilo again with error recovery as needed. -------------- Link updating logic as needed in /boot/*
We'd have to completely rework RPM to allow this.