Install fedora grub from cached rpm during finalise
When uninstalling grub2, leave all its dependencies including grub2-tools installed to minimise the number of packages which need to be installed in the finalise stage. Since the yum cache is unmounted during finalise, installing grub2 in finalise is slowed by re-populating the yum cache. This change copies the grub2 rpm out of the yum cache so it can be installed from file during finalise. This should prevent disk becoming full during finalise on Fedora. Closes-Bug: #1217185 Change-Id: If095adc4abb52a19a3aa0b1caebfb3e4d8f605ef
This commit is contained in:
parent
ccd7b86b60
commit
9ba761ef27
@ -2,7 +2,18 @@
|
||||
|
||||
set -e
|
||||
|
||||
yum remove -y grub2-tools
|
||||
yum remove -y grub2
|
||||
# Install grub2 dependencies to minimise packages installed during finalise.
|
||||
install-packages grub2-tools gettext os-prober system-logos
|
||||
|
||||
# Ensure grub2 rpm is in the yum cache
|
||||
install-packages -d grub2
|
||||
|
||||
# Copy grub2 rpm out of mounted yum cache for install during finalise
|
||||
mkdir /tmp/grub
|
||||
basearch=$(cat /etc/yum/vars/basearch)
|
||||
cp $(find /tmp/yum/$basearch -regex ".*/grub2-[0-9].*\.rpm") /tmp/grub
|
||||
echo "rpm -i /tmp/grub/*.rpm" > /tmp/grub/install
|
||||
|
||||
#GRUB_CFG=/boot/grub2/grub.cfg
|
||||
|
||||
|
@ -53,7 +53,12 @@ _EOF_
|
||||
|
||||
function install_grub2 {
|
||||
|
||||
# Check for offline installation of grub
|
||||
if [ -f "/tmp/grub/install" ] ; then
|
||||
source /tmp/grub/install
|
||||
else
|
||||
install-packages grub-pc
|
||||
fi
|
||||
|
||||
# XXX: grub-probe on the nbd0/loop0 device returns nothing - workaround, manually
|
||||
# specify modules. https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1073731
|
||||
|
Loading…
Reference in New Issue
Block a user