Linux & DOS & Win95 & WinNT pod taktovkou LILO

Lubor Dedina lubord na watson.bajt.cz
Sobota Říjen 26 00:17:45 CEST 1996


Nazdar vsichni, 

V nasledujicim prispevku je popsano, jak uvest do chodu na jednom
pececku ctyri operacni systemy: Linux, WindowsNT, Windows95,
MS-DOS. Kazdy OS je umisten v samostatne partition, spousteni
libovolneho z nich obstarava LInux LOader. Jedinou podminkou je
mit dva harddisky.

Jeste bych chtel upozornit, ze uvedu, jak jsem to resil ja, nic
vice (zejmena nedavam zadne zaruky, ze by to mohlo fungovat
stejne i vam :-). A zacnu, jak neni obvykle, odzadu.

Jak zprovoznit WinNT 4.0 Workstation na pocitaci s Linuxem:
-----------------------------------------------------------
Cela vec je zrejme jednoducha, pokud chceme instalovat WinNT
na disk 0 do prvni partition. Proste se postupuje tak, jak Bill
predpokladal, ze kazdy postupovat bude, pak se upravi lilo.conf,
spusti se lilo a je to.

Slozitejsi to bylo v dane situaci:
----------------------------------
Na mem pocitaci jsem mel toto usporadani:

	/dev/hda1  -  MS-DOS6.22   (400MB)
	/dev/hdb1  -  Win95        (400MB)
	/dev/hdb2  -  Linux 1.2.13 (800MB)

P6, 64MB EDO, Intel 82440FX chipset, Aztech ATAPI CD-ROM,
2 EIDE FastATA Connery

Pritom jsem mel na hda jeste velke misto, pripravene pro instalaci
WinNT 4.0. Tento prostor byl 1.7GB. Vsechny tri systemy byly
bootovatelne pomoci Linux loaderu LILO. Cilem bylo, nainstalovat
WinNT na zbyvajici prostor na hda (do /dev/hda2). Hlavni vyhodou
takovehoto usporadani na disku je to, ze odpadaji multibooty a
hlavne znamy "mismas", ktery vznika, kdyz se nove instalovany OS
Microsoftu "infiltruje" do jiz instalovanych systemu teze firmy,
takze potom clovek vlastne nevi, jake soubory patri do jakeho OS.

Postup, ktery bylo nutno pouzit:
--------------------------------
Ukazalo se, ze ackoliv WinNT je bezesporu moderni OS, ma nektere,
dalo by se rici fatalni a skoro nepochopitelne nedostatky.
Napriklad tyto:
- WinNT Setup neni schopen na 2GB disku 0 vytvorit druhou primarni
  partition tak, aby byla prekonana bariera 504MB! Alespon v mem
  pripade tomu tak bylo. Jiz v uvodni fazi setupu jsem byl
  upozornen, ze muj disk je vetsi nez 504 MB, coz, jak bylo receno,
  by mohlo zpusobovat DOSu problemy. Jak se ukazalo, tak problemy
  to zpusobilo zejmena samotnym WinNT, jejich Setupu. Ten mi proste
  nedovolil vytvorit druhou partition vetsi nez 104 MB :-))). Takze
  bylo nutne pouzit linuxovy fdisk...
- WinNT se vas sice zeptaji, kam (do ktere partition ktereho disku)
  je chcete nainstalovat, nicmene na to moc nedbaji a nektere sve
  systemove soubory stejne umisti jinam (v mem pripade do /dev/hda1).
Temto excesum pak bylo nutno prizpusobit instalaci WinNT.

Konkretni postup pri instalaci:
-------------------------------
1) vychozi situace viz. vyse
2) vstoupit do Linuxu jako root, vytvorit druhou primarni partition
   na hda, cili /dev/hda2. Ja jsem ji udelal jako cely zbytek disku
   - neni podminkou (mela by vsak byt vetsi nez cca. 300 MB). Zmenit
   label teto partition na 6 (= DOS). Upravit soubor /etc/lilo.conf
   tak, jak je uvedeno v jeho vypisu dale (tj. pridat sekci bootovani
   WinNT). Pote spustit /sbin/lilo. Opustit Linux.
3) zazalohovat vse z /dev/hda1, obsah partition vymazat (ale nerusit
   ji, jen ji nechat prazdnou a naformatovanou)
4) Spustit instalaci WinNT do /dev/hda2. Jako souborovy system uvest
   FAT (ten lze na NTFS zmenit pozdeji, kdyz uz NT behaji), nechat
   Setup naformatovat /dev/hda2. Ve chvili, kdy jsou na /dev/hda2
   preneseny soubory z CD-ROM a dojde k restartu, nespoustet z LILO
   promptu WinNT, ale Win95. Smazat vse na /dev/hda2, pote presunout
   z /dev/hda1 systemove soubory do /dev/hda2, a to v poradi
   "unsorted", napriklad pomoci Volkova (Nortona). Jde o tyto
   soubory v tomto poradi:   ntdetect.com, ntldr, boot.ini. Podivat
   se do boot.ini, pokud by nebyla uvedena partition 2, ale 1, tak
   to vsude opravit na 2.
5) Opustit Win95, spustit novou instalaci WinNT, opet do /dev/hda2.
   Na otazku jak se zachovat k jiz existujici partition zvolit "no
   changes". Probehne presun souboru z CD-ROM do /dev/hda2 a dalsi
   restart. Opet vstoupit do Win95, presunout z /dev/hda1 na
   /dev/hda2 tyto soubory: boot.ini a ntbootdd.sys. Opet (pro
   jistotu) zkontrolovat, zda v boot.ini je uvedena partition 2.
6) Opustit Win95, pak v LILO promptu zadat jiz "winnt" a dokoncit
   instalaci WinNT. Pote, co obdrzime hlasku, ze WinNT byly
   nainstalovany uspesne, se kona dalsi restart. Opet do Win95,
   presunout z /dev/hda1 do /dev/hda2 soubory io.sys, msdos.sys,
   autoexec.bat, config.sys a pagefile.sys.
7) Opustit Win95, v LILO promptu zadat "winnt" a vesele si
   zaenteckovat :-))...
8) Prenest na /dev/hda1 systemove soubory DOSu (prikazem sys z
   instalacni DOS diskety - z Win95 nelze kvuli verzi) a pote vse
   ostatni, co tam bylo predtim.
9) Pokud jste se dostali az sem, pak muzete spoustet MS-DOS, Win95,
   WinNT a (samozrejme) Linux pomoci LILO promptu. Vsechny ctyri
   systemy jsou od sebe separovane, takze kdykoliv lze kterykoliv
   z nich smazat pouhym "delete all" v ramci dane partition.

Poznamky:
---------
- dany postup plati pouze pro vyse uvedenou sestavu, je mozne, ze
  na jinych pocitacich tomu bude jinak.
- doporucuji zmenit casovou konstantu (timeout) v boot.ini na cca
  3 vteriny
ad 2) zmena labelu na 6 mozna neni nezbytna
ad 3) tento postup je pouzit kvuli bezpecnosti. Pokud se o sva data
      nebojite, zrejme je lze na /dev/hda1 nechat, nicmene na
      partition by melo byt aspon 80 MB (pokud mate 64MB RAM)
      volneho mista pro swap file (zrejme). Taky WinNT prepisi oblast
      systemovych souboru DOSu, cili obnoveni systemu DOS bude stejne
      nezbytne (io.sys atd.). Navic vznikne na partition vetsi chaos,
      kdy nebude hned jasne, ktere soubory tam jsou dosove a ktere
      tam daly entecka.
ad 4) pokud vsude pisu, ze po restartu vstoupime do Win95, tak jenom
      proto, ze ja jsem to tak delal. Jinak lze samozrejme treba
      pouzit systemove dosove diskety s Volkovem (anebo bez nej to 
      zkopirovat pomoci dos povelu copy *.*, ten je taky "unsorted").
      Co se tyce poradi unsorted, domnivam se, ze podstatne je, aby
      soubor ntdetect.com byl umisten jako prvni na dane partition.
      Ale treba tam prvni byt nemusi, kdovi. V kazdem pripade
      kopirovani pomoci unsorted zajisti stejne poradi souboru, jake
      pouzil Setup WinNT (takze se tim nic nepokazi)
ad 5) zdalo by se divne, proc zase boot.ini. V mem pripade vsak v nem
      doslo ke zmenam (v tom znova na /dev/hda1 vytvorenem), a to
      takovym, ze se tam objevila informace, ze v mem systemu mam
      disky scsi, (proto taky soubor ntbootdd.sys). Pochopitelne
      zadne scsi nemam. Pokud byste vsak tyto dva soubory nepouzili,
      NT by vam umoznily jen jedinou session... (z toho je videt, ze
      cela instalace ma v sobe asi vice potencialnich zadrhelu)

Dalsi poznamky:
---------------
Na svuj pocitac jsem nejprve nainstaloval MS-DOS. Pote jsem tam
nahral Linux a uvedl jsem do chodu LILO prompt.
Dalsim krokem byla instalace Win95. Realizoval jsem to tak, ze jsem
nejprve odpojil hda, Win95 nainstaloval na hdb, no a pak zase hda
pripojil. Tim se zamezilo typickemu "maglajzu" Win95 v DOSu (dualni
bootovani atd.). Ovsem ma to tez svoje mouchy, protoze jak DOS, tak
Win95 si mysli, ze byly spusteny z C:, cili jsou urcite problemy s
cestami (ale neni to tak hrozne)... Jak byl nainstalovan posledni
system, viz vyse.

Usporadani: prvni partition na kazdem disku je mensi nez 504MB, diky
cemuz odpadaji zname problemy s timto limitem, pritom dalsi dve
partition zacinaji diky tomu take pod 504MB, coz vylucuje problemy s
eventuelnim bootovanim OS v nich obsazenych. Lze se domnivat, ze
tech 800 az 900 MB by melo tandemu DOS-Win95 stacit. Pokud ne,
muzete si na kteremkoli disku vytvorit treti partition a zformatovat
ji jako FAT. V tom pripade (ale i pokud byste chteli pristupovat do
FAT partition WinNT) byste meli pouzit patch pro Win95, ktery
opravuje chybu v pristupu k IDE partitions nad 504MB pomoci LBA - lze
ziskat na http://www.microsoft.com/windows/software/dskts.htm.


jak tedy nyni vypada muj soubor lilo.conf:
------------------------------------------
#LILO configuration file
#
#Start LILO global section
boot = /dev/hda       #the boot partition
install = /boot/boot.b
delay = 35            #wait for 3.5 seconds
vga = normal          #force sane state
ramdisk= 0            #paranoia setting
#
#End LILO global section
#
#Linux bootable partition config begins
image = /vmlinuz      #the kernel to use when booting
root = /dev/hdb2      #the root filesystem
label = linux         #the label we can type in at the lilo prompt
read-only             #Non-UMSDOS filesystems should be mounted
# read-only for checking Linux bootable partition config ends
#
#msdos bootable partition config begins
other = /dev/hda1     #the msdos partition
label = dos           #the label we can type in at the lilo prompt
table = /dev/hda      #the partition table for this hard disk
#msdos bootable partition config ends
#
#windows95 bootable partition config begins
other = /dev/hdb1      #the windows95 partition
label = win95          #the label we can type in at the lilo prompt
table = /dev/hdb       #the partition table for this hard disk
loader = /boot/any_d.b #loader for this operating system
#windows95 bootable partition config ends
#
#windowsNT bootable partition config begins
other = /dev/hda2      #the windowsNT partition
label = winnt          #the label we can type in at the lilo prompt
table = /dev/hda       #the partition table for this hard disk
#windowsNT bootable partition config ends
#
#End of the LILO configuration file

Pokud jste v tomto pamfletu nasli neco zajimaveho, zijte blaze.
       
                                                  Lubor

-----------------------------------
Lubor Dedina, Praha, lubord na bajt.cz
-----------------------------------


Další informace o konferenci Linux