Linux 15.036 Themen, 107.107 Beiträge

Grub Mapping

alti75 / 8 Antworten / Baumansicht Nickles

Hallo Leute,

ich habe zu einer bestehende Debian/stable Installation auf der 2. HDD eine Windowspartition eingerichtet und will diese nun gerne von Grub starten lassen. Soweit ich mich recht erinnere muss dazu in der menu.lst von GRUB ein mappingeintrag gemacht werden. Also würde ich von der Tendenz jetzt hergehen und folgenden Punkt einfügen zum Windowsmenupunkt. Natürlich lasse ich mal den üblchen Rest weg ;)

.....
map (hd1)(hd0)
map (hd0)(hd1)
.....


Kann mir jemand sagen ob diese Einträge so korrekt sind ?? Ich meine vor langer Zeit hätte ich das mal so gehabt, bin mir aber nicht sicher.

Danke für die Unterstützung.

Angaben für die Festplattenverteilung:

HDD 0 = Debian/GNU LINUX
HDD 1 = Windows 2000

Es gibt 10 Arten von Menschen auf der Welt. Diejenigen welche das Binärsystem verstehen und die, die es nicht tun.
bei Antwort benachrichtigen
KarstenW alti75 „Grub Mapping“
Optionen

Eigentlich nicht, es muß nur der Eintrag chainloader +1 und makeactice bei dem entsprechenden Windowsmenü eingetragen werden:

# examples
#
title Windows 95/98/NT/2000
root (hd1,0)
makeactive
chainloader +1

makeactive macht eine primäre Partition aktiv und chainloader +1 lädt den ersten Sektor (Bootsektor) einer Partition. Aus diese Weise kann grub jedes andere Betriebsystem , einschließlich Solaris, booten.

Debian GNU/Linux https://www.debian.org/index.de.html
bei Antwort benachrichtigen
KarstenW Nachtrag zu: „Eigentlich nicht, es muß nur der Eintrag chainloader 1 und makeactice bei dem...“
Optionen

Du hast recht, Windows läßt sich nur von der ersten Festplatte booten:

http://www.gnu.org/software/grub/manual/grub.html#DOS_002fWindows

PS: Ich benutze Winodws nur noch selten, war mein Fehler :-(.

Debian GNU/Linux https://www.debian.org/index.de.html
bei Antwort benachrichtigen
KarstenW Nachtrag zu: „Du hast recht, Windows läßt sich nur von der ersten Festplatte booten:...“
Optionen

Hier steht die umgekehrte Reihenfolge:

GRUB cannot boot DOS or Windows directly, so you must chain-load them (see Chain-loading). However, their boot loaders have some critical deficiencies, so it may not work to just chain-load them. To overcome the problems, GRUB provides you with two helper functions.

If you have installed DOS (or Windows) on a non-first hard disk, you have to use the disk swapping technique, because that OS cannot boot from any disks but the first one. The workaround used in GRUB is the command map (see map), like this:

grub> map (hd0) (hd1)
grub> map (hd1) (hd0)

This performs a virtual swap between your first and second hard drive.

Caution: This is effective only if DOS (or Windows) uses BIOS to access the swapped disks. If that OS uses a special driver for the disks, this probably won't work.

Another problem arises if you installed more than one set of DOS/Windows onto one disk, because they could be confused if there are more than one primary partitions for DOS/Windows. Certainly you should avoid doing this, but there is a solution if you do want to do so. Use the partition hiding/unhiding technique.

If GRUB hides a DOS (or Windows) partition (see hide), DOS (or Windows) will ignore the partition. If GRUB unhides a DOS (or Windows) partition (see unhide), DOS (or Windows) will detect the partition. Thus, if you have installed DOS (or Windows) on the first and the second partition of the first hard disk, and you want to boot the copy on the first partition, do the following:

grub> unhide (hd0,0)
grub> hide (hd0,1)
grub> rootnoverify (hd0,0)
grub> chainloader +1
grub> makeactive
grub> boot

Debian GNU/Linux https://www.debian.org/index.de.html
bei Antwort benachrichtigen
alti75 KarstenW „Du hast recht, Windows läßt sich nur von der ersten Festplatte booten:...“
Optionen

Ja cool, danke für den Link :)

War mir doch so in Erinnerung, das man das mapping nehmen muss, denn das mit dem Chainloading hatte ja nicht den Erfolg. Also geht das nur über das BIOS swapping. Ich werde es mal editieren und mal hier berichten ob das hinhaut.

Also Danke nochmal für die schnelle Antwort

Es gibt 10 Arten von Menschen auf der Welt. Diejenigen welche das Binärsystem verstehen und die, die es nicht tun.
bei Antwort benachrichtigen
alti75 Nachtrag zu: „Grub Mapping“
Optionen

Sodala, also ich bekomme auf folgende Konfiguration immer nur Fehlermeldungen

title Windows
root (hd1,0)
map (hd0) (hd1)
map (hd1) (hd0)
makeactive
savedefault
boot

Möglicherweise wisst ihr wo sich der kleine Fehler versteckt ;)

HDD 1 Debian (master ide 1)
HDD 2 Windows (slave ide 1)

Es gibt 10 Arten von Menschen auf der Welt. Diejenigen welche das Binärsystem verstehen und die, die es nicht tun.
bei Antwort benachrichtigen
KarstenW alti75 „Sodala, also ich bekomme auf folgende Konfiguration immer nur Fehlermeldungen...“
Optionen

root (hd1,0) wäre richtig wenn du Windows wirklich von der zweiten Festplatte booten könntest. Ich nehme an das durch das Mapping der Eintrag root (hd0,0) für die erste primäre Partition von der zweiten Festplatte lauten müßte. Außerdem fehlt noch chainloader +1, mit dem der erste Sektor (Bootsektor) geladen wird. map brauchst du nur bei Windows , sonst nicht, weil sich Windows nur von der ersten Festplatte booten läßt.
Die Option savedefault ist sinnvoll, wenn du die Option "default" mit saved initialisierst.


title Windows
#erste primäre Partition von der ersten "virtuellen" Windowsfestplatte
root (hd0,0)
map (hd0) (hd1)
map (hd1) (hd0)
makeactive
chainloader +1

Debian GNU/Linux https://www.debian.org/index.de.html
bei Antwort benachrichtigen
KarstenW Nachtrag zu: „root hd1,0 wäre richtig wenn du Windows wirklich von der zweiten Festplatte...“
Optionen

PS: grub kann ein anderes Betriebsystem, außer Linux nicht selbst direkt starten, sondern muß im Prinzip den Bootsektor der jeweiligen Partition starten, in dem sich wiederum ein kleines Bootprogramm befindet, das dann seinerseits das eigentliche Betriebsystem lädt oder startet. Das wird mit dem Eintrag "chainloader +1" erreicht. Dadurch kann dann grub jedes andere Betriebsystem wie DOS, Windows, Solaris, Unixware u.s.w starten , aber eben indirekt.

Debian GNU/Linux https://www.debian.org/index.de.html
bei Antwort benachrichtigen
alti75 KarstenW „PS: grub kann ein anderes Betriebsystem, außer Linux nicht selbst direkt...“
Optionen

Danke KarstenW wieder für die schnelle Antwort hier

Also der richtige Eintrag für die /boot/grub/menu.lst muss lauten

title Windows irgendwas ;)
root (hd1,0)
map (hd0) (hd1)
map (hd1) (hd0)
makeactive
chainloader +1
boot


So startet Windows via GRUB von der zweiten Festplatte am ersten IDE Strang.

Ging ja echt fix,

Danke nochmal

Es gibt 10 Arten von Menschen auf der Welt. Diejenigen welche das Binärsystem verstehen und die, die es nicht tun.
bei Antwort benachrichtigen