18
OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011 INNEHÅLL Uppstartprocessen i Linux Uppstartskript Bootladdare Driftsnivåer Startskript Grub

OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

Embed Size (px)

DESCRIPTION

INNEHÅLL Uppstartprocessen i Linux Uppstartskript Bootladdare Driftsnivåer Startskript Grub. OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011. Uppstartprocessen i Linux. Att starta en dator är för användaren väldigt enkel.... Förutsatt att systemet fungerar! - PowerPoint PPT Presentation

Citation preview

Page 1: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

OPERATIVSYSTEM OCH PRAKTISK LINUXFöreläsning 7 – Vecka 4 2011

INNEHÅLLUppstartprocessen i Linux

UppstartskriptBootladdareDriftsnivåerStartskriptGrub

Page 2: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

Uppstartprocessen i Linux

Att starta en dator är för användaren väldigt enkel....

Förutsatt att systemet fungerar!

Det som egentligen händer i datorn när man trycker på ”power” knappen är

väldigt komplicerat!

Processen kallas för boot processen eller bootstrap

Det första som händer är att en instruktion hämtas från adressen FFF:000h

i datorns ROM (denna adress är samma i alla persondatorer!)

Denna instruktion är oftast bara en pekare till den adress i datorns ROM

där den första sekvensen i datorns startrutin finns.

Page 3: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

Power On Self Test

Nästa steg är en fas som kallas för POST-fasen.

POST-fasen går ut på att kontrollera att alla delar i datorn fungerar som de

skall

Om ett hårdvarufel upptäcks kommer datorn att stanna i detta skede

Page 4: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

Bootladdare

I den första sektorn på hårddisken ligger någonting som kallas Master Boot

Record (MBR)

I MBR lagras en programvara som kallas bootladdare

Det följer ofta med en eller flera bootladdare när man installerar ett

Operativsystem

Den vanligaste bootladdaren till Linux är idag Grub

Den simplaste bootladdaren talar om för datorn var operativsystemets

kärna finns (på vilken enhet och på vilken partition)

Page 5: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

Initialisering av Linuxkärnan

Linuxkärnan ligger oftast sparad som en fil någonstans på hårdisken.

Vanligen finns den i katalogen /boot och heter någonting i stil med vmlinuz

Det första kärnan gör är att den tar reda på vilken maskinvara som finns

Tillgänglig

Denna process syns på skärmen i form av en massa ”kryptisk” information

Informationen visar vilken maskinvara som hittats och konfigurerats, ibland

skrivs ut vem som skrivit drivrutinerna etc.

Page 6: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

Systemprocesser

När kärnan initialiserats startar den init-processen genom att starta

programmet /sbin/init vilken alltid har processid 1.

Alla andra processer startas sedan av init-processen

När init-processen startar hämtar den indata från konfigurationsfilen

/etc/inittab

I inittab finns inställningar för vad init

Page 7: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

inittab

Inställningarna i inittab är formaterade enligt följande modell:

Id-kod:driftsnivå:argument:process

Id-kod: En unik kod som identifierar den aktuella konfigurationsraden

Driftsnivå: 1 = enanvändarläge, 6 = omstart osv..

Argument: talar om vilken händelse som gällerArgument Händelse

Ctrlaltdel Hur operativsystemet skall reagera på ctrl + alt + del

Initdefault Anger vilken driftsnivå som skall användas

Once Init startar processen vid byte av driftsnivå

Respawn startar om ett kommando när det avslutas

Sysinit Init kör kommandot under bootprocessen

Wait Init väntar på att kommandot har avslutats

Page 8: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

inittab

Processfältet innehåller den process som skall startas när händelsen

inträffar.

Exempel:

Ca::ctrlaltdel:/sbin/shutdown –t3 –r now

Betyder att när ctrl + alt + del nedtrycks utförs kommandot

/sbin/shutdown –t3 –r now vilket stänger av datorn efter 3 sekunder.

Efter uppstart kontrollerar m.a.o. init-processen hela tiden om denna

händelse inträffar och om den inträffar utförs kommandot

Page 9: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

Driftsnivå (Runlevel)

När Linuxsystemet startat alla grundläggande tjänster, dvs. När det kommit

så långt i uppstartprocessen att det är användbart, är det dags att välja

vilken driftsnivå som operativsystemet skall startas upp i

Det är specificerat i filen /etc/inittab vilken driftsnivå som skall användas när

datorn startas vid ”normal” uppstart

Det är möjligt att starta datorn i en annan driftsnivå om man anger

driftsnivåns nummer som argument till kerneln vid uppstart (eller inifrån

bootladdaren)

På detta vis kan man skapa flera bootval som startar datorn i olika

driftsnivåer

Page 10: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

Driftsnivå (Runlevel)

Fördefinierade driftsnivåer samt syften:

Driftsnåvi Betydelse

0 Halt; stannar datorn!

1 Enanvändarläge

2 Fleranvändarläge utan nätverk (NFS)

3 Fleranvändarläge med nätverk (NFS)

4 Används inte

5 Startar fönsterhanteraren X-windows

6 Omstart

Page 11: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

Driftsnivå (Runlevel)

Vanligast är att arbetsstationer använder driftsnivå 5 och att servrar

använder driftsnivå 3

Detta p.g.a. att personer som sitter och arbetar framför datorn vill använda

sig av ett grafiskt användargränssnitt, samtidigt som det är onödigt att ha

ett grafiskt användargränssnitt igång på en server som oftast inte ens har

en monitor inkopplad

Page 12: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

Startskript

Efter att initprocessen startats, exekverar den en massa startskript

Startskripten är vanliga shellskript som oftast exekveras i Bourne shell (sh)

eller Bourne again shell (Bash)

Vanliga uppgifter som utförs av shellskript: Sätta upp nätverksinställningar Initialisera demonter Utföra allehanda andra uppgifter

Skriver oftast ut information som talar om att de körs och resultatet av

körningen

Page 13: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

Startskript

Det fins åtta stycken startskriptkataloger som används vid uppstart

Dessa kataloger är alla placerade i katalogen /etc och heter: init.d rc0.d .. rc6.d

Siffrorna 0 – 6 representerar driftsnivån

När en dator startas upp i en viss dritfsnivå körs de skript som finns i den

katalog som motsvarar driftsnivånummern

Page 14: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

Startskript

Alla startskript bör vara placerade i katalogen /etc/init.d

Sedan har dessa startskript symboliska länkar till driftsnivåkatalogerna

Ett startskript kan anropas med en flagga, det skall t.ex. Alltid vara möjligt

att ange flaggorna start och stop till ett startskript

Länkarna i rc?.d-katalogerna namnges i enlighet med en speciell

namnstandard:

S eller K, tvåsiffrigt nummer, och namnet som det egentliga skriptet

har i katalogen /etc/init.d

Skripten körs i nummerordning från 01 – 99.

Page 15: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

Enanvändarläge (single-user)

Samma sak som driftsnivå 1

Är ett administrationsläge som används för att ändra på den grundläggande

konfigurationen

Denna driftsnivå behövs för att vissa saker bör göras när alla andra tjänster

är avstängda, t.ex: Reparation av filsystem Konfiguration av vissa startskript Återställning av lösenordet för root

Page 16: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

Enanvändarläge (single-user)

Det finns två sätt att komma in i enanvändarläge: Skriver ”init 1” på terminalen Startar om datorn och vid bootprompten skriver in namnet på

startalternativet följt med ordet ”single” eller en etta (1)

Om man startar upp en dator i enanvändarläge kommer endast

rotfilsystmet (/) att monteras

Page 17: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

Grub

Är den vanligaste bootladdaren i Linux i dagens läge

Bootladdarens körs igång innan själva operativsystmet

Bootladdarens egentliga uppgift är att hålla ordning på vilken av flera

alternativa operativsysteminstallationer som skall startas

Konfiturationsfilen för grub heter oftast grub.conf och var den finns varierar

beroende på linuxdistribution

Page 18: OPERATIVSYSTEM OCH PRAKTISK LINUX Föreläsning 7 – Vecka 4 2011

Grub: Bootparametrar

Det finns vissa parametrar som kan skickas till Linuxkärnan vid uppstart.

Denna funktion finns för att det skall gå att ha en operativsystemkärna med

standardinställningar, men med flera startalternativ.

Olika startalternativ kan vara användbara vid t.ex. Felsökning eller vid

installation av ny maskinvara