Program Operační systém a jeho design, tabulka rozdělení disku (podrobněji), Instalace Windows a Linuxu krok po kroku, více OS na jednom počítači (multiboot), přeinstalace systému, migrace OS na jiný disk nebo HW. Záchrana dat před reinstalací. historie WINDOWs a DOS, Další OS.
Operační systémy - historie ● ● ●
● ●
http://en.wikipedia.org/wiki/History_of_operating_systems asi 50 léta dvacátého století dávkové zpracování úloh – každá úloha „běžela“ sama na celém počítači přišlo se na to, že počítač tak není využíván efektivně zrodil se program MONITOR, předchůdce operačního systému – –
●
další vývoj 60tá léta – – – –
●
zavádění úloh do počítače automaticky „účetnictví“ - čas procesoru, počet vytištěných stran apod. snaha odstínit hardware počítače od programů vynález „souborového systému“ podprogramy pro tisk, přístup k disku apod accounting (zase účetnictví)
1964 – –
nápad na víceúlohový operační systém což takhle spustit více programů najednou, a procesor mezi nimi bude „přepínat“
Funkce operačního systému ●
Jádro OS: – – – – – – –
●
Přiděluje úlohám procesorový čas (plánuje je) Přiděluje a spravuje paměť Tvoří rozhraní mezi hardware počítače a programy Implementuje souborový systém, umožňuje tak aplikacím snazší práci ze soubory Řídí přístup, uživatelská práva Poskytuje aplikacím API (aplikační rozhraní) pro zobecněný přístup k různým částem OS. (Někdy API pro GUI grafické uživatelské rozhraní)
Systémové programy – – – –
základní programy pro interakci s jádrem OS shelly (bash, command com) příkazy pro výpis souborů, pro kopírování, kontrola integrity souborového systému atp. GUI grafické uživatelské rozhraní je někdy samostatná aplikace (Linux)
Současné operační systémy ● ●
http://en.wikipedia.org/wiki/Operating_systems Rodina operačních systémů Windows – – –
●
Rodina operačních systémů GNU/Linux –
●
Linux, Windows CE, Symbian, PalmOS
Rodina OS pro vestavěná zařízení – – –
●
Solaris,IRIX, BSD, FreeBSD, NetBSD, VMS, Mac OS
Rodina OS pro mobilní zařízení –
●
Debian,Mandrake,Redhat,Fedora,SUSE, ...
Rodina „dinousauřích OS“ Unix –
●
Windows Longhorn Windows XP Windows 2000,Windows NT,Windows Me
speciální OS, kde je nutné dodržet časová omezení QNX, RTOS (auta, raketoplány, stíhačky apod)
Rodina herních OS –
AmigaOS, NeoGeo SNK atd
Architektura moderních OS Kernel, Jádro Drivers, Ovladače souborový systém
Hardware CPU, paměť, periferie
knihovny DLL, so Multitasking: –
preemptivní ●
–
kooperativní ● ●
aplikace2
aplikace1 úloze je přidělen procesor na určitý časový úsek, pak je jádrem spuštěna úloha jiná, stav úloh se uschovává, strategie pro většinu současných OS úloha sama požádá jádro, pokud už nechce běžet používá se ve vestavěných OS
Procesy ●
Proces obsahuje: – – – – – –
● ●
stav priorita vlastník PID (číslo procesu) alokovanou paměť kontext
ps ax, kill každý proces má rodiče a může mít potomky.
Souborové systémy ● ● ●
pro práci s daty součást jádra OS Funkce „ovladače“ pro souborový systém: – –
●
čtení a zápis dat autorizace přístupu
Souborový systém – – –
je uložen v nějakém oddílu na disku (partition table) na disketě nebo na USB klíčence partition není, takže zaujímá celé médium data ●
●
DATA co jsme do počítače nahráli, hry, mp3, operační systém, dokumenty... pomocné datové struktury udržující informace o pozici dat ze souboru na disku => METADATA
Formát disku ●
nízkoúrovňový – – –
●
zapisuje magnetické značky, kde začíná sektor apod provádí se speciálním servisním programem nebo jen výrobce
vysokoúrovňový – –
provádí ho operační systém zapisuje metadata ● ● ●
datové struktury, které organizují disk např. rozdělení disku na oblasti klasické formátování znamená nahrání metadat (kartotéky) souborového systému do oblasti
Ovladače hardware ●
Způsob distribuce – –
●
součástí OS dodají výrobci HW externě (CD, stáhnout z internetu)
Podoba –
binární forma ● ● ●
téměř 100% způsob distribuce pod OS WINDOWS některé ovladače pod Linux (ATI nebo Nvidia) musí existovat stejné jádro jako pro které byl ovladač přeložen – –
–
Zdrojový tvar ● ●
–
u OS windows bez problémů u Linux dost problém, spousta jader, spousta distribucí
ve formě zdrojového kódu v jazyce C uživatel si sám přeloží
Kombinovaná forma ● ●
část rozhraní pro konkrétní kernel se překládá část ovladače je binární
Evoluce systémů Windows ●
Dva druhy windows: –
založené na jádře OS VMS ●
–
původně jako nadstavba nad operačním systémem DOS ●
–
DOS – – – – – – – – –
●
Windows 1.0, Windows 2.0, Windows 3.11
s novým jádrem vymyšleným v Microsoftu ●
●
Windows NT,Windows 2000,Windows XP, Windows LongHorn
Windows 95, Windows 98, Windows ME
http://en.wikipedia.org/wiki/MS-DOS disk operating system jednouživatelský, textově orientovaný instalovaný na první PC od IBM (rok 1981) kompatibilní s ještě starším OS CP/M Poslední verze přišla s Windows ME Součást předchozích Windows 98 a 95 příkatový interpret command.com příkazy: dir cd mkdir copy …
Evoluce Linux ●
Opakování z minulé hodiny:
● ●
●
●
jádro naprogramováno Linusem Torvaldsem jako „free“ alternativa k operačnímu „Unix like“ systému Minix (1991) systémové programy byly převzaty z projektu GNU (viz minulá přednáška) Distribuce Linuxu – – – –
obsahují jádro OS - ve verzi 2.4.x nebo 2.6.x balíčkovací systém aplikační programy různé aplikace pro nastavení systému
Počítač s více OS na jednom disku ● ●
Proč ne, ideální např. pro poznávání Linuxu. stačí správně: – –
●
rozdělit disk (změna partition table) nastavit bootloader
Problémy: –
kompatibilita souborových systémů ●
●
– –
např. do souborového windows systému NTFS nejde zapisovat (řešení existuje ale je hodně složité a nesystémové) Windows neznají souborové systémy použité v Linuxu (lze řešit)
přepsání zavaděče operačního systému např. při reinstalaci Windows starší také Windows nerozumí oddílům s NTFS
Zavaděče operačních systémů Multiboot ● ●
Multiboot: http://www.tldp.org/HOWTO/MultiOS-HOWTO.html –
●
●
zavaděč OS se zeptá jaký OS chceme spustit
Zavaděč z novějších Windows umí zavést např i Windows 98 nebo XP, 2000 Já doporučuji používat zavaděče z Linuxu –
Lilo ● ● ●
–
starší druh zavaděče, není při startu příliš interaktivní http://www.tldp.org/HOWTO/Multiboot-with-LILO.html konfigurační soubor: /etc/lilo.conf
Grub ●
● ● ●
v současnosti preferovaný bootloader, lze si sním povídat ještě před startem systému – lze využít pro specifikaci systému, který si přeju nabootovat konfigurační soubor: /boot/grub/menu.lst http://www.tldp.org/HOWTO/Multiboot-with-GRUB.html http://www.tldp.org/HOWTO/Linux+Win9x+Grub-HOWTO/index.html
Typické rozdělení disku ● ●
Opakování z minula Záznamy pro primární oddíl vyplní: – – –
●
● ● ● ● ● ● ● ● ● ●
disk C: pro DOS disk C: pro Windows hibernační soubor
Zbytek disku je dobré rozdělit jako rozšířený oddíl, už prakticky libovolně dle naších požadavků OS Linux může být uložen až v rozšířené oblasti (žádný problém) Device Boot /dev/hda1 /dev/hda2 /dev/hda3 /dev/hda4 /dev/hda5 /dev/hda6 /dev/hda7 /dev/hda8
Start 1 7 20 594 594 849 2124 2141
End 6 19 593 3737 848 2123 2140 2523
Blocks Id System 48163+ 16 Hidden FAT16 104422+ 16 Hidden FAT16 4610655 1b Hidden Win95 FAT32 25254180 5 Extended 2048256 6 FAT16 10241406 7 HPFS/NTFS 136521 82 Linux swap 3076416 83 Linux
MBR a tabulka rozdělení disku ●
její část uložena v MBR – – –
●
Master Boot Record – sektor s log. číslem nula obsahuje tabulku rozdělení disku a zaváděč systému zabírá jen jeden sektor 512B, poslední dva byte sektoru 0x55AA
položky: – – – – –
v MBR jsou možné jen 4 CHS začátku oblasti (speciální hodnota CHS pro „moc“) lineární adresa začátku oblasti obdobné záznamy pro konec oblasti záznam o typu oblasti (partition) ● ● ●
– ●
●
82 linux swap C FAT32LBA viz seznam
příznak „bootovatelnosti“
modifikace tabulky programem FDISK, (CFDISK, SFDISK, partition magic) Partition-Rescue-HOWTO
Rozšíření partition table ● ●
●
je možné jeden záznam v tabulce označit za „rozšířený“ rozšířená oblast se rekurzivně zase skládá z jednotlivých podoblastí v každém prvním sektoru oblasti je část tabulky s záznamem o podoblasti Typ oblasti je 0x5 nebo 0xf (pro velké disky) nebo 0x85 jen pro linux
Programy pro změnu oblastí na disku, pro kopírování oblastí ●
2 problémy – –
●
programy – –
●
změnit záznamy v tabulce rozdělení disku, případně utvořit nové změna metadat souborového systému tak aby se všechno zvětšilo, nebo zmenšilo partition magic (komerční) gparted (Free Software)
Kopírování: –
různé zálohovací nástroje ●
– –
Norton ghost apod
příkaz dd v linuxu Postup při kopírování windows na nový disk: ● ● ● ● ●
1. nabootuju linux 2. vytvořím partition table stejně velkou jako už mám jen na novém disku 3. dd if=/dev/hdxy of=/dev/hdxy x=a b c ,y = 1 2 3 4. boot z klíčenky nebo diskety kde máme zavaděč grub 5. nastartujeme windows a nainstalujeme windowsový zavaděč
Typické instalační kroky při instalaci OS ● ● ● ● ●
● ● ●
Boot z CD nebo DVD Rozdělení disku Zápis souborového systému Instalace Vytvoření uživatelů, heslo administrátora (NENECHÁVAT PRÁZDNÉ) Zápis zavaděče OS Nastavení systému Nastavení, nainstalování ovladačů HW
Instalace Microsoft Windows ● ● ●
● ● ●
● ●
CD, instalační klíč, připravený service pack http://www.blackviper.com/Articles/OS/InstallXPPro/installxppro1.htm Nepřipojujte Windows k Internetu pokud neinstaluje z CD s posledním servicepackem!!!! Váš počítač se zaviruje cca do 3 minut... Stáhněte si nebo si servicepack obstarejte předem Service Pack 2 "for multiple computers" http://www.microsoft.com/downloads/details.aspx?FamilyId=049C9DBE-3B8E-4F30-8245-9E368D3CDB5A&displaylang=en
Pokud vše funguje instalace je přímočará Pokud ne: – – – – –
opsat chybové hlášení do googlu, hledat stránku na microsoft.com posunout systémové hodiny do minulosti zakázat DMA na disku zakázat všechna „on-board“ zařízení update BIOS
Instalace Linux ● ● ●
Viz slajdy z installfestu 2003 http://installfest.cz/index0.php instalace probíhá typickými fázemi navíc: je třeba vytvořit partition pro odkládací prostor
Přenos operačního systému na nový disk ● ●
Použijme buď nějaký z komerčních produktů (norton ghoast) nebo Linux – Knoppix – – – – –
nový disk zapojíme do počítače nabootujeme knoppix vytvoříme na novém disku oddíl který je stejně velký jako na původním disku příkazem dd obsah disku zkopírujeme dd if=/dev/hdx2 of=/dev/hdy3
Přenos operačního systému na nový počítač (výměna motherboardu) ●
OS Linux – –
●
stačí vyměnit kernel (pouze pokud jsme si ho kompilovali sami) pokud používáme distrbuci s balíčky v binárním tvaru (až na Gentoo Linux) pak je hotovo
OS Windows – –
odinstalovat všechny ovladače sepcifické pro motherboard ale spíše nutná celková reinstalace systému
Kopírování dat před reinstalací ● ●
Pokud systém funguje, data zazálohujeme např na DVD V Linuxu zálohujeme domovské adresáře a adresáře s nastavením /etc (pro pozdější referenci)
● ● ●
Pro Linux i Windows: Pokud systém nefunguje nabootujeme knoppix a zazálohujeme např přes druhou DVD mechaniku nebo USB klíčenku
Reinstalace Linux ●
Spustíme znovu instalaci, požádáme o formát kořenového souborového systému
Reinstalace windows ●
●
Nejlepší je oddíl už znovu zformátovat, buď v instalaci nebo v Linuxu dd if=/dev/zero of=/dev/hdx3