PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : /boot auf separate Partition verschieben



gadget
22.08.07, 19:07
Hoi miteinander

Ich habe folgendes vor und brauche eure Hilfe:

Ausgangssituation:
Grub ist in den mbr von hda installiert.
Auf hda2 befindet sich /, darin /boot.

Ziel:
/boot auf /dev/hda8 verschieben und dann mounten.

Grub muss dann ja den neuen Pfad zur menu.lst mitbekommen, d. h. ich muss erneut in den mbr schreiben. Aber wie genau mache ich das? Genüg dazu die Pfadeingabe über die grub-Konsole oder braucht es dann noch ein grub-install?

Vielen Dank für eure Hilfe!
gadget

kreol
22.08.07, 19:14
grub
root (hd0,7)
setup (hd0)
quitsollte reichen wenn der mbr auf hda liegt und die (hd0) ist.


Kreol

gadget
22.08.07, 19:25
Grüezi kreol

So in etwa hatte ich mir das gedacht. Aber, zum Verständnis: Wird dadurch bereits der Eintrag im mbr selbst angepasst?

kreol
22.08.07, 19:30
Ja, mit dem setup. Ein geniales Grub-Howto findest Du hier (http://www.gnu.org/software/grub/manual/grub.html).

Auf hda8 sollten halt alle Grub-Dateien schon liegen.


Kreol

gadget
22.08.07, 20:03
Ja, mit dem setup. Ein geniales Grub-Howto findest Du hier (http://www.gnu.org/software/grub/manual/grub.html).
Vielen Dank für den Link!


Auf hda8 sollten halt alle Grub-Dateien schon liegen.
Halt alles, was bislang auf hda2/boot/grub lag.

BTW: Sollte ich auf hda8 dann auch ein Verzeichnis /boot/grub anlegen, damit er wirklich alles findet?

kreol
22.08.07, 20:15
Ja, auf hda8 sollte alles sein, was jetzt in /boot liegt. Ich würde hda8 nach /tmp mounten, als root mit "cp -a /boot/* /tmp/" die Dateien aus /boot kopieren, die Dateien aus /boot löschen und anschliessend hda8 auf /boot mounten. Dann /etc/fstab anpassen und hda8 wie oben beschrieben als Ansprungziel in den mbr schreiben.

Sicherheitshalber brauchst Du die Dateien in /boot ja erstmal nicht zu löschen sondern erst, wenn es mit hda8 funktioniert...


Kreol

HirschHeisseIch
22.08.07, 20:18
Nein.

Dafür gibt es Symlinks.
Sprich
cd /boot && ln -sf . grub als root. Sollte allerdings eigentlich schon vorhanden sein.

Und bitte nicht vergessen, die menu.lst anzupassen. Der Kernel liegt dann natürlich auch auf hd(0,7) und nicht mehr auf hd(0,1)/boot/

kreol
22.08.07, 20:28
Und bitte nicht vergessen, die menu.lst anzupassen. Der Kernel liegt dann natürlich auch auf hd(0,7) und nicht mehr auf hd(0,1)/boot/Oops, das war mir entfallen. Stimmt natürlich ;)

Das mit Anlegen des Symlinks sollte sich doch erledigen, wenn /boot komplett auf hda8 umzieht und die dann nach /boot gemountet wird, oder was meinst Du?


Kreol

gadget
22.08.07, 21:00
Sorgen bereitet mir ja nicht die Einbindung ins laufende System, sondern dass grub die menu.lst findet. Bislang fand grub sie auf (hd0,1) unter /boot/grub.

Dafür gibt es Symlinks.
Sprich
cd /boot && ln -sf . grub
Wäre damm nicht eher

cd /boot && ln -sf . boot/gub nötig?

kreol
22.08.07, 21:04
Wenn Du alle Dateien rekursiv von /boot auf hda8 kopierst und die dann nach /boot mountest findet Grub die menu.lst auch wieder unter /boot/grub...

Was HirschHeisseIch evtl. meint ist der Link
kreol@P800:~> ls -l /boot
insgesamt 5998
...
lrwxrwxrwx 1 root root 1 2007-05-14 23:11 boot -> .
...


Kreol

P.S.
Grub ist der FHS doch ziemlich egal. Der mbr springt nur die Partition an, die ihm mit root(hdx,y) mitgegeben wird. Dort sollten dann halt die erforderlichen Dateien für stage 1.5 und der Kernel liegen. Der Bootvorgang läuft doch ab bevor der Kernel die Regie übernimmt.

gadget
22.08.07, 21:14
Wenn Du alle Dateien rekursiv von /boot auf hda8 kopierst und die dann nach /boot mountest findet Grub die menu.lst auch wieder unter /boot/grub...
Das wiederum verstehe ich nicht. Wenn der bootloader startet, ist noch gar nichts gemountet. Die menu.lst liegt bislang auf /boot/grub, nach kopieren auf hda8 aber auf / selbiger Partition.

kreol
22.08.07, 21:18
Siehe mein P.S. in # 10 ;)

Hier habe ich auf einem Rechner eine eigene /boot-Partition. Die ist als solches im mbr eingetragen und dort liegen exakt die Dateien (einschliesslich Verzeichnis grub) die auf einem anderen Rechner, ohne eigene /boot-Partition, im Verzeichnis /boot liegen. Das geht so.


Kreol

gadget
22.08.07, 21:25
Hi kreol


Siehe mein P.S. in # 10 ;)

Hier habe ich auf einem Rechner eine eigene /boot-Partition. Die ist als solches im mbr eingetragen und dort liegen exakt die Dateien (einschliesslich Verzeichnis grub) die auf einem anderen Rechner, ohne eigene /boot-Partition, im Verzeichnis /boot liegen. Das geht so.


Kreol
Aber du hattest aber die Dateien nicht vorher auf einer anderen Partition :confused:

Ich meine, woher soll grub nun wissen, dass es bei root(hd0,1) die menu.lst unter (hd0,1)/boot/grub findet, bei root(hd0,7) aber unter (hd0,7)/grub ???

Kann natürlich sein, dass das so funktioniert, aber auf den ersten Blick
klingt das für mich nicht logisch. Oder wo ist da mein Denkfehler?

kreol
22.08.07, 21:30
Grub kann mit den Verzeichnisnamen erstmal doch gar nichts anfangen. Das springt nur auf die Partition die ihm mit root(hdx,y) mitgegeben wird und sieht sich dort um. Wenn auf hda8 (hd0,7) dieselben Dateien in denselben Hierarchien sind wie vorher auf / dann ist es glücklich.

Und es ändert sich ja auch nichts. hda8 wird auf /boot gemountet und gut.

Probier es mit dem oben empfohlenen cp -a doch einfach aus. Du kannst /tmp (hda8) und /boot (innerhalb von /) dann ja einfach abgleichen. In dem Moment in dem Du /tmp dann auf /boot mountest stimmen die Pfade wieder...

Wenn Du /boot nach dem kopieren nicht löscht sondern hda8 drübermountest kannst du Dir auch kaum was zerschiessen. Zumindest nichts, was mit einer Live nicht wieder hinzubiegen wäre.

Interessehalber kannst Du nach dem kopieren der Dateien von /boot nach /tmp (hda8) dort noch eine Datei "diesisthda8.text" touchen. Wenn die nach dem mounten auf /boot dort auftaucht weisst Du, daß Du auf der richtigen Partition bist...


Kreol

gadget
22.08.07, 21:32
Ich werde in den nächsten Tagen einmal testen und dann berichten ;)

Vielen Dank!

Gruß,
gadget

gadget
12.10.07, 20:34
So, ich dann endlich mal dazu gekommen, /boot auszulagern.

Was für eine große Frage war: Lag die menu.lst bislang auf (hd0,1)/boot/grub, müsste ich dann auf (hd0,7) ebenfalls ein Verzeichnis /boot anlegen, damit grub es beim Systemstart findet?
Das anschließende Mounten von hda8 unter /boot ist ja völlig klar.

Nun weiß ich, wie's läuft: Nach

grub
root (hd0,7)
suchte grub die nötigen Dateien zuerst unter (hd0,7)/boot, fand sie dort nicht und suchte dann unter (hd0,7) ...

kreol: Du hattest vollkommen Recht ;)

Vielen Dank
gadget