diff --git a/nl_NL.ISO8859-1/books/handbook/disks/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/disks/chapter.sgml
index b8cf8c8b93..237a61c7d5 100644
--- a/nl_NL.ISO8859-1/books/handbook/disks/chapter.sgml
+++ b/nl_NL.ISO8859-1/books/handbook/disks/chapter.sgml
@@ -1,4657 +1,4657 @@
RenéLadanVertaald door OpslagOverzichtDit hoofdstuk behandelt het gebruik van schijven in &os;.
Dit omvat geheugenschijven, schijven die met het netwerk
verbonden zijn, SCSI/IDE-opslagapparaten en apparaten die gebruik
maken van de USB-interface.Na het lezen van dit hoofdstuk weet de lezer:Welke terminologie &os; gebruikt om de gegevensindeling
op een fysieke schijf te beschrijven (partities en
slices);Hoe aanvullende harde schijven aan een systeem toe te
voegen;Hoe &os; in te stellen om het gebruik te laten maken van
USB-opslagapparaten;Hoe virtuële bestandssystemen, zoals
geheugenschijven, aan te maken;Hoe quota te gebruiken om het schijfgebruik te
beperken;Hoe schijven te versleutelen om ze tegen inbrekers te
beschermen;Hoe vanuit &os; CD's en DVD's aan te maken en te
branden;Wat de verschillende mogelijkheden zijn voor opslagmedia
voor back-ups;Hoe back-upprogramma's te gebruiken die beschikbaar zijn
in &os;;Hoe een back-up naar diskettes te maken;Wat bestandssysteem snapshots zijn en hoe ze efficiënt te
gebruiken.Aangeraden voorkennis:Hoe een nieuwe &os;-kernel in te stellen en te
installeren ().ApparaatnamenDe volgende lijst noemt de fysieke opslagapparaten die in
&os; ondersteund worden, samen met de bijhorende namen.
Naamconventies voor fysieke SchijvenType mediumApparaatnaam mediumIDE harde schijvenadIDE CD-ROM-stationsacdSCSI harde schijven en USB-apparaten voor
massa-opslagdaSCSI CD-ROM-schijvencdOverige niet-standaard-CD-ROM-stationsmcd voor Mitsumi CD-ROM en
scd voor Sony CD-ROM apparaten.DiskettestationsfdSCSI bandstationssaIDE bandstationsastFlashdrivesfla voor &diskonchip;
flashapparatenRAID-schijvenaacd voor &adaptec; AdvancedRAID,
mlxd en mlyd voor
&mylex;, amrd voor AMI &megaraid;,
idad voor Compaq Smart RAID,
twed voor &tm.3ware; RAID.
DavidO'BrienOrigineel bijgedragen door Schijven toevoegenschijventoevoegen
- Stel dat het gewenst is om een nieuwe SCSI-schijf aan een
- machine toe te voegen die slechts een enkele drive heeft. Ten
- eerste dient de computer uitgeschakeld te worden en dient de
+ De volgende sectie beschrijft hoe een nieuwe SCSI
+ schijf aan een machine toe te voegen die slechts een enkele drive heeft.
+ Ten eerste dient de computer uitgeschakeld te worden en dient de
schijf volgens de instructies van de computer, controller en
schijffabrikant geïnstalleerd te worden. Wegens de grote
variéteiten om dit soort procedures uit te voeren, vallen
de details buiten het bereik van dit document.Er dient als gebruiker root ingelogd te
worden. Nadat de schijf is toegevoegd, dient
/var/run/dmesg.boot bekeken te worden om er
zeker van te zijn dat de nieuwe schijf is gevonden. Volgens het
voorbeeld heet de nieuw toegevoegde schijf
da1 en die wordt aangekoppeld op
/1 (als er een IDE-schijf wordt toegevoegd,
is de apparaatnaam ad1).partitiesslicesfdisk&os; draait op IBM-PC-compatibele computers. Daarom moet het
rekening houden met de PC-BIOS-partities. Deze wijken af van de
traditionele BSD-partities. Een PC-schijf bevat tot vier
ingangen voor BIOS-partities. Indien de schijf geheel aan &os;
wordt gewijd, kan de toegewijde-modus
gebruikt worden. In het andere geval moet &os; binnen
één van de vier PC-BIOS-partities draaien. De
PC-BIOS-partities worden door &os; slices
genoemd om ze niet met de traditionele BSD-partities te
verwarren. Slices kunnen ook op een schijf worden gebruikt die
toegewijd is aan &os;, maar in een computer zit die ook andere
besturingssystemen heeft geïnstalleerd. Dit is een goede
manier om verwarring met het programma fdisk
van andere, niet-&os; besturingssystemen te voorkomen.Als er met slices gewerkt wordt, wordt de schijf toegevoegd
als /dev/da1s1e. Dit moet worden gelezen
als: SCSI-schijf, eenheid 1 (tweede SCSI-schijf), slice 1
(PC-BIOS-partitie 1) en BSD-partitie e. Als
de schijf toegewijd is, wordt deze simpelweg als
/dev/da1e toegevoegd.Omdat 32-bit-integers worden gebruikt om het aantal sectoren
op te slaan, is &man.bsdlabel.8;
beperkt tot 2^32-1 sectoren per schijf, wat
meestal neerkomt op 2 TB. Het programma &man.fdisk.8; staat
geen hogere startsector toe dan 2^32-1 en geen grotere lengte dan
2^32-1, meestal worden hiermee partities tot 2 TB begrensd
en schijven tot 4 TB. Het formaat van &man.sunlabel.8; is
beperkt tot 2^32-1 sectoren per partitie en 8 partities per
schijf, in totaal dus 16 TB. Voor grotere schijven kan
&man.gpt.8; worden gebruikt.&man.sysinstall.8; gebruikensysinstallschijven toevoegensuNavigeren door
sysinstallsysinstall
kan gebruikt worden om een nieuwe schijf te
partitioneren en te labelen met eenvoudig te gebruiken
menu's. Hiervoor dient òfwel als gebruiker
root ingelogd te zijn, òfwel
gebruik te worden gemaakt van su. Draai
sysinstall en ga naar het menu
Configure. Scroll binnen het
&os; Configuration Menu naar
beneden en kies de optie Fdisk.fdisk
partitie-bewerkerEenmaal binnen fdisk kan op
A gedrukt worden om de gehele
schijf voor &os; te gebruiken. Wanneer gevraagd wordt of
het systeem compatibel dient te blijven met mogelijk
toekomstige besturingssystemen, dient met
YES geantwoord te worden. Met
W kunnen de veranderingen naar de
schijf worden geschreven. Nu dient de FDISK-bewerker
verlaten te worden door op Q te drukken.
Vervolgens wordt er een vraag
gesteld over het Master Boot Record. Omdat
er een schijf aan een reeds draaiend systeem wordt
toegevoegd, dient hier None gekozen te
worden.SchijflabelbewerkerBSD-partitiesVervolgens dient sysinstall
verlaten en opnieuw gestart te worden. Volg bovenstaande
aanwijzingen, maar kies deze keer voor de optie
Label. Dit geeft toegang tot de
Disk Label Editor. Hier worden de
traditionele BSD-partities aangemaakt. Een schijf kan tot
acht partities bevatten, gelabeld a-h.
Enkele partitielabels hebben een speciale functie. De
partitie a wordt gebruikt voor de
rootpartitie (/). Alleen de
systeemschijf (bijvoorbeeld de schijf van waaruit opgestart
wordt) moet een partitie a hebben. De
partitie b wordt voor swappartities
gebruikt, en het is mogelijk om vele schijven met
swappartities te hebben. De partitie c
adresseert de gehele schijf in toegewijde modus, of de
gehele &os;-slice in slice-modus. De andere partities zijn
voor algemeen gebruik.sysinstall's Labelbewerker
heeft een voorkeur voor de partitie e
voor niet-root-niet-swap-partities. Binnen de
Labelbewerker dient een enkel bestandssysteem te worden
aangemaakt door op C te drukken. Kies
FS wanneer gevraagd wordt of dit een FS
(file system) of swap wordt, en geef een koppelpunt in
(bijvoorbeeld /mnt). Wanneer een
schijf in post-installatie-modus wordt toegevoegd, maakt
sysinstall geen ingangen aan in
/etc/fstab, dus dan is het opgegeven
koppelpunt niet van belang.Nu kan het nieuwe label naar de schijf worden
geschreven en er een bestandssysteem op aangemaakt worden.
Dit kan gedaan worden door op W te
drukken. Fouten van sysinstall
dat de nieuwe partitie niet aankoppeld kon worden kunnen
genegeerd worden. De Labelbewerker en
sysinstall kunnen nu volledig
verlaten worden.AfrondenDe laatste stap bestaat uit het bewerken van
/etc/fstab om hier een regel voor de
nieuwe schijf aan toe te voegen.Het gebruik van opdrachtregelgereedschappenHet gebruik van slicesDeze installatie zorgt ervoor dat de schijf correct
samenwerkt met andere besturingssystemen die eventueel op de
computer zijn geïnstalleerd en dat de
fdisk-gereedschappen van andere
besturingssystemen niet verward raken. Het wordt aangeraden
om deze methode te gebruiken voor de installatie van nieuwe
schijven. Gebruik de toegewijde modus
alleen als hier een goede reden voor bestaat!&prompt.root; dd if=/dev/zero of/dev/da1 bs=1k count=1
&prompt.root; fdisk -BI da1 # Initialiseer de nieuwe schijf.
&prompt.root; bsdlabel -B -w da1s1 auto # Label de schijf.
&prompt.root; bsdlabel -e da1s1 # Bewerk de zojuist aangemaakte schijflabel en voeg partities toe.
&prompt.root; mkdir -p /1
&prompt.root; newfs /dev/da1s1e # Herhaal dit voor alle aangemaakte partities.
&prompt.root; mount /dev/da1s1e /1 # Mount de partitie(s).
&prompt.root; vi /etc/fstab # Voeg de juiste regel(s) aan /etc/fstab toe.Vervang voor een IDE-schijf da door
ad.ToegewijdOS/2Indien de nieuwe schijf niet met een ander
besturingssysteem gedeeld wordt, kan de
toegewijde modus gebruikt worden. Denk
eraan dat deze modus besturingssystemen van Microsoft kan
verwarren. Ze richten echter geen schade aan. IBM's &os2;
fatsoeneert echter partities die het niet
begrijpt.&prompt.root; dd if=/dev/zero of=/dev/da1 bs=1k count=1
&prompt.root; bsdlabel -Bw da1 auto
&prompt.root; bsdlabel -e da1 # Maak de `e'-partitie aan.
&prompt.root; newfs /dev/da1e
&prompt.root; mkdir -p /1
&prompt.root; vi /etc/fstab # Voeg een regel voor /dev/da1e toe.
&prompt.root; mount /1Een alternatieve methode is:&prompt.root; dd if=/dev/zero of=/dev/da1 count=2
&prompt.root; bsdlabel /dev/da1 | bsdlabel -BR da1 /dev/stdin
&prompt.root; newfs /dev/da1e
&prompt.root; mkdir -p /1 # Voeg een regel voor /dev/da1e toe.
&prompt.root; mount /1RAIDSoftware RAIDChristopherShumwayOrigineel werk van JimBrownHerzien door RAIDsoftwarematigRAIDCCDConcatenated Disk Driver (CCD) instellingenBij het kiezen van een medium voor massa-opslag zijn de
belangrijkste afwegingen snelheid, betrouwbaarheid en kosten.
Het komt zelden voor dat alle drie in balans zijn.
Normaalgesproken is een snel, betrouwbaar apparaat voor
massa-opslag duur en kosten sparen gaat ten koste van
òfwel snelheid òfwel betrouwbaarheid.Bij het ontwerpen van het onderstaande systeem werd
primair op de kosten gelet, gevolgd door snelheid en als
laatste betrouwbaarheid. De overdrachtsnelheid van gegevens
wordt voor dit systeem uiteindelijk beperkt door het netwerk.
En hoewel betrouwbaarheid erg belangrijk is, wordt
onderstaande CCD-schijf gebruikt voor het serven van on-line
gegevens die reeds volledig op CD-R's zijn geback-upt en
eenvoudig vervangen kunnen worden.De eerste stap in het kiezen van een
massa-opslagoplossing is het bepalen van de eigen
benodigdheden. Indien snelheid belangrijker is dan
betrouwbaarheid of kosten, wijkt de oplossing af van het
systeem dat in deze sectie wordt beschreven.Hardware installerenAls aanvulling op de IDE systeemschijf zijn drie
Western Digital IDE-schijven van 30 GB, 5400 RPM
vanuit de kern van de onderstaande CCD-schijf aanwezig, die
ongeveer 90 GB aan on-line opslag bieden. Ideaal
gezien heeft iedere IDE-schijf een eigen IDE-controller en
kabel, maar om de kosten te minimaliseren zijn geen
aanvullende IDE-kabels gebruikt. In plaats hiervan zijn de
schijven zodanig met jumpers ingesteld dat elke
IDE-controller één master en
één slave heeft.Tijdens het opnieuw opstarten werd het systeem-BIOS
zodanig ingesteld dat het automatisch de aangekoppelde
schijven detecteerde. Het was belangrijker dat &os; ze
tijdens het opnieuw opstarten herkende:ad0: 19574MB <WDC WD205BA> [39770/16/63] at ata0-master UDMA33
ad1: 29333MB <WDC WD307AA> [59598/16/63] at ata0-slave UDMA33
ad2: 29333MB <WDC WD307AA> [59598/16/63] at ata1-master UDMA33
ad3: 29333MB <WDC WD307AA> [59598/16/63] at ata1-slave UDMA33Indien &os; niet alle schijven detecteert, moet
gecontroleerd worden of de jumpers juist zijn ingesteld.
De meeste IDE-schijven hebben ook een jumper voor
Cable Select. Dit is
niet de jumper voor de
master/slave-instelling. Voor hulp met het identificeren
van de juiste jumper dient de documentatie van de schijf
geraadpleegd te worden.Vervolgens dient besloten te worden hoe ze deel gaan
uitmaken van het bestandssysteem. Hiervoor dienen
&man.vinum.8; () en &man.ccd.4;
bestudeerd te worden. Voor deze instellingen werd voor
&man.ccd.4; gekozen.CCD installerenHet stuurprogramma &man.ccd.4; biedt de mogelijkheid om
meerdere identieke schijven aaneen te rijgen tot
één logisch bestandssysteem. Om gebruik te
kunnen maken van &man.ccd.4; is een kernel met ingebouwde
ondersteuning voor &man.ccd.4; nodig. De volgende regel
dient toegevoegd te worden aan het
kernelinstellingenbestand en de kernel dient opnieuw
gebouwd en geïnstalleerd te worden:device ccdOm &man.ccd.4; te installeren dient eerst
&man.bsdlabel.8; gebruikt te worden om de schijven te
labelen:bsdlabel -w -ad1 auto
bsdlabel -w ad2 auto
bsdlabel -w ad3 autoBovenstaande maakt een schijflabel aan voor
ad1c,
ad2c en
ad3c die de gehele schijf
beslaat.Vervolgens dient het labeltype van de schijf veranderd
te worden. Voor het bewerken van de schijven kan
&man.bsdlabel.8; gebruikt worden:bsdlabel -e ad1
bsdlabel -e ad2
bsdlabel -e ad3Dit zorgt ervoor dat het huidige schijflabel van elke
schijf met de tekstverwerker wordt geopend die door de
omgevingsvariabele EDITOR wordt
gespecificeerd, vaak &man.vi.1;.Een ongewijzigd schijflabel ziet er ongeveer als volgt
uit:8 partitions:
# size offset fstype [fsize bsize bps/cpg]
c: 60074784 0 unused 0 0 0 # (Cyl. 0 - 59597)Er dient een nieuwe partitie e
toegevoegd te worden die door &man.ccd.4; gebruikt kan
worden. Deze kan gewoonlijk van partitie
c overgenomen worden, maar het
moet4.2BSD zijn. Het schijflabel ziet
er nu ongeveer als volgt uit:8 partitions:
# size offset fstype [fsize bsize bps/cpg]
c: 60074784 0 unused 0 0 0 # (Cyl. 0 - 59597)
e: 60074784 0 4.2BSD 0 0 0 # (Cyl. 0 - 59597)Bestandssysteem aanmakenNu alle schijven gelabeld zijn, moet de &man.ccd.4;
gebouwd worden. Om dit te doen, dient &man.ccdconfig.8;
gebruikt te worden met opties die ongeveer gelijk zijn aan
de volgende:ccdconfig ccd0 32 0 /dev/ad1e /dev/ad2e /dev/ad3eHieronder staat het gebruik en de betekenis van elke
optie:Het eerste argument is het in te stellen apparaat,
in dit geval /dev/ccd0c. Het
gedeelte /dev/ is
optioneel.De interleave voor het bestandssysteem. De
interleave definiëert de grootte van een stripe
in schijfblokken, elk schijfblok is normaalgesproken
512 bytes groot. Een interleave van 32 is dus
16.384 bytes groot.Vlaggen voor &man.ccdconfig.8;. Indien het gewenst
is om schijfspiegeling aan te zetten, kan er hier een
vlag voor gespecificeerd worden. Deze opstelling biedt
geen spiegeling voor &man.ccd.4;, dus is die op 0 (nul)
ingesteld.De laatste argumenten voor &man.ccdconfig.8; zijn
de apparaten die in de rij geplaatst dienen te worden.
Voor elk apparaat dient de complete padnaam gebruikt te
worden.Nadat &man.ccdconfig.8; gedraaid is, is de &man.ccd.4;
ingesteld. Er kan een bestandssysteem worden
geïnstalleerd. Er kan in &man.newfs.8; worden gekeken
voor opties, of het draaien van het onderstaande commando
is ook toereikend:newfs /dev/ccd0cAlles automatisch makenIn het algemeen is het wenselijk om de &man.ccd.4;
telkens te mouten wanneer er opnieuw opgestart wordt.
Dit dient eerst ingesteld te worden. Met het volgende
commando worden de huidige instellingen naar
/etc/ccd.conf geschreven:ccdconfig -g > /etc/ccd.confTijdens het opstarten draait het script
/etc/rcccdconfig -C
indien /etc/ccd.conf bestaat. Dit
stelt automatisch de &man.ccd.4; in, zodat die kan worden
aangekoppeld.Indien er in enkele-gebruiker-modus wordt opgestart,
dient het volgende commando te worden uitgevoerd om de
rij in te stellen voordat de &man.ccd.4; aangekoppeld kan
worden:ccdconfig -COm de &man.ccd.4; automatisch aan te koppelen, kan er
een regel voor de &man.ccd.4; in
/etc/fstab geplaatst worden, zodat die
tijdens het opstarten aangekoppeld wordt:/dev/ccd0c /media ufs rw 2 2Volumebeheerder VinumRAIDsoftwareRAIDVinumDe volumebeheerder Vinum is een blokstuurprogramma dat
virtuele schijven implementeert. Het isoleert schijfhardware
van de blokapparaat-interface en projecteert gegevens op een
manier die de flexibiliteit, prestatie en betrouwbaarheid
verhoogt in vergelijking met de traditionele slice-blik op
schijfopslag. &man.vinum.8; implementeert de modellen
RAID-0, RAID-1 en RAID-5, zowel individueel als als
combinatie.In staat meer informatie
over &man.vinum.8;.Hardwarematige RAIDRAIDhardwarematig&os; ondersteunt ook een verscheidenheid aan hardwarematige
RAID-stuurprogramma's. Deze apparaten
besturen een RAID-deelsysteem zonder dat er
&os;-specifieke software nodig is om de rij te beheren.Door gebruik te maken van een BIOS die
op de kaart aanwezig is, beheert de kaart de meeste
schijfbewerkingen zelf. Nu volgt een korte beschrijving van
een opzet waarbij een Promise
IDE-stuurprogramma is gebruikt. Wanneer
deze kaart geïnstalleerd en het systeem opgestart is,
beeldt het een prompt af waarbij om informatie wordt gevraagd.
De instructies dienen opgevolgd te worden om bij het
instelscherm van de kaart te komen. Van hieruit kunnen alle
aangekoppelde schijven gecombineerd worden. Nadat dit gedaan
is, zien de schijven er voor &os; als één enkele
schijf uit. Andere RAID-niveaus kunnen
overeenkomstig ingesteld worden.ATA RAID1-rijen opnieuw bouwenMet &os; is het mogelijk om een defecte schijf in een rij
te vervangen terwijl de computer aanstaat (hot
replace). Hiervoor dient de schijf
vóór het opnieuw opstarten vervangen te
zijn.Waarschijnlijk is zoiets als het volgende in
/var/log/messages of in de uitvoer van
&man.dmesg.8; te zien:ad6 on monster1 suffered a hard error.
ad6: READ command timeout tag=0 serv=0 - resetting
ad6: trying fallback to PIO mode
ata3: resetting devices .. done
ad6: hard error reading fsbn 1116119 of 0-7 (ad6 bn 1116119; cn 1107 tn 4 sn 11)\\
status=59 error=40
ar0: WARNING - mirror lostMeer informatie kan met behulp van &man.atacontrol.8;
gezocht worden:&prompt.root; atacontrol list
ATA channel 0:
Master: no device present
Slave: acd0 <HL-DT-ST CD-ROM GCR-8520B/1.00> ATA/ATAPI rev 0
ATA channel 1:
Master: no device present
Slave: no device present
ATA channel 2:
Master: ad4 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5
Slave: no device present
ATA channel 3:
Master: ad6 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5
Slave: no device present
&prompt.root; atacontrol status ar0
ar0: ATA RAID1 subdisks: ad4 ad6 status: DEGRADEDOntkoppel eerst het ata kanaal met de falende schijf
zodat deze veilig kan worden verwijderd:&prompt.root; atacontrol detach ata3Vervang de schijf.Koppel het ata kanaal opnieuw aan:&prompt.root; atacontrol attach ata3
Master: ad6 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5
Slave: no device presentVoeg de nieuwe schijf toe aan de rij als
reserve:&prompt.root; atacontrol addspare ar0 ad6De rij dient nu opnieuw opgebouwd te worden:&prompt.root; atacontrol rebuild ar0Het is mogelijk de voortgang te volgen met het volgende
commando:&prompt.root; dmesg | tail -10
[uitvoer verwijderd]
ad6: removed from configuration
ad6: deleted from ar0 disk1
ad6: inserted into ar0 disk1 as spare
&prompt.root; atacontrol status ar0
ar0: ATA RAID1 subdisks: ad4 ad6 status: REBUILDING 0% completedNu moet er gewacht worden tot de bewerking voltooid
is.MarcFonvieilleBijgedragen door USB-opslagapparatenUSBschijvenVeel externe opslagoplossingen gebruiken tegenwoordig de
Universele Seriële Bus (USB): harde schijven,
USB-duimdrives, CD-R-branders, etc. &os; biedt voor al dit soort
apparaten ondersteuning.InstellenHet stuurprogramma &man.umass.4; biedt de ondersteuning
voor USB-opslagapparaten. Indien de kernel
GENERIC wordt gebruikt, hoeft er niets aan
de instellingen gewijzigd te worden. Als er een eigen kernel
wordt gebruikt, dienen de volgende regels in het
kernelinstellingenbestand aanwezig zijn:device scbus
device da
device pass
device uhci
device ohci
device ehci
device usb
device umassHet stuurprogramma &man.umass.4; gebruikt het subsysteem
SCSI om toegang te krijgen tot de USB-opslagapparaten. Het
USB-apparaat wordt door het systeem als een SCSI-apparaat
gezien. Afhankelijk van de chipset op het moederbord is
slechts òf device uhci òf
device ohci nodig voor ondersteuning van USB 1.X.
Het kan echter geen kwaad om ze beiden in het kernelinstellingenbestand
te hebben. Ondersteuning voor USB 2.0 wordt geleverd door het
stuurprogramma &man.ehci.4; (de regel met
device ehci). Indien er regels zijn toegevoegd dient
de kernel opnieuw gecompileerd en geïnstalleerd te worden.Indien het USB-apparaat een CD-R- of DVD-brander is,
dient het SCSI CD-ROM-stuurprogramma &man.cd.4; met de
volgende regel aan de kernel toegevoegd te worden:device cdAangezien de brander als een SCSI-schijf gezien wordt,
dient het stuurprogramma &man.atapicam.4; niet in de
kernelinstellingen gebruikt te worden.Instellingen testenDe instellingen zijn klaar om getest te worden: het
USB-apparaat dient aangesloten te worden en in de buffer voor
systeemmeldingen (&man.dmesg.8;) dient het stuurprogramma
ongeveer als volgt te verschijnen:umass0: USB Solid state disk, rev 1.10/1.00, addr 2
GEOM: create disk da0 dp=0xc2d74850
da0 at umass-sim0 bus 0 target 0 lun 0
da0: <Generic Traveling Disk 1.11> Removable Direct Access SCSI-2 device
da0: 1.000MB/s transfers
da0: 126MB (258048 512 byte sectors: 64H 32S/T 126C)Uiteraard kunnen het merk, de apparaatnode
(da0) en andere details verschillen
naar gelang de instelling.Aangezien het USB-apparaat als een SCSI-apparaat gezien
wordt, kan het commando camcontrol gebruikt
worden om de USB-opslagapparaten weer te geven die aan het
systeem gekoppeld zijn:&prompt.root; camcontrol devlist
<Generic Traveling Disk 1.11> at scbus0 target 0 lun 0 (da0,pass0)Indien er een bestandssysteem op de schijf aanwezig is, kan
dat aangekoppeld worden. biedt
indien nodig hulp bij het formatteren en aanmaken van partities
op de USB-drive.Om het apparaat koppelbaar te maken voor de gewone gebruiker
moeten er een aantal stappen ondernomen worden. Als eerste
moeten de apparaten die gecreeerd worden wanneer het USB opslag-
medium wordt toegevoegd toegankelijk zijn voor de gebruiker.
Een oplossing is om alle gebruikers die deze rechten nodig hebben
toe te voegen aan de operator groep. Dit
kan gedaan worden met &man.pw.8;. Daarna moet het voor de
operator groep mogelijk zijn te lezen en
te schrijven naar de gecreeerde apparaten. Dit kan bewerkstelligd
worden door de volgende regels toe te voegen aan
/etc/devfs.rules:[localrules=5]
add path 'da*' mode 0660 group operatorAls er SCSI schijven in het systeem aanwezig zijn moet dit
anders aangepakt worden. Stel dat het systeem reeds over de
volgende schijven beschikt da0 tot
en met da2, verander de regel dan
in het volgende:add path 'da[3-9]*' mode 0660 group operatorDit sluit de reeds bestaande schijven buiten van toegang
door de operator groep.Erna moet ook de nieuwe ruleset voor &man.devfs.rules.5;
ingeschakeld worden door middel van
/etc/rc.conf:devfs_system_ruleset="localrules"Hierna moet de kernel worden geconfigureerd zodat gewone
gebruikers rechten krijgen om bestandssystemen te koppelen.
De makkelijkste manier is door de volgende regel toe te voegen
aan /etc/sysctl.conf:vfs.usermount=1Let op, deze wijziging wordt pas actief na de volgende
start van het systeem. Als alternatief kan ook &man.sysctl.8;
gebruikt worden om deze variabele te zetten.De laatste stap is het creëeren van de map waar het
bestandssysteem gekoppeld wordt. Deze map moet eigendom zijn
van de gebruiker die het bestandssysteem gaat koppelen. Een
manier om dat te bewerkstelligen is door met de gebruiker
root een submap aan te maken die eigendom
is van de gebruiker als
/mntgebruikersnaam
(verander gebruikersnaam door de
loginnaam van de daadwerkelijke gebruiker en
gebruikersgroep door de primaire
groep van de gebruiker):&prompt.root; mkdir /mnt/gebruikersnaam
&prompt.root; chown gebruikersnaam:gebruikersgroep /mnt/gebruikersnaamStel dat er vervolgens een USB-stick ingeplugged wordt en er
een /dev/da0s1 aangemaakt wordt. Omdat
deze apparaten meestal voorgeformatteerd met een
FAT-bestandssysteem komen, kan deze als volgende gekoppeld
worden:&prompt.user; mount -t msdosfs -o -m=644,-M=755 /dev/da0s1 /mnt/gebruikersnaamIndien het apparaat losgekoppeld wordt (nadat de schijf
afgekoppeld is), dient in de buffer voor systeemmeldingen iets
als het volgende te zien te zijn:umass0: at uhub0 port 1 (addr2) disconnected
(da0:umass-sim0:0:0:0): lost device
(da0:umass-sim0:0:0:0): removing device entry
GEOM: destroy disk da0 dp=0xc2d74850
umass0: detachedReferentiesNaast de onderdelen Schijven
toevoegen en Bestandssystemen aan- en
afkoppelen, kunnen de volgende hulppagina's ook nuttig
zijn: &man.umass.4;, &man.camcontrol.8; en &man.usbconfig.8; voor
&os; 8.X of &man.usbdevs.8; voor eerdere versies van &os;.MikeMeyerBijgedragen door Optische media (CD's) aanmaken en gebruikenCD-ROM'saanmakenInleidingCD's hebben een aantal eigenschappen waardoor ze
verschillen van conventionele schijven. Initieel zijn ze door
de gebruiker niet beschrijfbaar. Ze zijn zó ontworpen
dat ze continu, zonder vertragingen van het verplaatsen van de
kop tussen tracks, gelezen kunnen worden. Ze zijn ook veel
gemakkelijker tussen twee systemen te verplaatsen dan
gelijksoortige media in hun tijd waren.CD's hebben tracks, maar die verwijzen naar secties van
gegevens die continu gelezen dienen te worden en niet naar
fysieke eigenschappen van de schijf. Om een CD op &os; te
produceren, dienen de gegevensbestanden waaruit de tracks op de
CD gaan bestaan te worden voorbereid, waarna de tracks op de CD
worden geschreven.ISO 9660bestandssystemenISO 9660Het bestandssysteem ISO 9660 is ontworpen om met deze
verschillen om te gaan. Helaas codeert het
bestandssysteemgrenzen die destijds gebruikelijk waren.
Gelukkig biedt het een uitbreidingsmechanisme dat correct
geschreven CD's toestaat om deze grenzen te overschrijden en
nog steeds te werken met systemen die deze uitbreidingen niet
ondersteunen.sysutils/cdrtoolsDe port sysutils/cdrtools bevat
&man.mkisofs.8;, een programma dat gebruikt kan worden om een
gegevensbestand aan te maken dat een ISO 9660-bestandssysteem
bevat. Het bevat opties die verschillende uitbreidingen
ondersteunen en wordt hieronder beschreven.CD-branderATAPIHet gereedschap om de CD te branden hangt af van het feit
of de CD-brander ATAPI of iets anders is. ATAPI CD-branders
gebruiken het programma burncd dat deel uitmaakt
van het basissysteem. SCSI en USB CD-branders dienen
cdrecord van
de port sysutils/cdrtools
te gebruiken. Het is ook mogelijk om cdrecord en andere
gereedschappen voor SCSI-drives op ATAPI-hardware te
gebruiken door middel van de module ATAPI/CAM.Indien CD-brandsoftware met een grafische
gebruikersinterface gewenst is, is
X-CD-Roast of K3b
een mogelijkheid. Deze gereedschappen zijn
beschikbaar als package of vanuit de ports sysutils/xcdroast en sysutils/k3b.
X-CD-Roast en
K3b hebben de module ATAPI/CAM met
ATAPI-hardware nodig.mkisofsHet programma &man.mkisofs.8;, dat deel uitmaakt van de
port sysutils/cdrtools,
maakt een ISO 9660-bestandssysteem aan dat een beeld is van een
boomstructuur in de &unix; bestandssysteem-namespace. De
eenvoudigste gebruiksvorm is:&prompt.root; mkisofs -o beeldbestand.iso/pad/naar/boomstructuurbestandssystemenISO 9660Dit commando maakt een
beeldbestand.iso aan dat een ISO
9660-bestandssysteem bevat dat een kopie is van de
boomstructuur in
/pad/naar/boomstructuur. Tijdens
het proces beeldt het bestandsnamen af op namen die aan de
beperkingen van het standaard ISO 9660-bestandssysteem voldoen
en sluit het bestanden uit die namen hebben die niet
karakteristiek zijn voor ISO-bestandssystemen.bestandssystemenHFSbestandssystemenJolietEr is een aantal opties beschikbaar om over deze
beperkingen heen te komen. In het bijzonder zet
de Rock Ridge-uitbreidingen aan die
gangbaar zijn voor &unix; systemen, zet de
Rock Ridge-uitbreidingen aan die gebruikt worden op
Microsoft-systemen en kan gebruikt worden
om HFS-bestandssystemen aan te maken die door &macos; gebruikt
worden.Voor CD's die alleen op &os;-systemen gebruikt gaan worden,
kan gebruikt worden om alle restricties op
bestandsnamen uit te zetten. Indien het met
gebruikt wordt, maakt het een
bestandssysteembeeld aan dat identiek is aan de
&os;-boomstructuur van waaruit begonnen is, alhoewel het
mogelijk is dat het zich op aantal manieren niet aan de
ISO 9660-standaard houdt.CD-ROM'sopstartbaar makenDe laatste optie voor algemeen gebruik is
. Deze wordt gebruikt om de plaats van het
opstartbeeld aan te geven om een El Torito
opstartbare CD te maken. Deze optie heeft een argument nodig,
namelijk het pad naar een opstartbeeld dat het begin van de
boomstructuur die naar de CD geschreven wordt voorstelt.
Gewoonlijk maakt &man.mkisofs.8; een ISO-beeld aan in de
zogenaamde diskette-emulatie-modus en verwacht
het dus dat het beeldbestand exact 1200, 1440 of 2880 KB
groot is. Sommige bootloaders, zoals degene die door de
distributieschijven van &os; wordt gebruikt, gebruiken de
emulatiemodus niet. In dat geval dient de optie
gebruikt te worden. Dus indien
/tmp/myboot een opstartbaar &os;-systeem
met het beeldbestand in
/tmp/myboot/boot/cdboot bevat, kan het
beeld van een ISO 9660-bestandssysteem als volgt in
/tmp/bootable.iso aangemaakt
worden:&prompt.root; mkisofs -R -no-emul-boot -b boot/cdboot -o /tmp/bootable.iso /tmp/mybootAls dit gedaan is en md in de
kernel is ingesteld, kan het bestandssysteem gekoppeld
worden:&prompt.root; mdconfig -a -t vnode -f /tmp/bootable.iso -u 0
&prompt.root; mount -t cd9660 /dev/md0 /mntNu kan gecontroleerd worden of /mnt en
/tmp/myboot identiek zijn.Er zijn vele andere opties die met &man.mkisofs.8; gebruikt
kunnen worden om het gedrag af te stemmen. In het bijzonder
wijzigingen aan een ISO 9660-structuur en het aanmaken van
Joliet- en HFS-schijven. Details staan in
&man.mkisofs.8;.burncdCD-ROM'sbrandenIndien er een ATAPI CD-brander aanwezig is, kan het
commando burncd gebruikt worden om een
ISO-beeld naar een CD te branden. burncd
maakt deel uit van het basissysteem en is geïnstalleerd
als /usr/sbin/burncd. Het gebruik is erg
eenvoudig, aangezien het weinig opties heeft.&prompt.root; burncd -f cd-apparaat gegevens beeldbestand.iso fixateHet bovenstaande commando brandt een kopie van
beeldbestand.iso naar
cd-apparaat. Het standaardapparaat
is /dev/acd0. Opties om
de schrijfsnelheid in te stellen, de CD na het branden uit
te werpen en geluidsgegevens te schrijven staan in
&man.burncd.8;.cdrecordIndien er geen ATAPI CD-brander aanwezig is, dient
cdrecord gebruikt te worden om CD's te
branden. cdrecord maakt geen deel uit van
het basissysteem. Het dient òfwel vanuit de port in
sysutils/cdrtools
òfwel als package geïnstalleerd te worden.
Veranderingen in het basissysteem kunnen ervoor zorgen dat
binaire versies van dit programma falen, wat mogelijk tot een
coaster leidt. Daarom dient òfwel de
port bijgewerkt te worden als het systeem wordt bijgewerkt,
òwel, als -STABLE gevolgd
wordt, dient de port bijgewerkt te worden wanneer er een nieuwe
versie beschikbaar komt.Hoewel cdrecord vele opties heeft, is
het gebruik voor gewone situaties nog eenvoudiger dan dat van
burncd. Een ISO 9660-beeld kan gebrand
worden met:&prompt.root; cdrecord dev=devicebeeldbestand.isoHet lastige gedeelte in het gebruik van
cdrecord is het vinden van de juiste
. Om de juiste instelling te vinden, kan
de vlag van
cdrecord gebruikt worden, wat resultaten
zoals de onderstaande kan geven:CD-ROM'sbranden&prompt.root; cdrecord -scanbus
Cdrecord-Clone 2.01 (i386-unknown-freebsd7.0) Copyright (C) 1995-2004 Jörg Schilling
Using libscg version 'schily-0.1'
scsibus0:
0,0,0 0) 'SEAGATE ' 'ST39236LW ' '0004' Disk
0,1,0 1) 'SEAGATE ' 'ST39173W ' '5958' Disk
0,2,0 2) *
0,3,0 3) 'iomega ' 'jaz 1GB ' 'J.86' Removable Disk
0,4,0 4) 'NEC ' 'CD-ROM DRIVE:466' '1.26' Removable CD-ROM
0,5,0 5) *
0,6,0 6) *
0,7,0 7) *
scsibus1:
1,0,0 100) *
1,1,0 101) *
1,2,0 102) *
1,3,0 103) *
1,4,0 104) *
1,5,0 105) 'YAMAHA ' 'CRW4260 ' '1.0q' Removable CD-ROM
1,6,0 106) 'ARTEC ' 'AM12S ' '1.06' Scanner
1,7,0 107) *Dit geeft de gepaste -waarden voor de
apparaten in de lijst. De CD-brander dient gezocht te worden,
waarna de drie getallen gescheiden door komma's gebruikt kunnen
worden als de waarde voor . In dit geval
is het CD-RW-apparaat 1,5,0, dus is de juiste invoer
. Er zijn eenvoudigere manieren om
deze waarde te specificeren. In &man.cdrecord.1; staan meer
details. Hier staat ook informatie over geluidstracks, de
snelheid instellen en meer.Audio-CD's duplicerenEen audio-CD kan gedupliceerd worden door de
geluidsgegevens van de CD naar een serie bestanden te
schrijven en deze bestanden daarna naar een lege CD te
schrijven. Het proces verschilt licht tussen ATAPI- en
SCSI-drives.SCSI-drivesOnttrek cdda2wav de audio:&prompt.user; cdda2wav -v255 -D2,0 -B -OwavSchrijf met cdrecord de
.wav-bestanden:&prompt.user; cdrecord -v dev=2,0 -dao -useinfo *.wavControleer of 2,0 juist is
opgegeven, zoals beschreven in .ATAPI-drivesHet ATAPI CD-stuurprogramma maakt elke track
beschikbaar als
/dev/acddtnn,
waarin d het stationsnummer is
en nn het tracknummer is in twee
decimale cijfers, dat indien nodig vooraf wordt gegaan door
een nul. Dus is de eerste track op de eerste schijf
/dev/acd0t01, de tweede
/dev/acd0t02, de derde
/dev/acd0t03, enzovoort.Controleer of de juiste bestanden in
/dev bestaan. Als de benodigde
namen er niet bijstaan, forceer het systeem dan om opnieuw
te kijken:&prompt.root; dd if=/dev/acd0 of=/dev/null count=1De track kan met &man.dd.1; onttrokken worden. Bij het
onttrekken van de bestanden dient een specifieke
blokgrootte gebruikt te worden.&prompt.root; dd if=/dev/acd0t01 of=track1.cdr bs=2352
&prompt.root;dd if=/dev/acd0t02 of=track2.cdr bs=2352
...
Brand de onttrokken bestanden met
burncd. Er dient opgegeven te worden
dat het geluidsbestanden zijn en dat
burncd de schijf moet fixeren wanneer
na afronding van het proces.&prompt.root; burncd -f /dev/acd0 audio track1.cdr track2.cdr ... fixateGegevens-CD's duplicerenEen gegevens-CD kan gekopieerd worden naar een beeldbestand
dat functioneel gelijk is aan het beeldbestand dat met
&man.mkisofs.8; gemaakt is en het kan gebruikt worden om elke
gegevens-CD te dupliceren. Het hier gegeven voorbeeld neemt
aan dat het CD-ROM-apparaat acd0
is.&prompt.root; dd if=/dev/acd0 of=bestand.iso bs=2048Nu het beeld beschikbaar is, kan het naar CD geschreven
worden zoals hierboven beschreven.Gegevens-CD's gebruikenNu er een standaard gegevens-CD-ROM is aangemaakt moet deze
waarschijnlijk aangekoppeld worden om de gegevens die er op
staan te lezen. Normaalgesproken neemt &man.mount.8; aan dat
een bestandssysteem van het soort ufs is.
Als zoiets als onderstaande geprobeerd wordt komt er een klacht
over Incorrect super block en wordt er
niet aangekoppeld:&prompt.root; mount /dev/cd0 /mntDe CD-ROM bevat geen
UFS-bestandssysteem, dus pogingen om zo aan
te koppelen mislukken. Er dient aan &man.mount.8; verteld te
worden dat het bestandssysteem van het soort
ISO9660 is en dan werkt alles. Dit kan
door de optie van &man.mount.8; op
te geven. Het CD-ROM-apparaat /dev/cd0
onder /mnt aankoppelen kan zo:&prompt.root; mount -t cd9660 /dev/cd0 /mntDe apparaatnaam (in dit voorbeeld
/dev/cd0) kan afwijken, afhankelijk van de
interface die de CD-ROM gebruikt. Verder voert de optie
gewoon &man.mount.cd9660.8; uit.
Bovenstaand voorbeeld kan verkort worden tot:&prompt.root; mount_cd9660 /dev/cd0 /mntHet is in het algemeen mogelijk om gegevens-CD-ROMs van
elke fabrikant op deze manier te gebruiken. Schijven met
bepaalde uitbreidingen op ISO 9660 kunnen zich echter vreemd
gedragen. Joliet-schijven bijvoorbeeld, slaan alle
bestandsnamen op in twee-byte Unicode-karakters. De
&os;-kernel spreekt geen Unicode, maar het &os; CD9660
stuurprogramma is in staat om Unicode karakters direct te
converteren. Als er niet-Engelse karakters verschijnen als
vraagtekens, moet de lokale karakterset gedefinieerd worden
met de optie. Zie de &man.mount.cd9660.8;
handleiding voor meer informatie.Om in staat te zijn om de karakter conversie te doen met
behulp van de optie, heeft de kernel de
cd9660_iconv.ko module nodig. Deze kan
ingeladen worden door het volgende toe te voegen aan
/boot/loader.conf:cd9660_iconv_load="YES"en daarna de machine te herstarten of door de module direct
in te laden met &man.kldload.8;.Zo nu en dan kan Device not
configured verschijnen als geprobeerd wordt om een
CD-ROM aan te koppelen. Dit betekent meestal dat het
CD-ROM-station denkt dat er geen schijf in de lade ligt of dat
het station niet zichtbaar is op de bus. Omdat het enkele
seconden kan duren voordat een CD-ROM-station doorheeft dat er
een CD-ROM in ligt, is geduld geboden.Soms wordt een SCSI CD-ROM gemist omdat het station niet
genoeg tijd had om antwoord te geven op de busreset. Indien er
een SCSI CD-ROM aanwezig is, dient de volgende optie aan de
kernelinstellingen toegevoegd te worden en de kernel opnieuw gebouwd
te worden.options SCSI_DELAY=15000Dit zorgt ervoor dat de SCSI-bus 15 seconden pauzeert
tijdens het opstarten opdat het CD-ROM-station elke gelegenheid
krijgt om de busreset te beantwoorden.Rauwe gegevens-CD's brandenEen bestand kan direct naar CD geschreven worden zonder een
ISO 9660-bestandssysteem aan te maken. Sommige mensen doen dit
voor back-updoeleinden. Dit gaat sneller dan een standaard-CD
branden:&prompt.root; burncd -f /dev/acd1 -s 12 gegevens archief.tar.gz fixateOm de gegevens terug te halen die op zo'n CD gebrand zijn,
is het noodzakelijk om gegevens van de rauwe apparaatnode te
lezen:&prompt.root; tar xzvf /dev/acd1Het is niet mogelijk om deze schijf aan te koppelen zoals
dat voor een normale CD-ROM gedaan wordt. Zo'n CD-ROM kan onder
geen enkel besturingssysteem, behalve &os;, gelezen worden.
Om de CD aan te kunnen koppelen of gegevens te delen met een
ander besturingssysteem, dient &man.mkisofs.8; gebruikt te
worden, zoals boven beschreven is.MarcFonvieilleBijgedragen door CD-branderATAPI/CAM-stuurprogrammaHet ATAPI/CAM-stuurprogramma gebruikenDit stuurprogramma stelt ATAPI-apparaten (CD-ROM, CD-RW,
DVD-stations, enzovoort) in staat om vanuit het SCSI-subsysteem
benaderd te worden en maakt daarmee het gebruik van applicaties
zoals sysutils/cdrdao of
&man.cdrecord.1; mogelijk.Om dit stuurprogramma te gebruiken, is het noodzakelijk om
de volgende regel aan het /boot/loader.conf
bestand toe te voegen:atapicam_load="YES"om daarna de machine opnieuw op te starten.Als het noodzakelijk is om &man.atapicam.4; statisch toe
te voegen aan de kernel moet de volgende regel worden
toegevoegd aan het kernelinstellingenbestand:device atapicamOok zijn de volgende regels in het
kernelinstellingenbestand nodig, die meestal wel aanwezig
zijn:device ata
device scbus
device cd
device passHierna dient de nieuwe kernel opnieuw gebouwd en
geïnstalleerd te worden en dient de machine opnieuw
gestart te worden.Tijdens het opstartproces dient de brander
als volgt te verschijnen:acd0: CD-RW <MATSHITA CD-RW/DVD-ROM UJDA740> at ata1-master PIO4
cd0 at ata1 bus 0 target 0 lun 0
cd0: <MATSHITA CD-RW/DVD UJDA740 1.00> Removable CD-ROM SCSI-0 device
cd0: 16.000MB/s transfers
cd0: Attempt to query device size failed: NOT READY, Medium not present - tray closedHet station is nu toegankelijk via de apparaatnaam
/dev/cd0. Om bijvoorbeeld een CD-ROM op
/mnt aan te koppelen:&prompt.root; mount -t cd9660 /dev/cd0 /mntAls root kan het volgende commando
gegeven worden om het SCSI-adres van de brander te
verkrijgen:&prompt.root; camcontrol devlist
<MATSHITA CD-RW/DVD UJDA740 1.00> at scbus1 target 0 lun 0 (pass0,cd0)Dus 1,0,0 is het SCSI-adres dat met
&man.cdrecord.1; en andere SCSI-toepassingen gebruikt dient te
worden.Meer informatie over het ATAPI/CAM en het SCSI-systeem
staat in de hulppagina's van &man.atapicam.4; en
&man.cam.4;.MarcFonvieilleBijgedragen door AndyPolyakovMet toevoegingen van Optische media (DVD's) aanmaken en gebruikenDVDbrandenInleidingVergeleken met de CD behoort de DVD de tot de volgende
generatie van optische media-opslagtechnologie. De DVD kan
meer gegevens bevatten dan enige CD en is tegenwoordig de
standaard voor videopublicatie.Er kunnen vijf fysieke opneembare formaten gedefinieerd
worden die opneembare DVD heten:DVD-R: dit was het eerst beschikbare opneembare
DVD-formaat. De DVD-R-standaard is gedefinieerd door het
DVD
Forum. Dit formaat is voor eenmalig
schrijven.DVD-RW: dit is de herschrijfbare versie van de
DVD-R-standaard. Een DVD-RW kan tot ongeveer 1.000 maal
herschreven worden.DVD-RAM: dit is ook een herschrijfbaar formaat dat
door het DVD Forum ondersteund wordt. Een DVD-RAM kan
gezien worden als een verwisselbare harde schijf. Dit
medium is echter niet uitwisselbaar met de meeste
DVD-ROM-stations en DVD-Video-spelers. Slechts enkele
DVD-schrijvers ondersteunen het DVD-RAM-formaat. Lees
voor meer informatie
over het gebruik van DVD-RAM.DVD+RW: dit is het herschrijfbare formaat dat is
gedefinieerd door de DVD+RW Alliance. Een
DVD+RW kan tot ongeveer 1.000 maal herschreven
worden.DVD+R: dit formaat is de eenmalig beschrijfbare versie
van het DVD+RW-formaat.Een enkellaags opneembare DVD kan maximaal
4.700.000.000 bytes bevatten, wat eigenlijk 4,38 GB
of 4.485 MB is (1 kB is 1024 bytes).Er dient onderscheid gemaakt te worden tussen het fysieke
medium en de toepassing. Een DVD-Video bijvoorbeeld is een
specifiek bestandsschema dat op elk fysiek opneembaar
DVD-medium geschreven kan worden: DVD-R, DVD+R, DVD-RW,
enzovoort. Voordat het mediumtype gekozen wordt, dient het
zeker te zijn dat zowel de brander als de DVD-Video-speler
(een onafhankelijke speler of een DVD-ROM-station in een
computer) overweg kunnen met het overwogen medium.InstellingenHet programma &man.growisofs.1; wordt gebruikt om DVD's op
te nemen. Dit commando is deel van de
dvd+rw-tools gereedschappen
(sysutils/dvd+rw-tools).
dvd+rw-tools ondersteunt alle types
DVD-media.Deze gereedschappen gebruiken het SCSI-subsysteem om
toegang tot de apparaten te krijgen, daarvoor moet ondersteuning voor ATAPI/CAM aan de
kernel toegevoegd worden. Indien de brander de USB-interface
gebruikt, is deze toevoeging nutteloos en dient gelezen te worden voor meer details over
het instellen van USB-apparaten.De DMA-toegang voor ATAPI-apparaten dient ook aangezet te
worden door de volgende regel aan het bestand
/boot/loader.conf toe te voegen:hw.ata.atapi_dma="1"Voordat de dvd+rw-tools gebruikt
kunnen worden, dienen de
dvd+rw-tools' hardware compatibility notes
geraadpleegd te worden voor enige informatie die betrekking
heeft op de DVD-brander.Indien een grafische gebruikersinterface gewenst is, is
K3b (sysutils/k3b), die een
gebruikersvriendelijke interface biedt voor &man.growisofs.1;
en vele andere brandprogramma's, het bekijken waard.Gegevens-DVD's brandenHet commando &man.growisofs.1; is een frontend voor mkisofs. Het roept &man.mkisofs.8;
aan om het bestandssysteemoverzicht aan te maken en het
schrijft naar de DVD. Hierdoor is het niet nodig om een beeld
van de gegevens aan te maken voordat met branden begonnen
wordt.Om de gegevens uit de map /pad/naar/gegevens op een DVD+R
of een DVD-R te branden:&prompt.root; growisofs -dvd-compat -Z /dev/cd0 -J -R /pad/naar/gegevensDe opties worden doorgegeven aan
&man.mkisofs.8; voor het aanmaken van het bestandssysteem (in
dit geval een ISO 9660-bestandssysteem met Joliet en Rock Ridge
uitbreidingen). Meer details staan in de hulppagina
&man.mkisofs.8;.De optie wordt gebruikt voor het
opnemen van de eerste sessie, ook bij meerdere sessies. Het
DVD-apparaat, /dev/cd0, dient aan de
hand van de instellingen aangepast te worden. De parameter
sluit de schijf zodat er niets aan
de opname toegevoegd kan worden. Dit zou als tegenprestatie
betere uitwisselbaarheid met DVD-ROM-stations moeten
geven.Het is ook mogelijk om een vooraf gemastered beeld te
branden, om bijvoorbeeld het beeld
beeldbestand.iso te branden:&prompt.root; growisofs -dvd-compat -Z /dev/cd0=beeldbestand.isoDe schrijfsnelheid moet automatisch gedetecteerd en
ingesteld worden, afhankelijk van het medium en het gebruikte
station. Om de schrijfsnelheid te forceren, dient de parameter
gebruikt te worden. Meer informatie
staat in de hulppagina &man.growisofs.1;.DVDDVD-VideoDVD-Video brandenEen DVD-Video is een specifiek bestandsschema dat gebaseerd
is op de ISO 9660 en de micro-UDF (M-UDF) specificaties.
DVD-Video heeft ook een specifieke hiërarchie voor de
gegevensstructuur, de reden waarom een speciaal programma zoals
multimedia/dvdauthor nodig
is om de DVD te schrijven.Indien er reeds een beeld van het bestandssysteem van de
DVD-Video beschikbaar is, kan het zoals elk ander beeld gebrand
worden. In de vorige sectie staat een voorbeeld. Als het
resultaat voor de inhoud voor de DVD bijvoorbeeld in de map
/pad/naar/video staat,
kan de DVD-Video als volgt gebrand worden:&prompt.root; growisofs -Z /dev/cd0 -dvd-video /pad/naar/videoDe optie wordt doorgegeven aan
&man.mkisofs.8; en geeft het opdracht om een
bestandssysteemschema voor een DVD-Video aan te maken. Verder
impliceert de optie de optie
van &man.growisofs.1;.DVDDVD+RWDVD+RW gebruikenIn tegenstelling tot een CD-RW dient een nieuwe DVD+RW voor
het eerste gebruik geformatteerd te worden. Het programma
&man.growisofs.1; regelt dit automatisch als nodig. Dit is de
aanbevolen manier. Het is ook mogelijk om
dvd+rw-format te gebruiken om een DVD+RW te
formatteren:&prompt.root; dvd+rw-format /dev/cd0Deze operatie hoeft slechts één maal
uitgevoerd te worden. Onthoud dat alleen nieuwe DVD+RW-media
geformatteerd dienen te worden. Daarna is het mogelijk om de
DVD+RW op dezelfde manier te branden zoals in bovenstaande
secties staat vermeldt.Om nieuwe gegevens op een DVD+RW te branden (een geheel
nieuw bestandssysteem branden, niet wat gegevens toevoegen), is
het niet nodig om deze te wissen. Het is voldoende om de
vorige opname te overschrijven (tijdens het aanmaken van een
initiële sessie), zoals hieronder:&prompt.root; growisofs -Z /dev/cd0 -J -R /pad/naar/nieuwe gegevensHet DVD+RW-formaat biedt de mogelijkheid om eenvoudig
nieuwe gegevens aan een vorige opname toe te voegen. De
operatie bestaat uit het samenvoegen van een nieuwe sessie en
de bestaande. Het is geen multisessie-schrijven.
&man.growisofs.1; laat het ISO 9660-bestandssysteem dat
aanwezig is op het medium groeien.Om gegevens aan de vorige DVD+RW toe te voegen:&prompt.root; growisofs -M /dev/cd0 -J -R /pad/naar/volgende gegevensDezelfde opties van &man.mkisofs.8; die gebruikt werden om
de initiële sessie te branden, dienen gebruikt te worden
tijdens schrijfsessies.De optie kan gebruikt worden
als betere uitwisselbaarheid met DVD-ROM-stations gewenst is.
In het geval van een DVD+RW verhindert dit het toevoegen van
gegevens niet.Om het medium te wissen:&prompt.root; growisofs -Z /dev/cd0=/dev/zeroDVDDVD-RWDVD-RW gebruikenEen DVD-RW accepteert twee schijfformaten: de incrementele
sequentiële en beperkt overschrijven. Standaard zijn
DVD-RW-schijven in het sequentiële formaat.Een nieuwe DVD-RW kan direct beschreven worden zonder deze
te formatteren. Een gebruikte DVD-RW in sequentieel formaat
dient echter gewist te worden voordat het mogelijk is om een
nieuwe initiële sessie te schrijven.Om een DVD-RW in sequentiële toestand te wissen, dient
het volgende gedaan te worden:&prompt.root; dvd+rw-format -blank=full /dev/cd0Volledig wissen () neemt
ongeveer één uur in beslag op een 1x-medium.
Het is mogelijk om snel te wissen door gebruik te maken van
de optie als de DVD-RW in
Disk-At-Once-modus (DAO) wordt opgenomen. Om de DVD-RW in
DAO-modus te branden:&prompt.root; growisofs -use-the-force-luke=dao -Z /dev/cd0=beeldbestand.isoDe optie is niet
nodig aangezien &man.growisofs.1; probeert om minimale (snel
gewiste) media te detecteren en gebruik te maken van
DAO-schrijven.Eigenlijk moet beperkt overschrijven gebruikt worden met
elke DVD-RW. Dit formaat is flexibeler dan het standaard
incrementeel sequentiële.Om gegevens op een sequentiële DVD-RW te schrijven,
worden dezelfde instructies gebruikt als voor de andere
DVD-formaten:&prompt.root; growisofs -Z /dev/cd0 -J -R /pad/naar/gegevensOm wat gegevens aan de vorige opname toe te voegen, dient
de optie van &man.growisofs.1; gebruikt te
worden. Als echter gegevens aan een DVD-RW in incrementeel
sequentiële modus worden toegevoegd, wordt een nieuwe
sessie op de schijf aangemaakt wat resulteert in een
multisessie schijf.Een DVD-RW in het beperkt overschrijven formaat hoeft niet
gewist te worden vóór een nieuwe initiële
sessie. Het is voldoende om de schijf te overschrijven met de
optie , wat analoog is aan het geval van de
DVD+RW. Het is ook mogelijk om een bestaand ISO
9660-bestandssysteem te laten groeien op soortgelijke wijze als
voor een DVD+RW met de optie . Het
resultaat is een enkelsessie DVD.Om een DVD-RW in het beperkt overschrijven-formaat te
zetten:&prompt.root; dvd+rw-format /dev/cd0Om terug te gaan naar het sequentiële formaat:&prompt.root; dvd+rw-format -blank=full /dev/cd0MultisessieMultisessie DVD's worden door zeer weinig DVD-ROM-stations
geaccepteerd en meestal lezen ze hopelijk tenminste de eerste
sessie. DVD+R, DVD-R en DVD-RW kunnen in het sequentiële
formaat meerdere sessies accepteren. Het idee van meerdere
sessies bestaat niet voor de formaten DVD+RW en DVD-RW in
beperkt overschrijven.Om een nieuwe sessie achter een initiële
(niet-gesloten) sessie op een DVD+R, DVD-R of DVD-RW in
sequentieel formaat toe te voegen:&prompt.root; growisofs -M /dev/cd0 -J -R /pad/naar/volgende gegevensHet gebruik van dit commando met een DVD+RW of een DVD-RW
in beperkt overschrijven-formaat voegt gegevens toe door de
nieuwe sessie samen te voegen met de bestaande. Dit leidt tot
een enkelsessie schijf. Deze manier kan gebruikt worden om
gegevens achter een initiële sessie aan deze media toe te
voegen.Op deze media wordt wat ruimte gebruikt tussen elke
sessie om het einde en begin van de sessies aan te geven.
Daarom dienen sessies met grote hoeveelheden gegevens
toegevoegd te worden om de mediaruimte te optimaliseren. Het
aantal sessies is beperkt tot 154 voor een DVD+R, ongeveer
2000 voor een DVD-R en 127 voor een dubbellaags DVD+R.Meer informatieOm meer informatie over een DVD te verkrijgen kan het
commando
dvd+rw-mediainfo /dev/cd0
met de schijf in het station gebruikt worden.Meer informatie over
dvd+rw-tools staat in de hulppagina
&man.growisofs.1;, op de dvd+rw-tools
website en in de archieven van de cdwrite mailing
list.De uitvoer van dvd+rw-mediainfo met
betrekking tot de resulterende opname of het medium met
problemen is verplicht voor elk probleemrapport. Zonder deze
uitvoer volgt geen hulp.DVD-RAM gebruikenDVDDVD-RAMConfiguratieDVD-RAM schrijvers komen met of een SCSI of een ATAPI
interface. DMA toegang voor ATAPI apparaten moet worden
ingeschakeld, wat gedaan kan worden door de volgende regel
toe te voegen aan
/boot/loader.conf:hw.ata.atapi_dma="1"Voorbereiden van het mediumZoals vermeld in de introductie van dit hoofdstuk kan
DVD-RAM gezien worden als een verwijderbare harde schijf.
Zoals elke andere harde schijf moet de DVD-RAM
voorbereid worden voor het eerste gebruik.
In het voorbeeld wordt alle beschikbare ruimte gebruikt voor
een standaard UFS2 bestandssysteem:&prompt.root; dd if=/dev/zero of=/dev/acd0 bs=2k count=1
&prompt.root; bsdlabel -Bw acd0
&prompt.root; newfs /dev/acd0Het DVD apparaat, acd0 moet worden
gewijzigd naar gelang de configuratie.Het medium gebruikenZodra de voorgaande operaties uitgevoerd zijn op de DVD-RAM
kan het gekoppeld worden net als een normale harde schijf:&prompt.root; mount /dev/acd0/mntHierna zal de DVD-RAM zowel lees- als beschrijfbaar zijn.JulioMerinoOrigineel werk door MartinKarlssonHerschreven door Diskettes aanmaken en gebruikenSoms is het opslaan van gegevens op een diskette nuttig,
bijvoorbeeld als er geen andere verwijderbare opslagmedia
beschikbaar zijn of als kleine hoeveelheden gegevens naar een
andere computer moeten worden overgedragen.In deze sectie wordt beschreven hoe diskettes in &os;
gebruikt dienen te worden. Hier worden hoofdzakelijk het
formatteren en gebruik van 3,5 inch DOS-diskettes behandeld,
maar de concepten zijn vergelijkbaar voor andere
disketteformaten.Diskettes formatterenHet apparaatDiskettes worden benaderd door ingangen in
/dev net zoals andere apparaten. Om
een rauwe floppy te benaderen gebruik je
/dev/fdN.FormatterenEen diskette dient op laag niveau geformatteerd te worden
voordat deze kan worden gebruikt. Dit wordt meestal door de
fabrikant gedaan, maar formatteren is een goede manier om de
integriteit van het medium te controleren. Hoewel het
mogelijk is om grotere (of kleinere) schijfgroottes te
forceren, zijn de meeste diskettes ontworpen voor
1440kB.Een diskette kan op laag niveau geformatteerd worden met
&man.fdformat.1;. Dit gereedschap verwacht de apparaatnaam
als parameter.Op basis van eventuele foutmeldingen kan bepaald worden
of een schijf goed of slecht is.Formatteren van floppiesVoor het formatteren van de diskette dienen de
apparaten
/dev/fdN
gebruikt te worden. Nadat een 3,5 inch diskette in
het station is gestoken:&prompt.root; /usr/sbin/fdformat -f 1440 /dev/fd0SchijflabelsNadat de diskette op laag niveau is geformatteerd, dient er
schijflabel aan gekoppeld te worden. Dit schijflabel wordt
later vernietigd, maar het systeem heeft het nodig om later de
grootte en de geometrie van de schijf te bepalen.Het nieuwe schijflabel neemt de gehele schijf over en bevat
alle benodigde informatie over de geometrie van de diskette.
De geometriewaarden van het schijflabel staan vermeld in
/etc/disktab.Nu kan &man.bsdlabel.8; als volgt gedraaid worden:&prompt.root; /sbin/bsdlabel -B -w /dev/fd0 fd1440BestandssystemenNu is de diskette klaar om op hoog niveau geformatteerd te
worden. Hiermee wordt een nieuw bestandssysteem opgezet, wat
&os; in staat stelt om naar de schijf te lezen en te schrijven.
Nadat het nieuwe bestandssysteem is aangemaakt, wordt het
schijflabel vernietigd, dus om de schijf te herformatteren is
het noodzakelijk om het schijflabel opnieuw aan te
maken.Het bestandssysteem voor diskettes kan zowel UFS als FAT
zijn. FAT is over het algemeen een betere keuze voor
diskettes.Om een nieuw bestandssysteem op de diskettes te
zetten:&prompt.root; /sbin/newfs_msdos /dev/fd0De schijf is nu klaar voor gebruik.Diskettes gebruikenOm de diskette te gebruiken kan &man.mount.msdosfs.8;
gebruikt worden om het medium aan te koppelen. Ook kan
emulators/mtools uit de
Portscollectie worden gebruikt.Gegevensbanden aanmaken en gebruikenbandmediaDe belangrijkste bandmedia zijn de 4mm, 8mm, QIC,
mini-cartridge en DLT.4mm (DDS: Digital Data Storage)bandmediaDDS (4mm) bandenbandmediaQIC banden4mm-banden vervangen steeds vaker QIC-banden als
back-upmedium voor werkstations. Deze trend werd versneld toen
Connor Archive, een toonaangevende fabrikant van QIC-stations,
overnam en daarna de productie van QIC-stations stopte.
4mm-stations zijn klein en stil maar genieten niet de
betrouwbaarheidsreputatie van 8mm-stations. De cartridges zijn
minder duur en kleiner (3 x 2 x 0,5 inch, 76 x 51 x 12 mm) dan
8mm-cartridges. Net zoals bij 8mm hebben de koppen bij 4mm een
vergelijkbaar kort leven, omdat beiden gebruik maken van een
helische scan.De gegevensdoorvoer op deze stations begint bij ongeveer
150 kB/s, met pieken van 500 kB/s. De
opslagcapaciteit begint bij 1,3 GB en eindigt bij
2,0 GB. Hardwarecompressie, die voor de meeste stations
beschikbaar is, zorgt voor ongeveer een verdubbeling van de
capaciteit. Bibliotheekeenheden van multi-station
bandbiliotheken kunnen 6 stations in een enkel kabinet bevatten
met automatische wisseling van de banden. De capaciteit van
een bibliotheek loopt op tot 240 GB.Door de DDS-3-standaard worden bandcapaciteiten van
12 GB (of 24 GB met compressie) ondersteund.Net als 8mm-drives gebruiken 4mm-drives helische scan.
Alle voor- en nadelen van helische scan gelden voor zowel 4mm-
als 8mm-stations.Banden dienen na 2.000 maal of 100 volledige back-ups
afgedankt te worden.8mm (Exabyte)bandmediaExabyte (8mm) banden8mm-banden zijn de meest gebruikte SCSI-banden. Ze vormen
de beste keuze met betrekking tot het uitwisselen van banden.
Bijna elk bedrijf heeft een Exabyte 2 GB 8mm-bandstation.
8mm-stations zijn betrouwbaar, gemakkelijk en stil. Cartridges
zijn niet duur en klein (4,8 x 3,3 x 0,6 inch; 122 x 84 x 15
mm). Een nadeel van 8mm-banden is de relatief korte levensduur
van de kop en band vanwege de hoge mate van relatieve beweging
tussen de band en de koppen.De gegevensdoorvoer varieert van ~250 kB/s tot
~500 kB/s. De gegevensomvang begint bij 300 MB en
kan oplopen tot 7 GB. Hardwarecompressie, waarmee de
meeste stations van deze soort zijn uitgerust, zorgt voor
ongeveer een verdubbeling van de capaciteit. Deze stations
zijn los of als multi-station bandbiliotheken met 6 stations en
120 banden in een enkele kast beschikbaar. In het laatste
geval worden banden automatisch per stuk verwisseld. De
capaciteit van een bibliotheek kan oplopen tot meer dan
840 GB.Het model Mammoth van Exabyte ondersteunt
een een capaciteit van 12 GB (24 GB met compressie)
per band en kost ongeveer twee maal zoveel als een gewoon
bandstation.Gegevens worden door middel van helische scan op de band
gezet en de koppen zijn onder een hoek (ongeveer 6 graden) op
het medium gepositioneerd. De band wordt 270 graden om de
spoel gewikkeld die de koppen vasthoudt. Dit resulteert in een
hoge gegevensdichtheid en dicht bij elkaar staande sporen die
een hoek van de ene naar de andere kant van de band
maken.QICbandmediaQIC-150De banden en stations voor de QIC-150 zijn misschien de
meest voorkomende bandstations en bandmedia. QIC-bandstations
zijn de minst dure serieuze back-upstations.
Het nadeel is de prijs van de media. QIC-banden zijn duur in
vergelijking met 8mm- of 4mm-banden. De prijs per GB
opslagruimte kan tot 5 maal zo hoog zijn. Indien een half
dozijn banden toereikend is, zijn QIC-banden waarschijnlijk de
juiste keuze. QIC is het meest
voorkomende bandstation. Elk bedrijf heeft QIC-stations met
een bepaalde capaciteit. QIC heeft namelijk een groot aantal
capaciteiten per type band, die fysiek vergelijkbaar (soms
identiek) zijn. QIC-banden zijn niet stil. Deze stations
maken een hoorbaar geluid tijdens het zoeken voordat ze
beginnen met het opnemen van gegevens en zijn duidelijk
hoorbaar tijdens het lezen, schrijven en zoeken. QIC-banden
zijn 6 x 4 x 0,7 inch of 152 x 102 x 17 mm groot.De gegevensdoorvoer varieert van ~150 kB/s tot
~500 kB/s. Hardwarecompressie is mogelijk met veel van de
nieuwere bandstations. QIC-stations worden steeds minder vaak
geïnstalleerd. Ze worden vervangen door
DAT-stations.Gegevens worden in sporen op de band gezet. De sporen
lopen parallel aan de lange as van het bandmedium van het ene
naar het andere einde. Het aantal sporen, en daarmee de
breedte van een spoor, varieert met de capaciteit van de band.
De meeste, zo niet alle, nieuwe stations bieden achterwaartse
leescompatibiliteit (en vaak ook achterwaartse
schrijfcompabiliteit). QIC heeft een goede reputatie op het
gebied van gegevensveiligheid (de mechanismen zijn eenvoudiger
en robuuster dan die van helische scan-stations).Banden dienen na 5.000 back-ups afgedankt te worden.DLTbandmediaDLTDLT-banden hebben de snelste gegevensdoorvoer van alle
hiergenoemde bandstations. De band van 1/2 inch (12,5 mm) zit
in een cartridge (4 x 4 x 1 inch; 100 x 100 x 25 mm) op
één enkele haspel. De cartridge heeft een
opklapbare opening aan één gehele kant van de
cartridge. Het mechanisme van het station opent deze opening
om de bandleider eruit te halen. De bandleider heeft een ovaal
gat dat door het station gebruikt wordt om de band vast
te zetten. De haspel die de band aanpakt is in het
bandstation gesitueerd. Bij alle andere bandcartridges die
hier genoemd zijn (9-sporige banden zijn de enige uitzondering)
zitten zowel de haspel die de band levert als de haspel die de
band aanpakt in de bandcartridge zelf.De gegevensdoorvoer bedraagt ongeveer 1.5 MB/s, drie
maal de doorvoer van 4mm-, 8mm-, en QIC-bandstations. De
gegevenscapaciteit varieert van 10 GB tot 20 GB per
stations. Stations zijn als meerdere-bandwisselaars en als
bibliotheken van meerdere banden en meerdere stations
beschikbaar, die 5 tot 900 banden bevatten verspreid over 1 tot
20 stations, waardoor een opslagcapaciteit van 50 GB tot
9 TB geleverd wordt.Met compressie levert het formaat DLT Type IV tot
70 GB aan capaciteit.Gegevens worden in sporen die parallel aan de looprichting
lopen op de band gezet (net als met QIC-banden). Er worden
twee sporen per keer geschreven. De levensduur van de lees- en
schrijfkoppen is relatief lang. Als de band eenmaal stilstaat,
is er geen relatieve beweging tussen de koppen en de
band.AITbandmediaAITAIT is een nieuw formaat van Sony dat (met compressie) tot
50 GB gegevens per band kan bevatten. De band bevat
geheugenchips die een index van de inhoud van de band bevatten.
Deze index kan snel door het bandstation gelezen worden voor
het bepalen van de positie van bestanden op de band, in plaats
van de enkele minuten die nodig zijn voor andere banden.
Software als SAMS:Alexandria kan
meer dan veertig AIT-bandbibliotheken beheren, waarbij het
direct met de geheugenchip van de band communiceert om de
inhoud op het scherm te tonen, om te bepalen welke bestanden
naar welke band zijn geback-upped en om de correcte band te
vinden, laden en de gegevens ervan terug te zetten.Dit soort bibliotheken kosten rond de $ 20.000,
waardoor ze enigszins boven het budget van de hobbyist
liggen.Eerste gebruik van een nieuwe bandAls de eerste keer van een nieuwe, geheel lege band wordt
gelezen of ernaar wordt geschreven, mislukt dit. Het bericht
op de console zier er analoog aan het volgende uit:sa0(ncr1:4:0): NOT READY asc:4,1
sa0(ncr1:4:0): Logical unit is in process of becoming readyDe band bevat geen Identifier Block (bloknummer 0). Alle
QIC-bandstations sinds de adoptie van de standaard QIC-525
schrijven een Identifier Block naar de band. Er zijn twee
oplossingen:mt fsf 1 zorgt ervoor dat het
bandstation een Identifier Block naar de band
schrijft.De knop aan de voorkant van het paneel dient gebruikt
te worden om de band uit te werpen.De band dient opnieuw in het station gestoken te worden
en met dump worden gegevens naar de band
gedumpt.dump geeft DUMP: End of
tape detected en de console laat het volgende
zien:HARDWARE FAILURE info:280
asc:80,96.De band kan met mt rewind
teruggespoeld te worden.Hierna zijn alle bandbewerkingen succesvol.Naar diskettes back-uppenKunnen diskettes gebruikt worden om gegevens te
back-uppen?back-updiskettesdiskettesDiskettes zijn niet bepaald een geschikt medium om
back-ups mee te maken, omdat:Het medium onbetrouwbaar is, in het bijzonder op de
langere termijn;Het back-uppen en terugzetten erg traag is;Diskettes een zeer beperkte capaciteit hebben. De
tijden dat een hele harde schijf naar een tiental diskettes
kon worden geback-upped zijn allang verstreken.Maar als er geen andere manier beschikbaar is om de
gegevens te back-uppen, is een back-up naar diskettes beter
dan helemaal geen back-up.Gebruikte diskettes moet van goede kwaliteit zijn.
Diskettes die al jaren op kantoor rondgeslingerd hebben, zijn
een slechte keuze. In het ideale geval dienen nieuwe diskettes
van een reputabele fabrikant gebruikt te worden.Hoe de gegevens naar diskettes back-uppen?Het beste kan naar diskettes worden geback-upped door
gebruik te maken van &man.tar.1; met de optie
(meerdere volumes), die back-ups over
meerdere diskettes ondersteunt.Om alle bestanden in de huidige map en de submappen te
back-uppen (als root):&prompt.root; tar Mcvf /dev/fd0 *Als de eerste diskette vol is, vraagt &man.tar.1; om het
volgende volume. Omdat &man.tar.1; media-onafhankelijk is,
refereert het aan volumes, in deze context diskettes.Prepare volume #2 for /dev/fd0 and hit return:Dit wordt herhaald (met oplopend volumenummer) totdat alle
gespecificeerde bestanden zijn geback-upped.Kunnen back-ups gecomprimeerd worden?targzipcompressieHelaas staat &man.tar.1; het gebruik van de optie
niet toe voor archieven over meerdere
volumes. Het is uiteraard mogelijk om alle bestanden met
&man.gzip.1; te comprimeren, ze met &man.tar.1; op diskettes te
zetten en ze daarna met &man.gunzip.1; weer te
decomprimeren!Hoe worden de back-ups teruggezet?Om een volledige archief terug te zetten:&prompt.root; tar Mxvf /dev/fd0Er zijn twee manieren om alleen specifieke bestanden terug
te zetten. Ten eerste kan met de eerste diskette begonnen
worden:&prompt.root; tar Mxvf /dev/fd0 bestandsnaamHet programma &man.tar.1; vraagt om de vervolgdiskettes
totdat het benodigde bestand is gevonden.Als alternatief kan, als bekend is op welke diskette het
bestand staat, de betreffende diskette worden ingestoken en
bovenstaand commando gebruikt worden. Als het eerste bestand
op de diskette een vervolg is van de vorige diskette,
waarschuwt &man.tar.1; dat het bestand niet teruggezet kan
worden, zelfs als hier niet om gevraagd is!LowellGilbertOorspronkelijk werk van Back-up strategieënHet eerste wat nodig is voor het ontwepken van een
back-upplan, is er voor te zorgen dat de volgende mogelijke
problemen worden ondervangen:SchijffalenPer ongeluk verwijderde bestandenWillekeurige bestandscorruptieComplete machinevernietiging (door bijvoorbeeld brand),
inclusief de vernietiging van lokaal beschikbare
back-ups.Het is goed mogelijk dat een aantal systemen het best
geholpen zijn door voor al deze problemen een andere techniek te
gebruiken. Behalve voor volledig persoonlijke systemen met
niet echt belangrijke gegevens, is het zelfs onwaarschijnlijk dat
één techniek alle mogelijke problemen kan
afvangen.Een aantal technieken in de gereedschapskist zijn:Archiveren van een heel systeem op een back-up die niet
lokaal wordt bewaard. Dit biedt bescherming tegen alle
hierboven beschreven problemen, maar het is langzaam en
onhandig om er een restore van te maken. Het is mogelijk om
lokaal een kopie aan te houden en/of online, maar dan zijn er
nog steeds onhandigheden, in het bijzonder voor restores voor
gebruikers met beperkte rechten.Snapshots van bestandssystemen. Dit werkt eigenlijk
alleen in het geval bestanden per ongelijk verwijderd worden,
maar het kan in dat geval erg handig
zijn en het werkt snel en eenvoudig.Een kopie maken van hele bestandssystemen en/of schijven
(bijvoorbeeld een periodieke &man.rsync.1; van een hele machine).
Dit is in het algemeen het meest bruikbaar in netwerken met
specifieke eisen. Voor algemene bescherming tegen het falen
van een schijf, is het meestal minder geschikt dan
RAID. Voor het herstellen van per ongeluk
verwijderde bestanden is het vergelijkbaar aan
UFS snapshots, maar dat hangt af van
persoonlijke voorkeuren.RAID. Minimaliseert of voorkomt
downtijd als een schijf faalt. Dit ten koste van het vaker
hebben van schijven die falen (omdat er meer van zijn), maar
wel met een veel lagere urgentie.Controleren van fingerprints van bestanden. Het
hulpprogramma &man.mtree.8; kan hier bij helpen. Hoewel dit
geen back-uptechniek is, zorgt het er wel voor dat kan worden
opgemerkt wanneer back-ups geraadpleegd moeten worden. Dit
is in het bijzonder belangrijk voor offline back-ups en de
fingerprints horen periodiek gecontroleerd te worden.Het is makkelijk om met nog meer technieken op de proppen te
komen, waaronder veel variaties op de bovengenoemde. Bijzondere
eisen leiden vaak tot bijzondere oplossingen. Het back-uppen van
een draaiende database vereist bijvoorbeeld een methode die
toegespitst is op de gebruikte database software als tussenstap.
Het is van groot belang om te onderkennen tegen welke gevaren er
bescherming dient te zijn en hoe daarmee om te gaan.Back-upbeginselenDe drie grote back-upprogramma's zijn &man.dump.8;,
&man.tar.1; en &man.cpio.1;.Dump en Restoreback-upsoftwaredump / restoredumprestoreDe traditionele back-upprogramma's voor &unix; zijn
dump en restore. Deze
zien het station als een verzameling van schijfblokken, onder
de abstracties van bestanden, koppelingen en mappen die door de
bestandssystemen worden aangemaakt. In tegenstelling tot andere
back-upprogramma's, verzorgt dump een
back-up van een compleet bestandssysteem op een apparaat. Het
is niet in staat om slechts een gedeelte van een bestandssysteem
of een mapstructuur die meer dan één
bestandssysteem in beslag neemt te back-uppen. Het commando
dump schrijft geen bestanden en
mappen naar band, maar de rauwe gegevensblokken waaruit de
bestanden en mappen bestaan. Wanneer het gebruikt wordt om
gegevens te extraheren, slaat restore
tijdelijke bestanden standaard op in /tmp/
— als u werkt vanaf een herstelschijf met een kleine map
/tmp, moet u wellicht de
omgevingsvariabele TMPDIR op een map met meer
vrije ruimte instellen zodat de restore kan slagen.Indien dump op een hoofdmap wordt
gebruikt, wordt er geen back-up gemaakt van /home
, /usr of van de vele andere
mappen, aangezien dit typisch koppelpunten voor andere
bestandssystemen of symbolische koppelingen binnen deze
bestandssystemen zijn.dump bevat eigenaardigheden die uit de
begintijd in Versie 6 van AT&T &unix; (circa 1975) zijn
overgebleven. De standaardparameters zijn geschikt voor banden
met 9 sporen (6.250 bpi), niet voor de media met hoge dichtheid
die vandaag beschikbaar zijn (tot 62.182 ftpi). Deze
standaardwaarden dienen op de opdrachtregel overschreven te
worden om de capaciteit van de huidige bandstations te
benutten..rhostsHet is ook mogelijk om gegevens met
rdump en rrestore over
een netwerk naar een bandstation dat aan een andere computer
gekoppeld is te back-uppen. Beide programma's maken gebruik
van &man.rcmd.3; en &man.ruserok.3; om toegang tot het
bandstation op afstand te krijgen. De gebruiker die de back-up
uitvoert moet vermeld staat in het bestand
.rhosts op de computer op afstand. De
argumenten die aan rdump en
rrestore gegeven worden dienen geschikt te
zijn voor gebruik op de computer op afstand. Als
rdump gebruikt wordt om een dump te maken
van een &os; computer naar een Exabyte-bandstation dat
met een Sun-computer genaamd komodo verbonden
is:&prompt.root; /sbin/rdump 0dsbfu 54000 13000 126 komodo:/dev/nsa8 /dev/da0a 2>&1Let op: er kleven veiligheidsbezwaren aan het toestaan van
authenticatie met .rhosts. De situatie
dient goed geëvalueerd te worden.Het is ook mogelijk om dump en
restore op een veiligere manier via
ssh te gebruiken.Het gebruik van dump via
ssh&prompt.root; /sbin/dump -0uan -f - /usr | gzip -2 | ssh -c blowfish \
doelgebruiker@doelmachine.voorbeeld.com dd of=/mijngrotebestanden/dump-usr-10.gzOok kan de ingebouwde manier van dump
gebruikt worden, door de omgevingsvariabele RSH
in te stellen:Het gebruik van dump via
ssh met ingestelde
RSH&prompt.root; RSH=/usr/bin/ssh /sbin/dump -0uan -f doelgebruiker@doelmachine.voorbeeld.com:/dev/sa0 /usrtarback-upsoftwaretar&man.tar.1; stamt ook uit de tijd van Versie 6 van AT&T
&unix; (circa 1975). Het werkt samen met het bestandssysteem.
tar schrijft bestanden en mappen naar band
en ondersteunt niet het volledige scala aan opties dat
beschikbaar is met &man.cpio.1;, maar tar
heeft niet de ongebruikelijke opdrachtpijplijn nodig die
cpio gebruikt.tarOp &os; 5.3 en later zijn zowel GNU
tar als de standaard
bsdtar beschikbaar. De GNU-versie kan
aangeroepen worden met gtar. Het
ondersteunt apparaten op afstand waarbij gebruik wordt gemaakt
van dezelfde syntaxis als die van rdump. Om
tar toe te passen op een Exabyte-bandstation
die met een Sun genaamd komodo verbonden
is:&prompt.root; /usr/bin/gtar cf komodo:/dev/nsa8 . 2>&1Hetzelfde kan bereikt worden met bsdtar
door gebruik te maken van een pijplijn en
rsh om gegevens naar een bandstation op
afstand te zenden:&prompt.root; tar cf - . | rsh hostnaam dd of=bandapparaat obs=20bIndien de veiligheid van back-uppen over een netwerk een
punt is, dient gebruik te worden gemaakt van het commando
ssh en niet van
rsh.cpioback-upsoftwarecpio&man.cpio.1; is het originele &unix; bandprogramma voor
magnetische media om bestanden uit te wisselen.
cpio heeft opties (naast vele anderen) om
byte-swapping uit te voeren, een aantal verschillende
archiefformaten te schrijven en de gegevens over een pijplijn
naar andere programma's te voeren. Deze laatste optie maakt
cpio een uitstekende keuze voor
installatiemedia. cpio weet niet hoe het
door een mapstructuur moet lopen. Er dient een lijst met
bestanden door stdin aangeleverd te
worden.cpiocpio biedt geen ondersteuning voor
back-ups over het netwerk. Er kan gebruik worden gemaakt van
een pijplijn en rsh om de gegevens naar een
banddrive op afstand te sturen.&prompt.root; for f in maplijst; dofind $f >> back-up.lijstdone
&prompt.root; cpio -v -o --format=newc < back-up.lijst | ssh gebruiker@host "cat > back-upapparaat"Hier is maplijst een lijst van
de mappen waarvan een back-up gemaakt dient te worden,
gebruiker@host
de gebruiker/hostnaam-combinatie die de back-ups uitvoert, en
back-upapparaat het apparaat waar de
back-ups naar toe geschreven te worden (bijvoorbeeld
/dev/nsa0).paxback-upsoftwarepaxpaxPOSIXIEEE&man.pax.1; is het antwoord van IEEE en &posix; op
tar en cpio. In de loop
der jaren zijn de verscheidene versies van
tar en cpio licht
incompatibel geworden. Dus in plaats van dit uit te vechten en
ze volledig te standaardiseren, heeft &posix; een nieuw
archiveringsprogramma gemaakt. pax poogt om
veel van de verscheidene formaten van cpio
en tar te lezen en te schrijven, met daarbij
nog nieuwe, eigen formaten. De commandoverzameling lijkt meer
op die van cpio dan op die van
tar.Amandaback-upsoftwareAmandaAmandaAmanda (Advanced Maryland
Network Disk Archiver) is een client/server-back-upsysteem, in
plaats van een enkel programma. Een
Amanda server back-upt elk aantal
computers dat een Amanda client en
een netwerkverbinding met de Amanda
server heeft naar een enkel bandstation. Een veelvoorkomend
probleem bij bedrijven met een groot aantal schijven is dat de
tijd die nodig is om de gegevens direct naar band te back-uppen
langer is dan de tijd die voor de taak gereserveerd is.
Amanda lost dit probleem op.
Amanda kan gebruik maken van een
tussenschijf om verschillende bestandssystemen
tegelijkertijd te back-uppen.
Amanda maakt
archiefverzamelingen aan, een groep banden die
gedurende een tijd gebruikt wordt om volledige back-ups te
maken van alle bestandssystemen die in het
instellingenbestand van Amanda
vermeld staan. De archiefverzameling bevat
ook incrementele (of differentiële) back-ups van alle
bestandssystemen. Voor het herstellen van een beschadigd
bestandssysteem zijn de meest recente volledige back-up en de
incrementele back-ups nodig.Het instellingenbestand biedt verfijnde controle over de
back-ups en het netwerkverkeer door
Amanda.
Amanda kan elk bovenstaand
back-upprogramma gebruiken om de gegevens naar de band te
schijven. Amanda is òf als
port òf als package beschikbaar.NietsdoenNietsdoen is geen computerprogramma, maar de
de meest gebruikte back-upstrategie. Er zijn geen
initiële kosten. Er is geen back-upschema om te volgen.
Zeg gewoon nee. Als er iets met gegevens gebeurt, lach erom en
leef ermee!Als tijd en gegevens weinig tot niets waard zijn, is
Nietsdoen het meest geschikte back-upprogramma.
Maar wees bedacht, &unix; is een nuttig stuk gereedschap en er
is zo maar binnen zes maanden een verzameling bestanden die
wèl van waarde is.Nietsdoen is de juiste back-upmethode voor
/usr/obj en andere mapstructuren die zo
opnieuw aangemaakt kunnen worden. Een voorbeeld zijn de
bestanden waaruit de HTML- of &postscript; versie van dit
Handboek bestaan. Deze documentformaten zijn vanuit
SGML-invoerbestanden aangemaakt. Het back-uppen van de HTML-
of &postscript; bestanden is niet nodig. Van de SGML-bestanden
dient regelmatig een back-up gemaakt te worden.Welk back-upprogramma is het beste?LISA&man.dump.8;. Punt uit.. Elizabeth
D. Zwicky heeft stresstesten op alle hierboven besproken
back-upprogramma's uitgevoerd. De heldere keuze voor het
behouden van alle gegevens en alle eigenaardigheden van &unix;
bestandssystemen is dump. Elizabeth heeft
bestandssystemen aangemaakt met een grote verscheidenheid aan
ongewone omstandigheden (en enkele minder ongebruikelijke) en
heeft elk programma getest door een back-up van die
bestandssystemen uit te voeren en ze te herstellen. De
eigenaardigheden omvatten bestanden met gaten, bestanden met
gaten en een blok nullen, bestanden met vreemde tekens in hun
namen, onleesbare en onschrijfbare bestanden, apparaten,
bestanden waarvan de grootte verandert tijdens het back-uppen,
bestanden die aangemaakt/verwijderd worden tijdens het
back-uppen en meer. Ze presenteerde de resultaten op LISA V in
oktober 1991. Zie torture-testing
Backup and Archive Programs.NoodterugzetprocedureVóór de rampEr zijn slechts vier stappen om te volgen bij het
voorbereiden op elke ramp die voor kan komen.bsdlabelHet schijflabel van elke schijf dient afgedrukt te worden
(bijvoorbeeld met bsdlabel da0 | lpr), de
bestandssysteemtabel (/etc/fstab) en
alle opstartboodschappen, alles in tweevoud.fix-it diskettesDe opstart- en fixit-diskettes
(boot.flp en
fixit.flp) moeten alle gewenste
apparaten bevatten. De gemakkelijkste manier om dit te
controleren is om de machine opnieuw op te starten met de
opstartdiskette in het diskettestation en de opstartmeldingen
te controleren. Als alle apparaten gemeld en functioneel
zijn, kan stap drie uitgevoerd worden.In het andere geval dienen twee eigen opstartbare
diskettes aangemaakt te worden die een kernel bevatten die
alle gewenste schijven kan aankoppelen en toegang heeft tot
het bandstation. Deze diskettes dienen het volgende te
bevatten: fdisk, newfs,
mount en het gebruikte back-upprogramma.
Deze programma's dienen statisch gelinkt te worden. Als
dump gebruikt wordt, moet de diskette
restore bevatten.Ten derde dienen regelmatig back-upbanden aangemaakt te
worden. Alle veranderingen die na de laatste back-up zijn
gemaakt kunnen onherroepelijk verloren zijn gegaan. De
back-upbanden dienen beveiligd te worden tegen
overschrijven.Ten vierde dienen de diskettes (òfwel
boot.flp en
fixit.flp, òfwel de twee eigen
diskettes die in stap twee zijn aangemaakt) en de
back-upbanden getest te worden. Van de handelingen dienen
aantekeningen gemaakt te worden. De aantekeningen, de
opstartbare diskette, de afdrukken en de back-upbanden moeten
gezamenlijk bewaard te worden. Tijdens het herstellen kunnen
de notities ervoor zorgen dat de back-upbanden vernietigd
worden. Hoe? In plaats van tar xvf
/dev/sa0 kan per ongeluk tar cvf
/dev/sa0 worden ingetypt, waardoor de back-upband
overschreven wordt.Als extra veiligheidsmaatregel dienen opstartbare
diskettes en telkens twee back-upbanden gemaakt te worden.
Eén van deze banden dient op een plaats op afstand
bewaard te worden. Zo'n plaats is NIET de kelder van het
zelfde kantoorgebouw. Een aantal bedrijven in het World
Trade Center heeft deze les op de harde manier geleerd. Zo'n
plaats dient fysiek gescheiden te zijn van de computers en de
schijven door een significante afstand.Script voor het aanmaken van de
opstartdiskette /mnt/sbin/init
gzip -c -best /sbin/fsck > /mnt/sbin/fsck
gzip -c -best /sbin/mount > /mnt/sbin/mount
gzip -c -best /sbin/halt > /mnt/sbin/halt
gzip -c -best /sbin/restore > /mnt/sbin/restore
gzip -c -best /bin/sh > /mnt/bin/sh
gzip -c -best /bin/sync > /mnt/bin/sync
cp /root/.profile /mnt/root
chmod 500 /mnt/sbin/init
chmod 555 /mnt/sbin/fsck /mnt/sbin/mount /mnt/sbin/halt
chmod 555 /mnt/bin/sh /mnt/bin/sync
chmod 6555 /mnt/sbin/restore
#
# maak een minimale bestandssysteemtabel aan
#
cat > /mnt/etc/fstab < /mnt/etc/passwd < /mnt/etc/master.passwd <Na de rampDe hamvraag is: heeft de hardware het overleefd? Er zijn
regelmatig back-ups gemaakt, dus zorgen over de software
zijn niet nodig.Indien hardware beschadigd is, dienen kapotte onderdelen
vervangen te worden voordat gepoogd wordt om een computer te
gebruiken.Indien de hardware in orde is, dienen de diskettes
gecontroleerd te worden. Als een eigen opstartdiskette
gebruikt wordt, start in enkele-gebruiker-modus op (type op
de opstartprompt boot:-s
in). Sla dan de volgende paragraaf over.Lees verder als de diskettes
boot.flp en
fixit.flp gebruikt worden. Steek de
diskette boot.flp als eerste in het
diskettestation en start de computer op. Het originele
installatiemenu wordt op het scherm getoond. Kies de optie
Fixit--Repair mode with CDROM or floppy.
Steek de diskette fixit.flp in als erom
gevraagd wordt. restore en de andere
benodigde programma's staan in /mnt2/rescue (/mnt/stand voor &os; ouder dan
versie 5.2).Herstel elk bestandssysteem apart.mountrootpartitiebsdlabelnewfsProbeer de rootpartitie van de eerste schijf aan te
koppelen (bijvoorbeeld mount /dev/da0a
/mnt). Als het schijflabel beschadigd is, gebruik
dan bsdlabel om de schijf opnieuw te
partitioneren en te labelen zodat deze overeenkomt met het
afgedrukte en bewaarde label. Gebruik voor het opnieuw
aanmaken van de bestandssystemen newfs.
Koppel de rootpartitie van de diskette opnieuw aan voor lezen
en schrijven (mount -u -o rw /mnt).
Gebruik voor het herstellen van de gegevens van dit
bestandssysteem het back-upprogramma en de back-upbanden
(bijvoorbeeld restore vrf /dev/sa0).
Koppel nu het bestandssysteem af (bijvoorbeeld
umount /mnt). Herhaal dit voor elk
beschadigd bestandssysteem.Back-up de gegevens naar nieuwe banden als het systeem
weer draait. De omstandigheden die verantwoordelijk waren
voor de crash of het gegevensverlies kunnen weer voorkomen.
Nu een extra uur investeren, kan later grote zorgen
besparen.* Er zijn geen voorbereidingen voor de ramp getroffen,
wat nu?
]]>
MarcFonvieilleGeherstructureerd en verbeterd door Netwerk-, geheugen-, en bestandsgebaseerde
bestandssystemenvirtuele schijvenschijvenvirtueelNaast de schijven die fysiek in de computer zitten,
diskettes, CD's, harde schijven, enzovoort, worden er ook andere
vormen van schijven door &os; begrepen: de virtuele
schijven.NFSCodaschijvengeheugenDit omvat netwerkbestandssystemen zoals het Network File System en Coda,
geheugengebaseerde bestandssystemen en bestandsgebaseerde
bestandssystemen.Nagelang de gebruikte versie van &os;, zijn er andere
gereedschappen voor het aanmaken en gebruiken van
bestandsgebaseerde en geheugengebaseerde bestandssystemen.Gebruik &man.devfs.8; om de apparaatnodes transparant voor
de gebruiker toe te wijzen.Bestandsgebaseerd bestandssysteemschijvenbestandsgebaseerdMet &man.mdconfig.8; kunnen geheugenschijven, &man.md.4;,
ingesteld worden en aangezet worden. Om
&man.mdconfig.8; te gebruiken, moet de module &man.md.4;
geladen worden of ondersteuning aan het
kernelinstellingenbestand toegevoegd worden:device mdHet commando &man.mdconfig.8; ondersteunt drie types
geheugen-gebaseerde virtuele schijven: geheugenschijven die met
&man.malloc.9; toegewezen zijn, geheugenschijven die een
bestand als basis gebruiken en geheugenschijven die swapruimte
als basis gebruiken. Een mogelijk gebruik is het aankoppelen
van een beeld van een diskette of CD dat in een bestand bewaard
wordt.Om een bestaand beeld van een bestandssysteem aan te
koppelen:mdconfig gebruiken om een bestaand
beeld van een bestandssysteem aan te koppelen&prompt.root; mdconfig -a -t vnode -f schijfbeeld -u 0
&prompt.root; mount /dev/md0/mntOm een nieuw beeld van een bestandssysteem aan te maken met
&man.mdconfig.8;:Nieuwe bestandsgebaseerde schijf aanmaken met
mdconfig&prompt.root; dd if=/dev/zero of=nieuwbeeld bs=1k count=5k
5120+0 records in
5120+0 records out
&prompt.root; mdconfig -a -t vnode -f nieuwbeeld -u 0
&prompt.root; bsdlabel -w md0 auto
&prompt.root; newfs md0a
/dev/md0a: 5.0MB (10240 sectors) block size 16384, fragment size 2048
using 4 cylinder groups of 1.25MB, 80 blks, 192 inodes.
super-block backups (for fsck -b #) at:
160, 2720, 5280, 7840
&prompt.root; mount /dev/md0a /mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/md0a 4710 4 4330 0% /mntIndien het eenheidsnummer niet met de optie
gespecificeerd wordt, gebruikt
&man.mdconfig.8; de automatische toewijzing van &man.md.4; om
een ongebruikt apparaat te selecteren. De naam van het
toegewezen apparaat wordt op stdout weergegeven als
md4. Meer details staan in de
hulppagina van &man.mdconfig.8;.Het commando &man.mdconfig.8; is erg nuttig, hoewel het
veel opdrachten vergt om een bestandsgebaseerd bestandssysteem
aan te maken. &os; wordt met &man.mdmfs.8; geleverd. Dit
programma stelt een &man.md.4;-schijf in door gebruik te maken
van &man.mdconfig.8;, zet er een bestandssysteem op door gebruik
te maken van &man.newfs.8; en koppel het aan door gebruik te
maken van &man.mount.8;. Om hetzelfde bestandssysteembeeld als
hierboven aan te maken en aan te koppelen:Instellen en aankoppelen van een bestandsgebaseerde
schijf met mdmfs&prompt.root; dd if=/dev/zero of=nieuwbeeld bs=1k count=5k
5120+0 records in
5120+0 records out
&prompt.root; mdmfs -F nieuwbeeld -s 5m md0/mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/md0 4718 4 4338 0% /mntAls de optie zonder eenheidsnummer
gebruikt wordt, gebruikt &man.mdmfs.8; de automatische
toewijzing van &man.md.4; om automatisch een ongebruikt
apparaat te selecteren. Meer details staan in de hulppagina
van &man.mdmfs.8;.Geheugengebaseerd bestandssysteemschijvengeheugenbestandssysteemVoor een geheugen gebaseerd bestands systeem moet normaal
gesproken wisselbestand geheugen gebruikt worden.
Gebruik maken van wisselbestand geheugen wil niet perse zeggen
dat de geheugen schijf direct in het wisselbestand gezet wordt,
maar dat het bestand naar het wisselbestand geschreven kan worden
indien nodig. Het is ook mogelijk om &man.malloc.9; gebaseerde
geheugen schijven te maken, maar door hiervan gebruik te maken
kan het gebeuren dat het systeem crashed als de kernel uit het
geheugen loopt.Nieuwe geheugengebaseerde schijf aanmaken met
mdconfig&prompt.root; mdconfig -a -t swap -s 5m -u 1
&prompt.root; newfs -U md1
/dev/md1: 5.0MB (10240 sectors) block size 16384, fragment size 2048
using 4 cylinder groups of 1.27MB, 81 blks, 192 inodes.
with soft updates
super-block backups (for fsck -b #) at:
160, 2752, 5344, 7936
&prompt.root; mount /dev/md1/mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/md1 4718 4 4338 0% /mntNieuwe geheugengebaseerde schijf aanmaken met
mdmfs&prompt.root; mdmfs -s 5m md2/mnt
&prompt.root; df /mnt
Filesystem 1K-blocks Used Avail Capacity Mounted on
/dev/md2 4846 2 4458 0% /mntGeheugenschijf van het systeem afkoppelenschijvengeheugenschijf afkoppelenAls een geheugen- of bestandsgebaseerd bestandssysteem
niet gebruikt wordt, dienen alle bronnen aan het systeem
vrijgegeven te worden. Koppel als eerste het bestandssysteem
af, gebruikt daarna &man.mdconfig.8; om de schijf van een
systeem los te koppelen en de bronnen vrij te geven.Om bijvoorbeeld alle bronnen die door
/dev/md4 gebruikt worden los te koppelen
en vrij te geven:&prompt.root; mdconfig -d -u 4
Het is mogelijk om de informatie over ingestelde &man.md.4;
apparaten weer te geven door gebruik te maken van
mdconfig -l.TomRhodesBijgedragen door Snapshots van bestandssystemenbestandssystemensnapshots&os; biedt een mogelijkheid om samen met Soft Updates: snapshots van
bestandssystemen.Snapshots bieden de mogelijkheid om beelden van een
gespecificeerd bestandssysteem te maken en ze als bestand te
behandelen. Snapshotbestanden moeten aangemaakt worden in het
bestandssysteem waarop de handeling wordt uitgevoerd en er mogen
niet meer dan 20 snapshots per bestandssysteem worden aangemaakt.
Actieve snapshots worden opgeslagen in het superblok zodat ze
persistent zijn met afkoppel- en heraankoppelbewerkingen en met
het opnieuw opstarten van het systeem. Als een snapshot niet
langer nodig is, kan het met het standaardcommando &man.rm.1;
worden verwijderd. Snapshots kunnen in elke volgorde verwijderd
worden, alhoewel misschien niet alle gebruikte ruimte
teruggewonnen wordt omdat sommige vrijgegeven blokken mogelijk
door een ander snapshot geclaimd worden.De onveranderlijke bestandsvlag
wordt door &man.mksnap.ffs.8; ingesteld nadat het snapshotbestand
initieel is aangemaakt. Het commando &man.unlink.1; maakt een
uitzondering voor snapshotbestanden aangezien het toestaat dat ze
verwijderd worden.Snapshotbestanden worden aangemaakt met &man.mount.8;. Om
een snapshot van /var in het bestand
/var/snapshot/snap te plaatsen:&prompt.root; mount -o -o snapshot /var/snapshot/snap /varAls alternatief kan &man.mksnap.ffs.8; gebruikt worden om een
snapshot aan te maken:&prompt.root; mksnap_ffs /var /var/snapshot/snapSnapshotbestanden kunnen gezocht worden op een
bestandssysteem (bijvoorbeeld /var) door
gebruik te maken van het commando &man.find.1;:&prompt.root; find /var -flags snapshotNadat een snapshot is aangemaakt, kan het voor een aantal
dingen gebruikt worden:Sommige systeembeheerders gebruiken een snapshotbestand
voor back-updoeleinden, omdat het snapshot naar CD's of band
overgezet kan worden;De bestandssysteem integriteit controle, &man.fsck.8;
kan gebruikt worden op het snapshot. Ervan uitgaande dat het
bestandssysteem schoon was toen het werd aangekoppeld, zou dit
altijd een schoon (en onveranderlijk) resultaat moeten
opleveren. Dit is in principe wat het
&man.fsck.8;-achtergrondsproces doet;Het commando &man.dump.8; draaien op het snapshot. Er
wordt een dump teruggegeven die consistent is met het
bestandssysteem en tijdsstempel van het snapshot.
&man.dump.8; kan ook in één commando een
snapshot maken, een dumpbeeld aanmaken en daarna het snapshot
verwijderen door gebruik te maken van de vlag
;Het snapshot kan met &man.mount.8; als bevroren beeld van
het bestandssysteem worden aangekoppeld. Om het snapshot
/var/snapshot/snap aan te koppelen:&prompt.root; mdconfig -a -t vnode -f /var/snapshot/snap -u 4
&prompt.root; mount -r /dev/md4 /mntHet is nu mogelijk om door de structuur van het bevroren
bestandssysteem /var te lopen dat
aangekoppeld is op /mnt. Alles zal initieel
in dezelfde toestand verkeren als op het moment dat het snapshot
werd aangemaakt. De enige uitzondering hierop is dat eerdere
snapshots als bestanden met lengte nul verschijnen. Als een
snapshot niet meer nodig is, kan het als volgt afgekoppeld
worden:&prompt.root; umount /mnt
&prompt.root; mdconfig -d -u 4Meer informatie over en
snapshots van bestandssystemen, inclusief technische documenten,
staat op de website van Marshall Kirk McKusick op .BestandssysteemquotaaccountenschijfruimteschijfquotaQuota zijn een optionele mogelijkheid van het
besturingssysteem om de hoeveelheid schijfruimte en/of het aantal
bestanden dat gebruikers of leden van een groep per
bestandssysteem mogen gebruiken te beperken. Dit wordt het
meeste gebruikt op timesharing-systemen waar het wenselijk is om
het aantal bronnen dat elke gebruiker of groep van gebruikers mag
gebruiken te beperken. Dit voorkomt dat één
gebruiker of groep van gebruikers alle beschikbare schijfruimte
in beslag neemt.Schijfquota inschakelenControleer alvorens te proberen om schijfquota te
gebruiken of quota ingesteld zijn in de kernel. Dit gebeurt
door het toevoegen van de volgende regel aan het
kernelinstellingenbestand:options QUOTADe standaardkernel GENERIC heeft deze
optie niet aanstaan, dus is het nodig om een eigen kernel in te
stellen, te bouwen en te installeren om gebruik te kunnen maken
van schijfquota. Meer informatie over het instellen van de
kernel staat in .Vervolgens dienen schijfquota aangezet te worden in
/etc/rc.conf:enable_quotas="YES"schijfquotacontrolerenVoor fijnere controle over de opstartquota zijn extra
instellingsvariabelen beschikbaar. Normaalgesproken wordt de
integriteit van de quota van elk bestandssysteem tijdens het
opstarten door &man.quotacheck.8; gecontroleerd.
&man.quotacheck.8; verzekert dat de gegevens in de
quotadatabase een juiste afspiegeling vormen van de gegevens op
het bestandssysteem. Dit proces neemt erg veel tijd in beslag
en beïnvloedt de tijd die een systeem nodig heeft om op te
starten significant. Om deze stap over te slaan, bestaat een
variabele in /etc/rc.conf:check_quotas="NO"Als laatste dient /etc/fstab bewerkt
te worden om schijfquota per bestandssysteem aan te zetten.
Hier kunnen gebruiker- of groepquota of beide worden aangezet
voor alle bestandssystemen.Om quota per gebruiker op een bestandssysteem aan te
zetten, dient de optie aan het
optieveld toegevoegd te worden aan de regel in
/etc/fstab voor het bestandssysteem waar
quota worden aangezet. Bijvoorbeeld:/dev/da1s2g /home ufs rw,userquota 1 2Analoog, om groepquota aan te zetten, dient de optie
in plaats van
gebruikt te worden. Om zowel
gebruikers- als groepsquota aan te zetten, dient de regel als
volgt veranderd te worden:/dev/da1s2g /home ufs rw,userquota,groupquota 1 2Standaard worden de quotabestanden opgeslagen in de
hoofdmap van het bestandssysteem onder de namen
quota.user en
quota.group voor respectievelijk
gebruikers- en groepsquota. Meer informatie staat in
&man.fstab.5;. Alhoewel de hulppagina &man.fstab.5; vermeld
dat een alternatieve plaats voor de quotabestanden
gespecificeerd kan worden, wordt dit niet aangeraden omdat de
verschillende quotagereedschappen dit niet juist schijnen af te
handelen.Hier aangekomen dient het systeem opnieuw opgestart te
worden met de nieuwe kernel. /etc/rc
voert automatisch de juiste commando's uit om de initiële
quotabestanden aan te maken voor alle quota die in
/etc/fstab zijn aangezet. Het is dus niet
nodig om handmatig quotabestanden met lengte nul aan te
maken.Tijdens normale bewerkingen moet het niet nodig zijn om de
commando's &man.quotacheck.8;, &man.quotaon.8; of
&man.quotaoff.8; handmatig te draaien. Lees wel de betreffende
hulppagina's om bekend te raken met de werking ervan.Quotalimieten instellenschijfquotalimietenIndien het systeem ingesteld voor gebruik van quota,
controleer dan of ze echt aanstaan. Een eenvoudige
manier om dit te doen is de volgende:&prompt.root; quota -vEr hoort een eenregelige samenvatting te verschijnen over
het schijfgebruik en de huidige quotalimieten voor elk
bestandssysteem waarop quota aanstaan.Nu kunnen quotalimieten toegewezen worden met
&man.edquota.8;.Er zijn verschillende opties om grenzen te stellen aan de
hoeveelheid schijfruimte die een gebruiker of groep mag
toewijzen en het aantal bestanden dat ze mogen aanmaken.
Toewijzingen kunnen begrensd worden met betrekking tot
schijfruimte (blokquota) of het aantal bestanden (inode-quota)
of een combinatie van beide. Elk van deze limieten is op zijn
beurt weer opgesplitst in twee categoriën: harde en zachte
limieten.harde limietEen harde limiet mag niet overschreden worden. Indien een
gebruiker de harde limiet bereikt, mag deze geen verdere
toewijzingen maken op het betreffende bestandssysteem. Indien
een gebruiker bijvoorbeeld een harde limiet heeft van 500 kB
op een bestandssysteem en er 490 kB van gebruikt, kan deze
nog slechts 10 kB toewijzen. Een poging om 11 kB toe
te wijzen zal mislukken.zachte limietZachte limieten kunnen voor een beperkte tijd overschreden
worden. Deze periode staat bekend als de gratieperiode, die
standaard een week bedraagt. Als een gebruiker de zachte
limiet langer dan de gratieperiode overschrijdt, verandert de
zachte limiet in een harde limiet en zijn er geen verdere
toewijzingen toegestaan. Als de gebruiker onder de zachte
limiet komt, wordt de gratieperiode opnieuw ingesteld.Het volgende is een voorbeeld van een mogelijk gebruik van
&man.edquota.8;. Als het commando &man.edquota.8; gestart
wordt, wordt de tekstverwerker opgestart die door de
omgevingsvariabele EDITOR gespecificeerd is, of
de tekstverwerker vi als de
variabele EDITOR niet is ingesteld. Nu kunnen
de quotalimieten bewerkt worden.&prompt.root; edquota -u testQuotas for user test:
/usr: kbytes in use: 65, limits (soft = 50, hard = 75)
inodes in use: 7, limits (soft = 50, hard = 60)
/usr/var: kbytes in use: 0, limits (soft = 50, hard = 75)
inodes in use: 0, limits (soft = 50, hard = 60)Normaalgesproken worden er twee regels weergegeven voor elk
bestandssysteem waarvoor quota gelden: één regel
voor de bloklimieten, en één voor de
inode-limieten. Om de quotalimieten te veranderen dient de
waarde ervan veranderd te worden. Om bijvoorbeeld de
bloklimiet van een gebruiker te veranderen van een zachte
limiet van 50 en een harde limiet van 75 in een zachte limiet
van 500 en een harde limiet van 600, dient het volgende
veranderd te worden:/usr: kbytes in use: 65, limits (soft = 50, hard = 75)In:/usr: kbytes in use: 65, limits (soft = 500, hard = 600)De nieuwe quotalimieten gelden zodra de tekstverwerker
verlaten wordt.Soms is het gewenst om quotalimieten in te stellen op een
aantal UID's. Dit kan gedaan worden door de optie
van &man.edquota.8; te gebruiken. Wijs
eerst de gewenste quotalimiet aan een gebruiker toe en draai
daarna edquota -p protogebruiker
beginuid-einduid. Indien bijvoorbeeld gebruiker
test de gewenste quotalimieten heeft, kan
het volgende commando gebruikt worden om deze quotalimieten te
dupliceren voor UID's 10.000 tot en met 19.999:&prompt.root; edquota -p test 10000-19999Meer informatie staat in de hulppagina voor
&man.edquota.8;.Quotalimieten en schijfgebruik controlerenschijfquotacontrolerenZowel &man.quota.1; als &man.repquota.8; kunnen gebruikt
worden om de quotalimieten en het schijfgebruik te controleren.
Het commando &man.quota.1; kan gebruikt worden om de quota van
zowel individuele gebruikers als groepen en het schijfgebruik
te controleren. Een gebruiker mag alleen de eigen quota en de
quota van een groep waarvan deze lid is controleren. Alleen de
beheerder mag alle gebruikers- en groepsquota bekijken. Het
commando &man.repquota.8; kan gebruikt worden om een overzicht
te krijgen van alle quota en gebruik van bestandssystemen
waarvan quota aanstaan.Het volgende is een mogelijke uitvoer van het commando
quota -v voor een gebruiker die
quotalimieten heeft op twee bestandssystemen.Disk quotas for user test (uid 1002):
Filesystem usage quota limit grace files quota limit grace
/usr 65* 50 75 5days 7 50 60
/usr/var 0 50 75 0 50 60gratieperiodeVoor het bestandssysteem /usr in
bovenstaand voorbeeld overschrijdt deze gebruiker de zachte
limiet van 50 kB momenteel met 15 kB en heeft deze 5
dagen van de gratieperiode over. De asterisk,
* geeft aan dat de gebruiker momenteel de
quotalimiet overschrijdt.Normaalgesproken worden bestandssystemen waarvan de
gebruiker geen schijfruimte gebruikt niet weergegeven in de
uitvoer van &man.quota.1;, zelfs niet als er de gebruiker een
quotalimiet heeft voor dat bestandssysteem. De optie
geeft deze bestandssystemen weer, zoals het
bestandssysteem /usr/var in bovenstaand
voorbeeld.Quota over NFSNFSQuota worden afgedwongen door het quota-subsysteem op de
NFS-server. De daemon &man.rpc.rquotad.8; stelt
quota-informatie beschikbaar aan het commando &man.quota.1; op
de NFS-cliënts, wat de gebruikers op deze machines in
staat stelt hun quota-statistieken in te zien.rpc.rquotad dient als volgt in
/etc/inetd.conf aangezet te worden:rquotad/1 dgram rpc/udp wait root /usr/libexec/rpc.rquotad rpc.rquotadVervolgens dient inetd opnieuw gestart
te worden:&prompt.root; /etc/rc.d/inetd restartLuckyGreenBijgedragen door shamrock@cypherpunks.toSchijfpartities versleutelenschijvenversleutelen&os; biedt uitstekende on-line bescherming tegen onbevoegde
gegevenstoegang. Bestandsrechten en Mandatory Access Control
(MAC) (zie ) helpen voorkomen dat onbevoegde
derde partijen toegang tot de gegevens krijgen als het
besturingssysteem actief is en de computer aanstaat. De door het
besturingssysteem afgedwongen rechten zijn echter niet relevant
als een aanvaller fysieke toegang tot een computer heeft en deze
de harde schijf van de computer in een ander systeem kan plaatsen
om de gevoelige gegevens te kopiëren en te
analyseren.Afgezien van hoe een aanvaller in het bezit van een harde
schijf of een uitgezette computer gekomen is, kan
GEOM Based Disk Encryption (gbde) de
gegevens op het bestandssysteem van de computer zelfs tegen
hooggemotiveerde aanvallers met aanzienlijke middelen beschermen.
In tegenstelling tot lastige versleutelmethoden die alleen losse
bestanden versleutelen, versleutelt
gbde gehele bestandssystemen op een
transparante manier. De harde schijf komt nooit in aanraking met
klare tekst.Los van hoe een aanvaller in het bezit van een harde schijf
of een uitgezette computer gekomen is, kunnen de cryptografische
subsystemen GEOM Based Disk Encryption
(gbde) en geli in &os;
gegevens op bestandssystemen van een computer beschermen tegen
zelfs de meer gemotiveerde belagers die ook nog eens adequate
middelen hebben. Anders dan met lastige versleutelingsmethoden
die alleen individuele bestanden versleutelen, versleutelen
gbde en geli transparant
complete bestandssystemen. Er komt nooit platte tekst op een
harde schijf.Schijven versleutelen met
gbdeWord rootHet instellen van gbde
vereist beheerdersrechten.&prompt.user; su -
Password:Voeg ondersteuning voor &man.gbde.4; aan het
kernelinstellingenbestand toeVoeg de volgende regel toe aan het
kernelinstellingenbestand:options GEOM_BDEHerbouw de kernel opnieuw zoals beschreven in .Start op met de nieuwe kernel.Een alternatief voor het hercompileren van de kernel
is door gebruik te maken van &man.kldload.8; om
&man.gbde.4; te laden:&prompt.root; kldload geom_bdeVersleutelde harde schijf voorbereidenIn het volgende voorbeeld wordt aangenomen dat er een
nieuwe harde schijf aan het systeem wordt toegevoegd die een
enkele versleutelde partitie zal bevatten. Deze partitie
wordt aangekoppeld als /private.
gbde kan ook gebruikt worden om
/home en /var/mail
te versleutelen, maar daarvoor zijn complexere instructies
nodig die buiten het bereik van deze inleiding vallen.Voeg een nieuwe harde schijf toeVoeg de nieuwe harde schijf toe zoals beschreven in
. In dit voorbeeld is een
nieuwe harde schijfpartitie toegevoegd als
/dev/ad4s1c. De apparaten
/dev/ad0s1*
stellen bestaande standaard &os; partities van het
voorbeeldsysteem voor.&prompt.root; ls /dev/ad*
/dev/ad0 /dev/ad0s1b /dev/ad0s1e /dev/ad4s1
/dev/ad0s1 /dev/ad0s1c /dev/ad0s1f /dev/ad4s1c
/dev/ad0s1a /dev/ad0s1d /dev/ad4Maak een map aan voor gbde lockbestanden&prompt.root; mkdir /etc/gbdeHet lockbestand voor gbde
bevat informatie die gbde
nodig heeft om toegang te krijgen tot versleutelde
partities. Zonder toegang tot de lockbestand is
gbde niet in staat om de
gegevens die op de versleutelde partitie staan te
ontsleutelen zonder aanzienlijke handmatige tussenkomst die
niet door de software ondersteund wordt. Elke versleutelde
partitie gebruikt een ander lockbestand.Initialiseer de gbde-partitieEen gbde-partitie dient
geïnitialiseerd te worden voordat deze kan worden
gebruikt. Deze initialisatie dient slechts eenmalig
uitgevoerd te worden:&prompt.root; gbde init /dev/ad4s1c -i -L /etc/gbde/ad4s1c.lock&man.gbde.8; opent een tekstverwerker om verschillende
instellingen in een sjabloon te kunnen instellen. Stel de
sector_size in op 2048 als UFS of UFS2 wordt
gebruikt:$FreeBSD: src/sbin/gbde/template.txt,v 1.1 2002/10/20 11:16:13 phk Exp $
#
# Sector size is the smallest unit of data which can be read or written.
# Making it too small decreases performance and decreases available space.
# Making it too large may prevent filesystems from working. 512 is the
# minimum and always safe. For UFS, use the fragment size
#
sector_size = 2048
[...]
&man.gbde.8; vraagt twee keer om de wachtwoordzin
voor het beveiligen van de gegevens. De wachtwoordzin
dient beide keren hetzelfde te zijn. De mogelijkheid van
gbde om de gegevens te
beveiligen is geheel afhankelijk de gekozen
wachtwoordzin.
Tips met betrekking tot het kiezen van veilige
wachtwoordzinnen die gemakkelijk te onthouden zijn
staan op de website
Diceware Passphrase.Het commando gbde init maakt een
lockbestand aan voor de
gbde-partitie die in dit
voorbeeld is opgeslagen als
/etc/gbde/ad4s1c.lock.
gdbde slotbestanden moeten
eindigen op .lock om correct door het
opstartscript /etc/rc.d/gbde
gedetecteerd te worden.gbde lockbestanden
moeten samen met de inhoud van
versleutelde partities geback-upped worden. Hoewel het
verwijderen van een lockbestand op zich een gedreven
aanvaller er niet van weerhoudt een
gbde partitie te
ontsleutelen, is de wettige eigenaar zonder het
lockbestand niet in staat om de gegevens op de
versleutelde partitie te benaderen zonder een
aanzienlijke hoeveelheid werk die in het geheel niet
ondersteund wordt door &man.gbde.8; of de ontwerper
ervan.Koppel de versleutelde partitie aan de kernel&prompt.root gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1c.lockEr wordt om de wachtwoordzin gevraagd die gekozen is
tijdens de initialisatie van de versleutelde partitie. Het
nieuwe versleutelde apparaat verschijnt in
/dev als
/dev/apparaatnaam.bde:&prompt.root; ls /dev/ad*
/dev/ad0 /dev/ad0s1b /dev/ad0s1e /dev/ad4s1
/dev/ad0s1 /dev/ad0s1c /dev/ad0s1f /dev/ad4s1c
/dev/ad0s1a /dev/ad0s1d /dev/ad4 /dev/ad4s1c.bdeMaak een bestandssysteem op het versleutelde
apparaatNu het versleutelde apparaat aan de kernel gekoppeld
is, kan een bestandssysteem op het apparaat aangemaakt
worden. Met &man.newfs.8; kan een bestandssysteem op het
versleutelde apparaat aangemaakt wordne. Aangezien het
veel sneller is om een nieuw UFS2 bestandssysteem te
initialiseren dan om een oud UFS1 bestandssysteem te
initialiseren, is het aan te raden om &man.newfs.8; met de
optie te gebruiken.&prompt.root; newfs -U -O2 /dev/ad4s1c.bdeVoer &man.newfs.8; uit op een aangekoppelde
gbde-partitie die
geïndificeerd wordt door de uitbreiding
*.bde op
de apparaatnaam.Mount de versleutelde partitieMaak een koppelpunt voor het versleutelde
bestandssysteem aan:&prompt.root; mkdir /privateMount het versleutelde bestandssysteem:&prompt.root; mount /dev/ad4s1c.bde /privateControleer of het versleutelde bestandssysteem
beschikbaar isHet versleutelde bestandssysteem is nu zichtbaar
met &man.df.1; en gebruiksklaar:&prompt.user; df -H
Filesystem Size Used Avail Capacity Mounted on
/dev/ad0s1a 1037M 72M 883M 8% /
/devfs 1.0K 1.0K 0B 100% /dev
/dev/ad0s1f 8.1G 55K 7.5G 0% /home
/dev/ad0s1e 1037M 1.1M 953M 0% /tmp
/dev/ad0s1d 6.1G 1.9G 3.7G 35% /usr
/dev/ad4s1c.bde 150G 4.1K 138G 0% /privateBestaande versleutelde bestandssystemen aankoppelenElke keer nadat het systeem is opgestart dient elk
versleuteld bestandssysteem opnieuw aan de kernel gekoppeld
te worden, op fouten gecontroleerd te worden, en aangekoppeld
te worden voordat de bestandssystemen gebruikt kunnen worden.
De benodigde commando's dienen als de gebruiker
root uitgevoerd te worden.Koppel de gbde-partitie aan de kernel&prompt.root gbde attach /dev/ad4s1c -l /etc/gbde/ad4s1c.lockEr wordt om de wachtwoordzin gevraagd die gekozen is
tijdens de initialisatie van de versleutelde
gbde-partitie.Controleer het bestandssysteem op foutenAangezien het nog niet mogelijk is om versleutelde
bestandssystemen op te nemen in
/etc/fstab voor automatische controle,
dienen de bestandssystemen voordat ze aangekoppeld worden
handmatig op fouten gecontroleerd te worden door
&man.fsck.8; uit te voeren:&prompt.root; fsck -p -t ffs /dev/ad4s1c.bdeMount het versleutelde bestandssysteem&prompt.root; mount /dev/ad4s1c.bde /privateHet versleutelde bestandssysteem is nu klaar voor
gebruik.Versleutelde partities automatisch aankoppelenHet is mogelijk om een script aan te maken om
automatisch een versleutelde partitie aan te koppelen, op
fouten te controleren en aan te koppelen, maar vanwege
veiligheidsredenen dient het script niet het wachtwoord
voor &man.gbde.8; te bevatten. In plaats hiervan wordt het
aangeraden om zulke scripts handmatig uit te voeren en het
wachtwoord via de console of &man.ssh.1; te geven.Als alternatief, wordt er een rc.d
script bijgeleverd. De argumenten kunnen via &man.rc.conf.5;
doorgegeven worden. Bijvoorbeeld:gbde_autoattach_all="YES"
gbde_devices="ad4s1c"
gbde_lockdir="/etc/gbde"Hierdoor is het noodzakelijk dat de wachtwoordzin voor
gbde bij het starten wordt
ingegeven. Na het invoeren van de juiste wachtwoordzin
wordt de met gbde versleutelde
partitie automatisch aangekoppeld. Dit kan erg handig zijn
bij het gebruik van gbde op
notebooks.Door gbde gebruikte cryptografische
beschermingen&man.gbde.8; versleutelt de sectorlading door gebruik te
maken van 128-bit AES in CBC-modus. Elke sector op de schijf
wordt met een andere AES-sleutel versleuteld. Meer
informatie over het cryptografische ontwerp van
gbde, inclusief de methode die
gebruikt wordt om de sectorsleutels van de door de gebruiker
gegeven wachtwoordzin af te leiden, staan in
&man.gbde.4;.Compatibiliteitspunten&man.sysinstall.8; is niet compatibel met apparaten die
met gbde versleuteld zijn. Alle
*.bde
apparaten moeten van de kernel ontkoppeld worden voordat
&man.sysinstall.8; gebruikt wordt om te voorkomen dat het
crasht tijdens het initiële zoeken naar apparaten. Om
het versleutelde apparaat dat in dit voorbeeld gebruikt wordt
te ontkoppelen:&prompt.root; gbde detach /dev/ad4s1cgbde kan niet met
vinum volumes gebruikt worden,
omdat &man.vinum.4; geen gebruik maakt van het subsysteem
&man.geom.4;.DanielGerzoBijgedragen door Schijfversleuteling met geliVanaf &os; 6.0 is er een nieuwe cryptografische
GEOM-klasse beschikbaar: geli. Deze wordt
op het moment ontwikkeld door &a.pjd;. geli
verschilt van gbde in de mogelijkheden en in
het gebruik van een andere methode voor het
versleutelen.De meest belangrijke mogelijkheden van &man.geli.8;
zijn:Gebruikt het &man.crypto.9; framework; als
cryptografische hardware aanwezig is, gebruikt
geli die automatisch;Ondersteunt meedere cryptografische algoritmen. Op dit
moment AES, Blowfish en 3DES;Staat toe dat de root-partitie wordt versleuteld. De
wachtwoordzin die wordt gebruikt om de root-partitie te
versleutelen wordt opgevraagd tijdens het starten van een
systeem;Staat het gebruik van twee onafhankelijke sleutels toe,
bijvoorbeeld een sleutel en een
bedrijfssleutel);geli is snel; het werkt met
sector-naar-sector versleuteling;Ondersteunt back-up en restore van Master Keys. Als
een gebruiker sleutels moet vernietigen, is het mogelijk
weer toegang te krijgen tot de gegevens door sleutels uit
een back-up te halen;Ondersteunt het koppelen van een schijf met een
willekeurige, eenmalige sleutel. Handig voor
swap-partities en tijdelijke bestandssystemen.Meer mogelijkheden van geli staan
beschreven in de handleiding van &man.geli.8;.De volgende stappen beschrijven hoe ondersteuning voor
geli in de &os;-kernel ingeschakeld kan
worden en hoe een nieuwe geli
versleutelingsvoorziening gemaakt kan worden.Het is mogelijk geli te gebruiken vanaf
&os; 6.0-RELEASE of later. Het is noodzakelijk
super-user rechten te hebben omdat de kernel wordt
aangepast.Toevoegen van geli-ondersteuningVoeg de volgende regels toe aan het bestand met
kernelinstellingen:options GEOM_ELI
device cryptoHerbouw de kernel zoals beschreven is in .De geli-module kan ook bij het
opstarten geladen worden. Voeg de volgende regel toe aan
/boot/loader.conf:geom_eli_load="YES"Nu hoort &man.geli.8; door de kernel ondersteund te
worden.Een Master Key genererenHet volgende voorbeeld beschrijft hoe een
sleutelbestand te maken, dat wordt gebruikt als onderdeel
van de Master Key voor de versleutelde dienst die wordt
aangekoppeld onder /private. Het sleutelbestand
zorgt voor wat willekeurige gegevens die worden gebruikt
om de Master Key te versleutelen. De Master Key wordt ook
door een wachtwoordzin beschermd. De sectorgrootte van de
dienst wordt 4 kB. Ook wordt beschreven hoe de
geli-dienst te koppelen, er een
bestandsysteem op te maken, dat aan te koppelen, hoe ermee
te werken en tenslotte hoe te ontkoppelen.Het wordt aangeraden een grotere sectorgrootte in te
stellen (zoals 4 kB) voor betere prestaties.De Master Key wordt beschermd door een wachtwoordzin en
de gegevensbron voor het sleutelbestand wordt
/dev/random. De sectorgrootte van
/dev/da2.eli, die als dienst wordt
aangeduid, wordt 4 kB.&prompt.root; dd if=/dev/random of=/root/da2.key bs=64 count=1
&prompt.root; geli init -s 4096 -K /root/da2.key /dev/da2
Enter new passphrase:
Reenter new passphrase:Het is niet verplicht om zowel een wachtwoordzijn als
een sleutelbestand te gebruiken. De methodes kunnen
onafhankelijk van elkaar gebruikt worden.Als een sleutelbestand wordt opgegeven als
-, wordt de standaardinvoer gebruikt. In
het onderstaande voorbeeld wordt aangegeven hoe meer dan
een sleutelbestand kan worden gebruikt.&prompt.root; cat sleutelbestand1 sleutelbestand2 sleutelbestand3 | geli init -K - /dev/da2De dienst koppelen met de gemaakte sleutel&prompt.root; geli attach -k /root/da2.key /dev/da2
Enter passphrase:Het nieuwe platte tekst-apparaat wordt
/dev/da2.eli
genoemd.&prompt.root; ls /dev/da2*
/dev/da2 /dev/da2.eliHet nieuwe bestandssysteem maken&prompt.root; dd if=/dev/random of=/dev/da2.eli bs=1m
&prompt.root; newfs /dev/da2.eli
&prompt.root; mount /dev/da2.eli /privateHet versleutelde bestandssysteem moet nu zichtbaar zijn
voor &man.df.1; en beschikbaar zijn voor gebruik:&prompt.root; df -H
Filesystem Size Used Avail Capacity Mounted on
/dev/ad0s1a 248M 89M 139M 38% /
/devfs 1.0K 1.0K 0B 100% /dev
/dev/ad0s1f 7.7G 2.3G 4.9G 32% /usr
/dev/ad0s1d 989M 1.5M 909M 0% /tmp
/dev/ad0s1e 3.9G 1.3G 2.3G 35% /var
/dev/da2.eli 150G 4.1K 138G 0% /privateDe dienst afkoppelenAls het werk met de versleutelde partitie is
afgehandeld en de /private-partitie niet langer
nodig is, dan is het verstandig te overwegen de met
geli versleutelde partitie af te koppelen
van het bestandssysteem en de kernel.&prompt.root; umount /private
&prompt.root; geli detach da2.eliMeer informatie over &man.geli.8; staat in de
handleiding.Gebruik maken van het gelirc.d script.Bij geli hoort een rc.d script dat
gebruikt kan worden om het gebruik van
geli te vereenvoudigen. Een voorbeeld van
hoe geli met &man.rc.conf.5; ingesteld
kan worden volgt:geli_devices="da2"
geli_da2_flags="-p -k /root/da2.key"Hiermee wordt /dev/da2 ingesteld als
geli-dienst met Master Key-bestand
/root/da2.key en geli
gebruikt geen wachtwoordzin als de dienst wordt gekoppeld
(dit kan alleen gebruikt worden als is meegegeven tijdens
de geli init fase van geli). Een
systeem ontkoppelt de geli-dienst van de
kernel voordat het afsluit.Meer informatie over het instellen van rc.d staat in
het onderdeel over rc.d.ChristianBrüfferGeschreven door RemkoLodderVertaald door Het versleutelen van de wisselbestand ruimteswapencryptingHet versleutelen van de wisselbestand ruimte is gemakkelijk
met &os; te configureren en is beschikbaar sinds &os; 5.3-RELEASE.
Afhankelijk van welke versie er gebruikt wordt zijn er verschillende
configuratie opties en instellingen mogelijk. Vanaf &os;
6.0-RELEASE en hoger kunnen &man.gbde.8; en &man.geli.8; gebruikt
worden voor het versleutelen van het wisselbestand. Voor eerdere
versies geldt dat alleen &man.gbde.8; beschikbaar is. Beide
systemen maken gebruik van het encswap
rc.d script.De vorige sectie, Schijfpartities
versleutelen, biedt een korte discussie over de verschillende
versleutel systemen.Waarom moet het wisselbestand versleuteld worden?Net als met het versleutelen van harde schijven, wordt het
versleutelen van het wisselbestand gebruikt om gevoelige data
te beschermen. Stel je eens een applicatie voor dat omgaat het
wachtwoorden. Zolang deze wachtwoorden in het fysieke geheugen
blijven is er niets aan de hand. Echter zodra deze verplaatst
worden naar het wisselbestand om ruimte te maken voor andere
applicaties, kan het gebeuren dat de wachtwoorden onbeschermd
op de harde schijf geschreven worden, waardoor het makkelijk
te achterhalen is voor iemand die kwaad wilt. Het versleutelen
van het wisselbestand biedt hierin een mogelijke uitkomst.VoorbereidingTot het einde van deze sectie zal ad0s1b
het wisselbestand bevatten.Tot op dit moment is het wisselbestand niet versleuteld. Het
is mogelijk dat er reeds wachtwoorden of andere gevoelige data
onbeschermd op de harde schijf geschreven zijn. Om dit te
corrigeren, moet de data op de swap partitie overschreven worden
met willekeurige data:&prompt.root; dd if=/dev/random of=/dev/ad0s1b bs=1mVersleutelen van het wisselbestand met &man.gbde.8;Als gebruik gemaakt wordt van &os; 6.0-RELEASE of
nieuwer, moet gebruik gemaakt worden van het .bde
achtervoegsel aan het apparaat in de respectievelijke
/etc/fstab wisselbestand regel:
# Device Mountpoint FStype Options Dump Pass#
/dev/ad0s1b.bde none swap sw 0 0
Voor systemen die dateren van voor &os; 6.0-RELEASE is
de volgende regel in /etc/rc.conf ook
benodigd:gbde_swap_enable="YES"Versleutelen van het wisselbestand met &man.geli.8;Het opzetten van &man.geli.8; voor het versleutelen van het
wisselbestand is hetzelfde als dat van &man.gbde.8;. Hier moet
echter gebruik gemaakt worden van het .eli
achtervoegsel aan het apparaat in de respectievelijke
/etc/fstab wisselbestand regel:
# Device Mountpoint FStype Options Dump Pass#
/dev/ad0s1b.eli none swap sw 0 0
&man.geli.8; maakt standaard gebruik van het AES
algoritme met een sleutel lengte van 256 bit.Optioneel kunnen deze standaardwaarden worden aangepast door
gebruik te maken van de geli_swap_flags optie
in /etc/rc.conf. De volgende regel verteld
het encswap rc.d bestand om een &man.geli.8;
wisselbestand te maken met het Blowfish algoritme met een sleutel
lengte van 128 bit, een sectorgrootte van 4 kilobytes en met de
optie ontkoppelen nadat de laatste afsluiting
gezet:geli_swap_flags="-e blowfish -l 128 -s 4096 -d"Voor systemen gedateerd van voor &os; 6.2-RELEASE moet
de volgende regel gebruikt worden:geli_swap_flags="-a blowfish -l 128 -s 4096 -d"Zie de uitleg over het onetime commando in
de &man.geli.8; handleiding voor een lijst van mogelijke opties.Controleren of het werktZodra het systeem opnieuw opgestart is kan gekeken worden
of alles nog goed werkt door gebruik te maken van het
swapinfo commando.Als gebruik gemaakt wordt van &man.gbde.8;:&prompt.user; swapinfo
Device 1K-blocks Used Avail Capacity
/dev/ad0s1b.bde 542720 0 542720 0%
Als gebruik gemaakt wordt van &man.geli.8;:&prompt.user; swapinfo
Device 1K-blocks Used Avail Capacity
/dev/ad0s1b.eli 542720 0 542720 0%
diff --git a/nl_NL.ISO8859-1/books/handbook/kernelconfig/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/kernelconfig/chapter.sgml
index 66fcb3bd97..4400cd3903 100644
--- a/nl_NL.ISO8859-1/books/handbook/kernelconfig/chapter.sgml
+++ b/nl_NL.ISO8859-1/books/handbook/kernelconfig/chapter.sgml
@@ -1,1691 +1,1689 @@
JimMockBijgewerkt en opnieuw gestructureerd door JakeHambyOorspronkelijk bijgedragen door RenéLadanVertaald door De &os;-kernel instellenSamenvattingkerneleen aangepaste kernel bouwenDe kernel is de kern van het &os;-besturingssysteem en is
verantwoordelijk voor het geheugenbeheer, het opleggen van
beveiligingsregels, het aansturen van het netwerk, de toegang tot
schijven en nog veel meer. Hoewel steeds meer in &os; dynamisch
instelbaar wordt, is het af en toe nodig om de kernel opnieuw in
te stellen en te compileren.Na het lezen van dit hoofdstuk weet de lezer:Waarom het nodig is om een aangepaste kernel te bouwen;
Hoe een nieuw kernelinstellingenbestand te schrijven of
een bestaand kernelinstellingenbestand aan te passen;Hoe het kernelinstellingenbestand te gebruiken om een
nieuwe kernel aan te maken en te bouwen;Hoe een nieuwe kernel te installeren;Hoe problemen op te lossen als er iets verkeerd gaat.
Alle opdrachten die in dit hoofdstuk als voorbeeld zijn
gegeven moeten als root uitgevoerd worden om
te slagen.Redenen om een aangepaste kernel te bouwenTraditioneel heeft &os; zoals dat heet een
monolitische kernel gehad. Dit betekent dat de
kernel één groot programma was, een vaste lijst
van apparaten ondersteunde en als het gewenst was om het gedrag
van de kernel te veranderen, moest er een nieuwe kernel
gecompileerd worden en moest daarna de computer opnieuw gestart
worden met de nieuwe kernel.Vandaag de dag beweegt &os; zich snel naar een model waar
veel van de functionaliteit van de kernel in modules zit die
dynamisch in en uit de kernel kunnen worden geladen, naargelang
dat noodzakelijk is. Dit stelt de kernel in staat om zich aan
nieuwe hardware aan te passen die plotseling beschikbaar komt
(zoals PCMCIA-kaarten in een laptop) of om nieuwe functionaliteit
in zich op te nemen die niet noodzakelijk was toen de kernel
oorspronkelijk werd gecompileerd. Dit staat bekend als een
modulaire kernel.Desondanks is het nog steeds nodig om enkele dingen van de
kernel statisch in te stellen. In sommige gevallen komt dit
doordat de functionaliteit zo diep geworteld zit in de kernel dat
het niet dynamisch laadbaar gemaakt kan worden. In andere
gevallen kan het simpelweg komen doordat nog niemand de tijd
heeft genomen om een dynamisch laadbare kernelmodule voor die
functionaliteit te schrijven.Het bouwen van een aangepaste kernel is een van de meest
belangrijke beproevingen die geavanceerde BSD-gebruikers moet
doorstaan. Hoewel dit proces veel tijd in beslag neemt, levert
het veel voordelen op voor een &os; systeem. In tegenstelling
tot de GENERIC-kernel, die vele typen
hardware moet ondersteunen, ondersteunt een aangepaste kernel
alleen de hardware van de computer waar hij voor gemaakt is. Dit
biedt een aantal voordelen, zoals:Een snellere opstarttijd. Aangezien de kernel alleen de
hardware zoekt die zich in het systeem bevindt, kan de tijd
die het systeem nodig heeft om op te starten aanzienlijk
korter worden;Minder geheugengebruik. Een aangepaste kernel gebruikt
vaak minder geheugen dan de
GENERIC-kernel door ongebruikte mogelijkheden
en apparaatstuurprogramma's weg te laten. Dit is van belang
aangezien de kernelcode altijd in het fysieke geheugen aanwezig
blijft, waardoor dit geheugen niet door applicaties gebruikt kan
worden. Om deze reden is een aangepaste kernel geknipt
voor een systeem met een kleine hoeveelheid RAM;Aanvullende hardware-ondersteuning. Een aangepaste
kernel kan ingebouwde ondersteuning bieden voor apparaten die
zich niet in de GENERIC-kernel bevinden,
zoals geluidskaarten.TomRhodesGeschreven door De systeemhardware vindenAlvorens in de kernelconfiguratie te duiken, zou het
verstandig zijn om een inventarisatie van de hardware van de
machine te maken. In het geval dat &os; niet het primaire
besturingssysteem is, kan de inventarisatielijst eenvoudig worden
gemaakt door de configuratie van het huidige besturingssysteem te
bekijken. De Device Manager van
µsoft; bijvoorbeeld bevat normaliter belangrijke informatie
over geïnstalleerde apparaten. De Device
Manager bevindt zich in het controlepaneel.Sommige versies van µsoft.windows; hebben een icoon
System dat een scherm weer zal geven
waarmee Device Manager kan worden
benaderd.Als er geen ander besturingssysteem op de machine staat, moet
de beheerder deze informatie handmatig vinden. Eén manier
is om de gereedschappen &man.dmesg.8; en &man.man.1; te gebruiken.
De meeste apparaatstuurprogramma's van &os; hebben een
handleiding, die de ondersteunde hardware noemen, en tijdens het
opstarten wordt gevonden hardware getoond. De volgende regels
geven bijvoorbeeld aan dat het stuurprogramma voor
psm een muis heeft gevonden:psm: <PS/2 Mouse> irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
psm0: [ITHREAD]
psm0: model Generic PS/2 mouse, device ID 0Dit stuurprogramma zal in het eigen kernelinstellingenbestand
opgenomen moeten worden of worden geladen met &man.loader.conf.5;.
Soms geven de gegevens van dmesg alleen de
systeemboodschappen weer in plaats van de uitvoer van de
opstartonderzoeken. In deze gevallen kan de uitvoer worden
verkregen door het bestand
/var/run/dmesg.boot te bekijken.Een andere methode om hardware te vinden is door
&man.pciconf.8; te gebruiken welke meer gedetailleerde uitvoer
geeft. Bijvoorbeeld:ath0@pci0:3:0:0: class=0x20000 card=0x058a1014 chip=0x1014168c rev=0x01 hdr=0x00
vendor = 'Atheros Communications Inc.'
device = 'AR5212 Atheros AR5212 802.11abg wireless'
class = network
subclass = ethernetDit beetje uitvoer, verkregen met
pciconf geeft aan dat het
stuurprogramma ath een draadloos
Ethernetapparaat heeft gevonden. Het gebruik van
man ath zal de
handleiding voor &man.ath.4; teruggeven.Wanneer de vlag aan &man.man.1; wordt
gegeven kan deze nuttige informatie geven. Met het bovenstaande
kan dit gedaan worden:&prompt.root; man -k Atherosom een lijst handleidingen te krijgen die dat ene woord
bevatten:ath(4) - Atheros IEEE 802.11 wireless network driver
ath_hal(4) - Atheros Hardware Access Layer (HAL)Gewapend met een inventarisatielijst van de hardware zou het
proces van het bouwen van een eigen kernel minder angstaanjagend
moeten lijken.Kernel stuurprogramma's, subsystemen, en moduleskernelstuurprogramma's / modules / subsystemenBekijk, voordat er een eigen kernel gebouwd wordt, de redenen
om dit te doen. Als er de noodzaak is voor specifieke
hardwareondersteuning, kan dit reeds beschikbaar zijn als een
module.Kernelmodules staan in de map /boot/kernel en kunnen dynamisch in
de draaiende kernel worden geladen met &man.kldload.8;. De
meeste, als niet alle, kernelstuurprogramma's hebben een
specifieke module en een handleiding. De laatste sectie merkte
bijvoorbeeld het draadloze Ethernetstuurprogramma
ath op. Van dit stuurprogramma staat de
volgende informatie in de handleiding:Plaats de volgende regel in &man.loader.conf.5; om
het stuurprogramma tijdens het opstarten als een module te laden:
if_ath_load="YES"Zoals aangegeven, zal het toevoegen van de regel
if_ath_load="YES" aan
/boot/loader.conf deze module dynamisch
laden tijdens het opstarten.In sommige gevallen is er geen geassocieerde module. Dit
geldt het vaakst voor bepaalde subsystemen en zeer belangrijke
stuurprogramma's, het fast file system (FFS)
bijvoorbeeld is een verplichte optie in de kernel, net zoals
netwerkondersteuning (INET). Helaas is de enige manier om te zien
of een stuurprogramma nodig is naar de module zelf zoeken.Het is nogal eenvoudig om ingebouwde ondersteuning voor een
apparaat of optie te verwijderen en met een kapotte kernel
opgezadeld te zitten. Als bijvoorbeeld het stuurprogramma
&man.ata.4; uit het kernelinstellingenbestand gehaald wordt,
zal een systeem dat ATA
schijfstuurprogramma's gebruikt niet opstarten zonder een regel
aan loader.conf toe te voegen. Kijk bij
twijfel of de module aanwezig is en laat ondersteuning dan
gewoon in de kernel.Bouwen en installeren van een aangepaste kernelkernelbouwen / installerenEerst wordt er een overzicht gegeven van de mappen waarin de
kernel gebouwd wordt. Alle genoemde mappen staan onder de map
/usr/src/sys, die ook toegankelijk is via
de padnaam /sys. Er zijn hier een aantal
mappen aanwezig die de verschillende delen van de kernel
representeren, maar de meest belangrijke hiervan zijn
arch/conf, waarin
de kernelinstellingen bewerkt worden en
compile, waarin de aangepaste kernel gebouwd
wordt. arch representeert hier
één van i386,
alpha, amd64,
ia64, powerpc,
sparc64 of pc98 (een
alternatieve ontwikkelingstak van PC-hardware die populair is in
Japan). Alles binnen de map van een bepaalde architectuur is er
alleen voor die architectuur. De rest van de code is
machine-onafhankelijk en hetzelfde op alle platformen waarnaar
&os; eventueel overgezet kan worden. De indeling van de
mapstructuur is logisch: alle ondersteunde apparaten,
bestandssystemen en opties staan in een eigen submap.Dit hoofdstuk veronderstelt dat de i386-architectuur in de
voorbeelden gebruikt wordt. Als dit voor de lezer anders is,
moeten de juiste aanpassingen aan de padnamen worden gemaakt voor
de architectuur van zijn systeem.Als de map /usr/src/sysniet aanwezig is op een systeem, dan is de
kernelbroncode niet geïnstalleerd. De eenvoudigste manier
om dit te doen is door sysinstall te draaien
als root en
Configure, dan
Distributions, dan
src, dan
base en
sys te kiezen. Als
sysinstall ongewenst is en er toegang
is tot een officiële &os; CD-ROM, is de
broncode ook vanaf de opdrachtregel te installeren:&prompt.root; mount /cdrom
&prompt.root; mkdir -p /usr/src/sys
&prompt.root; ln -s /usr/src/sys /sys
&prompt.root; cat /cdrom/src/sys.[a-d]* | tar -xzvf -
&prompt.root; cat /cdrom/src/sbase.[a-d]* | tar -xzvf -Daarna kan vanuit de map
arch/conf het
instellingenbestand GENERIC naar de naam
voor de aangepaste kernel gekopieerd worden. Bijvoorbeeld:&prompt.root; cd /usr/src/sys/i386/conf
&prompt.root; cp GENERIC MIJNKERNELTraditioneel bestaat deze naam geheel uit hoofdletters en als
er meerdere &os;-machines worden beheerd met verschillende
hardware is het een goed idee om het te vernoemen naar de
hostnaam van de machine. Omwille van dit voorbeeld wordt het
MIJNKERNEL
genoemd.Het kernelinstellingenbestand direct onder
/usr/src opslaan kan een slecht idee zijn.
In geval van problemen kan het verleidelijk zijn om
/usr/src te verwijderen en opnieuw te
beginnen. Nadat dit gedaan is kost het vaak maar enkele
seconden om te realiseren dat het instellingenbestand voor de
aangepaste kernel verwijderd is. Ook moet
GENERIC niet gewijzigd worden, omdat het
tijdens de volgende keer dat de broncodeboom bijgewerkt
wordt, overschreven kan worden waarbij de wijzigingen
in de kernelinstellingen verloren gaan.Het kan gewenst zijn om het kernelinstellingenbestand
ergens anders op te slaan en een symbolische link naar het
bestand in de map
i386 aan te
maken:&prompt.root; cd /usr/src/sys/i386/conf
&prompt.root; mkdir /root/kernels
&prompt.root; cp GENERIC /root/kernels/MIJNKERNEL
&prompt.root; ln -s /root/kernels/MIJNKERNELNu moet
MIJNKERNEL met de
favoriete tekstverwerker bewerkt worden. Voor beginners is
waarschijnlijk alleen de tekstverwerker
vi beschikbaar, die te ingewikkeld is
om hier te beschrijven, maar goed is beschreven in vele boeken in
de bibliografie. &os; biedt
ook de eenvoudigere tekstverwerker ee,
die voor een beginner de keuze bij uitstek is. De
commentaarregels in het begin kunnen gewijzigd worden om de
persoonlijke instellingen of de veranderingen die gemaakt zijn ten
opzichte van GENERIC weer te geven.&sunos;Voor degenen die een kernel op &sunos; of een andere BSD
hebben gebouwd zal veel van dit bestand bekend voorkomen.
Echter, voor degenen die van een ander besturingssysteem zoals
DOS komen, kan het instellingenbestand
GENERIC overdonderend overkomen, dus moeten
de beschrijvingen in de sectie Het Instellingenbestand
zorgvuldig opgevolgd worden.Als de broncodeboom
gesynchroniseerd is met de nieuwste broncode van het
&os;-project, moet altijd
/usr/src/UPDATING gelezen worden voordat
enige bijwerkstappen worden genomen. Dit bestand beschrijft
alle belangrijke zaken en gebieden binnen de broncodestructuur
die speciale aandacht nodig hebben.
/usr/src/UPDATING komt altijd overeen met
de lokale versie van de &os;-broncode en is daarom meer
bijgewerkt met nieuwe informatie dan dit handboek.Nu moet de broncode voor de kernel gecompileerd worden.Een kernel bouwenGa naar de map /usr/src:&prompt.root; cd /usr/srcCompileer de kernel:&prompt.root; make buildkernel KERNCONF=MIJNKERNELInstalleer de nieuwe kernel:&prompt.user; make installkernel KERNCONF=MIJNKERNELDe volledige broncode van &os; is nodig om de kernel te
bouwen.Bij het bouwen van een aangepaste kernel worden standaard
alle kernelmodules ook herbouwd. Om de
kernel sneller bij te werken en alleen de aangepaste modules
te bouwen kan /etc/make.conf aangepast
worden voordat de kernel wordt gebouwd:MODULES_OVERRIDE = linux acpi sound/sound sound/driver/ds1 ntfsMet deze variabele wordt een lijst van te bouwen modules
ingesteld die gebouwd moeten worden in plaats van allen.WITHOUT_MODULES = linux acpi sound/sound sound/driver/ds1 ntfsDeze variabele stelt een lijst in van modules die moeten
worden uitgesloten van het bouwproces. Andere variabelen die
mogelijk ook nuttig zijn in het proces van het bouwen van een
kernel staan beschreven in de handleiding voor
&man.make.conf.5;./boot/kernel.oldDe nieuwe kernel wordt naar de map /boot/kernel gekopieerd als
/boot/kernel/kernel en de oude kernel wordt
verplaatst naar /boot/kernel.old/kernel. Nu
moet het systeem afgesloten worden en opnieuw worden opgestart om
gebruik te maken van de nieuwe kernel. Er zijn wat instructies
voor problemen
oplossen aan het einde van dit hoofdstuk, die erg nuttig
kunnen zijn als er iets misgaat. Vergeet niet om het gedeelte te
lezen waarin staat uitgelegd hoe te herstellen als de nieuwe
kernel niet
opstart.Andere bestanden die te maken hebben met het opstartproces,
zoals de boot &man.loader.8; en instellingen worden opgeslagen
in /boot. Modules van derde partijen of
eigen modules kunnen in /boot/kernel opgeslagen worden,
alhoewel gebruikers erop bedacht moeten zijn dat het erg
belangrijk is dat de modules synchroon worden gehouden met de
gecompileerde kernel. Modules die niet bedoeld zijn om met de
gecompileerde kernel te draaien kunnen voor instabiliteit of
onjuistheden zorgen.JoelDahlBijgewerkt voor &os; 6.X door Het instellingenbestandkernelNOTESNOTESkernelinstellingenbestandHet algemene formaat van een instellingenbestand is vrij
eenvoudig. Elke regel bevat een sleutelwoord en
één of meer argumenten. Omwille van de eenvoud
bevatten de meeste regels maar één argument. Alles
wat na een # komt, wordt als commentaar
beschouwd en genegeerd. De volgende gedeelten beschrijven elk
sleutelwoord, in het algemeen in dezelfde volgorde als
GENERIC, alhoewel sommige samenhangende
sleutelwoorden gegroepeerd zijn in een enkel gedeelte (zoals
Netwerken) zelfs al staan ze verspreid in het bestand
GENERIC.
Een uitputtende lijst van architectuurafhankelijke opties en
apparaten staat in het bestand NOTES, dat in
dezelfde map staat als het bestand GENERIC.
Architectuuronafhankelijke opties staan in
/usr/src/sys/conf/NOTES.Sinds &os; 5.0 is er een nieuwe directief
include beschikbaar om te gebruiken in
instellingenbestanden. Hiermee kan een ander instellingenbestand logisch
in het huidige worden opgenomen, waardoor het eenvoudig wordt om kleine
veranderingen relatief aan een bestaand bestand te onderhouden. Als u
bijvoorbeeld een GENERIC kernel nodig heeft met
slechts een klein aantal aanvullende opties of stuurprogramma's, hoeft u
hiermee slechts een delta ten opzichte van GENERIC te onderhouden:include GENERIC
ident MIJNKERNEL
options IPFIREWALL
options DUMMYNET
options IPFIREWALL_DEFAULT_TO_ACCEPT
options IPDIVERTVeel beheerders zullen aanzienlijke voordelen in dit model zien
vergeleken met de vroegere gewoonte om instellingenbestanden vanuit het
niets te schrijven: het lokale instellingenbestand zal alleen lokale
verschillen uitdrukken ten opzichte van een GENERIC
kernel en wanneer upgrades worden uitgevoerd zullen nieuwe mogelijkheden
die aan GENERIC zijn toegevoegd ook aan de lokale
kernel worden toegevoegd tenzij dit expliciet verhinderd wordt met
nooptions of nodevice. De rest van
dit hoofdstuk behandelt de inhoud van een typisch instellingenbestand en
de verschillende rollen die opties en apparaten spelen.Draai het volgende commando als root om
een bestand te bouwen dat alle beschikbare opties bevat, wat
normaliter voor testdoeleinden gedaan wordt:&prompt.root; cd /usr/src/sys/i386/conf && make LINTkernelinstellingenbestandHet volgende is een voorbeeld van het
kernelinstellingenbestand GENERIC met
aanvullend commentaar omwille van de helderheid. Dit voorbeeld
is redelijk gelijk aan de versie in
/usr/src/sys/i386/conf/GENERIC.kerneloptiesmachinemachine i386Dit is de architectuur van de machine. Het moet
één van alpha,
amd64, i386,
ia64, pc98,
powerpc of sparc64
zijn.kerneloptiescpucpu I486_CPU
cpu I586_CPU
cpu I686_CPUBovenstaande optie geeft het type CPU aan dat in een systeem
zit. De CPU-regel kan meerdere keren voorkomen (als bijvoorbeeld
onbekend is of I586_CPU of
I686_CPU gebruikt moet worden), maar voor een
aangepaste kernel is het beter om alleen de aanwezige CPU aan te
geven. Als er twijfel bestaat over het type CPU, kan het bestand
/var/run/dmesg.boot worden bekeken voor de
opstartberichten.kerneloptiesidentident GENERICDit is de identificatie van de kernel. Dit moet veranderd
worden in de naam van de kernel, dus
MIJNKERNEL als de
instructies van de voorgaande voorbeelden gevolgd zijn. De waarde
in de string ident wordt afgebeeld wanneer de
kernel opstart, dus is het handig om de nieuwe kernel een andere
naam te geven als deze apart moet worden gehouden van de
gebruikelijke kernel (als er bijvoorbeeld een experimentele kernel
gebouwd wordt).#Om apparaatbindingen statisch in te compileren in plaats van via /boot/device.hints.
#hints "GENERIC.hints" # Standaardlocatie voor devices.&man.device.hints.5; wordt gebruikt om opties van de
programma's die de apparaten aansturen in te stellen. De
standaardplaats die &man.loader.8; controleert tijdens het
opstarten is /boot/device.hints. Met de
optie hints is het mogelijk om deze
aanwijzingen statisch in de kernel te compileren, waardoor er
geen noodzaak is om een bestand device.hints
in /boot aan te maken.makeoptions DEBUG=-g # Bouw kernel met gdb(1) debugsymbolen.Het normale bouwproces van &os; voegt debuginformatie toe
wanneer de kernel met de optie gebouwd wordt,
wat debuginformatie doorgeeft aan &man.gcc.1;.
- options SCHED_4BSD # 4BSD taakplanner
+ options SCHED_ULE # ULE taakplanner
- De traditionele en standaard taakplanner voor &os;. Laat dit
- staan.
+ De standaard taakplanner voor &os;. Laat dit staan.options PREEMPTION # Zet kernelthreadpreëmptie aanSta toe dat threads in de kernel worden gepreëmpt door
threads met een hogere prioriteit. Het help bij interactiviteit
en staat toe dat interruptthreads eerder draaien in plaats van te
moeten wachten.options INET # internetwerkenNetwerkondersteuning. Laat dit aanstaan, zelfs als een
verbinding met een netwerk niet gepland is. De meeste
programma's hebben tenminste een teruglusnetwerk nodig (dat wil
zeggen het maken van netwerkverbindingen binnen de PC), dus dit
is eigenlijk verplicht.options INET6 # IPv6 communicatieprotocollenDit zet de IPv6-communicatieprotocollen aan.options FFS # Berkeley Fast BestandssysteemDit is het basisbestandssysteem voor de harde schijf. Laat
dit erin staan als er vanaf de harde schijf wordt
opgestart.options SOFTUPDATES # Schakel FFS Softupdates ondersteuning inDeze optie zet softupdates in de kernel aan en helpt om de
schijftoegang voor schrijven te verhogen. Zelfs als deze
functionaliteit door de kernel geleverd wordt, moet die voor
specifieke schijven worden aangezet. Bekijk de uitvoer van
&man.mount.8; om te zien of softupdates aanstaat voor de
systeemschijven. Als de optie soft-updates
niet zichtbaar is, dient deze geactiveerd te worden met behulp
van &man.tunefs.8; voor bestaande bestandssystemen of
&man.newfs.8; voor nieuwe bestandssystemen.options UFS_ACL # Ondersteuning voor toegangscontrolelijstenMet deze optie wordt de ondersteuning voor
toegangscontrolelijsten aangezet. Hiervoor zijn uitgebreide
attributen en UFS2 nodig. Een en ander wordt
in detail beschreven in .
ACL's staan standaard aan en moeten niet
uitgezet worden in de kernel als ze al eerder op een
bestandssysteem zijn gebruikt, omdat dit de
toegangscontrolelijsten verwijdert en hierdoor de manier waarop
bestanden beschermd worden op onvoorspelbare wijze verandert.
options UFS_DIRHASH # Verbeter prestaties in grote mappenDeze optie bevat functionaliteit om schijfoperaties op grote
mappen te versnellen, ten koste van extra geheugen. Deze staat
normaalgesproken, zoals voor een grote server of interactief
werkstation, aan en wordt uitgezet als &os; op een kleiner
systeem wordt gebruikt waar geheugen het belangrijkste en
schijfsnelheid minder belangrijk is, zoals voor een
firewall.options MD_ROOT # MD is een potentieel rootapparaatDeze optie zet ondersteuning aan voor een virtuële
schijf die in het geheugen wordt geïmplementeerd en als
rootapparaat wordt gebruikt.kerneloptiesNFSkerneloptiesNFS_ROOToptions NFSCLIENT # Netwerk Bestandssysteem Client
options NFSSERVER # Netwerk Bestandssysteem Server
options NFS_ROOT # NFS bruikbaar als /, NFSCLIENT nodigHet netwerkbestandssysteem. Dit kan weggelaten worden tenzij
er gepland is om partities te aan te koppelen van een &unix;
bestandsserver over TCP/IP.kerneloptiesMSDOSFSoptions MSDOSFS # MSDOS BestandssysteemHet &ms-dos; bestandssysteem. Dit kan veilig weggelaten
worden, tenzij er gepland is om een DOS-geformatteerde partitie
van de harde schijf tijdens het opstarten aan te koppelen. Het
wordt automatisch geladen als er voor de eerste keer een
DOS-partitie wordt aangekoppeld, zoals boven beschreven.
Bovendien geeft de uitstekende software emulators/mtools toegang tot
DOS-floppies zonder dat ze aangekoppeld en afgekoppeld moeten
worden en heeft het MSDOSFS helemaal niet
nodig.options CD9660 # ISO 9660 BestandssysteemHet ISO 9960-bestandssysteem voor CD-ROMs. Commentarieer dit
uit als er geen CD-ROM drive aanwezig is of als er slechts af en
toe gegevens-CD-ROMs aangekoppeld worden (aangezien het dynamisch
geladen wordt als er voor de eerste keer een gegevens-CD-ROM
aangekoppeld wordt). Audio-CD's hebben dit bestandssysteem niet
nodig.options PROCFS # Procesbestandssysteem (vereist PSEUDOFS)Het procesbestandssysteem. Dit is een als-of
bestandssysteem, aangekoppeld op /proc, dat
programma's als &man.ps.1; in staat stelt om meer informatie over
de draaiende processen te geven. Het is in de meeste
omstandigheden niet nodig om PROCFS te
gebruiken, omdat de meeste debug- en monitorgereedschappen zijn
aangepast om zonder PROCFS te draaien:
installaties koppelen dit bestandssysteem standaard niet aan.
options PSEUDOFS # Pseudo-bestandssysteem raamwerk6.X kernels die PROCFS gebruiken moeten ook
ondersteuning voor PSEUDOFS opnemen.options GEOM_GPT # GUID Partitietabellen.Met deze optie kan een groot aantal partities op een enkele
schijf aanwezig zijn.options COMPAT_43 # Compatibel met BSD 4.3 [ERIN HOUDEN!]Compatibiliteit met 4.3BSD. Laat dit aanstaan. Sommige
programma's gedragen zich vreemd als dit uitgecommentarieerd
wordt.options COMPAT_FREEBSD4 # Compatibel met &os; 4Deze optie is nodig op &os; 5.X &i386; en Alpha systemen
om ondersteuning te bieden aan applicaties die gecompileerd zijn
op oudere versies van &os; en gebruik maken van oudere
systeemaanroep-interfaces. Het is aanbevolen dat deze optie
gebruikt wordt op alle &i386; en Alpha systemen die mogelijk
oudere applicaties draaien. Voor platformen die pas in 5.X
ondersteuning verwierven, zoals ia64 en &sparc64;, is deze optie
niet nodig.options COMPAT_FREEBSD5 # Compatibel met &os;5Deze optie is vereist in &os; 6.X en hoger om
toepassingen die op &os; 5.X zijn gecompileerd en
systeemaanroepinterfaces van &os; 5.X gebruiken te
ondersteunen.options SCSI_DELAY=5000 # Vertraging (in ms) voordat SCSI wordt ondergezocht.Dit zorgt ervoor dat de kernel vijf seconden wacht voordat die
elk SCSI-apparaat in het systeem onderzoekt. Als er alleen
IDE-harde schijven zijn, kan deze optie genegeerd worden, anders
kan geprobeerd worden dit getal te verlagen, om het opstarten te
versnellen. Uiteraard moet deze waarde weer verhoogd worden als
&os; problemen heeft om de SCSI-apparaten te herkennen.options KTRACE # ktrace(1) ondersteuningDit schakelt kernelondersteuning voor het volgen processen
in, wat handig is tijdens debuggen.options SYSVSHM # SYSV-stijl gedeeld geheugenDeze optie biedt System V gedeeld geheugen. Meestal
wordt dit wegens de XSHM-uitbreiding in X gebruikt, waar door
vele grafische programma's automatisch gebruik van wordt gemaakt
voor extra snelheid. Als X gebruik wordt, is het raadzaam om dit
op te nemen.options SYSVMSG # SYSV-stijl berichtwachtrijenDit biedt ondersteuning voor System V berichten. Ook
deze optie voegt slechts een paar honderd bytes aan de kernel
toe.options SYSVSEM # SYSV-stijl semaforenDit biedt ondersteuning voor System V semaforen. Het
wordt minder vaak gebruikt, maar voegt slechts een paar honderd
bytes aan de kernel toe.De optie van het commando &man.ipcs.1;
geeft een lijst van alle processen die een van deze
System V faciliteiten gebruikt.options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensiesDit biedt real-time-uitbreidingen die in de 1993 &posix; zijn
toegevoegd. Bepaalde applicaties in de Portscollectie gebruiken
deze (zoals &staroffice;).options KBD_INSTALL_CDEV # installeer een CDEV-ingang in /devDeze optie is nodig om apparaatknooppunten voor het
toetsenbord aan te maken in /dev.options ADAPTIVE_GIANT # Giant mutex is adaptief.Giant is de naam van een wederzijds uitsluitingsmechanisme
(een sleep mutex) dat een grote verzameling kernelbronnen
beschermt. Vandaag de dag is dit een onacceptabele
prestatie-bottleneck die actief door sloten wordt vervangen die
individuele bronnen beschermen. De optie
ADAPTIVE_GIANT zorgt ervoor dat Giant in de
verzamelingen van mutexen wordt opgenomen waar actief wordt
opgespind. Dit betekent dat wanneer een thread de Giant-mutex
wil nemen, maar die reeds door een thread op een andere CPU
genomen is, de eerste thread blijft draaien en wacht tot er een
slot vrijkomt. Normaalgesproken zou de thread weer gaan slapen
en wachten op de volgende kans om te draaien. Laat dit er in
geval van twijfel instaan.Merk op dat in &os; 8.0-CURRENT en later alle mutexen
standaard adaptief zijn, tenzij ze expliciet op niet-adaptief
zijn gezet door met de optie
NO_ADAPTIVE_MUTEXES te compileren. Een
gevolg is dat Giant nu standaard adaptief is, en dat de optie
ADAPTIVE_GIANT uit de kernelinstellingen is
verwijderd.kerneloptiesSMPdevice apic # I/O APICHet apic-apparaat zet de ondersteuning voor I/O-APIC voor het
afleveren van interrupts aan. Het apic-apparaat kan zowel in UP-
als in SMP-kernels gebruikt worden, maar is noodzakelijk voor
SMP-kernels. Voeg options SMP toe om
ondersteuning voor meerdere processoren op te nemen.Het apic-apparaat bestaat alleen in de i386-architectuur,
deze instelregel dient niet op andere architecturen gebruikt te
worden.device eisaNeem dit op voor een EISA-moederbord. Dit zet ondersteuning
voor zelfdetectie en -instelling aan voor alle apparaten op de
EISA-bus.device pciNeem dit op voor een PCI-moederbord. Dit zet ondersteuning
voor zelfdetectie van PCI-kaarten en gatewaying van
PCI-naar-ISA-bus aan.# Floppy drives
device fdcDit is de controller voor de floppydrive.# ATA- en ATAPI-apparaten
device ataDit stuurprogramma biedt ondersteuning aan alle ATA- en
ATAPI-apparaten. Er is slechts één device
ata-regel nodig om de kernel alle PCI
ATA/ATAPI-apparaten te laten ontdekken op moderne
machines.device atadisk # ATA schijvenDit is samen met device ata nodig voor ATA
schijven.device ataraid # ATA RAID schijvenDit is samen met device ata nodig voor ATA
RAID-schijven.
device atapicd # ATAPI CD-ROM drivesDit is samen met device ata nodig voor
ATAPI CD-ROM drives.device atapifd # ATAPI floppy drivesDit is samen met device ata nodig voor
ATAPI floppydrives.device atapist # ATAPI tape drivesDit is samen met device ata nodig voor
ATAPI tapedrives.options ATA_STATIC_ID # Statische apparaatnummeringDit zorgt ervoor dat de controller statisch nummert. Zonder
deze optie worden nummers dynamisch toegewezen.# SCSI Controllers
device ahb # EISA AHA1742 familie
device ahc # AHA2940 en onboard AIC7xxx apparaten
options AHC_REG_PRETTY_PRINT # Print registerbitvelden in
# debuguitvoer. Voegt ~128k
# aan stuurprogramma toe.
device ahd # AHA39320/29320 en onboard AIC79xx apparaten
options AHD_REG_PRETTY_PRINT # Print registerbitvelden in
# debuguitvoer. Voegt ~215k
# aan stuurprogramma toe.
device amd # AMD 53C974 (Teckram DC-390(T))
device isp # Qlogic familie
#device ispfw # Firmware voor QLogic HBAs- normaliter een module
device mpt # LSI-Logic MPT-Fusion
#device ncr # NCR/Symbios Logic
device sym # NCR/Symbios Logic (nieuwere chipsets + die van `ncr')
device trm # Tekram DC395U/UW/F DC315U adapters
device adv # Advansys SCSI adapters
device adw # Advansys wide SCSI adapters
device aha # Adaptec 154x SCSI adapters
device aic # Adaptec 15[012]x SCSI adapters, AIC-6[23]60.
device bt # Buslogic/Mylex MultiMaster SCSI adapters
device ncv # NCR 53C500
device nsp # Workbit Ninja SCSI-3
device stg # TMC 18C30/18C50SCSI controllers. Commentarieer de regels uit voor apparaten
die niet in het systeem aanwezig zijn. Als het een systeem met
alleen IDE apparaten betreft, kunnen ze allemaal weggelaten
worden. De regels met *_REG_PRETTY_PRINT zijn
debugopties voor hun respectievelijke stuurprogramma's.# SCSI randapparaten
device scbus # SCSI bus (nodig voor SCSI)
device ch # SCSI media changers
device da # Direct Access (schijven)
device sa # Sequential Access (tape, enzovoort)
device cd # CD
device pass # Passthrough apparaat (directe SCSI-toegang)
device ses # SCSI Omgevingsdiensten (en SAF-TE)SCSI-aanhangsels. Ook hier geldt dat apparaten die niet
aanwezig zijn uitgecommentarieerd kunnen worden, of als alleen
IDE-hardware aanwezig aanwezig is, ze allemaal weggelaten kunnen
worden.Het USB-stuurprogramma &man.umass.4; en enkele andere
stuurprogramma's gebruiken het SCSI-subsysteem, alhoewel ze
geen echte SCSI-apparaten zijn. Daarom mag SCSI-ondersteuning
niet verwijderd worden als dit soort stuurprogramma's in de
kernelinstellingen worden opgenomen.# RAID controllers met interfaces naar het SCSI subsysteem
device amr # AMI MegaRAID
device arcmsr # Areca SATA II RAID
device asr # DPT SmartRAID V, VI en Adaptec SCSI RAID
device ciss # Compaq Smart RAID 5*
device dpt # DPT Smartcache III, IV - Zie NOTES voor opties
device hptmv # Highpoint RocketRAID 182x
device rr232x # Highpoint RocketRAID 232x
device iir # Intel Integrated RAID
device ips # IBM (Adaptec) ServeRAID
device mly # Mylex AcceleRAID/eXtremeRAID
device twa # 3ware 9000 series PATA/SATA RAID
# RAID controllers
device aac # Adaptec FSA RAID
device aacp # SCSI passthrough voor aac (heeft CAM nodig)
device ida # Compaq Smart RAID
device mfi # LSI MegaRAID SAS
device mlx # Mylex DAC960 famile
device pst # Promise Supertrak SX6000
device twe # 3ware ATA RAIDOndersteunde RAID-controllers. Als een van deze niet
aanwezig is, kan deze uitgecommentarieerd of verwijderd
worden.# atkbdc0 bestuurt het toetsenbord en de PS/2 muis
device atkbdc # AT toetsenbordcontrollerDe toetsenbordcontroller (atkbdc) biedt
I/O-diensten aan voor het AT-toetsenbord en het PS/2-type van
aanwijsapparaten. Deze controller is noodzakelijk voor het
toetsenbordstuurprogramma (atkbd) en het
PS/2-aanwijsapparaatstuurprogramma
(psm).device atkbd # AT toetsenbordHet stuurprogramma atkbd biedt samen met
de controller atkbdc toegang tot het
AT84-toetsenbord of het uitgebreide AT-toetsenbord dat verbonden
is met de controller voor het AT-toetsenbord.device psm # PS/2 muisDit apparaat kan gebruikt worden als de muis in de
PS/2-muispoort wordt geplugd.device kbdmux # toetsenbordmultiplexerBasisondersteuning voor multiplexing van toetsenborden. Als u
niet van plan bent om meerdere toetsenborden op het systeem te
gebruiken, kunt u deze regel veilig verwijderen.device vga # VGA videokaart stuurprogrammaHet stuurprogramma voor de videokaart.
device splash # Splash screen en screensaver ondersteuningEen splash-scherm tijdens het opstarten! Screensavers hebben
deze optie ook nodig.# syscons is het standaard consolestuurprogramma, lijkt op een SCO console
device scsc is het standaard consolestuurprogramma
en lijkt op een SCO-console. Aangezien de meeste programma's die
met een volledig scherm werken de console via een
terminaldatabase zoals termcap benaderen,
moet het niet uitmaken of dit of vt, het
VT220-compatibele consolestuurprogramma,
gebruikt wordt. Wanneer er aangemeld wordt, dient de variabele
TERM op scoansi gezet worden
indien programma's die met een volledig scherm werken problemen
hebben om met dit console te draaien.# Schakel dit in voor het pcvt (VT220 compatibele) consolestuurprogramma
#device vt
#options XSERVER # ondersteuning voor X server op een vt console
#options FAT_CURSOR # begin met een blokcursorDit is een VT220-compatibel consolestuurprogramma,
achterwaarts compatibel met de VT100/102. Het werkt goed op
enkele laptops die hardware-incompatibiliteiten hebben met
sc. Ook dient de variabele
TERM op vt100 of
vt220 gezet te worden bij het aanmelden. Dit
stuurprogramma kan ook nuttig zijn wanneer er verbinding wordt
gemaakt met een groot aantal verschillende machines in een
netwerk, waarbij de ingangen termcap of
terminfo voor het apparaat
sc vaak niet beschikbaar zijn.
vt100 is op bijna elk platform
beschikbaar.device agpNeem dit op als er een AGP-kaart in het systeem aanwezig is.
Dit zet ondersteuning voor AGP aan, en ondersteuning voor AGP
GART voor borden die deze mogelijkheden hebben.APM# Ondersteuning voor energiebeheer (zie NOTES voor meer opties)
#device apmOndersteuning voor geavanceerd energiebeheer (Advanced Power
Management). Dit is nuttig voor laptops, alhoewel dit
standaard uitgeschakeld is in GENERIC.# Schakel suspend/resume ondersteuning voor de i8254 in.
device pmtimerHet stuurprogramma voor het timerapparaat voor
energiebeheergebeurtenissen, zoals APM en ACPI.# PCCARD (PCMCIA) ondersteuning.
# PCMCIA en cardbus bridge ondersteuning.
device cbb # cardbus (yenta) bridge
device pccard # PC Card (16-bit) bus
device cardbus # CardBus (32-bit) busOndersteuning voor PCMCIA. Dit is wenselijk voor
laptopgebruikers.# Serial (COM) poorten
device sio # 8250, 16[45]50-gebaseerde seriële poortenDit zijn de seriële poorten waarnaar in de wereld van
&ms-dos;/&windows; verwezen wordt als
COM-poorten.Als er een intern modem op COM4 en
een seriële poort op COM2
aanwezig is, moet het IRQ van het modem in 2 worden veranderd
(om duistere technische redenen geldt dat IRQ2 = IRQ9) om er
vanuit &os; toegang toe te krijgen. Als er een multipoort
seriële kaart aanwezig is, staat in &man.sio.4; meer
informatie over de juiste waarden die aan
/boot/device.hints toegevoegd moeten
worden. Sommige videokaarten (vaak gebaseerd op S3 chips)
gebruiken IO-adressen van de vorm 0x*2e8, en
omdat vele goedkope serieële kaarten de 16-bits
IO-adresruimte niet volledig decoderen, botsen ze met deze
kaarten waardoor de COM4-poort
praktisch onbruikbaar is.Elke serieële poort moet een uniek IRQ hebben (tenzij
er gebruik wordt gemaakt van een van de multipoortkaarten
waarbij gedeelde interrupts ondersteund worden), dus kunnen de
standaard IRQ's voor COM3 en
COM4 niet gebruikt worden.# Parallelle poort
device ppcDit is de interface voor de parallelle poort op de
ISA-bus.device ppbus # Parallelle poortbus (verplicht)Biedt ondersteuning voor de parallelle poortbus.device lpt # PrinterOndersteuning voor parallelle poort-printers.Alle van de bovenstaande drie zijn noodzakelijk om
ondersteuning voor parallelle printers aan te zetten.device plip # TCP/IP over parallelDit is het stuurprogramma voor de parallelle
netwerkinterface.device ppi # Parallelle poort interface apparaatDe algemene I/O (geek-poort) + IEEE1284 I/O.#device vpo # scbus en da verplichtzipdriveDit is voor een Iomega Zipdrive. Hiervoor is ondersteuning
voor scbus en da nodig. De
beste prestaties worden gehaald met poorten in EPP
1.9-modus.#device pucDit dient uitgecommentarieerd te worden indien er een
domme seriële of parallelle PCI-kaart
aanwezig is die ondersteund wordt door het &man.puc.4;
verbindingsstuurprogramma.# PCI Ethernet NIC's.
device de # DEC/Intel DC21x4x (Tulip)
device em # Intel PRO/1000 adapter Gigabit Ethernet Card
device ixgb # Intel PRO/10GbE Ethernet Card
device txp # 3Com 3cR990 (Typhoon)
device vx # 3Com 3c590, 3c595 (Vortex)Verscheidene PCI-netwerkkaartstuurprogramma's. Degenen die
niet in het systeem aanwezig zijn kunnen uitgecommentarieerd of
verwijderd worden.# PCI Ethernet NIC's die de MII bus controller code gebruiken.
# NB: 'device miibus' moet behouden blijven om deze NIC's te kunnen gebruiken!
device miibus # MII bus ondersteuningOndersteuning voor MII-bus is noodzakelijk voor sommige PCI
10/100 Ethernet-NICs, namelijk voor diegenen die MII-geldige
transceivers gebruiken of interfaces voor transceiverbesturing
implementeren die als een MII werken. Door device
miibus aan de kernelinstellingen toe te voegen wordt
de ondersteuning voor de generieke miibus-API en voor alle
PHY-stuurprogramma's opgenomen, waaronder een generieke voor
PHYs die niet specifiek door een individueel stuurprogramma
worden behandeld.device bce # Broadcom BCM5706/BCM5708 Gigabit Ethernet
device bfe # Broadcom BCM440x 10/100 Ethernet
device bge # Broadcom BCM570xx Gigabit Ethernet
device dc # DEC/Intel 21143 en verschillende gelijkwerkenden
device fxp # Intel EtherExpress PRO/100B (82557, 82558)
device lge # Level 1 LXT1001 gigabit Ethernet
device msk # Marvell/SysKonnect Yukon II Gigabit Ethernet
device nge # NatSemi DP83820 gigabit Ethernet
device nve # nVidia MCP on-board Ethernet Networking
device pcn # AMD Am79C97x PCI 10/100 (voorrang op 'lnc')
device re # RealTek 8139C+/8169/8169S/8110S
device rl # RealTek 8129/8139
device sf # Adaptec AIC-6915 (Starfire)
device sis # Silicon Integrated Systems SiS 900/SiS 7016
device sk # SysKonnect SK-984x & SK-982x gigabit Ethernet
device ste # Sundance ST201 (D-Link DFE-550TX)
device stge # Sundance/Tamarack TC9021 gigabit Ethernet
device ti # Alteon Networks Tigon I/II gigabit Ethernet
device tl # Texas Instruments ThunderLAN
device tx # SMC EtherPower II (83c170 EPIC)
device ge # VIA VT612x gigabit Ethernet
device vr # VIA Rhine, Rhine II
device wb # Winbond W89C840F
device xl # 3Com 3c90x (Boomerang, Cyclone)Stuurprogramma's die gebruik maken van de MII
bus-controllercode.# ISA Ethernet NIC's. Inclusief pccard NIC's.
device cs # Crystal Semiconductor CS89x0 NIC
# 'device ed' heeft 'device miibus' nodig
device ed # NE[12]000, SMC Ultra, 3c503, DS8390 kaarten
device ex # Intel EtherExpress Pro/10 en Pro/10+
device ep # Etherlink III-gebaseerde kaarten
device fe # Fujitsu MB8696x-gebaseerde kaarten
device ie # EtherExpress 8/16, 3C507, StarLAN 10, etc.
device lnc # NE2100, NE32-VL Lance Ethernet kaarten
device sn # SMC's 9000 serie Ethernet chips
device xe # Xircom pccard Ethernet
# ISA apparaten die de oude ISA shims gebruiken
#device leISA Ethernetstuurprogramma's. In
/usr/src/sys/i386/conf/NOTES
staan details over welke kaarten door welk stuurprogramma
ondersteund worden.# Draadloze NIC kaarten
device wlan # 802.11 ondersteuningGenerieke 802.11 ondersteuning. Deze regel is vereist voor
draadloos netwerken.device wlan_wep # 802.11 WEP-ondersteuning
device wlan_ccmp # 802.11 CCMP-ondersteuning
device wlan_tkip # 802.11 TKIP-ondersteuningCrypto-ondersteuning voor 802.11-apparaten. Deze regels zijn
nodig als u van plan bent om versleuteling en
802.11i-beveiligingsprotocollen te gebruiken.device an # Aironet 4500/4800 802.11 draadloze NIC's.
device ath # Atheros PCI/CardBus NICs
device ath_hal # Atheros HAL (Hardware Access Layer)
device ath_rate_sample # SampleRate verzendsnelheidbeheer voor ath
device awi # BayStack 660 en anderen
device ral # Ralink Technologies RT2500 draadloze NICs.
device wi # WaveLAN/Intersil/Symbol 802.11 draadloze NIC's.
#device wl # Oudere niet-802.11 Wavelan draadloze NIC.Ondersteuning voor verscheidene draadloze kaarten.# Pseudo-apparaten
device loop # Netwerk teruglussenDit is het generieke teruglusapparaat voor TCP/IP. Als
telnet of FTP op localhost (ook bekend als
127.0.0.1) gebruikt wordt, loopt
dat via dit apparaat. Dit is verplicht.
device random # Entropy apparaatCryptografisch veilige willekeurige getallengenerator.device ether # Ethernet ondersteuningether is allen noodzakelijk als er een
Ethernetkaart aanwezig is. Het bevat code voor het generieke
Ethernetprotocol.device sl # Kernel SLIPsl dient voor SLIP-ondersteuning. Dit is
bijna geheel overgenomen door PPP, wat eenvoudiger is op te
zetten, beter geschikt is voor modem-naar-modem-verbindingen en
krachtiger is.device ppp # Kernel PPPDit dient voor PPP-ondersteuning van inbelverbindingen door
de kernel. Er is ook een versie van PPP als gebruikersapplicatie
geïmplementeerd die tun gebruikt en meer
flexibiliteit en mogelijkheden biedt zoals demand-bellen.device tun # Packet tunnel.Dit wordt gebruikt door de gebruikers-PPP-software. In
PPP staat meer informatie.
device pty # Pseudo-ttys (telnet, etc.)Dit is een pseudo-terminal of gesimuleerde
aanmeldpoort. Die wordt gebruikt door binnenkomende sessies van
telnet en rlogin, door
xterm en voor sommige andere
applicaties zoals Emacs.device md # GeheugenschijvenPseudo-apparaten die een schijf in het geheugen implementeren.
device gif # IPv6 en IPv4 tunnelenDit implementeert IPv6-over-IPv4-tunneling,
IPv4-over-IPv6-tunneling, IPv4-over-IPv4-tunneling en
IPv6-over-IPv6-tunneling. Het apparaat gif is
zelfklonend en zal naar behoefte
apparaatknooppunten aanmaken.device faith # IPv6-naar-IPv4-relay (vertaling)Dit pseudo-apparaat onderschept pakketten die ernaar
verzonden worden en leidt ze om naar het IPv4/IPv6-vertaaldaemon.
# Het `bpf' apparaat schakelt de Berkeley Pakketfilter in.
# Wees bewust van de administratieve consequenties die dit heeft!
# 'bpf' is nodig bij gebruik van DHCP.
device bpf # Berkeley pakketfilterDit is het Berkeley Pakketfilter. Dit pseudo-apparaat staat
netwerkinterfaces toe om in luistermodus gezet te worden, zodat
elk pakket op een uitzendnetwerk (bijvoorbeeld een Ethernet)
onderschept wordt. Deze pakketten kunnen naar schijf onderschept
en/of onderzocht worden met het programma &man.tcpdump.1;.Het apparaat &man.bpf.4; wordt ook gebruikt door
&man.dhclient.8; om het IP-adres van de standaardrouter
(gateway) te verkrijgen, enzovoorts. Als DHCP gebruikt wordt,
dient dit ingeschakeld te blijven.# USB-ondersteuning
device uhci # UHCI PCI->USB interface
device ohci # OHCI PCI->USB interface
device ehci # EHCI PCI->USB interface (USB 2.0)
device usb # USB Bus (verplicht)
#device udbp # USB Double Bulk Pipe apparaten
device ugen # Generic
device uhid # Human Interface Devices
device ukbd # Toetsenbord
device ulpt # Printer
device umass # Schijven/Massaopslag - heeft scbus en da nodig
device ums # Muis
device ural # Ralink Technology RT2500USB draadloze NICs
device urio # Diamond Rio 500 MP3 speler
device uscanner # Scanners
# USB Ethernet, heeft mii nodig
device aue # ADMtek USB Ethernet
device axe # ASIX Electronics USB Ethernet
device cdce # Generic USB over Ethernet
device cue # CATC USB Ethernet
device kue # Kawasaki LSI USB Ethernet
device rue # RealTek RTL8150 USB EthernetOndersteuning voor verscheidene USB-apparaten.# FireWire ondersteuning
device firewire # FireWire bus code
device sbp # SCSI over FireWire (scbus en da nodig)
device fwe # Ethernet over FireWire (niet-standaard!)Ondersteuning voor verscheidene Firewire-apparaten.Meer informatie en aanvullende apparaten die door &os;
ondersteund worden staan in
/usr/src/sys/i386/conf/NOTES.Instellingen bij veel geheugen
(PAE)Physical Address Extensions
(PAE)veel geheugenSommige machines (PAE) hebben meer
geheugen nodig dan limiet van 4 gigabyte op User+Kernel Virtual
Adress (KVA) ruimte. Vanwege deze limiet
voegde Intel ondersteuning toe voor toegang tot 36-bits fysieke
adresruimte in de &pentium; Pro en nieuwere lijn van
CPU's.De Physical Address Extension (PAE)
mogelijkheden van de &intel; &pentium; Pro en nieuwere CPU's
staan geheugenhoeveelheden toe tot 64 gigabyte. &os; biedt
ondersteuning voor deze mogelijkheid via de kernelinsteloptie
, die beschikbaar is in alle recent
uitgegeven versies van &os;. Vanwege de beperkingen van de
geheugenarchitectuur van Intel wordt er geen onderscheid
gemaakt tussen geheugen boven of beneden 4 gigabytes. Geheugen
dat boven de 4 gigabytes is toegewezen wordt gewoon bij het
beschikbare gevoegd.Om ondersteuning voor PAE in de kernel
aan te zetten, dient de volgende regel aan het
kernelinstellingenbestand te worden toegevoegd:options PAEDe ondersteuning voor PAE in &os; is
alleen beschikbaar voor &intel; IA-32-processoren. Ook dient
opgemerkt te worden dat ondersteuning voor
PAE nog niet wijdverbreid getest is en
als betakwaliteit beschouwd dient te worden vergeleken met
andere stabiele kenmerken van &os;.Ondersteuning voor PAE in &os; heeft
enige beperkingen:Een proces kan niet meer dan 4 gigabyte VM-ruimte
krijgen;Apparaatstuurprogramma's die geen gebruik maken van de
&man.bus.dma.9;-interface zullen gegevenscorruptie
veroorzaken in een kernel die PAE aan
heeft staan en hun gebruik wordt afgeraden. Om deze reden
wordt er de kernelinstellingenbestand voor de
PAE-kernel geleverd met &os;, dat alle
stuurprogramma's uitsluit waarvan niet bekend is dat ze
werken in een kernel die PAE aan heeft
staan;Sommige systeeminstellingen bepalen het
geheugenbronverbruik aan de hand van de hoeveelheid
beschikbaar fysiek geheugen. Zulke instellingen kunnen
onnodig veel toewijzen vanwege de grote hoeveelheid
geheugen in een PAE systeem. Een
voorbeeld hiervan is de sysctl
, die het maximum aantal
vnodes dat in de kernel aanwezig mag zijn beheert. Het is
aan te raden om deze en andere van dit soort instellingen
aan te passen aan een redelijke waarde;Het kan nodig zijn om de virtuele kerneladresruimte
(KVA) te vergroten of om het aantal
kernelbronnen dat veel gebruikt wordt (zie boven) te
verminderen om zo uitputting van KVA te
voorkomen. De kerneloptie kan
gebruikt worden om de KVA-ruimte te
vergroten.Om prestatie- en stabiliteitsredenen is het aan te raden om
&man.tuning.7; te raadplegen. &man.pae.4; bevat bijgewerkte
informatie over de ondersteuning voor PAE in
&os;.Problemen oplossenEr zijn vier probleemcategoriën die op kunnen treden
tijdens het bouwen van een aangepaste kernel:config faaltAls het commando &man.config.8; faalt bij het verwerken
van de kernelbeschrijving, is er waarschijnlijk ergens een
eenvoudige fout gemaakt. Gelukkig geeft &man.config.8; het
nummer van de regel weer waarmee het problemen had, dus kan
snel de regel gevonden worden waarin de fout zit.
In het onderstaande voorbeeld dient gecontroleerd te worden
of het sleutelwoord juist is ingevoerd door het met de
kernel GENERIC of een andere
referentie te vergelijken:config: line 17: syntax errormake faaltAls make faalt, duidt dit meestal op
een fout in de kernelbeschrijving die niet erg genoeg is om
door &man.config.8; opgemerkt te worden. De instellingen
dienen nogmaals nagekeken te worden. Als het probleem nog
steeds niet is op te lossen, stuur dan een mail naar de
&a.questions; met de kernelinstellingen. Dat leidt meestal
snel tot een diagnose.De kernel start niet opAls de nieuwe kernel niet opstart of de apparaten
niet herkent is kalmte geboden. &os; heeft een uitstekend
mechanisme om van niet-compatibele kernels te herstellen.
De gewenste kernel om mee op te starten kan vanuit de &os;
boot loader gekozen worden. Als het systeemopstartmenu
verschijnt, kan deze gekozen worden.
Selecteer de optie Escape to a loader prompt,
nummber zes. Typ op de prompt unload kernel
en daarna boot
/boot/kernel.old/kernel
of de bestandsnaam van een andere kernel die correct
opstart. Als de kernelinstellingen gewijzigd worden, is
het altijd aan te raden om een kernel bij de hand te houden
waarvan bekend is dat die juist werkt.Nadat er met een goede kernel is opgestart, kan het
instellingenbestand gecontroleerd worden en geprobeerd
worden om de kernel nogmaals te bouwen. Een behulpzame
bron is het bestand /var/log/messages,
dat onder andere alle kernelberichten van alle keren dat er
succesvol is opgestart vastlegt. Ook geeft &man.dmesg.8;
alle kernelberichten weer van de huidige
opstartprocedure.Als er problemen zijn met het bouwen van een kernel,
dient een GENERIC, of een andere
kernel waarvan bekend is dat die werkt, bewaard te worden
onder een andere naam die niet verwijderd wordt als de
volgende kernel gebouwd wordt. Er kan niet op
kernel.old vertrouwd worden omdat
bij de installatie van een nieuwe kernel
kernel.old overschreven wordt met de
laatst geïnstalleerde kernel, die niet hoeft te
werken. Ook dient de werkende kernel zo snel mogelijk
naar de juiste plaats /boot/kernel verplaatst te
worden, omdat anders commando's als &man.ps.1; eventueel
onjuist werken. Hiervoor dient simpelweg de map met de
goede kernel hernoemd te worden:&prompt.root; mv /boot/kernel /boot/kernel.slecht
&prompt.root; mv /boot/kernel.goed /boot/kernelDe kernel werkt, maar &man.ps.1; werkt niet meerAls er een andere versie van de kernel is
geïnstalleerd dan degene waarmee de
systeemgereedschappen gebouwd zijn, bijvoorbeeld een kernel
voor -CURRENT op een -RELEASE-systeem, werken vele
systeemstatuscommando's als &man.ps.1; en &man.vmstat.8;
niet langer. De wereld moet opnieuw gecompileerd en
geïnstalleerd worden en met dezelfde broncodestructuur
als de kernel zijn gebouwd. Dit is een van de redenen
waarom het normaliter geen goed idee is om een afwijkende
versie van de kernel ten opzichte van de rest van de wereld
te gebruiken.