De Loopback Root FileSystem HOWTO
v1.1, 24 september 1999In deze HOWTO wordt uitgelegd hoe het Linux loopback device kan worden
gebruikt voor een installatie in het Linux native bestandssysteemformaat
dat zonder opnieuw te partitioneren vanaf een DOS-partitie kan worden gedraaid.
Tevens worden andere gebruiken met dezelfde techniek besproken.
Introductie
CopyrightDe Loopback Root Filesystem HOWTO
Copyright (C) 1998,99 Andrew M. Bishop (amb@gedanken.demon.co.uk).Deze documentatie is vrije documentatie; je kunt het herdistribueren en/of
wijzigen onder de voorwaarden van de GNU General Public Licentie zoals
gepubliceerd door de Free Software Foundation; óf versie 2 óf
(naar keuze) een eventuele latere versie.Dit programma is gedistribueerd in de hoop dat het van nut zal zijn, maar
ZONDER GARANTIE; zonder zelfs de impliciete garantie van
VERKOOPBAARHEID of GESCHIKTHEID VOOR EEN BEPAALD DOEL. Zie de
GNU General Public Licentie voor meer details.De GNU General Public Licentie is verkrijgbaar vanaf
of, schrijf naar de Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA Grondbeginselen van Loopback Devices en RamdisksAls eerste zal ik een aantal van de algemene grondbeginselen beschrijven
die worden gebruikt bij het instellen van een loopback filesystem als
het root-device.
Loopback DevicesEen loopback device onder Linux is een virtueel device dat net als
ieder ander media-device kan worden gebruikt.Voorbeelden van gewone media-devices zijn harddisk-partities zoals
/dev/hda1, /dev/hda2, /dev/sda1, of gehele
disks zoals het diskettestation
/dev/fd0 enz. Het zijn allen devices die kunnen worden gebruikt om
bestanden en directory-structuren te bevatten. Ze kunnen met het benodigde
bestandssysteem (ext2fs, msdos, ntfs enz.) worden geformatteerd en
vervolgens worden gemount.Het loopback filesystem associeert een bestand op een ander bestandssysteem
als een compleet device. Dit kan dan net als enig ander device worden
geformatteerd en gemount. Om dit te kunnen doen wordt het device genaamd
/dev/loop0, /dev/loop1, enz. geassocieerd met het bestand
en vervolgens wordt dit nieuwe virtuele device gemount. Hoe een Loopback Root Device aan te makenNu dat de algemene grondbeginselen zijn uitgelegd, kan de te gebruiken
methode voor het aanmaken van het loopback-device worden uiteengezet.
BenodigdhedenOm het loopback rootdevice aan te maken zijn een aantal dingen benodigd.Een werkend Linux-systeem.Een manier om grote bestanden naar de DOS-doelpartitie te kopiëren.Het belangrijkste is de toegang tot een geïnstalleerd Linux-systeem.
Dit omdat het loop-device alleen onder Linux kan worden aangemaakt.
Dit betekent dat het niet mogelijk is een werkend systeem vanuit het niets
te booten. De benodigdheden van het Linux-systeem waar je gebruik van maakt
is dat je er een kernel op kunt compileren.Als het loopback-device éénmaal is aangemaakt, zal het
een groot bestand zijn. Ik heb bestanden van 80 MB gebruikt, maar ook al
was dit voldoende voor een X-terminal, mogelijk dat het niet genoeg is
als je het voor veel meer wilt gebruiken. Dit bestand moet naar de
DOS-partitie worden gekopieerd, dus er moet óf van
een netwerk, óf van een heleboel diskettes gebruik worden gemaakt.De benodigde software bestaat uit:LOADLIN versie 1.6 of hogerEen versie van mount welke loopback-devices ondersteuntEen kernelversie welke de benodigde opties ondersteunt.Dit zou voor recente Linux-installaties standaard aanwezig moeten zijn. Het booten van het SysteemAlles wat je nodig hebt om vanaf dit nieuwe root-device te booten, is dat
de diskette geprepareerd zoals hiervoor is beschreven in het diskettestation
is gedaan om vanaf te booten.Je zal de volgende reeks gebeurtenisssen te zien krijgen.
DOS bootAUTOEXEC.BAT startLOADLIN wordt uitgevoerdDe Linux-kernel wordt naar het geheugen gekopieerdDe initiële ramdisk wordt naar het geheugen gekopieerdDe Linux-kernel is begonnen aan de uitvoeringHet bestand /linuxrc op de initiële ramdisk wordt uitgevoerdDe DOS-partitie is gemount en de root en swap-devices ingesteldDe bootreeks continueert vanaf het loopback-deviceWanneer het systeem hiermee klaar is, kun je de opstartdiskette verwijderen
en het Linux-systeem gebruiken.
Mogelijke Problemen Met OplossingenEr zijn een aantal fasen waarin dit proces zou kunnen mislukken, ik zal
proberen uit te leggen wat dat zijn en wat te controleren.Wanneer DOS boot is eenvoudig te herkennen door de melding MS-DOS
Starting ... op het scherm. Als deze melding niet verschijnt, dan is
de diskette óf niet opstartbaar of het systeem kan niet worden
opgestart vanaf het diskettestation.Wanneer de commando's in het AUTOEXEC.BAT bestand worden
uitgevoerd, zouden deze standaard naar het scherm moeten worden geëchoot.
In dit geval gaat het slechts om een enkele regel waarmee
LOADLIN wordt opgestart.Wanneer LOADLIN wordt uitgevoerd, zal het twee zeer zichtbare
dingen doen, als eerste zal het de kernel in het geheugen laden, ten tweede
zal het de ramdisk naar het geheugen kopiëren.
Beiden zijn te herkennen aan een Loading... melding.De kernel begint zichzelf te comprimeren, hierdoor kunnen crs
fouten ontstaan als de kernel-image beschadigd is.
Vervolgens zal het de initilisatiereeks starten, welke zeer woordenrijk
met diagnostische meldingen is. Tijdens deze fase is
het laden van het initiële ramdisk-device ook zichtbaar.Tijdens de uitvoering van het bestand /linuxrc zijn er geen
diagnostische meldingen, maar die kun je zelf als hulp bij het debuggen
toevoegen. Als het in dit stadium niet lukt het loopback-device als het
root-device in te stellen, dan zie je wellicht een melding dat er
geen root-device is en breekt de kernel af.De normale bootreeks van het nieuwe root-device zal nu verdergaan en
hierbij worden heel wat meldingen weergegeven.
Er kunnen problemen optreden met het read-write mounten van het root-device,
maar de commandoregel-optie 'ro' van LOADLIN kan dit verhelpen.
Andere problemen die op kunnen treden bestaan daaruit dat de bootreeks
van slag is over waar het root-device is, dit is waarschijnlijk te wijten
aan een probleem met /etc/fstab.Wanneer de bootreeks is voltooid, blijft er nog een probleem over dat
programma's van slag zijn of de DOS-partitie wel of niet is gemount.
Daarom is het een goed idee het eerder beschreven nep mount commando
te gebruiken. Dit maakt 't leven er een stuk eenvoudiger op als je de
bestanden op het DOS-device wilt benaderen. Andere Mogelijkheden met het Loopback Root DeviceNu het principe van het booten van een bestandssysteem in een bestand
op een DOS-partitie is bewezen, zijn er veel andere dingen die je nu kunt doen.
DOS Harddisk InstallatieAls het mogelijk is Linux vanaf een bestand op een DOS-harddisk te booten door
gebruik te maken van een opstartdiskette, dan is het uiteraard ook mogelijk
dit te doen door de harddisk zelf te gebruiken.Een configuratie bootmenu kan worden gebruikt met de optie om
LOADLIN vanuit AUTOEXEC.BAT uit te voeren.
Hierdoor zal de bootreeks sneller zijn, maar verder is het identiek.