Bug 2854 - HD 64-bit installs can't find Core32 media
Summary: HD 64-bit installs can't find Core32 media
Status: NEW
Alias: None
Product: Mageia
Classification: Unclassified
Component: Installer (show other bugs)
Version: Cauldron
Hardware: x86_64 Linux
Priority: Normal major
Target Milestone: ---
Assignee: Thierry Vignaud
QA Contact:
URL:
Whiteboard: 5beta1
Keywords: NEEDINFO
Depends on:
Blocks:
 
Reported: 2011-09-27 19:31 CEST by Frank Griffin
Modified: 2019-09-08 14:35 CEST (History)
3 users (show)

See Also:
Source RPM: drakx-installer-stage2
CVE:
Status comment:


Attachments
report.bug (142.59 KB, text/plain)
2011-09-27 20:38 CEST, Frank Griffin
Details

Description Frank Griffin 2011-09-27 19:31:56 CEST
Related to https://bugs.mageia.org/show_bug.cgi?id=2577

Attempting a 64-bit Hard Disk install fails during stage 2 (Package Selection) trying to access the Core32 repository.

This happens whether the directory you give is the distro root or the x86_64 directory.

The VC 3 log is misleading, since it contains references to /tmp/media/xxxx files that would lead you to assume that either the i586 or x86_64 directory was mounted at /tmp/media, even if it's the distro root that's mounted there, but the messages containing these paths say that it found the files it was looking for.

In any case, 64-bit HD installs are impossible, which is a real cramp if you want to do one on the machine that houses your local distro mirror.

These aspects of 64-bit installs have been broken for years on MDV and now in Mageia.  As very few i586 machines are still around in the hands of people who keep a local mirror, this means that most install methods are unusable.

Marking this as major, since the only 64-bit install against a full copy of the distro that works is HTTP.
Comment 1 Frank Griffin 2011-09-27 19:36:06 CEST
report.bug.gz will be along shortly.
Manuel Hiebel 2011-09-27 19:45:21 CEST

Assignee: bugsquad => thierry.vignaud

Comment 2 Frank Griffin 2011-09-27 20:38:25 CEST
Created attachment 847 [details]
report.bug
Manuel Hiebel 2011-10-11 21:18:28 CEST

Source RPM: (none) => drakx-installer-stage2

Comment 3 Manuel Hiebel 2011-12-14 14:06:28 CET
Iirc I have see the same (with the http one)

as workaround you can only add the file used by urpmi/drakx-install, it's something like 300Mo

rsync -avPHS --partial --delete-after --exclude=media/debug --exclude='*.rpm' rsync://.../mirror/mageia/distrib/cauldron/i586 /media/.../pub/cauldron/

maybe there is a easiest way but I don't know :)
Comment 4 Frank Griffin 2011-12-14 14:37:02 CET
Thanks, but since I rsync the HD directory tree with the real mirror, this would have to be done on an ongoing basis every time I updated (which is several times a day).

You're right, HTTP has a similar problem (and its own open bug report).  This has been like this for years, and really ought to be fixed across the board.
Comment 5 Marja Van Waes 2012-05-09 15:34:47 CEST
3-monthly ping

CC: (none) => marja11

Comment 6 Marja Van Waes 2012-05-26 13:03:25 CEST
Hi,

This bug was filed against cauldron, but we do not have cauldron at the moment.

Please report whether this bug is still valid for Mageia 2.

Thanks :)

Cheers,
marja

Keywords: (none) => NEEDINFO

Frank Griffin 2012-06-12 21:34:26 CEST

Keywords: NEEDINFO => (none)
Whiteboard: (none) => MGA2TOO

Comment 7 Manuel Hiebel 2012-06-12 21:40:16 CEST
Franck are you sure this bug is still valid ?
Comment 8 Marja Van Waes 2012-07-06 15:04:33 CEST
Please look at the bottom of this mail to see whether you're the assignee of this  bug, if you don't already know whether you are.


If you're the assignee:

We'd like to know for sure whether this bug was assigned correctly. Please change status to ASSIGNED if it is, or put OK on the whiteboard instead.

If you don't have a clue and don't see a way to find out, then please put NEEDHELP on the whiteboard.

Please assign back to Bug Squad or to the correct person to solve this bug if we were wrong to assign it to you, and explain why.

Thanks :)

**************************** 

@ the reporter and persons in the cc of this bug:

If you have any new information that wasn't given before (like this bug being valid for another version of Mageia, too, or it being solved) please tell us.

@ the reporter of this bug

If you didn't reply yet to a request for more information, please do so within two weeks from now.

Thanks all :-D
Comment 9 Frank Griffin 2014-03-03 18:57:56 CET
Somehow missed the later posts on this.  I'll retest.
Comment 10 Dick Gevers 2014-11-25 12:38:00 CET
@ftg@roadrunner.com:

May I remind you of your #c9 reading ?

> Somehow missed the later posts on this.  I'll retest.

Keywords: (none) => NEEDINFO

Comment 11 Dick Gevers 2014-11-25 12:46:25 CET
@ftg:
Probably a dupe of your #2577 ?
Comment 12 Frank Griffin 2014-11-25 12:57:44 CET
Not a dupe, as this concerns an HD install rather than an NFS install.  I was given to understand that these cases were all handled separately.

I'll retest.
Comment 13 Dick Gevers 2014-11-25 14:00:11 CET
Aha! Clear. Thanks!
Comment 14 Frank Griffin 2014-11-25 17:42:40 CET
Problem still exists in cauldron.

Keywords: NEEDINFO => (none)
Whiteboard: MGA2TOO => 5Beta 1

Comment 15 Dick Gevers 2014-11-25 17:49:01 CET
Much obliged.

Whiteboard: 5Beta 1 => 5beta1

Comment 16 Pascal Terjan 2015-08-18 05:05:03 CEST
I had a look at the logs.
/tmp/media is where the partition is mounted, but then it creates /tmp/image and installs from there and /tmp/image seems to point to /tmp/media/x86_64.

There is some code to replace the path in adjust_paths_in_urpmi_cfg:

        } elsif (member($phys_m->{method}, qw(disk nfs))) {
            # use the real mount point:
            if ($medium->{url} =~ m!/tmp/image(/media)?!) {
                $medium->{url} =~ s!/tmp/image(/media).!$phys_m->{mntpoint}$phys_m->{rel_path}!;
            } else {
                # just remove $::prefix and we already have the real mount point:
                $medium->{url} =~ s!^$::prefix!!;
            }
        }

But this is too late as the addmedia was done with the wrong path and failed so we don't reach that place.

The solution may be in _get_media_url:

        $uri = $o->{stage2_phys_medium}{url} =~ m!^(http|ftp)://! && $o->{stage2_phys_medium}{url} ||
          $phys_medium->{method} =~ m!^(ftp|http)://! && $phys_medium->{method} || '/tmp/image';


Instead of using /tmp/image when it is not http or ftp install, we could use "$phys_medium->{mntpoint}$phys_medium->{rel_path}".

Something like:

$uri = '/tmp/image';
if ($o->{stage2_phys_medium}{url} =~ m!^(ftp|http)://) {
  $uri = $o->{stage2_phys_medium}{url};
} elsif ($phys_medium->{method} =~ m!^(ftp|http)://!) {
  # This one is strange, why would method be an URL? 
  $uri = $phys_medium->{method};
} elsif (member($phys_medium->{method}, qw(disk nfs))) {
  # use the real mount point:
  $uri = "$phys_medium->{mntpoint}$phys_medium->{rel_path}";
} else {
  $uri = '/tmp/image';
}

Another simpler change would be to expand the symlink into an absolute path at the end of _get_media_url (if it is a symlink).

CC: (none) => pterjan

Comment 17 Frank Griffin 2015-11-03 03:20:09 CET
Ping ?
Comment 18 Marja Van Waes 2016-01-03 09:51:54 CET
@ Frank

Is the _impossible_ in the summary of this bug still correct "HD 64-bit installs impossible - can't find Core32" ?

For my 64bit boot.iso installs from a mirror on a local disk - I only started doing that around 2013, so after this report was filed -, the 32bit media weren't found, either. However, afaik install always continued and finished fine (unless there was a different reason for it to fail).
Comment 19 Thomas Backlund 2016-01-03 11:25:15 CET
Thierry, 

what about adding the "ok_if_missing" media flag handling to urpmi.addmedia we discussed earlier
(end we would need to add the same to mga5 too for upgrades to work...)

CC: (none) => tmb

Comment 20 Frank Griffin 2016-01-04 13:46:00 CET
(In reply to Marja van Waes from comment #18)
> @ Frank
> 
> Is the _impossible_ in the summary of this bug still correct "HD 64-bit
> installs impossible - can't find Core32" ?
> 
> For my 64bit boot.iso installs from a mirror on a local disk - I only
> started doing that around 2013, so after this report was filed -, the 32bit
> media weren't found, either. However, afaik install always continued and
> finished fine (unless there was a different reason for it to fail).

I can't retest at the moment as stage 1 seems to be broken, but my recollection is that clicking OK to the error popup drops you back to repository selection.
Comment 21 Thierry Vignaud 2016-06-17 15:21:05 CEST
I don't think it's currently impossible: for now you should get a popup but it should still go on

Keywords: (none) => NEEDINFO

Comment 22 Frank Griffin 2016-06-20 20:52:13 CEST
I'll test this in the next few days.  The problem is that my cauldron mirror is now on my fileserver and gets accessed for most installs via HTTP.  The only way to test an HD install is to take the fileserver down and run the install to a spare partition on that.
Comment 23 Frank Griffin 2019-02-20 00:32:12 CET
Just catching up with this....
Comment 24 Frank Griffin 2019-09-08 14:34:07 CEST
The situation in current cauldron is that a 64-bit HD install will still get the errors about not finding the 32-bit repositories, but will continue anyway without them.  IIRC they are greyed out in the media selection panel, or if they aren't then selecting them gets the error.  In any case, they aren't enabled in the final system.
Frank Griffin 2019-09-08 14:35:11 CEST

Summary: HD 64-bit installs impossible - can't find Core32 => HD 64-bit installs can't find Core32 media


Note You need to log in before you can comment on or make changes to this bug.