Bug 473271

Summary: <device> not used with repo=hd:<device>:/<path> override
Product: [Fedora] Fedora Reporter: Dan Horák <dan>
Component: anacondaAssignee: Anaconda Maintenance Team <anaconda-maint-list>
Status: CLOSED DUPLICATE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: 10CC: anaconda-maint-list, covex, wwoods
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: 2008-12-11 22:44:36 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:
Attachments:
Description Flags
anaconda log
none
output of "fdisk -l /dev/sda"
none
output of "blkid -L"
none
output of "lvdisplay"
none
output of "mount" none

Description Dan Horák 2008-11-27 13:18:19 UTC
The <device> part from repo=hd:<device>:/<path> is not used correctly (or rather unused completely). I have attempted to do an upgrade from F-9 to F-10 using the preupgrade utility. It download the required packages to local yum cache and adds a boot target into grub.conf. The subsequent boot is then unsuccessful.

my config (see attachments for details):
1 disk (sda) and 2 partitions
sda1 = /boot
sda2 = LVM PV

1 VG "Linux" and 4 LVs (Swap, Root, Rawhide and Test), LV "Root" contains the F-9 installation

Comment 1 Dan Horák 2008-11-27 13:19:22 UTC
Created attachment 324877 [details]
anaconda log

Comment 2 Dan Horák 2008-11-27 13:20:01 UTC
Created attachment 324878 [details]
output of "fdisk -l /dev/sda"

Comment 3 Dan Horák 2008-11-27 13:20:25 UTC
Created attachment 324879 [details]
output of "blkid -L"

Comment 4 Dan Horák 2008-11-27 13:20:44 UTC
Created attachment 324880 [details]
output of "lvdisplay"

Comment 5 Dan Horák 2008-11-27 13:21:09 UTC
Created attachment 324881 [details]
output of "mount"

Comment 6 Chris Lumens 2008-12-02 14:52:38 UTC
Does /var/cache/yum/repodata/repomd.xml exist on your already installed system?

Comment 7 Dan Horák 2008-12-02 15:05:53 UTC
yes, it exists (on /dev/Linux/Root)

Comment 8 Andy Lindeberg 2008-12-08 21:53:15 UTC
*** Bug 475066 has been marked as a duplicate of this bug. ***

Comment 9 Will Woods 2008-12-11 22:41:33 UTC
Two things here:

1) If 'preupgrade' is on the commandline, anaconda ignores the <device> field. This is intentional. It's also not the cause of the problem. The cause of the problem is:

2) You have two Fedora installations on your system. Anaconda doesn't know which one to upgrade, since the kickstart 'upgrade' command doesn't support a "--root=XXX" argument. 

You should be able to fix this by removing the 'upgrade' line from /boot/upgrade/ks.cfg - anaconda will ask which Fedora to upgrade, and everything should proceed smoothly from there.

Comment 10 Chris Lumens 2008-12-11 22:44:36 UTC
We've got a bug tracking adding support for a root argument to upgrade, and atodorov has already filed an initial patch on anaconda-devel-list to add this support.  I expect we should have something figured out there in the next couple days.

I'll mark this as a dupe of the bug for adding that option since that's what will fix everything up here.  Once we have that support, preupgrade can just write out the correct upgrade line.

*** This bug has been marked as a duplicate of bug 471232 ***

Comment 11 Dan Horák 2008-12-12 06:50:42 UTC
Thanks for explanation and workaround.

Comment 12 Dan Horák 2008-12-12 07:39:07 UTC
So still no success - after removing the "upgrade" line from ks.cfg anaconda asks for timezone, root password and wants to setup partitioning. No question "what installation you want to upgrade". When I additionally removed the "preupgrade" option from the kernel command line, then it cannot locate the source repo (cannot find device with UUID=...). Any hints?

Comment 13 Adam Pribyl 2008-12-12 08:04:26 UTC
(In reply to comment #9)
> Two things here:
> 
> 1) If 'preupgrade' is on the commandline, anaconda ignores the <device> field.
> This is intentional. It's also not the cause of the problem. The cause of the
> problem is:
> 

What is the intention behind ignoring <device> field in preupgrade case, and why is this then filled by a preupgrade as an anaconda argument?

Comment 14 Will Woods 2008-12-12 16:30:27 UTC
(In reply to comment #13)
> (In reply to comment #9)
> > Two things here:
> > 
> > 1) If 'preupgrade' is on the commandline, anaconda ignores the <device> field.
> > This is intentional. It's also not the cause of the problem. The cause of the
> > problem is:
> > 
> 
> What is the intention behind ignoring <device> field in preupgrade case, and
> why is this then filled by a preupgrade as an anaconda argument?

The device name for "repo=hd:DEV:" is actually unnecessary for preupgrade, and could be removed. 

It turns out that when anaconda goes to find the package repo, it's already gone through the "select partition to upgrade" part of the process. So we already know where the repo is located - /mnt/sysimage/var/cache/yum/preupgrade. No need to attempt to mount the device for /var - anaconda already did that.

Comment 15 Will Woods 2008-12-12 16:32:35 UTC
(In reply to comment #12)
> So still no success - after removing the "upgrade" line from ks.cfg anaconda
> asks for timezone, root password and wants to setup partitioning. No question
> "what installation you want to upgrade". When I additionally removed the
> "preupgrade" option from the kernel command line, then it cannot locate the
> source repo (cannot find device with UUID=...). Any hints?

Maybe remove the 'ks=XXX' parameter entirely? I don't think that's going to help, though - for some reason, anaconda is not finding your previous Fedora installations. I don't know what would cause that, offhand.

Comment 16 Dan Horák 2008-12-14 16:49:53 UTC
(In reply to comment #15)
> (In reply to comment #12)
> > So still no success - after removing the "upgrade" line from ks.cfg anaconda
> > asks for timezone, root password and wants to setup partitioning. No question
> > "what installation you want to upgrade". When I additionally removed the
> > "preupgrade" option from the kernel command line, then it cannot locate the
> > source repo (cannot find device with UUID=...). Any hints?
> 
> Maybe remove the 'ks=XXX' parameter entirely? I don't think that's going to
> help, though - for some reason, anaconda is not finding your previous Fedora
> installations. I don't know what would cause that, offhand.

Removing the whole 'ks=XXX' parameter from the pregenerated kernel line helps.