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 toevoegenschijventoevoegenDe 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.gpart.8; worden gebruikt om GPT-partities aan te
maken. GPT heeft het bijkomende voordeel dat het niet
tot 4 slices beperkt is.&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 Concatenated Disk Driver (CCD) instellingenRAIDsoftwarematigRAIDCCDBij 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.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.4; implementeert de modellen
RAID-0, RAID-1 en RAID-5, zowel individueel als als
combinatie.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.Door het toestaan dat gewone gebruikers verschillende
media kunnen koppelen door bijvoorbeeld het aanzetten van
vfs.usermount zoals hieronder beschreven,
zou niet als veilig beschoud moeten worden uit een
beveiligings oogpunt. Veel bestandssystemen in &os; zijn
niet geschreven om beveiliging te bieden tegen kwaadaardige
apparaten.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 -vall -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-drivesMet behulp van de ATAPI/CAM module kan
cdda2wav ook gebruikt worden voor ATAPI-drives.
Dit gereedschap is vaak een betere keuze voor de meeste gebruikers
(jitter-correctie, endianness-zaken, etc.) dan de methode die
hieronder wordt voorgesteld.Het 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 Het ATAPI/CAM-stuurprogramma gebruikenCD-branderATAPI/CAM-stuurprogrammaDit 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;.Om bestanden groter dan 4,38GB in de compilatie op te nemen dient
een UDF/ISO-9660 hybride bestandssysteem aangemaakt te worden door de
aanvullende parameter aan
&man.mkisofs.8; en alle gerelateerde programma's (i.e.,
&man.growisofs.1;) door te geven. Dit is alleen nodig als een ISO
beeldbestand wordt aangemaakt, of als bestanden direct naar een schijf
worden geschreven. Schijven die op deze manier zijn aangemaakt moeten
als een UDF-bestandssysteem worden aangekoppeld met het hulpmiddel
&man.mount.udf.8;, zodat het alleen bruikbaar is op een
besturingssysteem dat zich van UDF bewust is, anders zal het lijken of
er corrupte bestanden op staan.Om zo'n ISO-bestand aan te maken:&prompt.user; mkisofs -R -J -udf -iso-level 3 -o beeldbestand.iso/pad/naar/gegevensOm de bestanden direct naar een schijf te schrijven:&prompt.root; growisofs -dvd-compat -udf -iso-level 3 -Z /dev/cd0 -J -R /pad/naar/gegevensWanneer u een ISO-beeld heeft dat al grote bestanden bevat, zijn
er geen extra opties nodig om met &man.growisofs.1; het beeld naar een
schijf te schrijven.Zorg er ook voor dat u een actuele versie van sysutils/cdrtools heeft (welke
&man.mkisofs.8; bevat), aangezien oudere versies geen ondersteuning
voor grote bestanden bieden. Als u problemen tegenkomt, gebruik dan
de ontwikkelversie, sysutils/cdrtools-devel en lees de
handleidingpagina &man.mkisofs.8;.DVD-Video brandenDVDDVD-VideoEen 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;.DVD+RW gebruikenDVDDVD+RWIn 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/zeroDVD-RW gebruikenDVDDVD-RWEen 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 gebruikt u
/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 gebruikenbandmediaBandtechnologie is zich blijven ontwikkelen maar het is minder
waarschijnlijk dat het in moderne systemen wordt gebruikt. Moderne
back-upsystemen neigen om offsite gecombineerd met technologieën voor
plaatselijke verwisselbare schijfstations te gebruiken. &os; zal nog
steeds elk bandstation dat SCSI gebruikt zoals LTO en oudere apparaten
zoals DAT ondersteunen. Er is ook beperkte ondersteuning voor SATA- en
USB-bandstations.Seriële toegang met &man.sa.4;bandstations&os; gebruikt het stuurprogramma &man.sa.4;, dat
/dev/sa0,
/dev/nsa0 en
/dev/esa0 aanbiedt. Voor normaal gebruik is
alleen /dev/sa0 nodig.
/dev/nsa0 is fysiek hetzelfde apparaat als
/dev/sa0 maar spoelt de band niet terug nadat
een bestand is geschreven. Dit maakt het mogelijk om meer dan één
bestand naar een band te schrijven. /dev/esa0
werpt, indien van toepassing, de band uit nadat het apparaat is
gesloten.Het bandstation met &man.mt.1; beherenbandmediamt&man.mt.1; is het hulpmiddel van &os; om andere bewerkingen op het
bandstation uit te voeren, zoals bestanden op een band doorzoeken of
controlepunten naar de band schrijven.Als voorbeeld kunnen de eerste drie bestanden op een band bewaard
worden door ze over te slaan voordat een nieuw bestand wordt
geschreven:&prompt.root; mt -f /dev/nsa0 fsf 3&man.tar.1; gebruiken om back-ups op banden te
lezen en schrijven&man.tar.1; gebruiken om een enkel bestand naar band te
schrijven:&prompt.root; tar cvf /dev/sa0 bestandBestanden vanuit een &man.tar.1;-archief op band naar de huidige
map herstellen:&prompt.root; tar xvf /dev/sa0&man.dump.8; en &man.restore.8; gebruiken
om back-ups aan te maken en te herstellenEen eenvoudige back-up van /usr maken met &man.dump.8;:&prompt.root; dump -0aL -b64 -f /dev/nsa0 /usrInteractief bestanden van een &man.dump.8;-bestand vanaf band naar
de huidige map herstellen:&prompt.root; restore -i -f /dev/nsa0Andere bandsoftwareEr zijn programma's op hoger niveau beschikbaar om het back-uppen
naar banden eenvoudiger te maken. De populairste zijn
AMANDA en Bacula.
Deze programma's hebben als doel om back-uppen eenvoudiger en
aangenamer te maken, of om complexe back-ups van meerdere machines te
automatiseren. De Portscollectie bevat deze beide en andere
toepassingen om met banden te werken.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.example.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; env RSH=/usr/bin/ssh /sbin/dump -0uan -f doelgebruiker@doelmachine.example.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.tarOm tar toe te passen op een Exabyte-bandstation
die met een Sun genaamd komodo verbonden
is:&prompt.root; tar cf - . | rsh komodo dd of=tape-device 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
XML-invoerbestanden aangemaakt. Het back-uppen van de HTML-
of &postscript; bestanden is niet nodig. Van de XML-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.livefs CDTen tweede dient een livefs CD-ROM gebrandt te
worden. Deze CD-ROM biedt ondersteuning voor het opstarten in een
&os; livefs reddingsmodus die gebruiker in staat stelt
om vele taken uit te voeren zoals het draaien van &man.dump.8;,
&man.restore.8;, &man.fdisk.8;, &man.bsdlabel.8;, &man.newfs.8; en
meer. Een livefs CD-beeld voor
&os;/&arch.i386; &rel2.current;-RELEASE is beschikbaar op .Livefs CD-beelden zijn niet beschikbaar voor
&os; &rel.current;-RELEASE en nieuwer. Naast de beelden voor
CDROM-installaties kunnen ook beelden voor flash-drive-installaties
gebruikt worden om een systeem te redden. Het
memstick-beelden voor
&os;/&arch.i386; &rel.current;-RELEASE is beschikbaar op .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 livefs CD-ROM die in stap twee
gemaakt is en de back-upbanden getest te worden. Van de handelingen
dienen aantekeningen gemaakt te worden. De aantekeningen, de
CD-ROM, de afdrukken en de back-upbanden dienen
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 telkens een
livefs CD-ROM en 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.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.Plaats de livefs CD-ROM in de CD-ROM drive indien
de hardware in orde is en start de computer op. Het originele
installatiemenu wordt op het scherm getoond. Kies het land van
toepassing en kies daarna Fixit -- Repair mode with
CDROM/DVD/floppy en kies het item
CDROM/DVD -- Use the live filesystem
CDROM/DVD. restore en de andere
benodigde programma's staan in /mnt2/rescue.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 schijf 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.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. Op &os; 7.X en eerder wordt
deze regel toegevoegd:enable_quotas="YES"Voeg op &os; 8.0-RELEASE en nieuwer in plaats daarvan deze
regel toe:quota_enable="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; service 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/ad4s1cDanielGerzoBijgedragen door Schijfversleuteling met geliEen alternatieve cryptografische GEOM klassie is beschikbaar
- geli. Deze wordt
op het moment ontwikkeld door &a.pjd.email;. 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 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.
Afhankelijk van welke versie er gebruikt wordt zijn er verschillende
configuratie opties en instellingen mogelijk. De &man.gbde.8; en
&man.geli.8; programma's kunnen gebruikt worden voor het versleutelen
van het wisselbestand. 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. Stelt u 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;Er moet gebruik gemaakt worden van het .bde
achtervoegsel aan het apparaat in de respectievelijke
/etc/fstab-regel betreffende het
wisselbestand:# Device Mountpoint FStype Options Dump Pass#
/dev/ad0s1b.bde none swap sw 0 0Versleutelen 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 sleutellengte van 128 bits.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"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%DanielGerzoBijgedragen door FreddieCashMet informatie van Pawel JakubDawidekMichael W.LucasViktorPeterssonHighly Available Storage (HAST)HASThoge beschikbaarheidOverzichtHoge beschikbaarheid is een van de hoofdzaken in serieuze zakelijke
toepassingen en hoog beschikbare opslag is een sleutelonderdeel in zulke
omgevingen. Hoog beschikbare opslag, of HASTHighly Available STorage, werd
ontwikkeld door &a.pjd.email; als een raamwerk dat transparante opslag van
dezelfde gegevens toestaat over fysiek gescheiden machines die verbonden
zijn door een TCP/IP-netwerk. HAST kan gezien worden
als een netwerkgebaseerde RAID1 (spiegel) en is vergelijkbaar met het
DRBD® opslagsysteem bekend van het GNU/&linux; platform. In
combinatie met andere eigenschappen voor hoge beschikbaarheid van &os;
zoals CARP maakt HAST het mogelijk
om een opslagcluster met hoge beschikbaarheid te bouwen dat resistent is
tegen falende hardware.Na het lezen van deze sectie weet u:Wat HAST is, hoe het werkt en welke
mogelijkheden het biedt.Hoe HAST op &os; te op te zetten en te
gebruiken.Hoe CARP en &man.devd.8; te integreren om een
robuust opslagsysteem te bouwen.Voor het lezen van deze sectie dient u:De beginselen van &unix; en &os; te begrijpen ().Te weten hoe de netwerkinterfaces en andere kerndeelsystemen van
&os; in te stellen ().Netwerken op &os; goed te begrijpen ().&os; 8.1-RELEASE of nieuwer te gebruiken.Het HAST-project werd gesponsord door The &os;
Foundation met ondersteuning van
OMCnet Internet Service GmbH en TransIP BV.Eigenschappen van HASTDe belangrijkste eigenschappen van HAST
zijn:Het kan gebruikt worden om I/O-fouten op lokale harde schijven
te maskeren.Agnostisch qua bestandssysteem, dus het werkt met elk
bestandssysteem dat door &os; wordt ondersteund.Efficiënte en snelle hersynchronisatie, alleen de blokken
die zijn veranderd toen een knooppunt uitstond worden
gesynchroniseerd.Het kan gebruikt worden in reeds uitgerolde omgevingen om
aanvullende redundantie toe te voegen.Samen met CARP,
Heartbeat of andere gereedschappen kan
het worden gebruikt om een robuust en duurzaam opslagsysteem te
bouwen.Werking van HASTOmdat HAST synchrone replicatie op blokniveau
van elk opslagmedium naar verscheidene machines biedt, heeft het
tenminste twee knooppunten (fysieke machines) nodig — het
primaire (ook bekend als meester)
knooppunt en het secundaire
(slaaf) knooppunt. Tezamen worden deze twee
machines een cluster genoemd.HAST is momenteel beperkt tot een totaal van twee
clusterknooppunten.Aangezien HAST in een primaire-secundaire
configuratie werkt, kan er op elk moment slechts één van
de clusterknooppunten actief zijn. Het primaire
knooppunt, ookwel actief, is degene die alle
I/O-verzoeken aan apparaten die door HAST worden
beheerd afhandelt. Het secundaire knooppunt wordt
dan automatisch gesynchroniseerd vanuit het primaire
knooppunt.De fysieke componenten van het HAST-systeem
zijn:lokale schijf (op primair knooppunt)schijf op verre machine (secundair knooppunt)HAST werkt synchroon op blokniveau, wat het
transparant maakt voor bestandssystemen en toepassingen.
HAST biedt reguliere GEOM-aanbieders aan in /dev/hast/ voor zowel andere
gereedschappen als toepassingen, er is dus geen verschil tussen het
gebruik van apparaten die door HAST worden geleverd
en rauwe schijven, partities, etc.Elke bewerking met betrekking tot schrijven, verwijderen of spoelen
wordt naar de plaatselijke schijf en over TCP/IP naar de verre schijf
gestuurd. Elke leesbewerking wordt gedaan door de plaatselijke schijf,
tenzij de plaatselijke schijf niet actueel is of er een I/O-fout
optreed. In zulke gevallen wordt de leesbewerking naar het secundaire
knooppunt gestuurd.Synchronisatie- en replicatiemodiHAST probeert om een snel herstel van fouten
te leveren. Om deze reden is het heel belangrijk om de
synchronisatietijd te verkorten nadat een knooppunt is hersteld van
een uitval. Om een snelle synchronisatie te leveren, beheert
HAST op de schijf een bitmap van gebruikte extents
en synchroniseert het die alleen tijdens een reguliere synchronisatie
(met uitzondering van de initiëe synchronisatie).Er zijn vele manieren om synchronisatie af te handelen.
HAST implementeert meerdere replicatiemodi om
verschillende synchronisatiemethodes af te handelen:memsync: rapporteer een schrijfbewerking
als voltooid wanneer de plaatselijke schrijfbewerking klaar is en
wanneer het verre knooppunt de gegevensaankomst bevestigt, maar
voordat het de gegevens daadwerkelijk heeft opgeslagen. De
gegevens op het verre knooppunt zullen meteen na het versturen van
de bevestiging worden opgeslagen. Deze modus is bedoeld om
latency te verminderen en nog steeds een zeer goede
betrouwbaarheid te bieden. De replicatiemodus
memsync is momenteel niet
geïmplementeerd.fullsync: rapporteer een schrijfbewerking
als voltooid wanneer zowel de plaatselijke en de verre
schrijfbewerking voltooid zijn. Dit is de veiligste en traagste
replicatiemodus. Dit is de standaardmodus.async: rapporteer de schrijfbewerking als
voltooid wanneer de plaatselijke schrijfbewerking klaar is. Dit
is de snelste en gevaarlijkste replicatiemodus. Het dient
gebruikt te worden wanneer er naar een ver knooppunt wordt
gerepliceerd en de latency te hoog is voor andere modi. De
replicatiemodus async is momenteel niet
geïmplementeerd.Momenteel wordt alleen de replicatiemodus
fullsync ondersteund.HAST-configuratieHAST heeft ondersteuning voor
GEOM_GATE nodig om te kunnen functioneren. De kernel
GENERIC bevat standaard geenGEOM_GATE, de laadbare module
geom_gate.ko is echter beschikbaar in de
standaardinstallatie van &os;. Zorg ervoor dat deze module beschikbaar
is voor afgeslankte systemen. Het is ook mogelijk om ondersteuning voor
GEOM_GATE statisch in de kernel te bouwen, door deze
regel aan het kernelconfiguratiebestand toe te voegen:options GEOM_GATEHet HAST-raamwerk bestaat vanuit het
besturingssysteem gezien uit verschillende delen:het daemon &man.hastd.8; dat verantwoordelijk is voor de
gegevenssynchronisatie,het beheerprogramma &man.hastctl.8; voor de gebruikers,het configuratiebestand &man.hast.conf.5;.Het volgende voorbeeld beschrijft hoe twee knooppunten in een
meester-slaaf /
primaire-secundaire opstelling te
configureren door HAST te gebruiken om de gegevens
tussen de twee te repliceren. De knooppunten worden
hasta met IP-adres
172.16.0.1 en
hastb met IP-adres
172.16.0.2 genoemd. Beide knooppunten hebben
een toegewijde harde schijf
/dev/ad6 van
dezelfde grootte om met HAST te werken. De
HAST-pool (soms ook een hulpbron genoemd, i.e., de
GEOM-aanbieder in /dev/hast/)
wordt test
genoemd.Het bestand /etc/hast.conf regelt de
configuratie van HAST. Dit bestand dient hetzelfde
te zijn op beide knooppunten. Het volgende is de eenvoudigste
configuratie die mogelijk is:resource test {
on hasta {
local /dev/ad6
remote 172.16.0.2
}
on hastb {
local /dev/ad6
remote 172.16.0.1
}
}Raadpleeg voor geavanceerdere configuraties de handleidingpagina
&man.hast.conf.5;.Het is ook mogelijk om hostnamen in de regels met
remote te gebruiken. Zorg er in dat geval voor dat
deze hosts vindbaar zijn, bijvoorbeeld doordat ze zijn gedefinieerd in
het bestand /etc/hosts of anders in het
plaatselijke DNS.Nu de configuratie op beide knooppunten aanwezig is, kan de
HAST-pool aangemaakt worden . Voer deze commando's
op beide knooppunten uit om de initiële metagegevens op de
plaatselijke schijf te plaatsen en het &man.hastd.8;-daemon te
starten:&prompt.root; hastctl create test
&prompt.root; service hastd onestartHet is niet mogelijk om GEOM-aanbieders met
een bestaand bestandssysteem te gebruiken (i.e., een bestaande opslag
omzetten naar een door HAST beheerde pool), omdat
deze procedure wat metagegevens op de aanbieder moet opslaan en er
daarvoor niet genoeg beschikbare ruimte is.De rol van een HAST-knooppunt (primair of
secundair) wordt uitgekozen door een beheerder of
software zoals Heartbeat dat het gereedschap
&man.hastctl.8; gebruikt. Voer het volgende commando uit op het
primaire knooppunt (
hasta):&prompt.root; hastctl role primary testVoer dit soortgelijke commando uit op het secundaire knooppunt (
hastb):&prompt.root; hastctl role secondary testDe situatie dat de knooppunten niet met elkaar kunnen
communiceren en beide geconfigureerd zijn als primaire knooppunten;
wordt split-brain genoemd. Volg de stappen zoals
beschreven in om deze situatie op te
lossen.Verifieer met het gereedschap &man.hastctl.8; het resultaat
op elk knooppunt:&prompt.root; hastctl status testDe belangrijke tekst is de regel met status dat
voor alle knooppunten complete dient te bevatten.
Als het degraded bevat, is er iets verkeerd gegaan.
Op dat moment is de synchronisatie tussen de knooppunten al begonnen.
De synchronisatie is compleet wanneer hastctl status
0 bytes aan dirty extents rapporteert.De volgende stap is het aanmaken van een bestandssysteem op de
GEOM-aanbieder
/dev/hast/test en
het aan te koppelen. Dit moet op het primaire
knooppunt gebeuren, aangezien
/dev/hast/test alleen
op het primaire knooppunt verschijnt. Het aanmaken
van het bestandssysteem kan afhankelijk van de grootte van de harde
schijf enkele minuten duren:&prompt.root; newfs -U /dev/hast/test
&prompt.root; mkdir /hast/test
&prompt.root; mount /dev/hast/test /hast/testWanneer het HAST-raamwerk correct is
geconfigureerd, betreft de laatste stap het ervoor zorgen dat
HAST automatisch tijdens het opstarten wordt gestart.
Voeg deze regel toe aan het bestand
/etc/rc.conf:hastd_enable="YES"Failover-configuratieHet doel van dit voorbeeld is om een robuust opslagsysteem te
bouwen dat resistent is tegen het falen van alle knooppunten. Het
scenario is dat een primair knooppunt van het
cluster faalt. Als dit gebeurt, dan neemt het
secundaire knooppunt het feilloos over, controleert
het het bestandssysteem en koppelt het het bestandssysteem aan, en
gaat het verder zonder dat er een bit aan gegevens ontbreekt.Om dit voor elkaar te krijgen, is er een andere eigenschap die
beschikbaar is op &os; dat voorziet in automatische failover van de
IP-laag — CARP.
CARP (Common Address Redundancy Protocol)
maakt het mogelijk dat meerdere hosts in hetzelfde netwerksegment
een IP-adres delen. Stel CARP in op beide
knooppunten van het cluster volgens de documentatie die beschikbaar is
in . Nadat de opzet voltooid is, heeft elk
knooppunt een eigen interface carp0 met een
gedeeld IP-adres 172.16.0.254. Het
primaire HAST-knooppunt van het
cluster moet het meester-CARP-knooppunt
zijn.De HAST-pool die in de vorige sectie is gemaakt
is nu klaar om geëxporteerd te worden naar de andere hosts op het
netwerk. Dit kan gedaan worden door het te exporteren over
NFS, Samba, etc., door
gebruik te maken van het gedeelde IP-adres
172.16.0.254. Het enige overgebleven
probleem is een automatische failover in het geval dat het primaire
knooppunt het begeeft.Als een CARP-interface aan- of uitgaat,
genereert &os; een &man.devd.8;-gebeurtenis, wat het mogelijk maakt om
toestandsveranderingen op de CARP-interfaces in de
gaten te houden. Een toestandsverandering op het
CARP-interface geeft aan dat een van de knooppunten
het begaf of weer online kwam. Deze toestandsveranderingen maken het
mogelijk om een script te draaien dat automatisch de HAST-failover
afhandelt.Voeg, om toestandsverandering op de
CARP-interfaces af te vangen, het volgende
toe aan het bestand
/etc/devd.conf op elk knooppunt:notify 30 {
match "system" "IFNET";
match "subsystem" "carp0";
match "type" "LINK_UP";
action "/usr/local/sbin/carp-hast-switch master";
};
notify 30 {
match "system" "IFNET";
match "subsystem" "carp0";
match "type" "LINK_DOWN";
action "/usr/local/sbin/carp-hast-switch slave";
};Herstart &man.devd.8; op beide knooppunten om de nieuwe
configuratie te laten gelden:&prompt.root; service devd restartAls het interface carp0 aan of uit gaat
(i.e., de toestand van het interface verandert), genereert het systeem
een notificatie wat het subsysteem &man.devd.8; in staat stelt om een
willekeurig script te draaien, in dit geval
/usr/local/sbin/carp-hast-switch. Dit is het
script dat de automatische failover afhandelt. Raadpleeg de
handleidingpagina &man.devd.conf.5; voor verdere uitleg over de
bovenstaande configuratie van &man.devd.8;.Dit zou een voorbeeld van zo'n script kunnen zijn:#!/bin/sh
# Origineel script door Freddie Cash <fjwcash@gmail.com>
# Gewijzigd door Michael W. Lucas <mwlucas@BlackHelicopters.org>
# en Viktor Petersson <vpetersson@wireload.net>
# De namen van de HAST-hulpbronnen, zoals vermeld in /etc/hast.conf
resources="test"
# vertraging voor het aankoppelen van de HAST-hulpbron na het worden van meester
# doe een gok
delay=3
# logging
log="local0.debug"
name="carp-hast"
# einde van gebruiker-instelbare dingen
case "$1" in
master)
logger -p $log -t $name "Omschakelen naar primaire aanbieder voor ${resources}."
sleep ${delay}
# Wacht totdat de "hastd secondary" processen zijn gestopt
for disk in ${resources}; do
while $( pgrep -lf "hastd: ${disk} \(secondary\)" > /dev/null 2>&1 ); do
sleep 1
done
# Verwissel de rol voor elke schijf
hastctl role primary ${disk}
if [ $? -ne 0 ]; then
logger -p $log -t $name "Omschakelen van rol naar primair voor hulpbron ${disk} mislukt."
exit 1
fi
done
# Wacht totdat de apparaten /dev/hast/* verschijnen
for disk in ${resources}; do
for I in $( jot 60 ); do
[ -c "/dev/hast/${disk}" ] && break
sleep 0.5
done
if [ ! -c "/dev/hast/${disk}" ]; then
logger -p $log -t $name "GEOM-aanbieder /dev/hast/${disk} is niet verschenen."
exit 1
fi
done
logger -p $log -t $name "Rollen van HAST-hulpbronnen ${resources} omgeschakeld naar primair."
logger -p $log -t $name "Schijven aankoppelen."
for disk in ${resources}; do
mkdir -p /hast/${disk}
fsck -p -y -t ufs /dev/hast/${disk}
mount /dev/hast/${disk} /hast/${disk}
done
;;
slave)
logger -p $log -t $name "Omschakelen naar secundaire aanbieder voor ${resources}."
# Schakel de rollen van de HAST-hulpbronnen om
for disk in ${resources}; do
if ! mount | grep -q "^/dev/hast/${disk} on "
then
else
umount -f /hast/${disk}
fi
sleep $delay
hastctl role secondary ${disk} 2>&1
if [ $? -ne 0 ]; then
logger -p $log -t $name "Omschakelen van rol naar secundair voor hulpbron ${disk} mislukt."
exit 1
fi
logger -p $log -t $name "Rol van hulpbron ${disk} omgeschakeld naar secundair."
done
;;
esacIn een notendop neemt het script deze acties wanneer een knooppunt
meester / primair wordt:De HAST-pools opwaarderen naar primair op
een gegeven knooppunt.Het bestandssysteem onder de HAST-pool
controleren.De pools op een juiste plaats aankoppelen.Wanneer een knooppunt back-up /
secundair wordt:De HAST-pools afkoppelen.De HAST-pools degraderen naar
secundair.Houd in gedachte dat dit slechts een voorbeeldscript is om aan
te tonen dat alles werkt. Het behandeld niet alle mogelijke
situaties en kan op elke manier worden uitgebreid of veranderd, het
kan bijvoorbeeld benodigde diensten starten en stoppen.Voor dit voorbeeld hebben we een standaard UFS-bestandssysteem
gebruikt. Om de tijd die nodig is voor herstel te verkorten, kan
een bestandssysteem met UFS-journalling of ZFS worden
gebruikt.Meer gedetailleerde informatie met aanvullende voorbeelden kunnen
gevonden worden op de HAST Wiki-pagina.Problemen oplossenAlgemene tips om problemen op te lossenHAST zou over het algemeen zonder problemen
moeten werken. Net als met elk ander software-product zijn er
momenten waarop het anders werkt dan het zou moeten. De oorzaken van
de problemen kunnen verschillen, maar de vuistregel is om ervoor te
zorgen dat de klokken zijn gesynchroniseerd op alle knooppunten in het
cluster.Wanneer problemen met HAST worden verholpen,
dient het debug-niveau van &man.hastd.8; verhoogd te worden door het
daemon &man.hastd.8; met het argument -d op te
starten. Merk op dat dit argument meerdere malen kan worden opgegeven
om het debug-niveau nog verder op te hogen. Op deze manier kan veel
nuttige informatie worden vergaard. Overweeg ook om het argument
-F te gebruiken, dat het daemon &man.hastd.8; in
de voorgrond zal starten.Herstellen van de Split-brain-conditieSplit-brain treedt op waneer de knooppunten van
het cluster niet met elkaar kunnen communiceren, en beide als primair
zijn geconfigureerd. Dit is een gevaarlijke situatie omdat het beide
knooppunten in staat stelt om incompatibele veranderingen aan de
gegevens te maken. Dit probleem dient handmatig door de
systeembeheerder te worden gecorrigeerd.De beheerder moet besluiten welk knooppunt de belangrijkere
veranderingen bevat (of ze handmatig samenvoegen) en
HAST een volledige synchronisatie op het knooppunt
dat de kapotte gegevens heeft laten uitvoeren. Voer hiervoor deze
commando's uit op het knooppunt dat opnieuw gesynchroniseerd moet
worden:&prompt.root; hastctl role init <resource>
&prompt.root; hastctl create <resource>
&prompt.root; hastctl role secondary <resource>