Soorten
Omdat men het handig vond om een harde schijf in meerdere stukken te kunnen opsplitsen zijn partities verzonnen. Een partitie is een stuk van je harde schijf. Er zijn verschillende redenen te bedenken waarom je partities zou willen gebruiken. Je kunt het bijvoorbeeld handig vinden om verschillende data op verschillende partities te plaatsen. Als je verschillende besturingssystemen, zoals Windows en Linux, naast elkaar wilt kunnen gebruiken, dan zul je ieder op een eigen partitie moeten zetten. Meerdere besturingssystemen op één computer hebben heet ook wel dual-booten.
Doordat men ooit heeft verzonnen dat vier partities wel genoeg zou zijn, kun je maar vier zogenaamde primaire partities aanmaken. Veel besturingssystemen kunnen alleen vanaf een primaire partitie opstarten. Linux is een van de weinige besturingssytemen die je ook kunt opstarten vanaf een logische partitie (zie verderop).
Er is altijd één primaire partitie actief (zo wordt het genoemd in fdisk van DOS) of bootable (volgens fdisk van Linux). Vanaf die partitie wordt het OS opgestart. Een bootmanager is een programma waarmee je bij het opstarten kunt kiezen welk besturingssysteem je wilt gebruiken. Je kunt de bootmanager aan het begin van een partitie zetten die bootable is. Eenvoudiger is echter het in de MBR (Master Boot Record, het eerste stuk van de harde schijf) te zetten. Dan maakt het niet meer uit welke partitie bootable is. De bootmanager in de MBR kan eventueel weer andere bootmanagers op andere partities starten. Bootmanagers die veel gebruikt worden, zijn LILO (Linux Loader) en het nieuwere GRUB. Je gebruikt ze om tijdens het booten te kunnen kiezen of je Linux of Windows wilt starten (als beide geïnstalleerd zijn). Het is ook nodig om uit verschillende kernelversies te kunnen kiezen.
Vier partities is geen luxe. Vaak wil je er meer aanmaken. Daarop heeft men het volgende bedacht. In plaats van een primaire partitie maak je een uitgebreide (Engels: extended) partitie. Je kunt dus in totaal maximaal vier primaire of uitgebreide partities aanmaken. Binnen een uitgebreide partitie kun je andere partities aanmaken. Zo'n partitie binnenin een uitgebreide partitie heet een logische (Engels: logical) partitie.
Onder DOS en Windows hebben alle partities (die herkend worden) een andere letter, stations genaamd. Partities op harde schijven beginnen vanaf C. In Linux gaat dit heel anders. Alle harde schijven en partities worden daar weergegeven als bestand onder /dev (van device). Voor harde schijven van het type IDE geldt:
Er zijn meestal twee kabels op het moederbord waar harde schijven (en andere IDE-apparatuur) op kunnen worden aangesloten. De ene is de primaire kabel, de andere de secundaire. Op elke kabel kunnen weer twee apparaten worden aangesloten. De ene is de master, de andere de slave. Wat waar op zit aangesloten, kun je waarschijnlijk in je BIOS zien tijdens het opstarten.
Voor SCSI-schijven heb je sd in de naam in plaats van hd: /dev/sda, /dev/sdb, etc. De meeste mensen zullen geen SCSI hebben. Moderne moederborden hebben wel weer een ander (nieuw) type aansluiting: SATA (Serial ATA). Je kunt het duidelijk herkennen aan de veel smallere datakabels die naar de schijven lopen. Voor SATA-schijven werd bij kernel 2.4.x ook hda etc. gebruikt. Vanaf kernel 2.6.x is het echter sda etc. (dus identiek aan SCSI) geworden.
Deze devices staan voor de complete harde schijf. De partities die op hda staan heten hda1, hda2, etc. Om te zien welke partities werkelijk bestaan, kun je onder Linux fdisk -l /dev/hda gebruiken. Partities binnen een uitgebreide partitie worden genummerd vanaf de 5. Zo is de tweede logische partitie (binnen een uitgebreide partitie) op hda hda6. De primaire of uitgebreide partities zijn genummerd van 1 tot en met 4. (Meer is toch niet mogelijk.)
Partities moeten worden geformatteerd voordat je er bestanden op kunt opslaan. Daarbij wordt er een bestandssysteem op aangemaakt. Tijdens de installatieprocedure van de distributie zal waarschijnlijk wel gevraagd worden om nieuw aangemaakte partities voor Linux te formatteren. Je kunt het in Linux zelf doen met /sbin/mkfs. Dat is een frontend voor verschillende programma's in /sbin genaamd mkfs.type, waarbij type het bestandssysteem is dat het kan aanmaken. Standaard wordt er ext2 genomen, maar met mkfs -t type kun je een andere kiezen. Je kunt ook direct mkfs.type gebruiken. Alleen voor Reiser is er een afwijkend commando: mkreiserfs.
Er bestaan vele verschillende bestandssystemen. De volgende tabel toont een aantal veelvoorkomende en het besturingssysteem waarbij het gebruikt wordt.
Ext2 is het klassieke bestandssysteem voor Linux. Ext3 is identiek aan ext2, maar dan met een zogenaamd journaal erbij. Het idee van een journaal is dat bij elke verandering aan het bestandssysteem eerst in het journaal geschreven wordt wat er gaat gebeuren. Daarna wordt het echt gedaan en ten slotte wordt de entry uit het journaal gehaald. Als het systeem uitvalt voordat de verandering voltooid is (bijvoorbeeld door een stroomstoring), dan staat er nog altijd in het journaal wat er moet gebeuren. Die actie kan alsnog worden uitgevoerd als het systeem weer opstart. Dit gaat sneller dan het moeten uitvoeren van een controle door e2fsck (het equivalent van scandisk onder Windows), waardoor een betere uptime te verzekeren is. Dit is bijv. goed voor webservers. Een ander voordeel is dat het niet nodig is het bestandssysteem om de zoveel tijd te laten controleren. Bij ext2 gebeurt dat standaard om de 180 dagen of na 29 keer rebooten (welke er eerder komt). De controle van grote bestandssystemen kan enige tijd in beslag nemen. Ext3 is daarom boven ext2 aan te raden voor de meeste gebruikers.
Reiser is net als ext3 een nieuwer bestandssysteem met een journaal. Het zou efficiënter moeten zijn als je veel kleine bestanden hebt, maar ik heb er zelf weinig ervaring mee.
Heb je op dit moment Windows geïnstalleerd, dan is de kans groot dat er slechts één grote partitie op je harde schijf aanwezig is, de C in Windows. Een veelgemaakte denkfout is: „ik heb veel ruimte over op C, dus daar kan ik Linux wel op installeren”. Die vrije ruimte is ruimte op de Windows-partitie en is niet beschikbaar om Linux-partities in aan te maken. Je moet er op een of andere manier voor zorgen dat er echt ruimte vrijkomt op de harde schijf, bijvoorbeeld door de schijfvullende partitie voor Windows te verkleinen.
C
Partitioneren kan met een aantal verschillende programma's:
Het spreekt voor zich dat het maken van een backup een goed idee is voordat je met partities gaat knutselen.
Je zou de Linux-tools hierboven kunnen gebruiken vanaf een live-cd of installatie-cd waar ze op aanwezig zijn. De installatieprocedure is verschillend per distributie. Het verschilt dan ook wat er tijdens de installatie mogelijk is om te (her)partitioneren. De hele harde schijf opnieuw partitioneren (en eventueel bestaande data overschrijven) is altijd mogelijk en de eenvoudigste optie. Het verkleinen van FAT-partities kan ook al langer en is daarom wel in alle installatiesoftware verwerkt. Je hebt waarschijnlijk een NTFS-partitie als je Windows 2000 of XP gebruikt. Of het verkleinen daarvan mogelijk is zal verschillen, maar ondertussen ook wel in de meeste installaties verwerkt zijn.
Voor Linux is het aan te raden op zijn minst twee partities te maken: een met het ext2-bestandssysteem (of ext3 of Reiser) waarop software wordt geïnstaleerd en een swap-partitie.
De swap-partitie wordt gebruikt als virtueel geheugen, geheugen op de harde schijf. Dat is veel langzamer dan het echte geheugen, maar kan wel veel groter zijn. Data die lange tijd niet meer gebruikt is, wordt verhuisd naar de swap. Ook wordt het gebruikt als er meer geheugen nodig is dan beschikbaar. Hoe groot de swap-partitie moet zijn, ligt eraan hoe groot je gewone geheugen is en wat je van plan bent te gaan doen. De totale hoeveelheid geheugen die voor programma's beschikbaar is, is het echte geheugen + de swap. Dus als je 256 MB aan RAM hebt en 256 MB aan swap, dan is er in totaal 512 MB beschikbaar voor programma's.
Als je naast de swap-partitie slechts één grote partitie met het ext2-, ext3- of Reiser-bestandssysteem maakt, dan moet die grote partitie gemount worden onder / (de root-directory). Op deze zogenaamde root-partitie komen alle bestanden voor Linux te staan. Veel mensen vinden het prettig meerdere partities aan te maken. Voor al die partities moet je een mount point opgeven. Als je bijv. /usr opgeeft, dan komen alle bestanden die je in /usr zet op die partitie terecht en niet op de root-partitie. Om het goed te kunnen indelen, moet je wel weten hoeveel ruimte er voor welke directory nodig gaat zijn. Daar kom je zelf wel na een tijdje achter, maar als je net begint heb je nog geen idee. Daarom volgt er hier een overzicht van directory's die handig kunnen zijn om op een aparte partitie te plaatsen en hoeveel ruimte er typisch voor nodig is.
Hier komen alle persoonlijke bestanden van gebruikers, zoals persoonlijke configuratiebestanden, documenten, muziek, films, etc. Gebruik hier alle ruimte voor die over is na het indelen van de andere partities.
Hier wordt veruit de meeste data in gezet, zoals niet-essentiële programma's (dat wil zeggen: niet vitaal voor het überhaupt kunnen opstarten of om heel elementaire dingen te kunnen doen), library's en documentatie. Hoeveel ruimte je hiervoor nodig hebt, verschilt enorm met wat voor software je wilt installeren. Je kunt wel aannemen dat een systeem met veel desktopsoftware nog niet snel de 10 GB zal overschrijden. Ik heb nu een Ubuntu-systeem met zowel GNOME als KDE met 5 GB in deze directory.
Alles dat niet tot de distributie behoort, hoort hier te worden geplaatst om alles overzichtelijk te houden. Als je later wilt upgraden of van distributie wilt wisselen, kun je deze partitie laten staan om zo al je eigen toevoegingen te behouden. Ook hier is de grootte volledig afhankelijk van hoeveel software je wilt installeren. Denk je dat je later nog zelf software toe wilt voegen, dan zal iets van 2 GB waarschijnlijk wel voldoende zijn.
Hier staan bestanden onder die vaak veranderen, zoals spool voor printer en mail, logbestanden, locks, tijdelijke bestanden en opgemaakte manual pages (wordt gemaakt als je er een opvraagt). Ben je van plan een nieuws- of e-mailserver te installeren, dan kun je deze directory op een aparte partitie plaatsen. Daarmee voorkom je dan dat de root-partitie volloopt. Bij Gentoo zal deze directory groter worden dan normaal, omdat alle software hier wordt gecompileerd.
Hier staat voornamelijk de kernel in. Hier is niet zo gek veel ruimte voor nodig. Een enkele kernel misschien hooguit 2 MB groot.
De root-partitie. Hier komt dus alles op te staan dat niet op een andere partitie komt. Als je de bovenstaande directory's (met name /home en /usr) aanhoudt om op aparte partities te zetten, zal veruit de meestse data op andere partities komen te staan. Enkele GB's is hier dan ruim voldoende voor. Gebruik je alleen een grote root-partitie, dan is voor een desktopsysteem iets van 10 GB wel voldoende.
« Ga terug