Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
2. Grub migrieren

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Sonstiges
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Phoenix



Anmeldungsdatum: 12.10.2008
Beiträge: 582
Wohnort: HSK

BeitragVerfasst am: 02. Nov 2009 16:51   Titel: 2. Grub migrieren

2. Grub migrieren

Hallo zusammen,

gestern habe ich mir leider ein neues Problem eingebrockt. Ich wollte (endlich) meine externe Festplatte mit einem separaten Linux versehen. Nach vielen Tests mit Live- CD sagte mir Mandriva am meisten zu, und von der CD sollte man das auch aus dem Live- Betrieb heraus installieren können. Das läuft auch alles- nur mit dem Grub gibt's jetzt Probleme. Genauer: Mit den Grubs, ich scheine nämlich 2 zu haben. Dummerweise ist mir nicht aufgefallen, daß Mandriva seinen wahrscheinlich auf die sda2 = meine Haupt- Root- Partition installiert hat. Eigentlich möchte ich diesen Grub gern auf der sdb2, nämlich der Root- Partition der externen Festplatte, haben.

Ich hoffe, das ist soweit nachvollziehbar. Beim Rechnerstart erscheint zunächst ein Textmenü, nach ein paar Sekunden die von früher her gefürchtete Anzeige: Error 21. Das ist gleich, ob die externe Festplatte da eingeschaltet ist oder nicht. Bei eingeschalteter Festplatte 2 hilft dann aber Strg. + Alt + Entfernen, dann startet der Grub von Mandriva. Da wird mir auch das openSUSE 11.1 zur Auswahl angeboten. Mit Klick darauf erscheint das gewohnte grüne Auswahl- Startbild von SUSE.

Mein BIOS ist so eingestellt, daß zunächst USB, dann CD/ DVD, dann die interne Festplatte nach Bootmenüs abgefragt werden. Stecke ich einen USB- Stick mit einem Linux ein, bootete dies bisher den Rechner zuerst. Das hat ein Test mit einem PuppyLinux gerade bestätigt. Kann ich das Mandriva soweit bringen, daß es seinen Grub verlagert und damit die für den Stick geschilderte Startprozedur abläuft, bei ausgeschalteter Festplatte 2 aber direkt der Grub von openSUSE startet? Dieser Grub scheint bei mir auch auf der Festplatte 1 im sda2- Verzeichnis zu stecken, der MBR wurde von SUSE bisher nicht behelligt. Übrigens erkennt Yast den Mandriva- Grub nicht.

Wie bekomme ich die Verschiebung des Mandriva- Grub hin? Kennt jemand das Werkzeug dazu bei Mandriva (ähnlich Yast)?

Danke für einen Tipp

Phoenix
_________________
Für kein Tier tut man so viel wie für die Katz!

3 BS aktuell
openSUSE 13.1-64 KDE auf Hauptplatte
Mageia 4-64 KDE auf USB- Platte
openSUSE 13.1-64 KDE auf USB- Platte mit Starter BodhiLinux 1.4.0
 
Benutzer-Profile anzeigen Private Nachricht senden

brum
Gast





BeitragVerfasst am: 03. Nov 2009 13:52   Titel: Grub

Hallo,

armer Yast-geschädigter.

Du solltest Dich mal mit Grub beschäftigen. Ist eigentlch ein geniales und relativ einfach zu konfigurierendes Teil. Ich bin zwar kein Boot-oder Grub-spezi, aber ein bißchen Gruben muß jeder können ...

http://www.pro-linux.de/t_system/grub-howto.html

Beim Installieren von Grub, was ja bei einer Betriebssysteminstallation meistens, aber nicht immer der Fall ist, schreibt bzw. überschreibt Grub den MBR mit Informationen, vonwo er seinen nächsten Daten herbekommt.

Also Du hast auf Platte 2 installiert, dann sucht vermutlich seine Daten auch dort, es sei denn, Du hast es anders angegeben.
Und das kann man bei einem vernüftigen Betriessystem -wie Mandriva- bei der Installation auch angeben. Die Wahl wie Installation in MBR, Partition oder kein Grub und Grub editieren ist dort vorhanden.

Ich habe Dich nun so verstanden, das Mandiva auf der externen Festplatte installiert ist.
Beim booten sucht nun Grub seine Daten dort.

Du hättest Mandriva mit der Gruboption Grub in Filesystem installieren nehmen sollen und dann in der /boot/grub/menul.lst den Booteintrag in der Art wie
Code:
title Mandriva
 root (hd1,0)
 configfile /grub/menu.lst

eintragen müssen.

Die Syntax Platte Filesystem vom Grub ist auch einfach:
(hd0,0) erste Platte, erste Partition = sda1
(hd0,3) erste Platte, 4. Partition = sda4
(hd1,0) zweite Platte, erste Partition = sdb1

Alternativ kannst'e auch die Werte, welche in der menu.lst der 2. Platte stehen mit in die menue.lst des Haupt- (boot)- systems schreiben.

Ich würde nun für die Reparatur deines Zustandes mit irgendwas booten, ein chroot ins Hauptsystem machen und "grub-install /dev/sd-HAUPTPLATTE" aufrufen und für die anderen Syteme die Anpassung wie oben angegeben durchführen.

Achhtung: Das hier beschriebene gilt nur wenn beide den "normalen" Grub vewenden, nicht Grub2-beta4711, wie es Ubuntu verwendet...

bye
brum
 

Phoenix



Anmeldungsdatum: 12.10.2008
Beiträge: 582
Wohnort: HSK

BeitragVerfasst am: 03. Nov 2009 16:41   Titel: getrennte Grubs

Hallo brum,,

nix grub2 & Ubuntu... nein, auf dem jetzigen Rechner hatte Ubuntu noch nie etwas verloren, noch nicht einmal als Live- CD. Das parallele Posting dazu im Forum habe ich gerade gesehen. Ich selbst habe Ubuntu mal als Live- CD genutzt, aber auf dem alten Rechner, der nicht mehr existiert.

Die externe Festplatte wird auf meinem Desktop unter openSUSE 11.1 als USB- Laufwerk angezeigt, nicht als Festplatte. Ich möchte nur gern den Mandriva- Grub auf die 2. Platte legen, damit die beim Einschalten als USB- Laufwerk erkannt wird und dann analog einem USB- Stick mit Linux gebootet wird; die Hauptfestplatte soll möglichst unangetastet bleiben.

In den Mandriva- Menüs habe ich irgenwo eine Liste gefunden mit Einträgen, wo denn der Grub installiert werden kann. Da müßte ich versuchsweise eine andere Position anklicken, nämlich auf der sdb2. Nur weiß ich nicht, ob der jetzt wohl irgendwo verkrümelte Grub damit entfernt wird. Und deshalb wollte ich vorher fragen, bevor ich nicht weiter komme. Einen Dualboot- Modus oder sowas möchte ich garnicht erst haben, da die Festplatte in der Regel stilliegen soll (abgeschaltet wird). Nur komme ich im jetzigen Zustand nicht zum Booten, wenn die 2. Festplatte nicht eingeschaltet ist.

Ich hatte Anfang des Jahres immense Probleme mit dem alten Rechner, der noch WIN auf dem MBR enthielt; im Moment hatte ich noch keine allzu große Lust, die ganzen Postings nachzulesen. Klar, daß ich Deinen Link gleich nachstudiere; grundsätzlich möchte ich die 2. Platte mit dem Mandriva aber im Grub der ersten mit openSUSE überhaupt nicht sehen. Wenn ich die Thematik richtig überblicke, müßte ich die 2. Platte ja grundsätzlich an jeden anderen Rechner anstöpseln können und dort im Sinne eines Live- Systems betreiben können, wenn die Grubs nicht miteinander verhäkelt sind?

Yast- Geschädigter? Das klingt ja fast wie WIN- Vereinnahmter? Razz Mit List und Tücke habe ich mit Yast bisher alle meine Probleme gelöst bekommen. Ich weiß, die Konsole... ist das mächtigste UNIX/ Linux- Tool- nur Bedienerfreundlichkeit ist etwas anderes. Ich nutze die Konsole allerdings auch oft, wenn ich die verschlungenen Eingaben irgendwo auffinden kann; die selbst zu entwickeln, habe ich mir bisher immer verkniffen..

Ich versuche mal, ob ich nach Deinen freundlichen Tipps weiterkomme. Danke dafür.

Phoenix

P. s.: Booten kann ich beide BS im Moment relativ normal, ohne Live- System oder so.
_________________
Für kein Tier tut man so viel wie für die Katz!

3 BS aktuell
openSUSE 13.1-64 KDE auf Hauptplatte
Mageia 4-64 KDE auf USB- Platte
openSUSE 13.1-64 KDE auf USB- Platte mit Starter BodhiLinux 1.4.0
 
Benutzer-Profile anzeigen Private Nachricht senden

brum
Gast





BeitragVerfasst am: 03. Nov 2009 17:28   Titel: usb & grub

Hallo,

ich glaube nicht das das so nach deinen Vorstellungen geht:

Code:
Die externe Festplatte wird auf meinem Desktop unter openSUSE 11.1 als USB- Laufwerk angezeigt, nicht als Festplatte


Diese Festplatte ist ein USB-Laufwerk. Und wenn diese keine anderes Icon definiert hat
Code:
Datei autorun.inf mit Verweis auf Icon
[autorun] ICON=icon.ico
so wird ein Standart-USB-Device angezeigt. Woher soll das System den Wissen, was am USB angesteckt ist, wenn es nicht anhand irgendwelcher Regeln definiert wird?
Woher das BIOS das weiß ... hhmm,
Ich glaube, in manchen BIOS kann man die Bootreihenfolge auch genauer einstellen in Unterscheidung von USB-Stick, USB-Festplatte und sata-Festplatte....

Wenn Dein BIOS das nicht kann, so wirst Du wohl ein Menupunkt benötigen, um die externe Platte anzusprechen - macht ja nix, wenn es diese nicht gibt.
Oder, bei manchen BIOS kann man auch mit [F12] noch eine Bootauswahl treffen.
Oder Nr.2, vielleicht über Diskette/USB-Stick booten, welcher auf die ext. Platte verweist.

Viel Spaß beim probieren.
brum

PS.
Yast ist ab und zu nicht verkehrt, habe keine Doku benötigt, als ich das erste Mal eSCSI einband Wink
 

Phoenix



Anmeldungsdatum: 12.10.2008
Beiträge: 582
Wohnort: HSK

BeitragVerfasst am: 03. Nov 2009 19:07   Titel:

Hallo brum,

bist Du mir sehr böse, wenn ich jetzt 3 ??? poste?

Habe ich einen (gewöhnlichen) USB- Stick mit einem Live- Linux eingesteckt und starte den Rechner, wird das Linux vom Stick gebootet. Irgendwo auf dem Stick muß das BIOS wohl nach einer startbaren Datei suchen, und wenn es sie entdeckt hat, diese anwählen und ausführen.

Eigentlich sollte das bei dem Mandriva auf der externen Platte doch auch möglich sein? Das ist vom Ursprung her ein Live- System gewesen. Irgendwo im System muß doch hier eine Datei stecken, die analog dem Stick dann das System booten kann? Oder siehst Du da (m)einen Denkfehler?

Ich möchte natürlich nicht gleichzeitig den Stick und die USB- Platte einstecken.
Gerade habe ich nach autorun.inf gesucht; diese hat kfind aber nur in Kopien irgendwelcher WIN- CD entdecken können, die als Sicherung auf einer Partition gespeichert sind (nein, nicht systemintegriert). Die Festplatte(n) wurden da nicht gefunden.

Soweit ich mich erinnere, hat mein BIOS nur 4 Optionen in der Bootreihenfolge: USB, CD- Laufwerk, Festplatte, andere. Aber wie angedeutet, komme ich nicht dahinter, weshalb die USB- Platte da nicht angesprochen werden könnte?

Der Pfad /boot/grub auf der sda2 enthält nur Dateien, die nicht jünger als 19.05.09 sind beim Änderungsdatum. /media/root/boot/grub enthält nur Dateien, die 02.11.09 als Datum haben.

Mal sehen, ob und wie ich das hinbekomme.

Nette Grüße

Phoenix
_________________
Für kein Tier tut man so viel wie für die Katz!

3 BS aktuell
openSUSE 13.1-64 KDE auf Hauptplatte
Mageia 4-64 KDE auf USB- Platte
openSUSE 13.1-64 KDE auf USB- Platte mit Starter BodhiLinux 1.4.0
 
Benutzer-Profile anzeigen Private Nachricht senden

Phoenix



Anmeldungsdatum: 12.10.2008
Beiträge: 582
Wohnort: HSK

BeitragVerfasst am: 17. Nov 2009 17:21   Titel: Alter Zustand...

Hallo in die Runde,

nach vielem Probieren und Recherchieren fand ich keine einfache Methode zur Problemlösung.

Gewaltlösung: Grub incl. MBR sda neu installieren per Yast/ openSUSE aus der Speicherdatei im System

Da das System im letzten Zustand nur mit aktivierter externer Festplatte zu starten war, mußte diese Festplatte nach Start in allen Partitionen ausgebunden werden und danach abgeschaltet werden. Der Betrieb des gebooteten openSUSE- Systems lief vollständig weiter.

Menü: System- Bootlader- Bootlader-Einstellungen- Weitere- 6. von 7 = MBR von Festplatte wiederherstellen wählen, ok- Rote Warnmeldung beachten- Bestätigen und hoffen...

Mehrfache Startversuche haben das direkte Starten von openSUSE ohne externe Festplatte ergeben; der MBR der sda sollte wieder von Mandriva- Einträgen befreit sein.

Nächster Punkt: Mandriva neu installieren auf der externen Platte, jetzt aber unbedingt den Bootlader auf der sdb lokalisieren! Da unter Mandriva noch nichts konfiguriert wurde, dürfte eine Neuinstallation wesentlich einfacher sein als alles Konsolengefummel...

Ist installiert, Booten muß getestet werden! 17.11.09 - Leider kein Erfolg.

Weiß hier jemand, wie dem BIOS klargemacht wird, daß z. B. am USB- Anschluß ein bootfähiger Stick angestöpselt ist? Gibt es da eine Ansprechdatei auf dem Stick/ in dem installierten Linux- Live- System? Die Frage zielt dahin, diese Datei z.B. in das installierte Mandriva zu kopieren, damit dem BIOS vorgemacht wird, ein bootfähiges Live- Linux auf Stick liege vor...Ich weiß, ich weiß, die Frage wiederholt sich- aber eine irgendwie in die rRichtung wesende Antwort habe ich bisher nicht gesehen.

Im Augenblick komme ich an das Linux auf der sdb nicht heran, obwohl alle Partitionen vom laufenden openSUSE aus zugänglich sind.

Wer kann helfen?

Nette Grüße

Phoenix
_________________
Für kein Tier tut man so viel wie für die Katz!

3 BS aktuell
openSUSE 13.1-64 KDE auf Hauptplatte
Mageia 4-64 KDE auf USB- Platte
openSUSE 13.1-64 KDE auf USB- Platte mit Starter BodhiLinux 1.4.0
 
Benutzer-Profile anzeigen Private Nachricht senden

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 17. Nov 2009 19:42   Titel: Re: Alter Zustand...

Phoenix hat folgendes geschrieben::

Weiß hier jemand, wie dem BIOS klargemacht wird, daß z. B. am USB- Anschluß ein bootfähiger Stick angestöpselt ist?

Es muss ein Bootlader auf dem Stick installiert werden. Das ist keine Datei, sondern ein paar rohe Datenblöcke ganz am Anfang des Geräts. Das BIOS liest von einem als zu booten markierten Gerät selbsttätig nur Block 0 ein, wo normalerweise auch die Partitionstabelle drin ist. Dann wird der Code dort gestartet. Entweder er gibt "No operation system" auf dem Bildschirm aus und bleibt dann stehen (normales Verhalten bei gekauften USB-Sticks) oder "LI", wenn LILO installiert ist, oder "GRUB" bei GRUB oder gar nichts beim MS-DOS-Bootlader (den auch MS-Windows immer noch verwendet). Dann lädt der Codeschnipsel weitere Blöcke nach (LILO von Blöcken innerhalb des Dateisystems, GRUB Block 1..63) und startet das dort enthaltene Programm, das das Bootmenü anzeigt. Danach geht es mit dem Laden des Linux-Kernel und der Initrd weiter.

Du hast im wesentlichen zwei Probleme:

1. GRUB und auch LILO gehen nicht davon aus, dass man aus einem installierten System heraus ein System auf einer zweiten Festplatte mit einem Bootlader ausstatten will. Daher zerschiesst ein solcher Versuch den Bootlader auf der internen Festplatte.
2. Wird der USB-Stick vom BIOS als bootbar angesehen, *muss* er in einer Festplattenemulation betrieben werden. Das heißt, der USB-Stick verhält sich während des Bootens wie eine stinknormale interne Festplatte. Sobald der Kernel und die initrd geladen sind, gilt dies jedoch nicht mehr, da ist er wieder ein USB-Massenspeicher. Die Bootladerkonfiguration muss das berücksichtigen

Für einen Anfänger sind diese Hürden nicht zu umschiffen. Selbst mir (mit >10 Jahren Erfahrung) würde es einige Arbeit abverlangen und nicht beim ersten Mal klappen.

Janka
_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.
 
Benutzer-Profile anzeigen Private Nachricht senden

Phoenix



Anmeldungsdatum: 12.10.2008
Beiträge: 582
Wohnort: HSK

BeitragVerfasst am: 17. Nov 2009 23:43   Titel:

Zitat:
1. GRUB und auch LILO gehen nicht davon aus, dass man aus einem installierten System heraus ein System auf einer zweiten Festplatte mit einem Bootlader ausstatten will. Daher zerschiesst ein solcher Versuch den Bootlader auf der internen Festplatte.


Beim ersten Versuch war das ja so, aber nach der Neuinstallation habe ich Mandriva ja davon abgehalten, auf der sda irgend etwas zu installieren.
Zitat:

Für einen Anfänger sind diese Hürden nicht zu umschiffen. Selbst mir (mit >10 Jahren Erfahrung) würde es einige Arbeit abverlangen und nicht beim ersten Mal klappen.


Hallo Janka, das klingt ein wenig frustriert.
Zunächst erschien mir das Problem garnicht so riesig. Erst allmählich schält sich heraus, das da wohl einiges mehr hintersteckt. Anfänger hin und her, erkenne ich ein Problem, versuche ich zunächst selbst einmal, verschiedene Lösungen zu finden. Dies immer mit dem Hintegedanken, meine eigenen Daten nicht zu vernichten, dann das System möglichst nicht zu zerstören und zuletzt, den Rechner nicht in Rauch aufgehen zu lassen.

Aber nach was kann ich zu dem Thema im Netz suchen? Grub, Lilo, MBR, BIOS habe ich als Sammlung, da lese ich oft drin herum. Und kommt da nichts, frage ich auch hier nach. Finde ich überhaupt keine Lösung, muß ich eine Kombination beider Platten erwägen im Sinne eines Multibootsystems. Da sollten sich 2 Linuxplatten ja wohl zusammenraufen können.
Genausogut wäre es natürlich möglich, einen 8- GB- Stick mit Mandriva zu belegen und den dann zu nutzen. Aber irgendwie reizen mich solche Themen, auch wenn die Nachfragerei dazu nervt. Ich hoffe, daß ein paar Mitleser auch etwas davon haben.

Irgendwo habe ich eine Idee erhalten, per Start mittels USB- Stick mit Linux auf die 2. Platte zu verweisen; wie das gehen könnte, stand in der Idee nicht.

Weißt Du noch ein wenig mehr?

Nette Grüße

Phoenix
_________________
Für kein Tier tut man so viel wie für die Katz!

3 BS aktuell
openSUSE 13.1-64 KDE auf Hauptplatte
Mageia 4-64 KDE auf USB- Platte
openSUSE 13.1-64 KDE auf USB- Platte mit Starter BodhiLinux 1.4.0
 
Benutzer-Profile anzeigen Private Nachricht senden

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 18. Nov 2009 10:04   Titel:

Die einfachste Möglichkeit, den Grub auf den Stick zu bekommen, ist es, einfach die bereits installierte Version von der eingebauten Platte (im Beispiel /dev/sda) runterzukopieren.
Code:

# dd if=/dev/sda of=festplatte-mbr-part-grub.img bs=512 count=63

Das erzeugt dir eine Datei, in der der Grub drin ist. Allerdings ist da auch die Partitionstabelle der Platte drin, die passt nicht zum Stick. Also musst du die Partitionstabelle vom Stick (im Beispiel /dev/sdb) holen.
Code:

# dd if=/dev/sdb of=stick-part.img bs=1 skip=446 count=64

Das ist jetzt die eigentliche Partitionstabelle, sind nur 64 Byte im Block 0. Jetzt von der ersten Datei ebenfalls Schnipsel machen. Wir brauchen den MBR und den Rest von GRUB.
Code:

$ dd if=festplatte-mbr-part-grub.img of=festplatte-mbr.img bs=1 count=446
$ dd if=festplatte-mbr-part-grub.img of=festplatte-grub.img bs=1 skip=510

Jetzt alles zusammenkleben:
Code:

$ cat festplatte-mbr.img stick-part.img festplatte-grub.img >stick-mbr-part-grub.img

Diese Datei kann man nun in die ersten Blöcke des Sticks schreiben, damit hat man einen GRUB da drauf. Die Partitionsdaten des Sticks haben wir dabei erhalten gelassen.

So müsste es *eigentlich* funktionieren. Ich hab das aber nicht ausprobiert. Das ist aber ohnehin nur der erste Schritt. Dann muss auf dem Stick noch ein Verzeichis /boot/grub existieren, mit den passenden Dateien drin, und zwar genau wie auf der Festplatte.

Janka
_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.
 
Benutzer-Profile anzeigen Private Nachricht senden

Phoenix



Anmeldungsdatum: 12.10.2008
Beiträge: 582
Wohnort: HSK

BeitragVerfasst am: 18. Nov 2009 17:45   Titel:

Hallo Janka,

noch einmal zum Verständnis gefragt:

Zitat:
Die einfachste Möglichkeit, den Grub auf den Stick zu bekommen, ist es, einfach die bereits installierte Version von der eingebauten Platte (im Beispiel /dev/sda) runterzukopieren.

Ist hier der Grub der Mandriva- Installation auf der externen Platte gemeint? Und der Stick ist der Startstick gemäß "..., per Start mittels USB- Stick mit Linux auf die 2. Platte zu verweisen; ... ?
Zitat:

"$ cat festplatte-mbr.img stick-part.img festplatte-grub.img >stick-mbr-part-grub.img"

Noch eine Frage zu den Namen: diese sind doch willkürlich gewählt?

Das probiere ich ganz sicher mit einem 1-GB-Stick aus der Reservekiste aus.

Danke erstmal

Phoenix
_________________
Für kein Tier tut man so viel wie für die Katz!

3 BS aktuell
openSUSE 13.1-64 KDE auf Hauptplatte
Mageia 4-64 KDE auf USB- Platte
openSUSE 13.1-64 KDE auf USB- Platte mit Starter BodhiLinux 1.4.0
 
Benutzer-Profile anzeigen Private Nachricht senden

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 18. Nov 2009 20:29   Titel:

Phoenix hat folgendes geschrieben::

Zitat:
Die einfachste Möglichkeit, den Grub auf den Stick zu bekommen, ist es, einfach die bereits installierte Version von der eingebauten Platte (im Beispiel /dev/sda) runterzukopieren.

Ist hier der Grub der Mandriva- Installation auf der externen Platte gemeint?

Nein. Du willst den funktionierenden GRUB von der internen Platte haben.

Zitat:

Und der Stick ist der Startstick gemäß "..., per Start mittels USB- Stick mit Linux auf die 2. Platte zu verweisen; ... ?

Also: Wenn du im BIOS einstellst, dass von USB gebootet werden soll, wird der USB-Stick vom BIOS als *erste* Platte eingebunden. Das gilt solange BIOS-Aufrufe verwendet werden. Der GRUB benutzt BIOS-Aufrufe um die ersten 63 Sektoren zu laden (Stage 1 und Stage 1.5). Danach lädt er /boot/grub/stage2 aus dem Dateisystem die lädt das Menü und den ganzen Rest. Nach der Auswahl lädt sie auch den passenden Kernel und die initrd. Das alles geschieht mit BIOS-Aufrufen, dort gilt also immer, dass der USB-Stick als "interne Festplatte" angesprochen wird.

Das ändert sich erst, sobald der Linux-Kernel gestartet ist. Der benutzt keine BIOS-Aufrufe, sondern spricht die Platte direkt auf der Hardwareebene mit seinen eigenen Treibern an. Und da ist der Stick dann sofort wieder ein USB-Gerät, das root-Verzeichnis liegt für den Kernel also nicht auf z.B. /dev/sda1, sondern z.B. auf /dev/sdb1, weil im Rechner ja z.B. eine ATA-Festplatte verbaut ist und diese vor USB-Geräten enumeriert werden. Die Bootladerkonfiguration bzw. die Skripte in der initrd müssen das berücksichtigen und erstmal rausfinden, welches Device der Stick tatsächlich bekommen hat. Das hängt nämlich davon ab, wie viele andere Festplatten der Rechner hat, in den der Stick gerade eingesteckt wurde. Eine universelle Stick-Distribution wird das passende Device über die Dateisystem-ID oder ähnlich ermitteln. Das müsstest du alles nachbilden, wenn der Stick in jedem USB-bootfähigen Rechner funktionieren soll.

Achso, auch noch wichtig: Stage 1.5 kann nur ein ganz bestimmtes Dateisystem verstehen. Daher muss auf dem Stick bei der obigen Kopier-Methode dasselbe Dateisystem für /boot verwendet werden wie auf der tatsächlichen internen Platte.

Zitat:

"$ cat festplatte-mbr.img stick-part.img festplatte-grub.img >stick-mbr-part-grub.img"

Noch eine Frage zu den Namen: diese sind doch willkürlich gewählt?
[/quote]
Natürlich.

Janka
_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.
 
Benutzer-Profile anzeigen Private Nachricht senden

Phoenix



Anmeldungsdatum: 12.10.2008
Beiträge: 582
Wohnort: HSK

BeitragVerfasst am: 18. Nov 2009 21:32   Titel:

Hallo Janka,

vielen Dank zunächst einmal für Deine immense Aufklärungsarbeit. Wieder muß ich sagen, daß ich eine so umfassende Erläuterung zu dem Thema bisher nicht gesehen habe.

Im Moment bleibt mir nur registrieren und auswerten, dann nachstellen.

Ich laß das Thema noch ein wenig offen; habe ich (m)eine Lösung, stelle ich das natürlich ein.

Nette Grüße

Phoenix
_________________
Für kein Tier tut man so viel wie für die Katz!

3 BS aktuell
openSUSE 13.1-64 KDE auf Hauptplatte
Mageia 4-64 KDE auf USB- Platte
openSUSE 13.1-64 KDE auf USB- Platte mit Starter BodhiLinux 1.4.0
 
Benutzer-Profile anzeigen Private Nachricht senden

Phoenix



Anmeldungsdatum: 12.10.2008
Beiträge: 582
Wohnort: HSK

BeitragVerfasst am: 13. Dez 2009 17:10   Titel: Herkömmliche Grub- Konfiguration

Hallo zusammen,

zu diesem Thema hebe ich mehrfach recherchiert, gefragt und diskutiert. Alle Lösungsansätze funktionieren nicht richtig, weil ein Live- System für Sticks und ein Linux, welches an sich kein Live- System für Sticks ist (Mandriva One), anders reagieren. Auch scheint die USB- Platte vom BIOS anders angesprochen zu werden als ein USB- Stick, obwohl beides USB- Medien sind.

Die externe Festplatte genauso einsetzen können wie einen USB- Stick klappt mit meinem derzeitigen Wissensstand nicht. Was bleibt, ist die "ordentliche" Dual- Boot- Konfiguration des Grub auf der Hauptplatte, wobei dann eben die externe Platte alternativ als Bootmedium angewählt werden kann. Ob ich dann den LILO dort noch entfernen muß, teste ich später.

Danke für das Interesse und die Lösungsansätze

Phoenix
_________________
Für kein Tier tut man so viel wie für die Katz!

3 BS aktuell
openSUSE 13.1-64 KDE auf Hauptplatte
Mageia 4-64 KDE auf USB- Platte
openSUSE 13.1-64 KDE auf USB- Platte mit Starter BodhiLinux 1.4.0
 
Benutzer-Profile anzeigen Private Nachricht senden

Phoenix



Anmeldungsdatum: 12.10.2008
Beiträge: 582
Wohnort: HSK

BeitragVerfasst am: 24. Dez 2009 21:57   Titel: Mit Linux geht's, mit Redmond...?

Doch noch ein Fortschritt!

Nette Grüße an die Mitleser,

mein Problem mit dem Doppelgrub existiert nicht mehr. Zunächst möchte ich mich bei allen Mitstreitern für ihre Ideen und Vorschläge bedanken. Der "Idealfall", den ich zunächst im Visier hatte, funktionierte trotz aller Versuche nicht. Dabei sollte die externe USB- Festplatte in gleicher Weise booten wie ein USB- Stick; dies sollte u. a. die Möglichkeit bieten, das Linux auf der 2. Platte auch an einem anderen Rechner einsetzen zu können und zusätzlich die erhebliche Speicherkapazität von 250 GB zu haben. Außerdem sollten an den Fremdrechnern keine Anpassungen nötig werden.
Irgendwie bestehen da aber systematische Unterschiede zwischen USB- Platte und USB- Stick. Mit gleicher Einstellung am BIOS entweder die eine oder den anderen zu booten (immer nur ein Gerät eingesteckt!), gelang nie; ein Linux- Live- Stick bootete, die USB- Platte keinmal.
Mindestens einmal in den Diskussionsrunden erhielt ich den Tipp, direkt beim Booten die Taste F12 gedrückt zu halten, wobei die 2. Platte natürlich eingeschaltet und am USB eingesteckt sein muß...
Bei der aktuellen Installation wird da ein Sonder- Bootlader geöffnet, der wohl im BIOS direkt integriert ist bzw. von dort als LILO aufgerufen wird. Und der hat an erster Stelle einen Eintrag für ein Linux, das zum LILO der Mandriva- Installation auf der 2. Platte führt. Der Ablauf ab da ist wie normal, das Mandriva- System bootet. Und wird beim Einschalten des Hauptschalters die Taste F12 nicht mit gedrückt, startet ganz normal der Grub der openSUSE- Installation. Die Methode funktioniert aber nur, wenn das BIOS den Sonderbootlader enthält bzw. aufrufen kann.
Ich hab keine weiteren Informationen zu diesem BIOS- Bootlader recherchiert; kennt hier jemand näheres zur Vervollständigung des Themas?
Für Interessenten habe ich ein Blockschaltbild und einen Bootablaufplan (IST und SOLL) erstellt sowie Fotos der Bootlader angehängt und beim Filehoster eingestellt. Hoffentlich sind die Darstellungen einigermaßen verständlich und korrekt.

Ich hab mindestens 6 x getestet, ob die Einstellungen auch beibehalten werden... klopf auf Holz.

Weiter viel Spaß im neuen Jahr mit Linux & Co. Wink

Phoenix
_________________
Für kein Tier tut man so viel wie für die Katz!

3 BS aktuell
openSUSE 13.1-64 KDE auf Hauptplatte
Mageia 4-64 KDE auf USB- Platte
openSUSE 13.1-64 KDE auf USB- Platte mit Starter BodhiLinux 1.4.0
 
Benutzer-Profile anzeigen Private Nachricht senden

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Sonstiges Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy