Bug 4704

Summary: RedHat fails to UPGRADE from HardDisk (any -> 6.0)
Product: [Retired] Red Hat Linux Reporter: carlo
Component: installerAssignee: David Lawrence <dkl>
Status: CLOSED NOTABUG QA Contact:
Severity: high Docs Contact:
Priority: medium    
Version: 6.0   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2000-02-11 17:08:14 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description carlo 1999-08-25 17:02:24 UTC
PS I used the latest boot.img from the errata (it mentioned
   something about "fixing" a bug when upgrading from
   a partition that is also mounted, not thus).

The install program fails

(Error: Device or resource busy, when trying to mount /)

when trying to UPGRADE from a partition on your harddisk
under certain circumstances.  I have reason to believe
that these circumstance are: Using a two level mount
depth (ie: /, /usr and /usr/local on different partitions),
possibly related to the order they are listed in /etc/fstab

The actual problem is that after scanning for packages
(can't read that line very well, it disappear again
quickly, but its the first time that the screen stays
blank a few seconds), it asks again if I have SCSI (I dont)
and then (or also before?) tries to mount / while it is
*still* mounted (and fails).

Possibly, but this is only a guess, it tries to umount
in the wrong order:
First /usr, which fails because /usr/local is still
mounted, and then /usr/local and then /, which fails
because /usr is still mounted.  Anyway, / still being
mounted makes that mounting it again fails, and thus the
upgrade (you have to ALT-F2 and umount /mnt by hand;
hmm, can't remember I had to umount anything else).

There is a second problem with mounting that happens
after this (umounting manually).

I got an error: /dev/hda14 already mounted: adding symlink
followed by: Failed to add symlink: /mnt//usr/src already
exists. (These are not literally, I retype them from
my head).  The problem here is that I did put the packages
(rpms) on /usr/src/RedHat/redhat/redhat-6.0/i386/RedHat/,
which is also mounted because it is listed in /etc/fstab.
Note that /usr/src is /dev/hda14.

I am not sure if it first mounts /tmp/hdimage to hda14 and
then /usr/src, or vica versa - but when one of those
fails it tries to add a symlink which fails because
/tmp/hdimage exists as directory (and not /mnt//usr/src
if you 'd ask me, as the error says). Removing this
empty directory (/tmp/hdimage) by hand and retrying
"solves" the problem, I still had to mount everything
else again by hand then because it had umounted most
partitions again.

Hopefully this can be fixed in RedHat-7.0, although
I realize that you are not making money when people
upgrade from a harddisk partition (as opposed to the CD).

Thanks,

Carlo Wood

Comment 1 Jay Turner 2000-02-11 17:08:59 UTC
The upgrade is failing because you are pulling the source files from a partition
which is listed in your /etc/fstab, and which will possibly be needed during the
upgrade (if you are upgrading the kernel-source package, then it will need to
write to /usr/src)  Try putting the source files somewhere else and that should
fix the problem.