Austrian Linux Forum

Bootloader GRUB installieren

Kategorien: Linux How-Tos
0 Antworten
theEdge
theEdge am Freitag, 8. Oktober 2004 um 16:08
Mal angenommen, man hat eine Boot-Partition auf der kein Bootloader installiert ist, sprich man kann lediglich das OS booten, welches sich auf der Boot-Partition befindet. Man nehme an, man habe irrtümlicherweise Windows installiert ;) welches ja bekanntermaßen keinerlei Bootloader bereitstellt. Man steht vor einem großen Problem, zumal man gerne wieder in sein Linux möchte... Punkt eins und zwei können ausgelassen werden, wenn die Dateien bereits existieren bzw. konfiguriert sind. 1. Ein geeignetes Verzeichnis auf der root-Partition einrichten [code]$ mkdir /boot/grub[/code] Sofern sich die Dateien aus /usr/lib/grub noch nicht im Verzeichnis befinden, sollte man diesen Zustand ändern: [code]$ cp /usr/lib/grub/* /boot/grub[/code] 2. GRUB konfigurieren Um sich weniger Stress zu machen, empfehle ich, GRUB bereits jetzt für den bootvorgang zu konfigurieren, d.h. wir schreiben bereits jetzt die menu.lst, welche jene Einträge enthalten wird, die uns später beim Booten zur Auswahl stehen sollen. Eine Beispieldatei hier: [code] # Deutsche Tastaturbelegung setkey y z setkey z y setkey Y Z setkey Z Y setkey equal parenright setkey parenright parenleft setkey parenleft asterisk setkey doublequote at setkey plus bracketright setkey minus slash setkey slash ampersand setkey ampersand percent setkey percent caret setkey underscore question setkey question underscore setkey semicolon less setkey less numbersign setkey numbersign backslash setkey colon greater setkey greater bar setkey asterisk braceright # menu.lst - See: grub(8), info grub, update-grub(8) # grub-install(8), grub-floppy(8), # grub-md5-crypt, /usr/share/doc/grub # and /usr/share/doc/grub-doc/. ## default selection default 0 ## timeout sec timeout 5 # Pretty colours color cyan/blue white/blue gfxmenu (hd0,2)/boot/message ## password ['--md5'] passwd # If used in the first section of a menu file, disable all interactive editing # control (menu entry editor and command-line) and entries protected by the # command 'lock' # e.g. password topsecret # password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/ # password topsecret ## default grub root device ## e.g. groot=(hd0,0) # groot=(hd0,2) ## should update-grub create alternative automagic boot options ## e.g. alternative=true ## alternative=false # alternative=false ## should update-grub lock alternative automagic boot options ## e.g. lockalternative=true ## lockalternative=false # lockalternative=false ## altoption boot targets option ## multiple altoptions lines are allowed ## e.g. altoptions=(extra menu suffix) extra boot options ## altoptions=(recovery mode) single # altoptions=(recovery mode) single ## controls how many kernels should be put into the menu.lst ## only counts the first occurence of a kernel, not the ## alternative kernel options ## e.g. howmany=all ## howmany=7 # howmany=all ## ## End Default Options ## title Debian GNU/Linux, kernel 2.6.8-testing root (hd0,2) kernel /boot/vmlinuz-2.6.8-testing root=/dev/hdb3 ro ramdisk_size=100000 lang=de apm=power-off hda=scsi hdb=scsi hdc=scsi hdd=scsi hde=scsi hdf=scsi hdg=scsi hdh=scsi nomce vga=0x317 savedefault boot title Debian GNU/Linux, kernel 2.6.8.1-kanotix-5 root (hd0,2) kernel /boot/vmlinuz-2.6.8.1-kanotix-5 root=/dev/hdb3 ro ramdisk_size=100000 lang=de apm=power-off hda=scsi hdb=scsi hdc=scsi hdd=scsi hde=scsi hdf=scsi hdg=scsi hdh=scsi nomce vga=0x317 savedefault boot title Windows 2K/XP/2003 (hdb1) rootnoverify (hd0,0) makeactive chainloader +1 savedefault [/code] In diesem Beispiel werden mehrere Kernelkonfigurationen angezeigt, sowie eine Windows-Installation... Aufpassen auch auf die device.map, sie sollte mit den partitionen aus menu.lst übereinstimmen, ansonsten findet GRUB nicht, was er booten soll [code] (hd0) /dev/hdb (hd1) /dev/sda [/code] 3. Bootdiskette erstellen Die meiner Meinung und Erfahrung nach beste Methode, ein möglicheriwese sogar komplett ruiniertes System wieder bootfähig zu machen, ist das Booten via Diskette und Einrichten des Bootloaders via Diskette (greetz 2 grundi) Also: Kopieren der Dateien im raw-Modus auf eine Diskette (fd0 eventuell abändern) [code] $ cd /boot/grub $ dd if=stage1 of=/dev/fd0 count=512 count=1 $ dd if=stage2 of=/dev/fd0 count=512 seek=1 [/code] 4. Von der Diskette booten und GRUB einrichten Jetzt wirds spannend: Diskette einlegen und booten Wird gebootet, werden wir von einem prompt (grub>) empfangen. Mit erhalten wir eine Übersicht alelr verfügbaren Befehle und Auto-vervollständigung (mittels Tab, wie gewöhnt) steht auch zur Verfügung a) Grub mitteilen, wovon wir booten möchten, sprich in welche Partition wir den Bootloader haben wollen [code]grub> root (hd0,2)[/code] Root wird auf der ersten Platte auf die dritte Partition gesetzt (GRUB beginnt bei 0 zu zählen) b) Den ganzen Rest konfigurieren [code]grub> install=/boot/grub/stage1 d (hd0) /boot/grub/stage2 0x8000 p /boot/grub/menu.lst[/code] Der Code is allgemeingültig, sofern man vorher alles in /boot/grub kopiert hat (Punkt 1) c) und installieren [code]grub> makeactive[/code] fertig! wahrscheinlich findet GRUB keine grafische Oberfläche (es wird eine Warnung ausgegeben, keine Angst, is harmlos) aber dafür kann man jetz wieder alles booten, was man vorher in der menu.lst reingeschrieben hat. GRUB biete übrigens auch die Möglichkeit, direkt im Bootmenü, die Einträge zu ändern. Einfach 'e' drücken und schon gelangt man zu einer umfangreichen Editierungsfunktion viel Spass und viel Glück ;)

Kommentare