There has been an on going issue with installing grub on an XFS partition - anaconda will hang at the installing boot loader stage as grub 'spins'. The attached patch for 'booty' works round this problem by remounting the XFS file system that contains /boot as read-only and then as read-write before running the grub install command. This patch replaces the current XFS freeze/thaw work round that fails to work (a lot) more often than not. James Pearson
*** ./bootloaderInfo.py.dist 2005-05-11 16:41:51.000000000 +0100 --- ./bootloaderInfo.py 2005-10-06 16:45:11.719793730 +0100 *************** *** 54,71 **** isys.sync() isys.sync() ! # and xfs is even more "special" (#117968) if fsset.isValidXFS(dev): ! rhpl.executil.execWithRedirect( "/usr/sbin/xfs_freeze", ! ["/usr/sbin/xfs_freeze", "-f", mntpt], ! stdout = "/dev/tty5", ! stderr = "/dev/tty5", ! root = instRoot) ! rhpl.executil.execWithRedirect( "/usr/sbin/xfs_freeze", ! ["/usr/sbin/xfs_freeze", "-u", mntpt], ! stdout = "/dev/tty5", ! stderr = "/dev/tty5", ! root = instRoot) class BootyNoKernelWarning: def __init__ (self, value=""): --- 54,85 ---- isys.sync() isys.sync() ! # for XFS make sure the data is _really_ sync'd to disk by remounting ! # /boot first read-only and then read-write - idea from: ! # http://marc.theaimsgroup.com/?l=linux-xfs&m=112096901910385&w=2 ! # James Pearson MPC 29-sep-2005 if fsset.isValidXFS(dev): ! import _isys ! fstype = "xfs" ! device = "/dev/%s" % dev ! location = "%s%s" % (instRoot, mntpt) ! readOnly = 1 ! bindMount = 0 ! remount = 1 ! log("remounting %s on %s read-only" % (device, location)) ! # remount the boot partition as read-only ! rc = _isys.mount(fstype, device, location, readOnly, bindMount, remount) ! ! # if the remount fails, then we should really do something else e.g. ! # sleep for a few minutes? - for the time being we'll just log the ! # return ! log("remount return: %s (None == OK)" % rc) ! ! # now remount as read-write ! readOnly = 0 ! log("remounting %s on %s read-write" % (device, location)) ! rc = _isys.mount(fstype, device, location, readOnly, bindMount, remount) ! log("remount return: %s (None == OK)" % rc) class BootyNoKernelWarning: def __init__ (self, value=""):
-- fedora-devel-list mailing list fedora-devel-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/fedora-devel-list