Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AccessAdobe photoshopAlgoritmiAutocadBaze de dateCC sharp
CalculatoareCorel drawDot netExcelFox proFrontpageHardware
HtmlInternetJavaLinuxMatlabMs dosPascal
PhpPower pointRetele calculatoareSqlTutorialsWebdesignWindows
WordXml

AspAutocadCDot netExcelFox proHtmlJava
LinuxMathcadPhotoshopPhpSqlVisual studioWindowsXml

Boot managere in Linux

linux



+ Font mai mare | - Font mai mic



DOCUMENTE SIMILARE

Boot managere in Linux

Boot managere in Linux



Procesul de boot

Dupa terminarea POST-ului, intreruperea INT 19 intra in actiune, aceasta intrerupere avand rolul de a incarca primul sector de pe hard disk adica MBR in memorie la locatia 0000:7c00, dupa care va rula codul de la locatia respectiva. Micutul program din MBR va incerca sa gaseasca partitia bootabila (activa) din tabela de partitii, in cazul in care o gaseste va incarca in memorie sectorul de boot din partitia activa.

MBR ( Master Boot Record)

Master Boot Record este primul sector aflat pe hard disk, acest sector fiind creat la partitionare de programul FDISK, sector ce contine 512 Bytes.

Sectorul este impartit in :

1) Programul de boot (Master Boot Code) - 446 bytes

2) Tabela de partitii (Master Partition Table) - 64 bytes (16 x 4)

3) Semnatura (Boot Signature) - 2 bytes

1) Programul de boot

Este un mic programel ce incepe de la offset-ul 000h ocupand 446 de octeti.

Rolul acestui program este de a afla care este partitia activa. In cazul in care o gaseste executa codul din sectorul de boot din partitia activa.

2) Tabela de partitii

Acesta tabela contine intrarile pentru cele 4 partitii primare, dintre care numai una poate fi activa la un moment dat.

Linux-ul noteaza aceste partitii cu :

daca hard disk-ul se afla pe primary master le noteaza cu hda1 - hda4, respectiv cu hdb1 - hdb4 daca se afla pe primary slave.

daca hdd se afla pe pe controlerul secondary partiile vor primi denumirea de hdc1-4, respectic hdd1-4.

In cazul in care exista si o partitie extinsa aceasta partitie va fi denumita hda5 - hdxx.

Aceasta tabela de partitii incepe de la offset-ul 0x01BE ocupand 64 de octeti ca marime, continand 4 partitii primare sau 3 primare si una extinsa, fiecare dintre ele ocupand 16 bytes. Cea extinsa la randul ei poate fi impartita in mai multe discuri logice (hda6 - hdaX).

3) Semnatura

Ultimii 2 bytes sunt ocupati de o suma de control care are rolul de a verifica daca fost definita o tabela de partitii sau daca exista erori in tabela de partitii, semnatura avand intotdeauna valoarea AA55 in hexazecimal.

Boot Managerul este primul program ce ruleaza cand este pornit un calculator. El este responsabil de incarcarea si transferarea controlului sistemului de operare sau mai bine zis kernelui, kernelul initializand restul sistemului de operare. El este instalat in MBR sau in sectorul de boot al unei partitii si ocupa 446 de octeti.

Cele mai folosite boot-managere sunt:

GRUB

LILO

LOADLIN

GRUB (GRand Unified Bootloader)

Grub a fost realizat in anul 1995 de Erich Boleyn, iar in anul 1999 a ajuns facand parte componenta din proiectul GNU. Initial el a incercat sa modifice boot loader-ul de la FreeBSD, dar a realizat ca e mai bine sa inceapa sa scrie singur un boot-manager, ajungand azi unul dintre cei mai buni boot-manageri de linux.

Este compatibil cu FreeBSD, NetBSD, OpenBSD, Linux, si de asemenea suporta Dos si Windows NT/XP.

Acest manager este foarte flexibil el permitand ca incarcarea sistemului sa fie posibila si dintr-o consola:

GRUB  version 0.95  (639K lower / 261056K upper memory)

 [ Minimal BASH-like line editing is supported.  For the first word, TAB
   lists possible command completions.  Anywhere else TAB lists the possible
   completions of a device/filename.]

grub>

De asemenea Grub suporta si o multitudine de sisteme de fisiere: FFS, FAT16, FAT32, minixfs (cel mai vechi sistem) si ext2. Cu grub putem face o discheta bootabila indiferent de distributia instalata, in cazul lui Lilo acest lucru era posibil doar pentru sistemul ce era instalat pe hard disk.

Alcatuire

Este alcatuit din 2 parti principale numite stage 1 si stage 2. Stage 1 se afla in MBR ocupand 512 octeti exact cat are si sectorul, iar stage 2 se afla pe hard disk in /boot/grub. Mai exista inca un stage numit stage 1.5 care este intermediar intre stage 1 si stage 2, mai exact stage 1 incarca stage 1.5 iar stage 1.5 incarca stage 2.

In cazul in care nu isi gaseste unul dintre stage-uri 1.5 sau 2 grub ne lasa la indemana o consola cu care putem sa pornim sistemul.

1.2 Sistemul de numerotare

Sistemul de numerotare a partitiilor pe care il foloseste grub este diferit fata de sistemul de numerotare al linuxului.

Primele 2 litere desemneaza mediul care este accesat adica hd (hard disk) sau fd (floppy disk). Prima cifra reprezinta hard disk-ul, iar a doua cifra reprezinta partitia, in ambele cazuri numerotarea facandu-se de la 0.

Ex:

(fd0) - floppy
(hd0) - primul hard disk de pe sistem
(hd1) - al doilea hard disk de pe sistem
(hd0,1) - a doua partitie pe primul hard disk

Partitiile primare sunt numerotate de la 0 - 3, iar discurile logice sunt numerotate de la 4 in sus.

Instalarea programului

1) Se dezarhiveaza arhiva cu programul tar :

#tar -xzvf grub-0.95.tar.gz

2) Se intra in director

#cd grub-0.95

3) Se pregateste compilarea

#./configure

4) Se compileaza programul

# make

5) Dupa care se instaleaza programul

#make install

Dupa instalare fisierele de care avem nevoie se gasesc in directorul usrlocalsharegrubi386-pc. Din acel director avem nevoie doar de fisierele stage1 si stage2. Aceste doua fisiere le copiem in directorul /boot/grub, in cazul in care el exista, daca nu exista cream noi directorul.

cp /usr/share/grub/i386-pc/stage /boot/grub

Dupa care cream un fisier cu intrarile pentru fiecare sistem de operare in parte pe care il denumim menu.lst.

Trebuie spus ca suportul pentru splash-uri nu este activat, dar se poate rezolva cu anumite patch-uri.

Comenzi din consola pentru procesul de boot

Linux

grub> root (hd0,1)

Filesystem type is ext2fs, partition type 0x83

grub> kernel /vmlinuz ro root=/dev/hda2

[Linux-bzImage, setup=0x1400, size=0x12d50d]

Vmlinuz este doar simbolic, el se completeaza in continuare cu numele versiunii kernelui, versiunea diferind in functie de distributia folosita. Ex: (/vmlinuz-2.4.22-1.2115 in cazul Fedorei core 1). In cazul in care nu stim exact numele complet al kernelui putem folosi urmatoarea comanda :

grub> kernel /boot/

Aceasta comanda ne listeaza toate fisierele ce se afla in directorul /boot pentru a ne usura gasirea exacta a kernelui.

La distributiile mai noi trebuie executata si comanda initrd pentru ramdisk :

grub> initrd (hd0,0) /initrd-2.4.22-1.2115.img

[Linux-initrd @ 0xffb8000, 0x27e3e bytes]

In cazul in care se omite comanda initrd va aparea eroarea "Kernel panic: No init found. Try passsing init=option to kernel" .

grub> boot

Sa explicam comezile ce le-am scris acum:

comanda root desemneaza locatia partitiei root unde e instalat linux.

a doua comanda dupa cum se poate vedea este locatia kernelui, aceasta comanda mai contine si parametrul ro (read only) doar pt citire.

iar ultima comanda boot da startul bootarii.

Dupa cum se poate vedea la prima comanda root s-a tinut cont de sistemul de numerotare a partitiilor folosit de Grub iar la a doua comanda root s-a tinut cont de sistemul folosit de linux la numerotarea partitiilor.

Windows 9X/NT/XP

Folosind aceste comenzi se poate boota orice sistem Windows, aceste comenzi fiind folosite ca standard.


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

Comanda rootnoverify face acelasi lucru ca si comanda root dar nu o monteaza, make active declara partitia ca fiind activa, iar chainloader +1 preda controlul programului de boot din primul sector de pe partitia specificata.

Dupa cum stiti sistemul de operare Windows, nu poate sa booteze de pe al doilea hard disk, asta in cazul in care mai avem un hard disk, asa ca trebuie sa folosim o tehnica de inversare a hard disk-ului pentru al pacalii.


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

O alta problema se iveste atunci cand pe hard disk avem mai multe sisteme Windows instalate pe un hard disk. Atunci vor exista mai multe partitii primare pe hard disk si pentru Grub va aparea o confuzie si nu va stii pe care sa o aleaga.

Si in acest caz este o solutie, si aceasta solutie consta in ascunderea uneia dintre partitii, pe cealalta lasand-o vizibila.


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

FreeBSD


grub> root (hd0,a)
grub> kernel /boot/loader
grub> boot

Metode de instalare/reinstalare

Instalare din consola

grub> find /boot/grub/stage1 # pentru gasirea partitiei root

sau

grub> find /grub/stage1 # daca exista o partitie separata pentru boot

(hd0,1)


grub> root (hd0,1)

Filesystem type is ext2fs, partition type 0x83


grub> setup (hd0) # instalarea se face in MBR


Checking if '/boot/grub/stage1' exists. no
Checking if '/grub/stage1' exists. yes
Checking if '/grub/stage2' exists. yes
Checking if '/grub/e2fs_stage1_5' exists. yes
Running 'embed /grub/e2fs_stage1_5 (hd0)'. 15 sectors are embedded
succeded
Running 'install /grub/stage1 (hd0) (hd0) 1+15 p (hd0,2)/grub/stage2 /grub/grub.conf. succeded
Done



grub> setup (hd0,1) # instalare in sectorul de boot al partitiei

Utilitarul grub-install

Boot-managerul are in pachetul sau un utilitar de instalare, ce instaleaza stage 1 in MBR.

Pentru a instala Grub folosind aceasta metoda trebuie sa avem la indemana o distributie de Linux, o discheta sistem, un Live CD sau orice altceva pentru a avea acces la consola.

#mkdir linux - facem un director oarecare de ex. /linux

#mount /dev/hda2 /linux - dupa care montam partitia in /linux

#chroot /linux - intram in /linux

#cd /boot/grub - intram in directorul /boot/grub

Dupa care executam comanda :

#grub-install /dev/hda # in cazul in care avem o singura partitie pentru linux

sau

#grub-install --root-directory=/boot /dev/hda # daca avem o partitie separata

pentru /boot

Installation finished. No error reported.

This is the contents of the device map /boot/grub/device.map.

Check if this is correct or not. If any of the lines is incorrect,

fix it and re-run the script `grub-install'.

# this device map was generated by anaconda

(fd0)  /dev/fd0

(hd0)  /dev/had

Metode de reinstalare

Prezint cateva metode de reinstalare a acestui boot-loader in cazul distributiilor Fedora si Mandrake.

Fedora

Bootam cu primul CD al distributiei dupa care la aparitia prompterului tastam linux rescue. Mediul de salvare de pe cd va cauta partitia root si o va monta in /mnt/sysimage.

In continuare vom intra in partitie cu comanda chroot /mnt/sysimage, dupa care vom executa comenzile de instalare.

Mandrake

La fel bootam ca si in cazul Fedorei cu primul CD al distributiei, la aparitia prompterului apasam tasta F1.

La aparitia prompterului se vom scrie rescue si apasam [Enter].

boot: rescue

Ne va aparea un meniu cu urmatoarele optiuni

Re-Install Boot Loader
   Restore Windows Boot Loader
   Mount your partition under /mnt
   Go to console
   Reboot
   Doc: what's addressed by this Rescue

Din meniu vom alege prima optiune de reinstalare a boot-managerului sau a treia optiune, optiune in care se monteaza automat partitia in /mnt, dupa care putem executa comenzile de instalare.

Editarea fisierului de configurare a meniului

Fisierul de configurare al meniului se afla in directorul /boot/grub si se numeste menu.lst sau grub.conf depinde de distributie.

In cazul in care meniul nu apare la bootare inseamna ca acesta lipseste si nu a fost incarcat de catre Grub.

Sa analizam in continuare intrarile pentru fiecare sistem de operare :

Linux


title Red Hat Linux

default=0

timeout=10

splashimage=(hd0,0)/grub/splash.xpm.gz
root (hd0,1)
kernel /vmlinuz-2.4.9-21 ro root=/dev/hda2

initrd /initrd-2.4.9-21.img 

Prima linie ne arata titlul ce va aparea in meniu, a doua linie default=0 seteaza ca aceasta intrare sa fie aleasa ca implicita la bootare, a treia linie timeout=10 ne arata timpul pentru a selecta o intrare din meniu, in cazul in care nu se apasa nici o tasta se executa automat selectia aleasa ca implicita. A patra linie splash=(hd0,0)/grub/splash.xpm.gz ne arata calea catre imaginea de fundal, de mentionat faptul ca calea catre fundal este numerotata in sistemul folosit de Grub.

Splash-urile folosite de Grub sunt in format XPM, au ca dimensiuni o rezolutie de 640x480 si sunt pe 14 culori, iar in acest caz imaginea este comprimata cu Gzip pentru a se incarca mai repede.

Pentru modificarea splash-urilor va recomand sa cititi urmatoarele tutoriale de pe urmatoarele site-uri:

https://ruslug.rutgers.edu/~mcgrof/grub-images/

https://www.linuxgazette.com/node/142

sau daca doriti sa luati splash-uri gata facute le luati de aici:

https://ruslug.rutgers.edu/~mcgrof/grub-images/images/ - pentru diferite distributii

https://sleepybuddha.sl.funpic.de/ubuntu/ - cateva splash-uri pentru Ubuntu

Optional putem folosi si alte comenzi in afara de acestea. Cele mai folosite ar fi urmatoarele:

password --md5 <parola> # pentru blocarea accesului la consola

color black/yellow yellow/black   # pentru colorarea meniului

Exemplu de creare a unei parole criptate folosind consola

grub> md5crypt

Password: **********

Encrypted: $1$saMbl3Bs$7SDDtT6YiTpQ4lGMCccDg.

Windows

title Windows XP Professional
rootnoverify (hd0,0)
makeactive
chainloader  +1

Va prezint in continuare exemplul unui fisier de configurare al distributiei Fedora core 1 pentru a vedea configurarile folosite de aceasta distributie.

Fedora Core 1

# grub.conf generated by anaconda

# Note that you do not have to rerun grub after making changes to this file

# NOTICE: You do not have a /boot partition. This means that

all kernel and initrd paths are relative to /, eg.

root (hd0,1)

kernel /boot/vmlinuz-version ro root=/dev/hda2

initrd /boot/initrd-version.img

#boot=/dev/hda

default=1

timeout=10

splashimage=(hd0,1)/boot/grub/splash.xpm.gz

password --md5 $1$saMbl3Bs$7SDDtT6YiTpQ4lGMCccDg.

title Fedora Core (2.4.22-1.2115.nptl)

root (hd0,1)

kernel /boot/vmlinuz-2.4.22-1.2115.nptl ro root=LABEL=/ hdc=ide-scsi rhgb

initrd /boot/initrd-2.4.22-1.2115.nptl.img

title Windows XP

rootnoverify (hd0,0)

chainloader +1

NTLDR

Daca dorim sa pastram boot-managerul folosit de Windows atunci vom urma urmatorii pasi:

1) Salvarea MBR-ului sub forma unui fisier cu comanda :

#dd if=/dev/hda2 of=/home/bootsect.lnx bs=512 count=1

2) In directorul /home vom gasi fisierul pe care l-am creat, acest fisier il vom copia pe o discheta sau il copiem din Windows in cazul in care avem un utilitar care sa acceseze partitii ext2 sau ext3, cum ar fi Explore2fs version 1.0 sau mai exista un plugin pentru Total Commander.

#cp /home/bootsect.lnx /mnt/floppy

3) Pentru modificarea fisierului de configurare a boot-managerului din Windows, care se gaseste in C: si este ascuns trebuie sa mergem in meniul Tools->Folder Options->View selectam Show hidden files and folders, si deselectam Hide protected operating system files (Recommended).Dupa care se da click dreapta pe fisier alegem Properties si debifam Read-only

[boot loader]

timeout=30

default=multi(0)disk(0)rdisk(0)partition(1)WINDOWS

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)WINDOWS='Microsoft Windows XP Professional' /noexecute=optin /fastdetect

C:bootsect.lnx='Linux'

4) Dupa ce s-au facut toate acestea va trebui sa se rescrie MBR-ul, existand 2 cazuri:

a)     Daca inca avem instalat Win9X pe calculator se va boota de pe o discheta sistem si se va da comanda :

A:Fdisk /mbr

b)     Iar in cazul in care avem Win XP instalat, se va boot-a cu CD-ul vom alege optiunea Repair, dupa care se alege partitia unde este instalat Windows, se va introduce parola de administrator si se va executa comanda :

C:WINDOWSFIXMBR

Crearea unei dischete bootabile

1) Formatam discheta

#fdformat /dev/fd0

2) Cream sistemul de fisiere

#mke2fs /dev/fd0

3) Montam discheta

#mount /dev/fd0 /mnt/floppy

4) Facem directoarele

#mkdir -p /mnt/floppy/boot/grub

5) Copiem fisierele pe discheta (doar stage1, stage2 si menu.lst sunt necesare)

#cp /boot/grub/stage1 /mnt/floppy/boot/grub

#cp /boot/grub/stage2 /mnt/floppy/boot/grub

#cp /boot/grub/menu.lst /mnt/floppy/boot/grub

6) Dupa care executam urmatoarele comenzi

grub> root (fd0)
grub> setup (fd0)
grub> quit

sau mai simplu

#grub-install --root-directory=/mnt/floppy '(fd0)'

La acesta comanda timpul de instalare este ceva mai mare, datorita faptului ca se copiaza toate stage-urile pe discheta.

7) Si in sfarsit demontam discheta

#umount /mnt/floppy

LILO (LInux LOader)

Numele de LILO provine de la Linux Loader si a fost unul dintre cele mai folosite boot-managere de-a lungul anilor. De ce zic ca a fost? Daca facem o comparatie intre el si Grub, Lilo avea cateva dezavantaje, cum ar fi: lipsa suportului pentru limita de 1024 de cilindri, incepand cu versiunea 21.4 a aparut si suportul pentru 1024 de cilindri sau la orice modificare a fisierului de configurare trebuia sa fie reinstalat, pentru a stii de modificarile facute.

Sectorul de boot este incarcat de Bios dupa cum se stie la adresa 0x7C00, dupa care programul se muta la adresa 0x9A00 pentru anumite setari si incarca a doua parte a boot-managerului de la adresa 0x9B00, dupa care ii preda controlul. Pentru a vedea ce parti din boot-manager au fost incarcate, Lilo afiseaza pe rand literele L..I..L..O fiecare litera insemnand o anumita faza de incarcare din boot-manager.

Lilo poate incarca sisteme de operare ca: DOS, Windows 9x/NT/2000/XP, Linux, si BSD. Deasemenea Lilo nu necesita o partitie dedicata, poate fi instalat numai din Linux si nu are nevoie de un sistem de fisiere.

Un dezavantaj semnificativ pe care il are Lilo este acela ca in cazul in care in fisierul de configurare apar erori, nu o sa putem sa bootam nici un sistem de operare, pe cand la Grub putem porni orice sistem direct din consola indiferent de setarile din fisierul de configurare.

Si Lilo are o mini consola, dar este folosita doar pentru a specifica parametrii optionali kernelui. Pentru a avea acces la ea in cazul in care in fisierul de configurare nu apare comanda prompt trebuie sa apasam tasta [Shift].

Putem de asemenea sa incarcam sistemul de operare direct din prompter

boot: linux root=/dev/hda2

Fisierul de configurare

Fisierul de configurare se afla in directorul /etc/lilo.conf. Comanda sbin/lilo foloseste acest fisier pentru a determina ce informatii din fisier trebuie scrise in sectorul de boot.

Linux

boot=/dev/hda

map=/boot/map

install=/boot/boot.b

prompt

timeout=50

message=/boot/message.txt

lba32

default=linux

image=/boot/vmlinuz-2.4.0-0.43.6

label=linux

initrd=/boot/initrd-2.4.0-0.43.6.img

read-only

root=/dev/hda2

Acum sa explicam comenzile de configurare :

  • boot=/dev/hda aceasta comanda ii spune lui Lilo ca instalarea sa se faca pe primul hard disk de pe primul controller.
  • map=/boot/map localizarea fisierului map, fisier ce contine indicatoarele pentru sistemele de operare.
  • install=/boot/boot.b comanda ce ii ordona lui Lilo sa instaleze acest fisier ca un nou sector de boot.
  • prompt pentru afisarea prompterului, in cazul in care acesta linie lipseste, putem avea acces la consola prin apasarea tastei [Shift].
  • timeout=10 este timpul de asteptare pentru alegerea sistemului de operare, in cazul in care nu s-a facut o alegere, va boota intrarea aleasa ca implicita.
  • message=/boot/message este mesajul de boot
  • lba32 modul de acces al hard disk-ului. Aceasta linie se poate inlocui cu comanda linear.
  • default=linux aceasta linie ne arata care este sistemul de operare ales ca implicit.
  • image=/boot/vmlinuz-2.4.0-0.43.6 localizarea kernelui
  • label=linux ne arata numele ce va aparea in meniu.
  • initrd=/boot/initrd-2.4.0-0.43.6.img ne arata locatia ramdisk-ului.
  • read-only specifica ca partitia root sa fie montata doar pentru citire.
  • root=/dev/hda2 specifica ce partitie sa fie folosita ca partitie root.

Slackware 10 foloseste de exemplu urmatorul fisier de configurare :

# generated by 'liloconfig'

# Start LILO global section

boot = /dev/hda

message = /boot/boot_message.txt

prompt

timeout = 1200

# Override dangerous defaults that rewrite the partition table:

change-rules

reset

# VESA framebuffer console @ 1024x768x256

vga = 773

# Normal VGA console

# vga = normal

# VESA framebuffer console @ 1024x768x64k

# vga=791

# End LILO global section

# Windows bootable partition config begins

other = /dev/hda1

label = Windows

table = /dev/hda

# Windows bootable partition config ends

# Linux bootable partition config begins

image = /boot/vmlinuz

root = /dev/hda2

label = Linux

read-only

# Linux bootable partition config ends

Putem de asemenea adauga cateva linii suplimentare in fisierul de configurare, de exemplu punerea unei parole generale pentru a nu putea boota.

password=<password>

sau o parola pe un kernel sau chiar pe un sistem de operare.

image=/boot/vmlinuz-<version>

password=<password>

Windows

other=/dev/hda1  #partitia unde este instalat windows

label=windows # numele ce va aparea in meniu

table=/dev/hda # tabela de partitii

In cazul in care avem Windows instalat pe al doilea hard disk, intrarea pentru Windows ar trebui sa arate ceva de genul asta:

other=/dev/hdb1

label=windows

table=/dev/hdb

map-drive = 0x80

to = 0x81

map-drive = 0x81

to = 0x80

Daca dorim sa dezinstalam Lilo putem face asta din Linux :


/sbin/lilo -u

sau din Windows :

fdisk /mbr - pentru Win 9X

sau

C:WINDOWSFIXBOOT - pentru Windows XP

Dupa modificarea fisierului de configurare Lilo va trebui sa fie reinstalat pentru a stii de modificarile facute si pentru asta vom executa comanda /sbin/lilo -v

Crearea unei dischete de boot

1) fdformat /dev/fd0 # Formatarea dischetei

2) mke2fs /dev/fd0 # Crearea sistemului de fisiere

3) mount -t ext2 /dev/fd0 /mnt/floppy # Montarea dischetei

4) cd /mnt/floppy # Schimbarea mediului de lucru

5) mkdir etc && mkdir boot # Crearea directoarelor

6) cp /boot/boot.b /mnt/floppy/boot # Copierea fisierului ce contine sectorul de  boot

Dupa ce am executat toate aceste comenzi trebuie creat un fisier de configurare pe care il vom denumi lilo.conf.

boot= /dev/fd0

install= /boot/boot.b

MAP= /mnt/floppy/boot/map

read-only

image= /boot/vmlinuz

label=linux

root= /dev/hda2

Acest fisier il vom salva pe discheta in directorul /etc. Nu ne mai ramane decat sa instalam Lilo pe discheta cu urmatoarele comenzi:

7) cd /mnt/floppy # schimbarea mediului de lucru

8) lilo -v -C /mnt/floppy/etc/lilo.conf # Instalarea lui Lilo pe discheta

9) umount /mnt/floppy # Demontarea dischetei

LOADLIN

Pana acum am prezentat doua dintre cele mai folosite boot-managere de linux. Aceste doua boot-managere trebuie instalate in MBR sau cel putin in sectorul de boot al unei partitii.

Loadlin ofera posibilitatea de a boota Linux dintr-o partitie Dos, fara sa foloseasca MBR-ul sau un sectorul de boot dintr-o partitie. Nelucrand cu MBR-ul acest program ne da o oarecare siguranta fata de celelalte boot-managere.

Programul il putem lua de pe https://elserv.ffm.fgan.de/~lermen/ sau de pe primul CD din Fedora, programul il gasiti in dir /dos utilities, sau din Slackware 10 din directorul /kernels.

Instalare

Instalarea este foarte simpla si se face in cativa pasi.

1) Dezarhivam arhiva

tar xzf /mnt/cdrom/dosutils/loadlin.gz

2) Facem un director pe partitia unde este instalat Windows numit /linux sau orice nume dar sa nu nu depaseasca 8 litere pentru ca in Dos lipseste suportul pentru fisierele mai lungi de 8 litere.

mkdir /mnt/c/linux

3) Copiem urmatoarele fisiere : loadlin.exe, kernelul distributiei vmlinuz <versiune> din /boot si fisierul initrd.gz. Dupa ce copiem kernelul va trebui sa il redenumim in vmlinuz sau orice altceva dar sa nu depaseasca 8 litere, la fel se procedeaza cu fisierul initrd.img

Configurare

Pentru a putea boota Linux trebuie sa ne aflam intr-un mediu Dos in care introducem urmatoarele comenzi:

1) Incarcarea kernelului fara ramdisk


C:Linux> loadlin vmlinuz root=/dev/hda2 ro # Slackware 10

2) Incarcarea kernelului si a ramdisk-ului

C:Linux> loadlin vmlinuz root=/dev/hda2 ro initrd=initrd.img

Pentru a nu executa manual aceste comenzi de cate ori bootam in linux, vom face un fisier de configurare.

c:linuxvmlinuz # numele pe care il l-am dat kernelui

root=/dev/hda2 # partitia pe care o vom monta ca root

initrd=initrd.img  # imaginea ramdisk-ului

ro # montarea sa fie facuta doar pentru operatia de citire

mem=256M # pentru folosirea intregii memorii de catre kernel

Acest fisier il vom denumi oricum, dar pentru exemplul nostru il denumim loadlin.par. De mentionat ca in arhiva vom gasi si un fisier de configurare dat ca exemplu numit test.par

Putem folosi toate aceste comenzi intr-o singura linie de comanda cu specificarea ca prompterul de Dos suporta doar 128 de caractere in lungime.

Ajunsi in prompterul de Dos vom tasta urmatoarea comanda pentru a incarca Linux.

C:Linux> loadlin @loadlin.par

De asemenea pentru a fi si mai usor de incarcat sistemul de operare putem sa editam fisierul linux.bat pe care il gasim in arhiva cu care putem boota linux doar cu comanda linux.

rem Sample DOS batch file to boot Linux.

rem First, ensure any unwritten disk buffers are flushed:

smartdrv /C

rem Start the LOADLIN process:

c:linuxloadlin vmlinuz root=/dev/hda2 ro initrd=initrd.img

C:Linux> linux

Cea mai buna solutie este de a boota linux este folosirea unui meniu asa cum are Grub si Lilo.

Windows 98

Pentru a crea un meniu trebuie sa editam fisierul config.sys cu urmatoarele comenzi:

[Menu]

menuitem=Linux, Linux Fedora
menuitem=Windows, Windows 98
menudefault=Linux, 10
menucolor=15,1

[Linux]

shell=c:linuxloadlin.exe @c:linuxloadlin.par


[Windows] 

Dupa cum am spus si mai sus trebuie sa ne aflam intr-un mediu Dos. Avem doua posibilitati de a intra in Dos, fie de pe hard disk, fie cu ajutorul unei dischete.

Daca avem instalat Windows 98 pe hard disk putem sa intram in Dos chiar inainte de procesului de boot cu ajutorul tastei F8, de mentionat faptul ca doar la Windows 9x se poate intra in Dos.

Daca nu avem instalat Windows 9X singura posibilitate este de a boota este cu discheta sau cu ajutorul unui CD-ROM. Pentru aceasta ne trebuie o discheta sistem pe care poate o avem de pe vremea lui Win 98, daca nu vom lua de pe internet imaginea unei dischete de sistem. Imaginile le putem lua de pe adresa www.bootdisk.com sau de pe orice site ce contin imagini pentru dischete.

Daca nu avem posibilitatea de a ne conecta la internet singura noastra sansa este de a face noi o discheta sistem.

My computer -> Floppy (A:) -> Format . -> Create an MS-DOS startup disk -> Start

Ca si o concluzie putem spune ca oricare dintre aceste boot-managere de linux este o alegere potrivita, fiecare cu avantajele si dezavantajele sale. Lilo a fost o alegere buna de-a lungul anilor, noul venit Grub fiind folosit din ce in ce mai mult de foarte multe distributii.

Loadlin este de asemenea o alegere potrivita, mai ales atunci cand

sectorul de boot a fost rescris, si nu avem posibilitea de boota cu Grub sau Lilo.

Ma jos aveti un tabel de comparatie pentru cele 3 boot-managere de linux pentru a va face o idee fiecare ce avantaje si dezavantaje are.

Grub

Lilo

Loadlin

Ultima versiune aparuta

1.6c

Suportul pentru limita de 1024 de cilindri

Da

Da (incepand cu versiunea 21.4)

Da

Partitie dedicata

Nu

Nu

Nu

Instalare din sistemul

Linux

Linux

Windows, Linux

Poate sa incarce urmatoarele sisteme de operare

DOS, Windows 9x/NT/2000/XP, Linux, BSD, BEOS, SCO Unix, OS/2, Solaris

DOS, Windows 9x/NT/2000/XP, Linux, BSD

Linux

Instalare numai in MBR sau in sectorul de boot al partitiei

Da

Da

Nu

Cerinte sistem de fisiere

EXT 2

FAT/FAT32

Imagini fundal

Da

Da

Nu

Licenta

free

free

free

Site

https://www.gnu.org /software/grub/

https://www.acm.uiuc.edu/workshops/

linux_install/lilo.html

https://elserv.ffm.fgan.de/~lermen

Sper ca acest articol v-a lamurit intr-o oarecare masura si sa va ajute in rezolvarea problemelor de configurare ale acestor programe. Acest articol se va actualiza cu noi informatii despre aceste programe, plus adaugarea boot-managerului ISOLINUX/SYSLINUX. Pentru eventualele greseli din articol va rog sa-mi scrieti pe adresa de email yo2lyc@yahoo.com.



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 984
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved