diff --git a/nl_NL.ISO8859-1/books/handbook/basics/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/basics/chapter.sgml index c76f6da818..0e09aba02c 100644 --- a/nl_NL.ISO8859-1/books/handbook/basics/chapter.sgml +++ b/nl_NL.ISO8859-1/books/handbook/basics/chapter.sgml @@ -1,2881 +1,2881 @@ Chris Shumway Herschreven door Remko Lodder Vertaald door &unix; beginselen Overzicht Het volgende hoofdstuk behandelt de basiscommando's en functionaliteit van het &os; besturingssysteem. Veel van dit materiaal is relevant voor elk &unix; achtig besturingssysteem. Als de lezer reeds bekend is met het materiaal, hoeft dit hoofdstuk niet gelezen te worden. Lezer die nog niet eerder met &os; te maken hebben gehad wordt aangeraden door te lezen. Na het lezen van dit hoofdstuk weet de lezer: Hoe virtuele consoles in &os; gebruikt kunnen worden; Hoe &unix; bestandspermissies werken en hoe bestandsvlaggen in &os; werken; Hoe het standaard &os; bestandssysteem eruit ziet; Hoe een &os; harde schijf is ingedeeld; Hoe bestandssystemen gemount en ge-unmount worden; Wat processen, daemons en signalen zijn; Wat een shell is en hoe de standaard omgevingsvariabelen veranderd kunnen worden; Hoe elementaire tekstverwerkers te gebruiken; Wat apparaten en apparaatmountpunten zijn; Welk binair formaat &os; gebruikt; Hoe handleidingen te gebruiken meer informatie. Virtuele consoles en terminals Virtuele consoles terminals &os; kan op diverse manieren gebruikt worden. Één van deze manieren is het typen van commando's in een tekstterminal. Veel van de flexibiliteit en kracht van een &unix; besturingssysteem is gemakkelijk beschikbaar als je &os; op deze manier gebruikt. Dit onderdeel beschrijft wat terminals en consoles zijn en hoe je deze kan gebruiken in &os;. De console console Als &os; niet is ingesteld om automatisch een grafische omgeving te starten tijdens het opstarten, geeft het systeem een login prompt als het gestart is. Dit gebeurt direct nadat de startscripts klaar zijn. Er wordt iets als het volgende getoond: Additional ABI support:. Local package initialization:. Additional TCP options:. Fri Sep 20 13:01:06 EEST 2002 &os;/i386 (pc3.example.org) (ttyv0) login: De meldingen op het scherm kunnen wellicht iets anders zijn op een systeem, maar het zal iets soortgelijks zijn. De laatste twee regels zijn de regels waar het nu over gaat. De voorlaatste regel toont: &os;/i386 (pc3.example.org) (ttyv0) Deze regel bevat enkele informatie over het systeem dat net gestart is: dit is een &os; console, draaiend op een Intel of soortgelijke processor op de x86 architectuur. Dit betekent i386. Let op: ook al draait &os; niet op een Intel 386 processor, toch is dit een i386. Het is niet het type processor, maar de processor architectuur. De naam van de machine (elke &unix; machine heeft een naam) is pc3.example.org en dit is de console van het systeem, de ttyv0 terminal. De laatste regel is altijd: login: Dit is het deel waar een gebruikersnaam ingevuld moet worden om aan te melden op &os;. Het volgende deel beschrijft hoe dat werkt. Aanmelden op &os; &os; is een multi-user en multi-processing systeem. Dit is de formele beschrijving die meestal gegeven wordt aan een systeem dat gebruikt wordt door meerdere personen die gelijktijdig verschillende programma's draaien op één enkele machine. Elk multi-user systeem heeft een manier nodig om een gebruiker van alle andere gebruikers te kunnen onderscheiden. In &os; (en alle andere &unix; achtige besturingssystemen), wordt dit bereikt door te eisen dat elke gebruiker moet aanmelden op het systeem voordat hij/zij programma's kan draaien. Elke gebruiker heeft een unieke naam (de gebruikersnaam) en een persoonlijke, geheime sleutel (het wachtwoord). &os; vraagt om deze twee gegevens voordat het een gebruiker toegestaat om programma's te draaien. startup scripts Direct nadat &os; is opgestart en de opstartscripts Opstart scripts zijn programma's die automatisch gestart worden tijdens het opstarten. Het hoofddoel van deze programma's is om dingen goed te zetten zodat alle andere programma's ook kunnen draaien, en om services te starten die je geconfigureerd hebt om bruikbare zaken in de achtergrond te doen. afgerond zijn, wordt een prompt getoond dat vraagt om een geldige aanmeldnaam op te geven. login: In dit voorbeeld wordt aangenomen de gebruikersnaam john is. Als na deze prompt john wordt getype en op Enter wordt gedrukt, verschijnt hierna een prompt om het wachtwoord in te voeren: login: john Password: Nu kan john's wachtwoord ingevoerd worden en op Enter gedrukt worden. Het wachtwoord wordt niet getoond! Daarover hoeft geen zorg te bestaan. Het is voldoende om te zeggen dat dit om veiligheidsredenen gedaan wordt. Als het juiste wachtwoord is ingegeven, is er aangemeld bij op &os; en in het systeem klaar om alle beschikbare commando's uit te voeren. Na het aanmelden is de MOTD of het bericht van de dag zichtbaar, gevolgd door een commandoprompt (een #, $ of een % karakter). Dit geeft aan dat er succesvol is aangemeld op &os;. Meerdere consoles &unix; programma's draaien in één console is prima, maar &os; kan veel programma's tegelijk draaien. Om maar één console te hebben waar commando's ingetypt kunnen worden zou zonde zijn van een besturingssysteem als &os; waar meerdere programma's tegelijkertijd op kunnen draaien. Hier kunnen virtuele consoles van pas komen. &os; kan ingesteld worden om verschillende virtuele consoles te tonen. Met toetscombinaties kan van de ene console naar de gewisseld worden. Elke console heeft zijn eigen uitvoerkanaal, en &os; zorgt ervoor dat alle toetsenbordinvoer en monitoruitvoer goed wordt gezet als er van de ene console naar de volgende wordt gewisseld. In &os; kunnen speciale toetscombinaties gebruikt worden om te wisselen naar een ander virtueel console. Een redelijk technische en accurate beschrijving van alle details over de &os; console en toetsenborddrivers staan in de hulppagina's van &man.syscons.4;, &man.atkbd.4;, &man.vidcontrol.1; en &man.kbdcontrol.1;. Hier wordt niet verder op ingegaan, maar de geïnteresseerde lezer kan altijd de hulppagina's raadplegen voor meer details en een grondige uitleg over hoe alles werkt. In &os; kan AltF1, AltF2 tot en met AltF8 gebruikt worden om te wisselen naar een ander virtueel console. Als wordt gewisseld van de ene naar de andere console zorgt &os; dat de uitvoer bewaard blijft. Het resultaat is een illusie van het hebben van meerdere schermen en toetsenborden die gebruikt kunnen worden om commando's in te voeren om &os; te laten draaien. De programma's die in de ene virtuele console draaien, stoppen niet als de console niet zichtbaar is. Ze blijven doordraaien als naar een andere virtuele console wordt gewisseld. Het bestand <filename>/etc/ttys</filename> De standaardinstelling van &os; start op met acht virtuele consoles. Dit is echter geen vaste waarde en een installatie kan eenvoudig aangepast worden, zodat het systeem gestart wordt met meer of minder virtuele consoles. De hoeveelheid en instellingen van de virtuele consoles worden ingesteld in /etc/ttys. /etc/ttys kan gebruikt worden om virtuele consoles in te stellen. Elke niet-commentaar regel in dit bestand (regels die niet beginnen met een # karakter) bevat instellingen voor een terminal of virtuele console. De standaardversie van dit bestand die meegeleverd wordt met &os; stelt negen virtuele consoles in en activeert er acht. Dit zijn de regels die beginnen met ttyv: # naam getty type status commentaar # ttyv0 "/usr/libexec/getty Pc" cons25 on secure # Virtual terminals ttyv1 "/usr/libexec/getty Pc" cons25 on secure ttyv2 "/usr/libexec/getty Pc" cons25 on secure ttyv3 "/usr/libexec/getty Pc" cons25 on secure ttyv4 "/usr/libexec/getty Pc" cons25 on secure ttyv5 "/usr/libexec/getty Pc" cons25 on secure ttyv6 "/usr/libexec/getty Pc" cons25 on secure ttyv7 "/usr/libexec/getty Pc" cons25 on secure ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure Een uitgebreide beschrijving van elke kolom in dit bestand en alle mogelijke opties voor virtuele consoles staan in de &man.ttys.5; hulppagina gebruiken. Single-user console In staat een gedetailleerde beschrijving van de single-user modus. Het is belanrijk te melden dat er in single-user modus maar één console is. Er zijn geen virtuele consoles beschikbaar. De instellingen van de single-user modus console staan ook in /etc/ttys . De regel begint met console: # name getty type status commentaar # # Als een console gemarkeerd is als "insecure", zal het init script om het root-wachtwoord # vragen wanneer het in single-user mode komt. console none unknown off secure Zoals het commentaar boven de console regel aangeeft, kan in deze regel het woord secure gewijzigd worden in insecure. In dat geval vraagt &os; bij het opstarten in single-user modus nog steeds om een root-wachtwoord. Pas op als dit wordt veranderd in insecure. Als het wachtwoord van de gebruiker root zoek is, wordt het opstarten in single-user modus lastig. Het is nog steeds mogelijk, maar het kan vrij moeilijk zijn voor iemand die &os; niet zo goed kent met betrekking tot het opstarten en de programma's die daarbij gebruikt worden. Rechten UNIX &os;, direct afgeleid van BSD &unix;, is gebaseerd op verschillende belangrijke &unix; concepten. Het meest bekende is dat &os; een multi-user systeem is. Het systeem kan meerdere gebruikers behandelen die tegelijkertijd totaal verschillende dingen doen. Het systeem is verantwoordelijk voor het netjes delen en beheren voor aanvragen voor hardware, randapparatuur, geheugen en cpu tijd tussen elke gebruiker. Omdat het systeem in staat is om meerdere gebruikers te ondersteunen, heeft alles wat door het systeem beheerd wordt een set van rechten die aangeeft wie mag lezen, schrijven en de bron mag uitvoeren. Deze rechten zijn opgeslagen in drie octetten, die weer in drie stukjes onderverdeeld zijn: één voor de eigenaar van het bestand, één voor de groep waar het bestand toe behoort en één voor de overigen. De numerieke weergave werkt als volgt: Rechten Bestandsrechten Waarde Recht Maprecht 0 Niet lezen, niet schrijven, niet uitvoeren --- 1 Niet lezen, niet schrijven, uitvoeren --x 2 Niet lezen, schrijven, niet uitvoeren -w- 3 Niet lezen, schrijven, uitvoeren -wx 4 Lezen, niet schrijven, niet uitvoeren r-- 5 Lezen, niet schrijven, uitvoeren r-x 6 Lezen, schrijven, niet uitvoeren rw- 7 Lezen, schrijven, uitvoeren rwx ls mappen De optie kan gebruikt worden met &man.ls.1; om een lange lijst met de inhoud van een map te zien die een kolom heeft met informatie over bestandsrechten voor de eigenaar, groep en de rest. ls -l in een willekeurige map kan het volgende laten zien: &prompt.user; ls -l total 530 -rw-r--r-- 1 root wheel 512 Sep 5 12:31 myfile -rw-r--r-- 1 root wheel 512 Sep 5 12:31 otherfile -rw-r--r-- 1 root wheel 7680 Sep 5 12:31 email.txt ... Zo ziet de eerste kolom van ls -l eruit: -rw-r--r-- Het eerste (meest linkse) karakter geeft aan of dit een reguliere bestand is, een map, een speciaal karakter component(!), een socket of een andere pseudo-file component(!). In dit geval betekent de - dat het een regulier bestand is. De volgende drie karakters, rw- in dit voorbeeld, geven de rechten voor de eigenaar van het bestand. De drie karakters r--erna geven de rechten van voor de groep van het bestand. De overige drie karakters r-- tonen de rechten voor de rest. Een streepje betekent dat de rechten uitgeschakeld zijn. In het geval van dit bestand zijn de rechten zo ingesteld dat de eigenaar kan lezen en schrijven naar het bestand, de groep het bestand kan lezen, en de rest kan het bestand alleen lezen. Volgens de tabel hierboven worden de rechten 644, waar de cijfers de drie stukjes van de rechten aangeven. Dit is allemaal leuk en aardig, maar hoe controleert het systeem dan rechten voor apparaten? &os; behandelt de meeste hardware apparaten als bestanden die door programma's kunnen worden geopend en gelezen, en waar data naar toe kan worden geschreven, net zoals elk ander bestand. Deze speciale apparaat bestanden worden bewaard in de map /dev. Mappen worden ook behandeld als bestanden. Ze hebben lees, schrijf en uitvoerbare rechten. De uitvoerbare vlag voor een map heeft een klein verschil qua betekenis dan die voor gewone bestanden. Als een map als uitvoerbaar gemarkeerd is, betekent het dat erin gekeken mag worden. Het is dus mogelijk om te wisselen naar de map met cd (wissel van map). Dit betekent ook dat in de map bestanden benaderd kunnen worden waarvan de naam bekend is. Dit is natuurlijk afhankelijk van de rechten op het bestand zelf. In het bijzonder, om een lijst van de map te kunnen maken, moet een gebruiker leesrechten op de map hebben. Om een bestand te verwijderen zijn de naam van het bestand en schrijf en uitvoerrechten op de map nodig waarin het bestand zich bevindt. Er zijn meer rechtenvlaggen, maar die worden slechts gebruikt in speciale gevallen, zoals bij setuid binaries en sticky mappen. Meer informatie over bestandsrechten en hoe die aangepast kunnen worden staat in &man.chmod.1;. Tom Rhodes Bijgedragen door Symbolische rechten rechten symbolisch Symbolische rechten, soms ook wel symbolische expressies, gebruiken karakters in plaats van octale getallen om rechten aan bestanden en mappen te geven. Symbolische expressies gebruiken de volgende opbouw: (wie) (actie) (permissies), waar de volgende waardes beschikbaar zijn: Optie Letter Vertegenwoordigt (wie) u Gebruiker (wie) g Groepseigenaar (wie) o Overigen (wie) a Iedereen (wereld) (actie) + Rechten toevoegen (actie) - Rechten verwijderen (actie) = Stel deze rechten in (recht) r Lezen (recht) w Schrijven (recht) x Uitvoeren (recht) t Sticky bit (recht) s Verander UID of GID Deze waardes worden gebruikt met &man.chmod.1;, net zoals eerder, alleen nu met letters. Het volgende commando kan gebruikt worden om de overige gebruikers toegang tot BESTAND te ontzeggen: &prompt.user; chmod go= BESTAND Er kan een door komma's gescheiden lijst geleverd worden als meer dan één wijziging aan een bestand moet worden uitgevoerd. Het volgende commando past de rechten voor de groep en de wereld aan door de schrijfrechten te ontnemen om daarna iedereen uitvoerrechten te geven: &prompt.user; chmod go-w,a+x BESTAND Tom Rhodes Geschreven door &os; bestandsvlaggen Naast de bestandsrechten die hiervoor zijn besproken, biedt &os; ondersteuning voor bestandsvlaggen. Deze vlaggen bieden een aanvullend beveiligingsniveau en controle over bestanden, maar niet over mappen. Bestandsvlaggen voegen een extra niveau van controle over bestanden, waardoor verzekerd kan worden dat in sommige gevallen zelfs root een bestand niet kan - verwijderen. + verwijderen of wijzigen. Bestandsvlaggen worden gewijzigd met het hulpprogramma &man.chflags.1;, dat een eenvoudige interface heeft. Om bijvoorbeeld de systeemvlag niet verwijderdbaar in te stellen op het bestand file1: &prompt.root; chflags sunlink file1 Om de vlag niet verwijderbaar weer te verwijderen kan het voorgaande command met no voor worden uitgevoerd: &prompt.root; chflags nosunlink file1 Om de vlaggen op een bestand te bekijken, kan &man.ls.1; met de vlaggen gebruikt worden: &prompt.root; ls -lo file1 De uitvoer hoort er ongeveer als volgt uit te zien: -rw-r--r-- 1 trhodes trhodes sunlnk 0 Mar 1 05:54 file1 Een aantal vlaggen kan alleen ingesteld of verwijderd worden door de gebruiker root. In andere gevallen kan de eigenaar van een bestand vlaggen instellen. Meer informatie voor beheerders staat in &man.chflags.1; en &man.chflags.2;. Mappenstructuur mappenstructuur De &os; mappenstructuur is erg belangrijk om het systeem goed te leren kennen. Het belangrijkste concept om greep op te krijgen is die van de rootmap, /. Deze map is de eerste die gemount wordt tijdens het opstarten en bevat het basissysteem dat nodig is om het besturingssysteem gereed te maken voor multi-user taken. De rootmap bevat ook mountpunten voor elk ander bestandssysteem dat misschien gemount wordt. Een mountpunt is een map waar extra bestandssystemen aan gemount kunnen worden. Standaard mountpunten bevatten /usr, /var, /tmp, /mnt en /cdrom. Naar deze mappen wordt meestal verwezen in /etc/fstab, een tabel met bestandssystemen en mountpunten ter referentie voor het systeem. De meeste bestandssystemen in /etc/fstab worden automatisch gemount tijdens het opstarten door het script &man.rc.8;, behalve als ze de optie hebben. Details staan beschreven in . Een complete beschrijving over het bestandssysteem staat in &man.hier.7;. Hier wordt volstaan met een overzicht van de voorkomende mappen. Map Omschrijving / Rootmap van het bestandssysteem. /bin/ Gebruikersapplicaties, belangrijk voor zowel single user als multi-user omgevingen. /boot/ Programma's en instellingenbestanden die gebruikt worden tijdens het opstarten van het besturingssysteem. /boot/defaults/ Bestanden met standaardinstellingen voor opstarten;, zie &man.loader.conf.5;. /dev/ Apparaatnodes;, zie &man.intro.4;. /etc/ Bestanden met systeeminstellingen en scripts. /etc/defaults/ Bestanden met standaard systeeminstellingen;, zie &man.rc.8;. /etc/mail/ Instellingenbestanden voor mail transport programma's zoals &man.sendmail.8;. /etc/namedb/ Instellingenbestanden voor named, zie &man.named.8;. /etc/periodic/ Scripts die dagelijks, wekelijks en maandelijks via &man.cron.8; worden uitgevoerd, zie &man.periodic.8;. /etc/ppp/ Instellingenbestanden voor ppp, zie &man.ppp.8;. /mnt/ Lege map, veel gebruikt door systeembeheerders als tijdelijk mountpunt voor opslagruimtes. /proc/ Process bestandssysteem;, zie &man.procfs.5; en &man.mount.procfs.8;. /rescue/ Statisch gelinkte programma's voor noodherstel, zie &man.rescue.8;. /root/ Thuismap van de gebruiker root. /sbin/ Systeemprogramma's en administratieprogramma's belangrijk voor zowel single-user en multi-user omgevingen. /stand/ Programma's die gebruikt worden in een standalone omgeving. /tmp/ Tijdelijke bestanden, meestal een op &man.mfs.8; geheugen gebaseerd bestandssysteem (de inhoud van /tmp wordt meestal NIET bewaard tijdens het rebooten). /usr/ Hier bevindt zich het leeuwendeel van alle hulpprogramma's en gewone programma's. /usr/bin/ Standaard programma's, programmeertools. /usr/include/ Standaard C invoegbestanden. /usr/lib/ Functiebibliotheken. /usr/libdata/ Diverse databestanden voor hulpprogramma's. /usr/libexec/ Systeemdaemons en systeemhulpprogramma's (uitgevoerd door andere programma's). /usr/local/ Lokale programma's, bibliotheken, etc. Wordt ook gebruikt als standaard locatie voor de &os; ports. Binnen /usr/local, wordt de algemene layout bepaald door &man.hier.7;, dat ook voor /usr wordt gebruikt. Uitzonderingen is de map man, die direct onder /usr/local ligt in plaats van onder /usr/local/share, en de documentatie voor ports is te vinden in share/doc/port. /usr/obj/ Architectuur afhankelijke doelstructuur voor resultaten van de bouw van /usr/src. /usr/ports De &os; Portscollectie (optioneel). /usr/sbin/ Systeemdaemons en systeemhulpprogramma's (uitgevoerd door gebruikers). /usr/share/ Architectuur onafhankelijke bestanden. /usr/src/ BSD en/of lokale broncodebestanden. /usr/X11R6/ Uitvoerbare bestanden en bibliotheken, etc, voor de X11R6 distributie (optioneel). /var/ Multifunctionele logboek-, tijdelijke, transparante en spool bestanden. /var/log/ Diverse logboekbestanden van het systeem. /var/mail/ Postbusbestanden van gebruikers. /var/spool/ Diverse printer- en mailsysteemspoolingmappen. /var/tmp/ Tijdelijke bestanden die bewaard worden bij een herstart van het systeem. /var/yp NIS maps. Organisatie van schijven De kleinste vorm van organisatie die &os; gebruikt om bestanden te vinden is de bestandsnaam. Bestandsnamen zijn hoofdlettergevoelig, wat betekent dat readme.txt en README.TXT twee verschillende bestanden zijn. &os; gebruikt de extensie niet (.txt) van een bestand om te bepalen of het bestand een programma, een document of een vorm van data is. Bestanden worden bewaard in mappen. Een map kan leeg zijn of honderden bestanden bevatten. Een map kan ook andere mappen bevatten, wat het mogelijk maakt om een hiërarchie van mappen te maken. Dit maakt het veel makkelijker om data te organiseren. Bestanden en mappen worden aangegeven door het bestand of de map aan te geven, gevolgd door een voorwaardse slash, /, gevolgd door andere mapnamen die nodig zijn. Als map foo de map bar bevat, die op zijn beurt het bestand readme.txt bevat, dan wordt de volledige naam of pad naar het bestand foo/bar/readme.txt. Mappen en bestanden worden bewaard op een bestandssysteem. Elk bestandssysteem bevat precies één map op het hoogste niveau die de rootmap van het bestandssysteem heet. Deze rootmap kan op zijn beurt andere mappen bevatten. Tot zover is dit waarschijnlijk hetzelfde als voor elk ander besturingssysteem. Er zijn een paar verschillen. &ms-dos; gebruikt bijvoorbeeld een \ om bestanden en mappen te scheiden, terwijl &macos; gebruik maakt van :. &os; gebruikt geen schijfletters, of andere schijfnamen in het pad. &os; gebruikt geen c:/foo/bar/readme.txt. Eén bestandssysteem wordt aangewezen als root bestandssysteem, waar naar wordt verwezen met /. Elk ander bestandssysteem wordt daarna gemount onder het root bestandssysteem. Hoeveel schijven er ook aan een &os; systeem hangen, het lijkt alsof elke map zich op dezelfde schijf bevindt. Stel er zijn drie bestandssystemen met de namen A,B en C. Elk bestandssysteem heeft één root map die twee andere mappen bevat, A1 en A2 (zo ook voor de andere twee: B1, B2, C1 en C2). A wordt het root besturingsysteem. Met ls, dat de inhoud van de map kan tonen, zijn de twee mappen A1 en A2 te zien. De mappenstructuur ziet er als volgend uit: / | +--- A1 | `--- A2 Een bestandssysteem moet gemount worden in een map op een ander bestandssysteem. Als nu bestandssysteem B wordt gemount onder de map A1 vervangt B A1 en zien de mappingen in B er als volgt uit: / | +--- A1 | | | +--- B1 | | | `--- B2 | `--- A2 Elk bestand dat in de mappen B1 en B2 aanwezig is, kan benaderd worden met het pad /A1/B1 of /A1/B2. Elk bestand dat in /A1 stond is tijdelijk verborgen en komt tevoorschijn als Bis ge-unmountvan A. Als B gemount is onder A2 ziet de diagram er als volgt uit: / | +--- A1 | `--- A2 | +--- B1 | `--- B2 en de paden zouden dan respectievelijk /A2/B1 en /A2/B2 zijn. Bestandssystemen kunnen op elkaar worden gemount. Doorgaand op het vorige voorbeeld kan het bestandssysteem C gemount worden bovenop de map B1 in het bestandssysteem B. Dit resulteert in: / | +--- A1 | `--- A2 | +--- B1 | | | +--- C1 | | | `--- C2 | `--- B2 Of C kan direct onder het bestandssysteem A gemount worden, onder de map A1: / | +--- A1 | | | +--- C1 | | | `--- C2 | `--- A2 | +--- B1 | `--- B2 Hoewel het niet gelijk is, lijkt het op het gebruik van join in &ms-dos;. Beginnende gebruikers hoeven zich hier gewoonlijk niet mee bezig te houden. Normaal gesproken worden bestandssystemen gemaakt als &os; wordt geïnstalleerd en er wordt besloten waar ze gemount worden. Meestal worden ze ook niet gewijzigd tot er een nieuwe schijf aan een systeem wordt toegevoegd. Het is mogelijk om één groot root bestandssysteem te hebben en geen andere. Deze benadering heeft voordelen en nadelen. Voordelen van meerdere bestandssystemen Verschillende bestandssystemen kunnen verschillende mount opties hebben. Met een goede voorbereiding kan het root bestandssysteem bijvoorbeeld als alleen-lezen gemount worden, waardoor het onmogelijk wordt om per ongeluk kritische bestanden te verwijderen of te bewerken. Het scheiden van andere bestandssystemen die beschrijfbaar zijn door gebruikers, zoals /home van andere bestandssystemen stelt de beheerder in staat om ze nosuid te mounten. Deze optie voorkomt dat suid/guid bits op uitvoerbare bestanden effectief gebruikt kunnen worden, waardoor de beveiliging mogelijk beter wordt. &os; optimaliseert automatisch de layout van bestanden op een bestandssysteem, afhankelijk van hoe het bestandssysteem wordt gebruikt. Een bestandsysteem dat veel bestanden bevat waar regelmatig naar geschreven wordt, wordt anders geoptimaliseerd dan een bestandssysteem dat minder maar grotere bestanden bevat. Door het gebruik van één groot bestandssysteem werkt de optimalisatie niet. &os;'s bestandssystemen zijn erg robuust als er bijvoorbeeld een stroomstoring is, hoewel een stroomstoring op een kritiek moment nog steeds kan leiden tot schade aan de structuur van het bestandssysteem. Door het verdelen van data over meerdere bestandssystemen, is de kans groter dat het systeem nog opstart, wat terugzetten van een backup makkelijker maakt als dat nodig is. Voordeel van één bestandssysteem Bestandssystemen hebben een vaste grootte. Als bij de installatie van &os; een bestandssysteem wordt gemaakt, is het later mogelijk dat de partitie groter gemaakt moet worden. Dit is niet zo makkelijk zonder een backup, het opnieuw maken van het bestandssysteem met gewijzigde grootte en het terugzetten van de gebackupte data. &os; 4.4 en latere versies hebben &man.growfs.8;, waarmee de grootte van het bestandssysteem is aan te passen terwijl het draait. Bestandssystemen worden opgeslagen in partities. Dit betekent niet hetzelfde als de algemene betekenis van de term partitie (bijvoorbeeld, &ms-dos; partitie), vanwege &os;'s &unix; achtergrond. Elke partitie wordt geïdentificeerd door een letter van a tot en met h. Elke partitie kan slechts één bestandssysteem hebben, wat betekent dat bestandssystem vaak omschreven worden aan de hand van hun mountpunt in de bestandssysteem hiërarchie of de letter van de partitie waar ze in opgeslagen zijn. &os; gebruikt ook schijfruimte voor wisselbestanden. Wisselbestanden geven &os; virtueel geheugen. Dit geeft de computer de mogelijkheid om net te doen alsof er veel meer geheugen in de machine aanwezig is dan werkelijk het geval is. Als &os; geen geheugen meer heeft, verplaatst het data die op dat moment niet gebruikt wordt naar de wisselbestanden en plaatst het terug als het wel nodig is (en zet iets anders in ruil daarvoor terug). Aan sommige partities zijn bepaalde conventies gekoppeld. Partitie Conventie a Bevat meestal het root bestandssysteem b Bevat meestal de swapruimte c Heeft meestal dezelfde grootte als de hele harde schijf. Dit geeft hulpprogramma's de mogelijkheid om op een complete schijf te werken (voor bijvoorbeeld een bad block scanner) om te werken op de c partitie. Meest wordt hierop dan ook geen bestandssysteem gecreeërd. d Partitie d had vroeger een speciale betekenis, maar die is verdwenen. Tegenwoordig werken sommige hulpprogramma's raar als ze verteld worden dat ze moeten werken op partitie d, dus sysinstall maakt normaal gesproken partitie d niet. Elke partitie die een bestandssysteem bevat is opgeslagen in wat &os; noemt een slice. Slice is &os;'s term voor wat meeste mensen partities noemen. Dit komt wederom door &os;'s &unix; achtergrond. Slices zijn genummerd van 1 tot en met 4. slices partities gevaarlijk toegewijd Slicenummers volgen de apparaatnamen, voorafgegaan door een s die begint bij 1. Dus da0s1 is de eerste slice op de eerste SCSI drive. Er kunnen maximaal vier fysieke slices op een schijf staan, maar er kunnen logische slices in fysieke slices van het correcte type staan. Deze uitgebreide slices zijn genummerd vanaf 5. Dus ad0s5 is de eerste uitgebreide slice op de eerste IDE schijf. Deze apparaten worden gebruikt door bestandssystemen waarvan verwacht wordt dat ze een slice in beslag nemen. Slices, gevaarlijk toegewijde (dangerously dedicated) fysieke drivers en andere drives bevatten partities, die worden weergegeven door letters vanaf a tot h. Deze letter wordt achter de apparaatnaam geplakt. Dus da0a is de a partitie op de eerste da drive, die gevaarlijk toegewijd is. ad1s3e is de vijfde partitie op de derde slice van de tweede IDE schijf. Elke schijf op het systeem wordt geïdentificeerd. Een schijfnaam start met een code die het type aangeeft en dan een nummer dat aangeeft welke schijf het is. In tegenstelling tot bij slices, start het nummeren van schijven bij 0. Standaardcodes staan beschreven in . Bij een referentie aan een partitie verwacht &os; ook dat aan de slice en schijf refereert die de partitie bevat wordt gerefereerd en als naar een slice wordt verwezen moet ook de schijfnaam genoemd worden. Dit kan door de schijfnaam, s, het slice nummer en de partitieletter aan te geven. Voorbeelden staan in . In staat een conceptmodel van een schijflayout die een en ander verduidelijkt. Voordat &os; geïnstalleerd kan worden moeten eerst de schijfslices gemaakt worden en daarna moeten de partities op de slices voor &os; gemaakt worden. Daarna wordt op elke partitie het bestandssysteem (of wisselbestand) gemaakt en als laatste wordt besloten waar het filesysteem gemount wordt. Schijf apparaatcodes Code Betekenis ad ATAPI (IDE) schijf da SCSI directe toegang schijf acd ATAPI (IDE) CDROM cd SCSI CDROM fd Floppydisk
Voorbeeld schijf-, slice- en partitienamen Name Betekenis ad0s1a De eerste partitie (a) op de eerste slice (s1) op de eerste IDE schijf (ad0). da1s2e De vijfde partitie (e) op de tweede slice (s1) op de tweede SCSI schijf (da1). Conceptmodel van een schijf Het onderstaande diagram geeft aan hoe &os; de eerste IDE schijf in het systeem ziet. Stel dat de schijf 4 GB groot is en dat deze twee 2 GB slices (&ms-dos; partities) bevat. De eerste slice bevat een &ms-dos; schijf, C: en de tweede slice bevat een &os; installatie. Deze &os; installatie heeft drie partities en een partitie met een wisselbestand. De drie partities hebben elk een bestandssysteem. Partitie a wordt gebruikt voor het root bestandssysteem, e voor de map /var en f voor de map /usr. .-----------------. --. | | | | DOS / Windows | | : : > Eerste slice, ad0s1 : : | | | | :=================: ==: --. | | | Partitie a, gemount als / | | | > gerefereerd als ad0s2a | | | | | :-----------------: ==: | | | | Partitie b, gebruikt als swap | | | > gerefereerd als ad0s2b | | | | | :-----------------: ==: | Partitie c, geen | | | Partition e, gebruikt als /var > bestandssysteem, bevat | | > gerefereerd als ad0s2e | alle &os; slices, | | | | ad0s2c :-----------------: ==: | | | | | : : | Partitie f, gebruikt als /usr | : : > gerefereerd als ad0s2f | : : | | | | | | | | --' | `-----------------' --'
Mounten en unmounten van bestandssystemen Het bestandssysteem wordt het best weergegeven als een boom, met de stam als /. /dev, /usr en de andere map in root zijn takken die weer hun eigen takken kunnen hebben, zoals /usr/local, etc. root bestandssysteem Er zijn verschillende redenen om sommige van deze mappen op aparte bestandssystemen te plaatsen. /var bevat de mappen log/, spool/ en verschillende types tijdelijke bestanden en kan volraken. Het laten vollopen van het root bestandssysteem is geen goed idee, dus het splitsen van /var van /is vaak de favoriet. Een andere vaak voorkomende reden om bepaalde mapbomen op aparte bestandssystemen te plaatsen, is om ze op verschillende fysieke schrijven te zetten of gescheiden virtuele schijven zoals gemounte Netwerk bestandssystemen of cd-rom drives. Het bestand <filename>fstab</filename> bestandssystemen gemount met fstab Tijdens het opstartproces, worden bestandssystemen die vermeld staan in /etc/fstab automatisch gemount (tenzij ze vermeld staan met ). /etc/fstab bevat een lijst van regels die aan het volgende formaat voldoen: apparaat /mountpunt fstype opties dumpfreq passno apparaat Een apparaatnaam (die moet bestaan) zoals uitgelegd in . mountpunt Een map (die moet bestaan) waarop het bestandssysteem gemount moet worden. fstype Het bestandssysteem type dat aan &man.mount.8; gegeven wordt. Het standaard &os; bestandssysteem is ufs. opties Dit is of voor lezen en schrijven bestandssytemen, of voor alleen lezen, gevolgd door elke andere optie die mogelijk nodig is. Een standaard optie is voor bestandssystemen die niet automatisch gemount worden tijdens het opstarten. Andere opties staan in &man.mount.8;. dumpfreq Dit wordt gebruikt door &man.dump.8; om te bepalen welke bestandssystemen gedumpt moeten worden. Als het veld niet is ingevuld, wordt aangenomen dat er een nul staat. passno Dit bepaalt in welke volgorde bestandssystemen gecontroleerd moeten worden. Bestandssystemen die overgeslagen moeten worden moeten hun passno waarde op nul hebben staan. Voor het root bestandssysteem (dat voor alle andere gecontroleerd moet worden) moet passno op één staan en passno waarden voor andere bestandssystemen moeten een waarde hebben groter dan één. Als bestandssysteem dezelfde passno waarde hebben probeert &man.fsck.8; deze bestandssystemen tegelijkertijd te controleren. In &man.fstab.5; staat meer informatie over de opmaak van /etc/fstab en de mogelijke opties. Het commando <command>mount</command> bestandssystemen mounten &man.mount.8; wordt gebruikt om bestandsystemen te mounten. De meest eenvoudige vorm is: &prompt.root; mount apparaat mountpunt Alle opties voor het commando staat in &man.mount.8;, maar de meest voorkomende zijn: Mountopties Mount alle bestandssystemen die in /etc/fstab staan, behalve die gemarkeerd staan als noauto, uitgesloten zijn door de optie of die al gemount zijn. Doe alles behalve het echt aanroepen van de mount systeemopdracht. Deze optie is handig in samen met de optie om te bepalen wat &man.mount.8; eigenlijk probeert te doen. Forceert het mounten van een niet schoon bestandssysteem (gevaarlijk) of forceert het innemen van schrijftoegang als de mountstatus van een bestandssysteem wijzigt van lezen en schrijven naar alleen lezen. Mount het bestandssysteem alleen lezen. Dit is identiek aan de optie ( voor &os; versies ouder dan 5.2) voor de optie . fstype Mount het opgegeven bestandssysteem als het opgegeven type bestandssysteem of mount alleen bestandssystemen van het aangegeven type als ook de optie is opgegeven. ufs is het standaard bestandssysteem. Werk mountopties van het bestandssysteem bij. Geef uitgebreide informatie (verbose). Mount het bestandssysteem lezen en schrijven. De optie accepteert een door komma's gescheiden lijst van opties, waaronder de volgende: nodev Interpreteer geen speciale apparaten op het bestandssysteem. Dit is een nuttige veiligheidsoptie. noexec Sta geen uitvoerbare bestanden toe op dit bestandssysteem. Ook dit is een nuttige veiligheidsoptie. nosuid Interpreteer geen setuid of setgid opties op het bestandssysteem. Ook dit is een nuttige veiligheidsoptie. Het commando <command>umount</command> bestandssystemen unmounten &man.umount.8; heeft een mountpunt, een apparaatnaam, of als parameter. Alle vormen kunnen de optie hebben om een bestandsysteem te forceren te unmounten en de optie voor uitgebreide informatie. De optie is meestal geen goed idee. Forceren dat een bestandssysteem geunmount wordt kan de computer laten crashen of data op het bestandssysteem beschadigen. De opties en worden gebruikt om alle bestandssystemen te unmounten, mogelijk nader gespecificeerd door de optie met daarachter op welke typen bestandssystemen het betrekking heeft. Voor de optie geldt dat deze niet probeert het root bestandssysteem te unmounten. Processen &os; is een multi-tasking besturingssysteem. Dit betekent dat het lijkt alsof er meer dan één proces tegelijkertijd draait. Elk programma dat draait wordt een proces genoemd. Elk commando dat wordt uitgevoerd start op zijn minst één nieuw proces en er zijn systeemprocessen die continu draaien om het systeem functioneel te houden. Elk proces wordt geïdentificeerd door een nummer dat process ID of PID heet, en net zoals bij bestanden heeft elk proces één eigenaar en groep. De eigenaars- en groepsinformatie wordt gebruikt om te bepalen welke bestanden en apparaten het proces mag openen, waarbij gebruik wordt gemaakt van de bestandsrechten die eerder zijn behandeld. Veel processen hebben ook een ouderproces (parent process). Een ouderproces is een proces dat het nieuwe proces heeft gestart. Als commando's in een shell worden ingevoerd, start de shell een proces en elk commando dat draait is ook een proces. De uitzondering hierop is het speciale proces &man.init.8;. init is altijd het eerste proces, dus het PID is altijd 1. init wordt automatisch gestart door de kernel als &os; opstart. Twee commando's die erg handig zijn om te zien welke processen er draaien zijn &man.ps.1; en &man.top.1;. ps wordt gebruikt om een statische lijst op te vragen van de processen die op het moment van uitvoeren draaien en kan hun PID, geheugengebruik, de startende commandoregel, enzovoort, tonen. top geeft alle draaiende processen weer en werkt de status elke paar seconden bij zodat interactief wordt weergegeven wat een computer aan het doen is. Standaard laat ps alleen zien welke commando's draaien waarvan de gebruiker die het uitvoert de eigenaar is: &prompt.user; ps PID TT STAT TIME COMMAND 298 p0 Ss 0:01.10 tcsh 7078 p0 S 2:40.88 xemacs mdoc.xsl (xemacs-21.1.14) 37393 p0 I 0:03.11 xemacs freebsd.dsl (xemacs-21.1.14) 48630 p0 S 2:50.89 /usr/local/lib/netscape-linux/navigator-linux-4.77.bi 48730 p0 IW 0:00.00 (dns helper) (navigator-linux-) 72210 p0 R+ 0:00.00 ps 390 p1 Is 0:01.14 tcsh 7059 p2 Is+ 1:36.18 /usr/local/bin/mutt -y 6688 p3 IWs 0:00.00 tcsh 10735 p4 IWs 0:00.00 tcsh 20256 p5 IWs 0:00.00 tcsh 262 v0 IWs 0:00.00 -tcsh (tcsh) 270 v0 IW+ 0:00.00 /bin/sh /usr/X11R6/bin/startx -- -bpp 16 280 v0 IW+ 0:00.00 xinit /home/nik/.xinitrc -- -bpp 16 284 v0 IW 0:00.00 /bin/sh /home/nik/.xinitrc 285 v0 S 0:38.45 /usr/X11R6/bin/sawfish In het bovenstaande voorbeeld is de uitvoer van &man.ps.1; georganiseerd in een aantal kolommen. PID is het proces ID. PIDs worden toegekend vanaf 1 en lopen op tot 99999. Als ze allemaal zijn gebruikt, worden ze hergebruikt. De TT kolom toont de tty vanwaar het programma draait en wordt nu buiten beschouwing gelaten. STAT toont de huidige staat van het programma en ook deze kolom wordt buiten beschouwing gelaten. TIME is de hoeveelheid tijd die het programma gedraaid heeft op de CPU. Dit is meestal niet de verstreken tijd vanaf het moment dat het programma is gestart. Veel programma's wachten omdat er alleen gebruik wordt gemaakt van de CPU als er iets voor het programma te doen is. Als laatste is COMMAND de commandoregel die gebruikt is om het programma te starten. &man.ps.1; ondersteunt een aantal opties die de informatie wijzigen die wordt weergegeven. Één van de meest nuttige combinaties is auxww. De optie toont informatie over alle draaiende processen, niet alleen die van de gebruiker die is aangemeld. De optie toont de gebruikersnaam van de proceseigenaar, evenals geheugengebruik. De optie toont informatie over daemonprocessen en met de optie laat &man.ps.1; de volledige commandoregel zien, in plaats van een mogelijk afgekorte regel omdat die te lang is om op het scherm te passsen.. De uitvoer van &man.top.1; is hetzelfde: &prompt.user; top last pid: 72257; load averages: 0.13, 0.09, 0.03 up 0+13:38:33 22:39:10 47 processes: 1 running, 46 sleeping CPU states: 12.6% user, 0.0% nice, 7.8% system, 0.0% interrupt, 79.7% idle Mem: 36M Active, 5256K Inact, 13M Wired, 6312K Cache, 15M Buf, 408K Free Swap: 256M Total, 38M Used, 217M Free, 15% Inuse PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND 72257 nik 28 0 1960K 1044K RUN 0:00 14.86% 1.42% top 7078 nik 2 0 15280K 10960K select 2:54 0.88% 0.88% xemacs-21.1.14 281 nik 2 0 18636K 7112K select 5:36 0.73% 0.73% XF86_SVGA 296 nik 2 0 3240K 1644K select 0:12 0.05% 0.05% xterm 48630 nik 2 0 29816K 9148K select 3:18 0.00% 0.00% navigator-linu 175 root 2 0 924K 252K select 1:41 0.00% 0.00% syslogd 7059 nik 2 0 7260K 4644K poll 1:38 0.00% 0.00% mutt ... De uitvoer is gesplitst in twee secties. De kop (de eerste vijf regels) toont het laatst uitgegeven PID, de gemiddelde systeembelasting (hoe druk is een systeem), de uptime van het systeem (tijd verstreken sinds laatste reboot) en de huidige tijd. De andere cijfers in de kop tonen hoeveel processen er draaien (in dit geval 47) , hoeveel geheugen en swap er gebruikt wordt en hoeveel processortijd het systeem besteed aan verschillende taakgroepen. Daaronder staat een serie van kolommen die soortgelijke informatie bevatten als de uitvoer van &man.ps.1;. Zo zijn het PID, de gebruikersnaam, de hoeveelheid processortijd en het commando dat gebruikt is om het proces te starten te zien. &man.top.1; laat standaard ook zien hoeveel geheugen er gebruikt wordt door een proces. Dit staat in twee kolommen waarbij in de eerste kolom het maximale geheugengebruik wordt getoond en in de tweede kolom het huidige geheugengebruik. Maximale gebruik is de hoeveelheid geheugen die het proces nodig had in de tijd dat het bestaat en het residente gebruik is hoeveel er op het moment van weergeven gebruikt wordt. In dit voorbeeld is zichtbaar dat &netscape; bijna 30 MB RAM nodig had, maar op het moment van uitvoeren 9 MB verbruikt. &man.top.1; werkt het beeld automatisch iedere twee seconden bij. Dat kan gewijzigd worden met de optie . Daemons, signalen en het stoppen van processen Als een gebruiker een editor draait is het makkelijk om de editor te besturen, te vertellen om bestanden te openen, etc. Dit kan omdat de editor de mogelijkheden geeft om dat te doen en omdat de editor gekoppeld is aan een terminal. Sommige programma's zijn niet ontworpen om te draaien met continue gebruikersinvoer, dus als zij de kans krijgen ontkoppelen zij zich van de terminal. Een webserver reageert bijvoorbeeld de hele dag op webaanvragen en heeft eigenlijk geen input van een lokale gebruiker nodig. Programma's die email van locatie naar locatie transporteren zijn een ander voorbeeld. Deze programma's heten daemons. Daemons waren karakters in de Griekste mythologie, goed noch slecht, ze waren dienende geesten die op grote schaal nuttige dingen deden voor de mensheid. Net zoals de huidige webservers en mailservers nuttige dingen doen. Dit is waarom de mascotte voor BSD al lang een vrolijk kijkende daemon met puntoren en een drietand is. Er is een overeenkomst om programma's die meestal draaien als daemon te voorzien van het achtervoegsel d. BIND is de Berkeley Internet Name Daemon (het echte programma heet named), de Apache webserver heet httpd, de printerspooldriver heet lpd, etc. Deze overeenkomst geldt niet altijd. De hoofd maildaemon voor Sendmail heet bijvoorbeeld sendmail en niet maild. Soms is communicatie met een daemon nodig. Deze communicatie heet signaleren (signals). Er kan met een daemon (of met elk ander draaiend proces) gecommuniceerd worden door er een signaal naartoe te sturen. Er zijn een verschillende signalen. Sommige hebben een specifieke bedoeling, andere worden geïntrepeteerd door de applicatie. In de documentatie van de applicatie staat hoe de applicatie signalen intrepeteert. Er kan alleen een signaal naar een proces gezonden worden waar de uitvoerende gebruiker eigenaar van is. Als met &man.kill.1; of &man.kill.2; een signaal naar een proces van een andere gebruiker wordt gestuurd, wordt de toegang geweigerd. De enige uitzondering hierop is de root gebruiker, die signalen naar processen van alle gebruikers kan sturen. &os; stuurt soms ook signalen naar applicaties. Als een applicatie slecht geschreven is en hij probeert geheugen te benaderen waar hij niet naartoe mag, stuurt &os; het proces een Segmentation Violation signaal (SIGSEGV). Als een applicatie de systeemaanroep &man.alarm.3; heeft gebruikt om na een bepaalde periode een alarm te ontvangen, wordt er een Alarm signaal heen gestuurd (SIGALRM), etc. Twee signalen kunnen gebruikt worden om een proces te stoppen: SIGTERM en SIGKILL. SIGTERM is de nette manier om een proces te killen. Het proces kan het signaal afvangen, begrijpen dat de eigenaar wil dat het wordt afgesloten, wellicht logboekbestanden sluiten die geopend zijn en alle onderhanden activiteiten afhandelen. In een aantal gevallen kan een proces SIGTERM negeren: als het midden in een taak zit die niet beëindigd kan worden. SIGKILL mag niet worden genegeerd door een proces. Dit is het Wat je ook aan het doen bent, stop er nu mee signaal. Na een SIGKILL stopt &os; het proces meteen. Dit is niet geheel waar. Er zijn een aantal dingen die niet onderbroken kunnen worden. Als het proces bijvoorbeeld een bestand probeert uit te lezen dat op een andere computer in het netwerk staat en de andere computer is verdwenen (uitgezet of het netwerk heeft een fout), dan wordt er gezegd dat het proces niet onderbroken kan worden. Uiteindelijk loopt het proces uit de tijd, meestal na twee minuten. Zodra het uit de tijd loopt, wordt het proces alsnog gestopt. Andere veelgebruikte signalen zijn SIGHUP, SIGUSR1 en SIGUSR2. Dit zijn algemeen bruikbare signalen en verschillende applicaties zullen verschillend reageren als ze verstuurd worden. Stel dat het bestand met instellingen voor de webserver is aangepast. Dan moet aan de webserver verteld worden dat die de instellingen opnieuw moet lezen. Hiervoor zou httpd gestopt en gestart kunnen worden, maar dit resulteert in een korte onderbreking van de webserverdienst, wat ongewenst kan zijn. De meeste daemons zijn geschreven om te reageren op het SIGHUP signaal door het opnieuw inlezen van het instellingenbestand. Dus in plaats van het stoppen en herstarten van httpd kan het SIGHUP signaal gezonden worden. Omdat er geen standaard manier is om op deze signalen te reageren, reageren verschillende daemons anders. Het is verstandig eerst de documentatie van de daemon in kwestie te lezen. Zoals onderstaand voorbeeld laat zien, worden signalen door &man.kill.1; verzonden. Het versturen van een signaal naar een proces Dit voorbeeld toont hoe een signaal naar &man.inetd.8; wordt verstuurd. Het bestand met instellingen voor inetd is /etc/inetd.conf en inetd leest dit bestand opnieuw in als er een SIGHUP wordt verstuurd. Eerst moet het proces ID worden opgezocht van het proces waar een signaal naar verzonden moeten worden. Dit kan door &man.ps.1; en &man.grep.1; te gebruiken. &man.grep.1; wordt gebruikt om in de uitvoer te zoeken en te kijken naar de string die de gebruiker opgeeft. Dit commando wordt gedraaid als een normale gebruiker en &man.inetd.8; wordt gedraaid onder de gebruiker root, dus aan &man.ps.1; moet de optie meegegeven worden. &prompt.user; ps -ax | grep inetd 198 ?? IWs 0:00.00 inetd -wW Dus PID van &man.inetd.8; is 198. In sommige gevallen kan grep inetd ook voorkomen in de uitvoer. Dit komt door de manier waarop &man.ps.1; de lijst van draaiende processen moet vinden. Met &man.kill.1; kan het signaal verzonden worden. Omdat &man.inetd.8; wordt gedraaid door root moet &man.su.1; gebruikt worden om root te worden. &prompt.user; su Password: &prompt.root; /bin/kill -s HUP 198 Zoals zovaak met &unix; commando's, geeft &man.kill.1; geen uitvoer als het succesvol uitgevoerd is. Als een signaal wordt verzonden naar een proces waarvan de gebruiker niet zelf de eigenaar is, dan is de melding: kill: PID: Operation not permitted. Als het PID verkeerd wordt ingevuld, wordt het signaal naar het verkeerde proces verzonden, wat slecht kan zijn, of, als de gebruiker geluk heeft, wordt het verzonden naar een PID dat momenteel niet in gebruik is, waarop de foutmelding kill: PID: No such process verschijnt. Waarom <command>/bin/kill</command> gebruiken? Veel shells leveren kill als ingebouwd commando. Dat betekent dat de shell het signaal direct verstuurt in plaats van door het starten van /bin/kill. Dit kan erg nuttig zijn, maar verschillende shells hebben een verschillende opdrachtregel voor het specificeren van de naam van het signaal dat verstuurd moet worden. In plaats van ze allemaal te leren, is het eenvoudiger om gewoon /bin/kill PID te gebruiken. Andere signalen versturen werkt bijna hetzelfde door TERM of KILL op de commandoregel te vervangen door wat nodig is. Het stoppen van willekeurige processen op een systeem is meestal een slecht idee. In het bijzonder bij &man.init.8; met proces ID 1. Het draaien van /bin/kill -s KILL 1 is een snelle manier om een systeem uit te zetten. Argumenten die aan &man.kill.1; worden meegegeven moeten altijd twee keer gecontroleerd worden voordat op Enter gedrukt wordt. Shells shells commandoregel In &os; wordt een groot deel van het alledaagse werk gedaan vanuit een omgeving met een commandoregel die shell heet. De grootste taak van een shell is om commando's van het invoerkanaal op te vangen en deze uit te voeren. Veel shells hebben ook functies ingebouwd om mee te helpen om alledaagse taken zoals bestandsbeheer, bestandsglobbing, bestanden wijzigen vanaf de commandoregel, commandomacro's schrijven en uitvoeren en omgevingsvariabelen instellen en wijzigen. &os; heeft een aantal shells bijgeleverd zoals sh, de Bourne Shell en tcsh, de verbeterde C-shell. Er zijn veel andere shells beschikbaar in de &os; Portscollectie zoals zsh en bash. Welke shell gebruiken? Dit is een kwestie van smaak. Een C–programmeur voelt zich misschien prettiger bij een C–achtige shell, zoals tcsh. Een voormalig &linux; gebruiker of iemand die niet veel ervaring heeft met een &unix; commandoregel interface wil misschien bash proberen. Elke shell heeft zijn eigen unieke eigenschappen die wel of niet werken voor een bepaalde gebruiker. Een standaard optie in een shell is bestandsnaam completie. Door het intikken van de eerste paar letters van een commando of bestandsnaam, kan de shell opdracht gegeven worden om automatisch de rest het commando of bestandsnaam toe te voegen met de Tab toets op het toetsenbord. Stel dat er twee bestanden zijn met de namen foobar en foo.bar en foo.bar moet verwijderd worden. Dan kan op het toetsenbord rm fo[Tab].[Tab] ingevoerd worden. De shell geeft rm foo[BEEP].bar weer. De [BEEP] geeft aan dat de shell in staat was om de bestandsnaam te completeren omdat er meer dan één soortgelijk bestand was. foobar en foo.bar beginnen met fo, maar het was in staat om het af te maken tot foo. Na het invoeren van een . en daarna Tab, is de shell in staat om de rest van de bestandsnaam aan te vullen. omgevingsvariabelen Een andere optie van de shell is het gebruik van omgevingsvariabelen. Omgevingsvariabelen zijn variabele sleutelparen die opgeslagen zijn in de omgevingsruimte van een shell. Deze ruimte kan uitgelezen worden door elk programma dat door de shell wordt uitgevoerd en bevat dus veel programmainstellingen. Hieronder staat een lijst van standaard omgevingsvariabelen en wat ze betekenen: omgevingsvariabelen Variabele Omschrijving USER Gebruikersnaam van de gebruiker die is aangemeld. PATH Een lijst van mappen, gescheiden door een : voor het zoeken naar binaire bestanden. DISPLAY Netwerknaam van het X11 scherm om verbinding mee te maken, indien beschikbaar. SHELL De huidige shell. TERM De naam van de huidige gebruikersterminal. Gebruikt om de mogelijkheden van de terminal te bepalen. TERMCAP Databaseregel met terminal escape codes voor het uitvoeren van diverse terminalfuncties. OSTYPE Type besturingssysteem, bijvoorbeeld &os;. MACHTYPE De CPU architectuur waar het systeem op draait. EDITOR De teksteditor waar de gebruiker de voorkeur aan geeft. PAGER De tekstpager waar de gebruiker de voorkeur aan geeft. MANPATH Lijst van mappen gescheiden door een : voor het zoeken naar handleidingen. Bourne shells Het instellen van omgevingsvariabelen verschilt van shell tot shell. In de C–achtige shells zoals tcsh en csh moet setenv gebruikt worden om omgevingsvariabelen in te stellen. In Bourne-shells zoals sh en bash moet export gebruikt worden om de omgevingsvariabelen in te stellen. Om bijvoorbeeld de omgevingsvariabele EDITOR te wijzigen naar /usr/local/bin/emacs onder csh of tcsh moet het volgende gedaan worden: &prompt.user; setenv EDITOR /usr/local/bin/emacs In Bourne shells is dat: &prompt.user; export EDITOR="/usr/local/bin/emacs" Met de meeste shells kunnen de omgevingsvariabelen ook weergegeven worden door een $ karakter voor de variabelenaam te plaatsen op de commandoregel. echo $TERM zou weergeven wat er in $TERM gezet is, omdat de shell $TERM uitbreid en het resultaat doorgeeft aan echo. Shells kennen veel speciale karakters, die meta-karakters heten, als speciale weergaves van data. De meest voorkomende is het karakter * karakter, dat elk karakter in een bestandsnaam voorstelt. Deze speciale meta-karakters kunnen gebruikt worden om bestandsnaamglobbing te doen. Door bijvoorbeeld echo * in te voeren, is het resultaat bijna hetzelfde als door het uitvoeren van ls, omdat de shell alle bestanden die van toepassing zijn aan echo geeft om ze daarna te tonen. Om te voorkomen dat de shell deze speciale tekens verwerkt, kunnen ze uitgeschakeld worden door er het backslash karakter (\) voor te plaatsen. echo $TERM print de inhoud van TERM naar het scherm. echo \$TERM print $TERM zoals het geschreven is. Shell wijzigen De makkelijkste manier om de shell te wijzigen is door het chsh commando te gebruiken. Door chsh te starten wordt de editor gestart die in de EDITOR omgevingsvariable staat. Als deze niet is ingesteld, wordt vi gestart. In de editor kan de regel waarop Shell: staat gewijzigd worden. Aan chsh kan ook de optie meegegeven worden. Dit stelt de shell in, zonder dat een editor gebruikt hoeft te worden. Als de shell bijvoorbeeld gewijzigd moet worden in bash, kan dat als volgt: &prompt.user; chsh -s /usr/local/bin/bash Dit kan ook door chsh zonder parameters te starten en de regel met daarin de shell te wijzigen. De te gebruiken shell moet geregistreerd zijn in /etc/shells. Als een shell uit de Portscollectie is geïnstalleerd, is dit meestal automatisch gebeurd. Als de shell met de hand is geïnstalleerd moet het onderstaande gedaan worden. Als bijvoorbeeld bash met de hand geïnstalleerd is in /usr/local/bin, dient het onderstaande te gebeuren: &prompt.root; echo "/usr/local/bin/bash" >> /etc/shells Hierna kan chsh weer gedraaid worden. Teksteditors teksteditors editors Een groot deel van de instellingen in &os; wordt gemaakt door het bewerken van tekstbestanden. Hierdoor is het een goed idee om bekend te zijn met een tekstverwerker. &os; heeft er een paar in het basissysteem en veel anderen zijn beschikbaar via de Portscollectie. ee editors ee De makkelijkste en simpelste editor om te leren is de editor ee, wat easy editor betekent. Om ee te starten, moet op de commandoregel ee bestandsnaam ingevoerd worden, waar bestandsnaam de naam is van het bestand dat bewerkt moet worden. Om bijvoorbeeld /etc/rc.conf te bewerken, wordt ee /etc/rc.conf ingegeven. Eenmaal in ee worden alle manipulatie commando's die de editor heeft weergegeven aan de bovenkant van het scherm. Het karakter dakje ^ staat voor de toets CTRL op het toetsenbord, dus ^e vormt de toetscombinatie Ctrle . Om uit ee te komen wordt op de toets Esc gedrukt en daar kan gekozen worden om de editor te verlaten. De editor vraagt dan of de wijzigingen bewaard moeten worden als het bestand veranderd is. vi editors vi Emacs editors Emacs &os; heeft ook uitgebreidere tekstverwerkers, zoals vi, in het basissysteem en andere editors als Emacs en vim maken onderdeel uit van de &os; Portscollectie (editors/emacs en editors/vim). Deze editors leveren veel meer functionaliteit en kracht maar zijn lastiger om te leren. Als echter veel met tekstverwerking gedaan wordt, is het leren van een krachtige editor als vim of Emacs verstandig omdat deze uiteindelijk veel tijd kan besparen. Apparaten en apparaatnodes Apparaat is een term die meestal wordt gebruikt voor hardwareonderdelen in een systeem, zoals schijven, printers grafische kaarten en toetsenborden. Als &os; opstart laat het vooral zien welke apparaten gedetecteerd worden. Deze opstartmeldingen kunnen nagekeken worden door het bestand /var/run/dmesg.boot te bekijken. acd0 is bijvoorbeeld de eerste IDE cd-rom drive, terwijl kbd0 staat voor het toetsenbord. Veel van deze apparaten moeten in een &unix; besturingssysteem benaderd worden via speciale bestanden die apparaatnodes heten en te vinden zijn in de map /dev. Apparaatnodes maken Als een nieuw apparaat wordt toegevoegd aan een systeem of als ondersteuning voor extra apparaten wordt gecompileerd, dan moeten misschien één of meer apparaatnodes voor het nieuwe apparaat gemaakt worden. Het MAKEDEV script Op systemen zonder DEVFS (dit is het geval voor alle &os; versies vóór 5.0) worden apparaatnodes gemaakt door het script &man.MAKEDEV.8; zoals hieronder wordt aangegeven: &prompt.root; cd /dev &prompt.root; sh MAKEDEV ad1 Dit voorbeeld maakt de juiste apparaatnode voor de tweede IDE drive wanneer die geïnstalleerd is. <literal>DEVFS</literal> (apparaatbestandssysteem - DEVice File System) Het apparaatbestandssysteem of DEVFS, levert toegang tot de apparaatruimte van de kernel in het globale bestandssysteem. In plaats van dat het nodig is om apparaatnodes te maken en te wijzigen, doet DEVFS dit. In &man.devfs.5; staat meer informatie. DEVFS wordt standaard gebruikt in &os; 5.0 en verder. Binaire formaten Om te kunnen begrijpen waarom &os; gebruik maakt van het &man.elf.5; formaat, is het belangrijk op de hoogte zijn van de drie dominante uitvoerbare formaten voor &unix;: &man.a.out.5; Het oudste en klassieke &unix; object formaat. Het gebruikt een korte en compacte kop met een magisch nummer aan het begin dat veel gebruikt wordt om het formaat aan te geven (&man.a.out.5; geeft meer details). Het bevat drie laadbare segmenten: .tekst, .data en .bss, een symbolentabel en een stringtabel. COFF Het SVR3 object formaat. De kop bestaat uit een sectietabel, dus er kunnen meer dan alleen .tekst, .data, en .bss secties zijn. &man.elf.5; De opvolger van COFF, heeft meerdere secties en 32-bit of 64-bit als mogelijke waarden. Één nadeel: ELF was ook ontworpen met de aanname dat er maar één ABI per systeemarchitectuur zou zijn. Deze aanname is eigenlijk redelijk incorrect, zelfs niet in de commerciële SYSV wereld (die op zijn minst drie ABIs heeft: SRV4, Solaris en SCO). &os; probeert om dit probleem heen te werken door een hulpprogramma te leveren voor het brandmerken van een bekend ELF uitvoerbaar bestand met informatie over de ABI waar hij mee kan werken. In &man.brandelf.1; staat meer informatie. &os; komt uit het klassieke kamp en gebruikt het &man.a.out.5; formaat, een technologie die zich bewezen heeft door meerdere generaties van BSD versies heen, tot het begin van de 3.X versies. Alhoewel het al mogelijk was om ELF programma's en kernels te bouwen en te draaien op een &os; systeem , verzette &os; zich eerst tegen de druk om over te schakelen naar ELF als standaard formaat. Waarom? Toen het &linux; kamp hun pijnlijke wissel maakte naar ELF, was dat niet zozeer om van het a.out formaat af te komen, maar meer omdat van het op de inflexibele jump-tabel gebaseerde gedeelde bibliotheekmechanisme af te komen, die het maken van gedeelde bibliotheken erg moeilijk maakte voor bedrijven en ontwikkelaars. Omdat de ELF hulprogramma's een oplossing voor het gedeelde bibliotheek probleem waren en algemeen gezien werden als een stap vooruit, werd de migratie geaccepteerd als noodzakelijk kwaad en werd de wissel uitgevoerd. Het gedeelde bibliotheek mechanisme van &os; is meer gebaseerd op het gedeelde bibliotheek mechanisme van Sun's &sunos; en daardoor erg makkelijk te gebruiken. Waarom zijn er zoveel verschillende formaten? In het duistere donkere verleden was er simpele hardware. Deze simpele hardware ondersteunde een simpel klein systeem. a.out was volledig adequaat voor de taak om binaire bestanden op dat simpele systeem te vertegenwoordigen (een PDP-11). Toen mensen &unix; van deze machine gingen porten, behielden ze het a.out formaat omdat het voldeed voor de vroege ports van &unix; naar architecturen als Motorola 68k, VAXen, enzovoort. Toen besloot een slimme hardware engineer dat als hij de software kon forceren om wat simpele truckjes te doen, hij in staat was om een paar onderdelen van het ontwerp af te schaven, waardoor zijn processorcore sneller kon draaien. Terwijl men probeerde om het met deze nieuwe vorm van hardware te laten werken (vandaag de dag beter bekend als RISC), was a.out te beperkt voor deze hardware. Dus werden er vele formaten ontworpen om betere prestaties te krijgen uit deze hardware dan het simpele formaat a.out kon leveren. Toen werden COFF, ECOFF en een paar andere duistere formaten uitgevonden en werden de limieten verkend, waarna men besloot om zich te richten op ELF. Daarnaast werden programma's groter en bleven schijven (en fysiek geheugen) relatief klein, zodat het concept van een gedeelde bibliotheek werd geboren. Het VM systeem werd ook meer verfijnd. Terwijl al deze verbeteringen bereikt werden door het a.out formaat, werd het nut met elke nieuwe eigenschap verder uitgerekt. Daarnaast wilde men dingen dynamisch laden tijdens het starten of delen weggooien nadat het programma zijn intiële code had gedraaid om te blijven hangen in het hoofdgeheugen en in de wisselbestanden. Talen werden verder verfijnd en men wilde dat code automatisch werd aangeroepen voor main. Er werden veel hacks gedaan in het a.out formaat om alles mogelijk te maken en dit werkte ook enige tijd. Na verloop van tijd was a.out niet meer in staat om alle problemen te adresseren zonder toenemende overhead in code en complexibiliteit. Hoewel ELF veel van deze problemem verhielp, was het moeilijk om te wisselen naar een systeem dat compleet anders werkte. Dus moest ELF wachten totdat het pijnlijker was om a.out te behouden dan het te migreren naar ELF. Met het verstrijken van de tijd, werden de bouwprogramma's die &os; heeft afgeleid van hun bouwprogramma's (vooral de assembler en de loader) ontwikkeld in twee parallel lopende takken. De &os; tree voegde gedeelde bibliotheken toe en heeft wat bugs opgelost. De mensen van GNU die deze programma's hebben geschreven, hebben ze herschreven en simpelere ondersteuning toegevoegd voor het bouwen van cross-compilers, waarbij verschillende formaten zo nodig ingevoegd konden worden, enzovoort. Omdat veel mensen cross-compilers wilden bouwen die gericht waren op &os;, hadden die pech, omdat de oudere broncode van &os; voor as en ld niet opgewassen was tegen deze taak. De nieuwe GNU programmaketen (binutils) ondersteunt cross-compiling, ELF, gedeelde bibliotheken, C++ extensies, enzovoort. Daarnaast leveren veel leverancierds ELF binaire bestanden en is het goed voor &os; om het te draaien. ELF heeft meer expressiemogelijkheden dan a.out en geeft meer uitbreidingsmogelijkheden aan het basissysteem. De ELF hulpprogramma's worden beter onderhouden en geven de mogelijkheid tot ondersteuning voor cross compilatie, wat voor veel mensen belangrijk is. ELF is misschien iets trager dan a.out, maar het meten daarvan kan vrij lastig zijn. Er zijn ook ontelbare verschillen tussen de twee in hoe ze pages opslaan, initiële code verwerken, enzovoort. Geen van allen zijn ze erg belangrijk, maar er zijn verschillen. Na verloop van tijd verdwijnt de ondersteuning voor a.out uit de GENERIC kernel en uiteindelijk ook helemaal uit de kernel als de noodzaak voor a.out gebaseerde programma's voorbij is. Meer informatie Handleidingen handleidingen De meest uitvoerige documentatie van &os; is geschreven in de vorm van handleidingen. Bijna elk programma op het systeem heeft een kleine handleiding die uitlegt wat de basisopties en verschillende argumenten doen. Deze handleidingen bekeken worden met man. Het gebruik van man gaat als volgt: &prompt.user; man commando commando is de naam van het commando waar meer informatie over getoond moet worden. Om bijvoorbeeld meer informatie weer te geven over ls kan het volgende uitgevoerd worden: &prompt.user; man ls De handleidingen zijn opgedeeld in genummerde onderdelen: Gebruikerscommando's. Systeemaanroepen en foutnummernummers. Functies in de C bibliotheken. Apparaatdrivers. Bestandsindelingen. Spelletjes en andere afleidingen. Diverse informatie. Systeemonderhoud en commando's Kernelontwikkelaars. In sommige gevallen kan een bepaald onderwerp vaker voorkomen in een onderdeel van de handleidingen. Er is bijvoorbeeld een gebruikerscommando chmod en een systeemaanroep chmod(). In deze gevallen kan man aangegeven worden welke documentatie weer te geven door het specificeren van het onderdeel: &prompt.user; man 1 chmod Dit geeft de handleiding van het gebruikerscommando chmod weer. Verwijzingen naar een bepaald onderdeel van de handleiding worden traditioneel tussen haakjes geplaatst: &man.chmod.1; verwijst naar het commando chmod en &man.chmod.2; verwijst naar de systeemaanroep. Dit werkt prima als de naam van het commando bekend is en alleen informatie nodig is over het het commando gebruikt kan worden, maar wat als de naam van het commando niet bekend is? Dan kan man gebruikt worden om naar trefwoorden te zoeken in de commandobeschrijvingen door de optie te gebruiken: &prompt.user; man -k mail Met dit commando wordt een overzicht getoond met commando's die het trefwoord mail in hun omschrijving hebben. Dit is gelijk aan het commando apropos. Dus om meer informatie over spannende commando's met een onbekende functie in /usr/bin te krijgen is het volgende commando voldoende: &prompt.user; cd /usr/bin &prompt.user; man -f * Het onderstaande commando resulteert in hetzelfde: &prompt.user; cd /usr/bin &prompt.user; whatis * Gnu infobestanden Free Software Foundation &os; heeft veel applicaties en hulpmiddelen die gemaakt zijn door de Free Software Foundation (FSF). Als extraatje voor de documentatie hebben deze programma's uitgebreidere html bestanden die infobestanden heten, die uitgelezen kunnen worden met info of, als emacs is geïnstalleerd, de infomodus van emacs. &man.info.1; wordt als volgt gebruikt: &prompt.user; info h geeft een korte beschrijving en ? toont een een kort commando–overzicht.
diff --git a/nl_NL.ISO8859-1/books/handbook/config/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/config/chapter.sgml index 9ac6a2dc4b..e3a4b72a64 100644 --- a/nl_NL.ISO8859-1/books/handbook/config/chapter.sgml +++ b/nl_NL.ISO8859-1/books/handbook/config/chapter.sgml @@ -1,3331 +1,3387 @@ Chern Lee Geschreven door Mike Smith Naar een tutorial van Matt Dillon Tevens gebaseerd op tuning(7) door Danny Pansters Vertaald door Instellingen en optimalisatie Overzicht systeeminstellingen systeemoptimalisatie Systeeminstellingen zijn een belangrijk aspect van &os;. Correcte instellingen helpen moeilijkheden bij toekomstige upgrades te voorkomen. In dit hoofdstuk wordt het instellen van &os; beschreven, alsmede een aantal prestatiebevorderende maatregelen waarmee een &os; systeem geoptimaliseerd kan worden. Na het lezen van dit hoofdstuk weet de lezer: Hoe efficiënt om te gaan met bestandssystemen en wisselpartities; De grondbeginselen van het rc.conf instellingensysteem en van het opstarten van toepassingen (diensten) met /usr/local/etc/rc.d; Hoe een netwerkkaart ingesteld en getest wordt; Hoe virtuele hosts op netwerkapparatuur ingesteld worden; Hoe de instellingenbestanden in /etc gebruikt worden; Hoe &os; geoptimaliseerd kan worden met sysctl variabelen; Hoe schijfprestaties te verbeteren en hoe kernelbeperkingen gewijzigd kunnen worden. Veronderstelde voorkennis: De &unix; en &os; grondbeginselen () begrijpen; Bekend zijn met de grondbeginselen van kernelinstellingen en compilatie (). Initiële instellingen Partitioneren partitioneren /etc /var /usr Basispartities Bij het aanmaken van bestandssystemen met &man.disklabel.8; of &man.sysinstall.8; is het van belang dat op een harde schijf de data-overdracht het snelst is aan de buitenste sporen en het langzaamst aan de binnenste. Kleinere en veelgebruikte bestandssystemen kunnen daarom het beste aan het begin van de schijf geplaatst worden, terwijl grotere partities als /usr meer naar het einde van de schijf geplaatst kunnen worden. Het is een goed idee om partities aan te maken in deze of gelijksoortige volgorde: root, swap, /var, /usr. De grootte van /var hangt af van de wijze waarop de machine gebruikt gaat worden. /var wordt gebruikt voor onder meer mailboxen, logbestanden en printerdata en -wachtrijen. Mailboxen en logbestanden kunnen onverwacht groot worden, afhankelijk van het aantal systeemgebruikers en de bewaarduur van logbestanden. Meestal is minder dan een gigabyte voldoende. /var/tmp moet wel groot genoeg moet zijn om packages te kunnen bevatten. De partitie /usr bevat veel van de benodigde systeembestanden. Die bevat tevens de &man.ports.7;collectie (aanbevolen) en de broncode (optioneel). Beide zijn optioneel tijdens de installatie. Voor deze partitie wordt tenminste 2 gigabyte aanbevolen. Het is verstandig rekening te houden met de vereiste schijfruimte bij het kiezen van partitiegroottes. Als in een partitie onvoldoende vrije schijfruimte is, terwijl een andere vrijwel niet gebruikt wordt, is dat een vervelend en niet optimaal oplosbaar probleem. &man.sysinstall.8;'s Auto-defaults partitiekeuze kan in de ervaring van sommige gebruikers mogelijk te kleine /var en / partities opleveren. Partitioneren moet verstandig en niet te zuinig gebeuren. Wisselpartities (swap) swap grootte wisselpartitie wisselpartitiegrootte De vuistregel is dat het wisselbestand ongeveer het dubbele van de grootte van het systeemgeheugen (RAM) moet zijn. Als de machine bijvoorbeeld 128 megabytes geheugen heeft, kan het beste een wisselbestand van (tenminste) 256 megabytes gebruikt worden. Minder dan 256 megabytes swap is in dit geval af te raden. Systemen met weinig geheugen kunnen overigens beter functioneren met meer swap. Ook is het verstandig rekening te houden met eventuele geheugenuitbreiding in de toekomst. Bovendien zijn de VM paging algoritmen van de kernel zo afgestemd dat ze het beste presteren bij een wisselbestand van tenminste tweemaal de grootte van het geheugen. Een te kleine swap kan dus inefficiënties in de VM code tot gevolg hebben en mogelijk problemen veroorzaken als het systeemgeheugen uitgebreid wordt. Op grotere systemen met meerdere SCSI schijven (of meerdere IDE schijven op verschillende controllers) is het aan te raden om op elke schijf een wisselpartitie in te stellen (dit kan tot en met vier schijven), elk met ongeveer dezelfde grootte. De kernel kan met arbitraire groottes werken, maar interne datastructuren schalen tot viermaal de grootste swappartitie. De kernel kan de beschikbare ruimte voor het wisselbestand het meest optimaal indelen als de partities ongeveer even groot zijn. Een grote swap is prima, ook als ze zelden gebruikt wordt. Zo kan het gemakkelijker zijn om een (uit de hand gelopen) proces dat het systeem grotendeels bezet houdt te beëindigen, voordat er opnieuw opgestart moet worden. Waarom partitioneren? Waarom niet één enkele grote partitie gebruiken? Er zijn verscheidene redenen waarom dit niet zo'n goed idee is. De verschillende partities hebben hun eigen karakteristieke operationele gedrag en vereisten. Door ze te scheiden zijn er betere mogelijkheden om het systeem te optimaliseren. Vanaf de / en /usr partities wordt bijvoorbeeld vooral gelezen en er wordt weinig naar geschreven, terwijl er in /var en /var/tmp zowel veel gelezen als geschreven wordt. Door een systeem goed te partitioneren wordt vermeden dat fragmentatie die optreedt in de kleinere partities met veel schrijfactiviteit doorsijpelt naar partities die vooral lees-intensief zijn. Door schrijf-intensieve partities aan het begin van de schijf te plaatsen, zijn de prestaties wat betreft invoer/uitvoer het beste is daar waar het het meest nodig is. Ofschoon er natuurlijk ook de best mogelijke in/uit prestaties wenselijk zijn in de grotere partities, weegt het plaatsen van deze bestandssystemen aan het begin van de schijf niet tegen de voordelen van het plaatsen van /var aan het begin van de schijf (na root en swap) voor de totale snelheid van het systeem. Tenslotte zijn er veiligheidsoverwegingen. Een compacte en nette rootpartitie die vrijwel alleen-lezen is, heeft een betere kans om een nare crash te overleven. Hoofdinstellingen rc bestanden rc.conf De voornaamste lokatie voor systeeminstellingen is /etc/rc.conf. Dit bestand bevat een scala aan instellingen, die gebruikt wordt om het systeem in te stellen bij het opstarten. De naam impliceert dit al. Het is informatie voor de rc* bestanden (rc staat voor resource configuration of broninstellingen). De systeembeheerder wordt geacht regels toe te voegen aan rc.conf om de standaardinstellingen uit /etc/defaults/rc.conf aan te passen. Het standaardbestand moet niet letterlijk gekopiëerd worden naar /etc. Het bevat standaardwaardes en is niet bedoeld als voorbeeld. Alle wijzigingen die specifiek zijn voor een systeem horen in /etc/rc.conf thuis. In een clusterscenario is het nuttig om systeemspecifieke instellingen te scheiden van algemene instellingen die voor het hele cluster gelden. Hiervoor kunnen een aantal strategieën worden gebruikt. De aanbevolen benadering is om gedeelde instellingen in een ander bestand te plaatsen, zoals /etc/rc.conf.site en dit invoegen in /etc/rc.conf, wat verder alleen systeemspecifieke informatie bevat. Aangezien rc.conf gelezen wordt door &man.sh.1; is dit eenvoudig te bereiken: rc.conf: . /etc/rc.conf.site hostname="node15.example.com" network_interfaces="fxp0 lo0" ifconfig_fxp0="inet 10.1.1.1" rc.conf.site: defaultrouter="10.1.1.254" saver="daemon" blanktime="100" rc.conf.site kan dan naar elk systeem gedistribueerd worden met rsync of een gelijksoortig programma, terwijl rc.conf uniek blijft. Het actualiseren van het systeem met &man.sysinstall.8; of make world overschrijft rc.conf niet, zodat de bestaande systeeminstellingen niet verloren gaan. Toepassingen instellen Geïnstalleerde toepassingen hebben meestal hun eigen instellingenbestanden, met hun eigen syntaxis, etc. Het is van belang deze bestanden apart te houden van het basissysteem, zodat ze makkelijk gelokaliseerd kunnen worden en beheerd kunnen worden met de hulpmiddelen voor pakketbeheer. /usr/local/etc Deze bestanden worden meestal geïnstalleerd in /usr/local/etc. Als een toepassing een uitgebreide set bestanden voor instellingen heeft, wordt er een submap voor aangemaakt. Bij de installatie van een port of package, worden normaliter ook voorbeeldbestanden met instellingen geïnstalleerd. Deze zijn doorgaans te herkennen aan een toevoegsel .default. Als er geen bestaande instellingenbestanden voor de toepassing zijn, kunnen ze gemaakt worden door de .default bestanden te kopiëren. Een voorbeeld is de map /usr/local/etc/apache: -rw-r--r-- 1 root wheel 2184 May 20 1998 access.conf -rw-r--r-- 1 root wheel 2184 May 20 1998 access.conf.default -rw-r--r-- 1 root wheel 9555 May 20 1998 httpd.conf -rw-r--r-- 1 root wheel 9555 May 20 1998 httpd.conf.default -rw-r--r-- 1 root wheel 12205 May 20 1998 magic -rw-r--r-- 1 root wheel 12205 May 20 1998 magic.default -rw-r--r-- 1 root wheel 2700 May 20 1998 mime.types -rw-r--r-- 1 root wheel 2700 May 20 1998 mime.types.default -rw-r--r-- 1 root wheel 7980 May 20 1998 srm.conf -rw-r--r-- 1 root wheel 7933 May 20 1998 srm.conf.default Aan de grootte van de bestanden is te zien dat alleen srm.conf gewijzigd is. Als later de Apache port wordt vernieuwd, wordt dit bestand niet overschreven. Tom Rhodes Bijgedragen door Diensten starten diensten Veel gebruikers kiezen ervoor om software van derden te installeren op &os; vanuit de Portscollectie. In veel gevallen is het noodzakelijk om de software dusdanig in te stellen dat het opstart tijdens het booten. Diensten zoals mail/postfix of www/apache13 zijn slechts twee voorbeelden van softwarepakketten die gestart kunnen worden tijdens de systeemstart. In deze paragraaf wordt toegelicht hoe software van derde partijen kan worden gestart. In &os; worden de meeste diensten, zoals &man.cron.8;, door de opstartscripts van het systeem gestart. Deze scripts kunnen verschillen tussen &os; en leverancierversies, echter het meest belangrijke aspect om in gedachten te houden is dat hun opstartinstellingen verwerkt kunnen worden door simpele opstartscripts. Voor de komst van rcNG zetten applicaties simpelweg een opstartscript in de map /usr/local/etc/rc.d dat dan uitgelezen werd door de opstartscripts van het systeem. Deze scripts werden dan uitgevoerd tijdens de laatste stappen van een systeemstart. Terwijl veel individuen bezig waren om de oude stijl van instellen naar de nieuwe stijl over te zetten, bleef sommige software nog steeds een script nodig hebben in de genoemde map. De subtiele verschillen in de scripts hangen af van het wel of niet gebruiken van rcNG. Vóór &os; 5.1 werden scripts oude stijl gebruikt en in bijna alle gevallen voldoet een script nieuwe stijl. Elk script moet een .sh toegevoegd hebben aan het einde en elk script moet opstartbaar zijn door het systeem. Het laatstgenoemde kan bereikt worden met chmod en door het zetten van de rechten 755. Er zouden ook minimaal de opties start en stop moeten zijn voor de applicatie. Het simpelste opstartscript ziet er waarschijnlijk als volgt uit: #!/bin/sh echo -n ' utility' case "$1" in start) /usr/local/bin/utility ;; stop) kill -9 `cat /var/run/utility.pid` ;; *) echo "Usage: `basename $0` {start|stop}" >&2 exit 64 ;; esac exit 0 Dit script levert de opties stop en start voor de applicatie met de naam utility. Dit kan handmatig gestart worden met: &prompt.root; /usr/local/etc/rc.d/utility.sh start Hoewel niet alle software van derden een regel nodig heeft in /etc/rc.conf, wordt er bijna elke dag een wel een port veranderd om deze instellingen te ondersteunen. De meldingen tijdens de installatie van de port bevatten vaak meer informatie. Sommige software van derden levert opstartscripts die de applicatie kunnen laten werken met rcNG. Dit wordt in de volgende paragraaf behandeld. Uitgebreide applicatieinstellingen Nu &os; rcNG heeft, zijn de instellingen van applicaties die mee moeten opstarten verbeterd. Er is meer diepgang in gekomen. Door gebruik te maken van de sleutelwoorden die in de paragraaf rcNG behandeld worden, kunnen applicaties nu starten na andere diensten. DNS kan bijvoorbeeld extra opties meekrijgen van /etc/rc.conf in plaats van hard ingestelde opties in het opstartscript. Een basisscript ziet er ongeveer als volgt uit: #!/bin/sh # # PROVIDE: utility # REQUIRE: DAEMON # BEFORE: LOGIN # KEYWORD: FreeBSD shutdown # # WIJZIG DEZE WAARDEN NIET HIER # MAAR IN HET BESTAND /etc/rc.conf # utility_enable=${utility_enable-"NO"} utility_flags=${utility_flags-""} utility_pidfile=${utility_pidfile-"/var/run/utility.pid"} . /etc/rc.subr name="utility" rcvar=`set_rcvar` command="/usr/local/sbin/utility" load_rc_config $name pidfile="${utility_pidfile}" start_cmd="echo \"Starting ${name}.\"; /usr/bin/nice -5 ${command} ${utility_flags} ${command_args}" run_rc_command "$1" Dit script zorgt ervoor dat utility wordt gestart voor de dienst login, maar na de dienst daemon. Het biedt ook de mogelijkheid voor het instellingen en volgen van het PID of het process ID bestand. Voor deze applicatie kan dan de volgende regel in /etc/rc.conf geplaatst worden: utility_enable="YES" Deze nieuwe methode maakt het volgende mogelijk: makkelijker commandoregelopties manipuleren, importeren van standaardfuncties uit /etc/rc.subr, compatibiliteit met het &man.rcorder.8; programma en het eenvoudiger instellingen via /etc/rc.conf. In essentie kan dit script zelfs geplaatst worden in de map /etc/rc.d. Dat kan in potentie wel het &man.mergemaster.8; programma van de wijs brengen als dat gebruikt wordt voor het bijwerken van software. Diensten met diensten starten Andere diensten, zoals POP3 server daemons, IMAP, enzovoort, kunnen gestart worden door gebruik te maken van &man.inetd.8;. Daaraan is voorafgegaan dat die dienst uit de Portscollectie is geïstalleerd en dat er een regel met instellingen is toegevoegd aan /etc/inetd.conf of één van de bestaande niet actieve regels is geactiveerd. Werken met inetd en zijn instellingen wordt uitgebreid toegelicht in de paragraaf over inetd. In sommige gevallen is het handiger om &man.cron.8; te gebruiken om diensten te starten. Deze aanpak heeft een aantal voordelen omdat cron start als de eigenaar van crontab. Dit stelt reguliere gebruikers in staat om sommige applicaties te starten en te onderhouden. cron levert een unieke optie: plaats van een tijdsspecificatie kan @reboot gebruikt worden. Dit zorgt ervoor dat de taak gestart wordt als &man.cron.8; gestart wordt, meestal tijdens een systeemstart. Tom Rhodes Geschreven door <command>cron</command> instellen cron instellen Een zeer nuttig hulpprogramma in &os; is &man.cron.8;. De cron daemon draait op de achtergrond en controleert voortdurend /etc/crontab. Ook controleert cron de map /var/cron/tabs, op zoek naar nieuwe crontab bestanden. Deze crontab bestanden bevatten informatie over specifieke taken die cron moet verrichten op gezette tijden. cron gebruikt twee verschillende soorten instellingenbestanden: de systeemcrontab en gebruikerscrontabs. Het enige verschil tussen deze twee formaten is het zesde veld. In de systeemcrontab is dit de gebruikersnaam die het commando uitvoert. Hierdoor kunnen met de systeemcrontab commando's als iedere gebruiker uitgevoerd worden. In een gebruikerscrontab is het zesde veld het uit te voeren commando en alle commando's worden uitgevoerd als de gebruiker die de crontab heeft aangemaakt. Dit is een belangrijke veiligheidsmaatregel. Gebruikerscrontabs geven individuele gebruikers de mogelijkheid om bepaalde terugkerende taken automatisch te laten uitvoeren zonder dat root rechten noodig zijn. Commando's in de crontab van een gebruiker worden uitgevoerd met de rechten van de eigenaar. root kan ook een gebruikerscrontab aanleggen. Dit is niet dezelfde als /etc/crontab (de systeemcrontab). Omdat er al een systeemcrontab is, is het doorgaans niet nodig om een gebruikerscrontab voor root te maken. /etc/crontab (de systeemcrontab) ziet er uit als volgt: # /etc/crontab - root's crontab for &os; # # $&os;: src/etc/crontab,v 1.32 2002/11/22 16:13:39 tom Exp $ # # SHELL=/bin/sh PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin HOME=/var/log # # #minuut uur mdag maand wdag wie commando # # */5 * * * * root /usr/libexec/atrun Zoals in de meeste &os; instellingenbestanden gaat het karakter # vooraf aan commentaar. Commentaar wordt gebruikt als uitleg en geheugensteun. Commentaar dient niet vermengd te worden met commando's, anders wordt het commentaar opgevat als deel van het commando. Blanco regels worden genegeerd. Eerst worden omgevingsvariabelen gedefiniëerd. Hoervoor wordt het is-gelijk karakter (=) gebruikt. In het bovenstaande voorbeeld wordt het gebruikt voor de variabelen SHELL, PATH en HOME. Als de regel SHELL ontbreekt, gebruikt cron standaard sh als shell. Voor de omgevingsvariabele PATH bestaat geen standaardwaarde. Als PATH ontbreekt moeten absolute paden gebruikt worden. Als HOME ontbreekt, gebruikt cron de thuismap van de de gebruiker die cron aanroept. In deze commentaarregel staan de zeven velden van een crontabdefinitie. Dit zijn minuut, uur, mdag, maand, wdag, wie en commando. De betekenissen liggen voor de hand: minute is het aantal minuten van het tijdstip waarop het commando moet worden uitgevoerd; hour geeft het uur aan; mdag staat voor de dag van de maand; maand staat voor het maandnummer en wdag geeft de dag van de week aan. Het veld wie is bijzonder en bestaat alleen in /etc/crontab. Het geeft aan als welke gebruiker het commando uitgevoerd moet worden. Een gebruiker die zijn eigen crontab installeert, heeft deze optie niet. Het veld command bevat het uit te voeren commando. In deze regel worden aan de hierboven besproken opties waarden toegekend. Er wordt gebruik gemaakt van */5 en * karakters. Deze betekenen eerst-laatst en kunnen gezien worden als telkens. In deze regel staat dus dat het commando atrun elke vijf minuten moet worden uitgevoerd door root, ongeacht welke dag of maand het is. Meer informatie over atrun staat in &man.atrun.8;. Commando's kunnen een willekeurig aantal opties of argumenten meekrijgen. Als commando's echter meerdere regels nodig hebben moeten deze regels afgebroken worden met een backslash \ karakter, om aan te geven dat ze op de volgende regel vervolgd worden. Dit is de basisopzet voor elk crontab bestand. De enige uitzondering is de aanwezigheid van veld zes, waar de gebruikersnaam wordt aangegeven. Dit veld bestaat alleen in het systeembestand /etc/crontab. Voor crontabbestanden van individuele gebruikers moet dit veld worden weggelaten. Een crontab installeren De onderstaande procedure moet niet gebruikt worden om de systeemcrontab te wijzigen of te installeren. Er kan een gewone editor gebruikt worden. cron ziet dat het bestand veranderd is en begint direct met het gebruiken van de nieuwe versie. Deze FAQ vraag geeft verdere uitleg. Om een nieuwe crontab te installeren moet eerst een bestand in het juiste formaat gemaakt worden en daarna moet het geiuml;nstalleerd worden met crontab commando: &prompt.root; crontab crontabbestand In dit voorbeeld is crontabbestand de naam van een eerder gemaakt crontabbestand. Er bestaat ook een optie om een lijst van geïnstalleerde crontab bestanden op te vragen, namelijk de optie van crontab. Gebruikers die hun eigen crontabbestand willen schrijven zonder het gebruik van een sjabloon, kunnen gebruik maken van crontab -e. Dit opent de EDITOR met een leeg bestand. Als het bestand wordt opgeslagen en de editor wordt afgesloten, wordt het bestand automatisch als crontab geïnstalleerd. Een gebruikerscrontab kan verwijderd worden door de met crontab de optie te gebruiken. Tom Rhodes Geschreven door Gebruik van rc met &os; 5.X en later rcNG &os; gebruikt inmiddels het NetBSD rc.d systeem bij het opstarten van het systeem. Veel van de bestanden in /etc/rc.d zijn scripts voor basisdiensten die werken met de opties , en , analoog aan hoe diensten die via een port of package zijn geïnstalleerd gestart worden met de scripts in /usr/local/etc/rc.d. &man.sshd.8; kan bijvoorbeeld als volgt herstart worden: &prompt.root; /etc/rc.d/sshd restart Deze procedure is vrijwel gelijk voor andere diensten. Uiteraard worden diensten meestal automatisch gestart zoals in &man.rc.conf.5; staat. Om de Network Address Translation daemon bij het opstarten te laten starten is de volgende regel in /etc/rc.conf bijvoorbeeld voldoende: natd_enable="YES" Als er reeds een natd_enable="NO" regel is, kan NO gewoon in YES veranderd worden. De rc scripts starten, voor zover nodig, automatisch andere afhankelijke diensten. Omdat het rc.d systeem in eerste instantie bedoeld is om diensten te starten en stoppen bij het opstarten en afsluiten van het systeem, werken de standaardopties , en alleen als de juiste variabelen in /etc/rc.conf zijn ingesteld. Het commando sshd restart alleen dan als sshd_enable de waarde YES heeft in /etc/rc.conf. Als er een service gestart, gestopt of herstart moet worden, ongeacht de definities in /etc/rc.conf, moet het commando voorafgegaan worden door force. Dus om sshd te herstarten ongeacht /etc/rc.conf setting, voldoet het volgende commando: &prompt.root; /etc/rc.d/sshd forcerestart Het is eenvoudig te controleren of een dienst is ingeschakeld is in /etc/rc.conf door het bijpassende rc.d script uit te voeren met de optie . Voor sshd: &prompt.root; /etc/rc.d/sshd rcvar # sshd $sshd_enable=YES De tweede regel (# sshd) is de uitvoer van sshd, geen root console. De optie wordt gebruikt om vast te stellen of een dienst gestart is. Om bijvoorbeeld te controleren of sshd gestart is: &prompt.root; /etc/rc.d/sshd status sshd is running as pid 433. Het is ook mogelijk om een dienst te herladen met de optie . Dan wordt er getracht een signaal te sturen aan een individuele dienst, waarbij de dienst de bestanden met instellingen opnieuw in moet lezen. Meestal komt dit neer op het verzenden van het signaal SIGHUP signaal. Het rc.d-systeem wordt niet alleen gebruikt voor netwerkdiensten, maar ook voor het merendeel van de systeemstart. In dit kader is bijvoorbeeld het bestand bgfsck interessant. Als dit script wordt uitgevoerd, wordt de volgende boodschap getoond: Starting background file system checks in 60 seconds. Dit script wordt dus gebruikt voor bestandssysteemcontrole in de achtergrond, hetgeen alleen tijdens de systeemstart gebeurt. Veel systeemdiensten zijn afhankelijk van andere diensten om correct te kunnen functioneren. Zo starten NIS en andere RPC-gebaseerde diensten niet als de rpcbind (portmapper) dienst nog niet draait. Om dit te stroomlijnen wordt informatie over afhankelijkheden en andere meta-data ingevoegd in het commentaar bovenaan het opstartscript. Deze commentaarregels worden vervolgens tijdens de systeemstart met &man.rcorder.8; verwerkt om zo vast te stellen in welke volgorde de systeemdiensten gestart moeten worden. De volgende sleutelwoorden kunnen worden opgenomen aan het begin van elk opstartscript: PROVIDE: geeft aan in welke diensten dit bestand voorziet. REQUIRE: geeft aan welke andere diensten vereist zijn voor deze dienst. Dit script wordt uitgevoerd na de aangegeven diensten. BEFORE: geeft diensten aan die afhankelijk zijn van deze dienst. Dit bestand wordt uitgevoerd vóór de aangegeven diensten. KEYWORD: &os; of NetBSD. Dit wordt gebruikt voor speciale eigenschappen van één van de *BSD's. Met deze methode kan een systeembeheerder gemakkelijk systeemdiensten besturen, zonder gedoe met runlevels zoals bij sommige andere &unix; systemen. Meer informatie over het rc.d-systeem staat in &man.rc.8; en &man.rc.subr.8;. Marc Fonvieille Geschreven door Netwerkkaarten instellen netwerkkaarten instellen Het is tegenwoordig nauwelijks voorstelbaar dat een computer geen netwerkverbinding heeft. Het toevoegen en instellen van een netwerkkaart is een gebruikelijke taak voor een &os; beheerder. Het juiste stuurprogramma vinden netwerkkaarten stuurprogramma Voor het zoeken begint, moet duidelijk zijn om welke kaart het gaat, welke chip erop zit en of het een PCI of ISA kaart is. &os; ondersteunt vele kaarten. Op de Hardware Compatibiliteitslijst voor de betreffende release om staan de kaarten die ondersteund worden. Als duidelijk is dat een kaart ondersteund wordt, moet vastgesteld worden wat het geschikte stuurprogramma is. In het bestand /usr/src/sys/conf/NOTES (/usr/src/sys/arch/conf/LINT voor &os; 4.X) staat een lijst van stuurprogramma's voor netwerkinterfaces met wat informatie over de ondersteunde chipsets of kaarten. In geval van twijfel biedt de hulppagina voor het stuurprogramma (man) vaak uitkomst. In het algemeen bevat deze meer informatie over de ondersteunde hardware en mogelijke problemen die kunnen optreden. NOTES bestaat niet op &os; 4.X. In plaats daarvan kan in het bestand LINT informatie gevonden worden over een groot aantal netwerkkaarten. In staan meer details over NOTES versus LINT. Als een veelgebruikte kaart gebruikt wordt, hoeft meestal niet ver gezocht te worden. Stuurprogramma's voor veelvoorkomende netwerkinterfaces al aanwezig in de algemene GENERIC kernel. In dat geval wordt zo'n al gevonden worden bij het opstarten, bijvoorbeeld met het volgende bericht: dc0: <82c169 PNIC 10/100BaseTX> port 0xa000-0xa0ff mem 0xd3800000-0xd38 000ff irq 15 at device 11.0 on pci0 dc0: Ethernet address: 00:a0:cc:da:da:da miibus0: <MII bus> on dc0 ukphy0: <Generic IEEE 802.3u media interface> on miibus0 ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto dc1: <82c169 PNIC 10/100BaseTX> port 0x9800-0x98ff mem 0xd3000000-0xd30 000ff irq 11 at device 12.0 on pci0 dc1: Ethernet address: 00:a0:cc:da:da:db miibus1: <MII bus> on dc1 ukphy1: <Generic IEEE 802.3u media interface> on miibus1 ukphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto In dit voorbeeld zitten er twee kaarten in het systeem die het stuurprogramma &man.dc.4; gebruiken. Als het stuurprogramma voor een NIC geen onderdeel is van de GENERIC kernel, dan dient het juiste stuurprogramma voor die NIC geladen te worden. Dit kan op twee manieren: De meest eenvoudige manier is het laden van een kernelmodule voor een netwerkkaart met &man.kldload.8;. Niet alle NIC stuurprogramma's zijn als module beschikbaar. Zo zijn er bijvoorbeeld geen modules beschikbaar voor ISA kaarten. Ondersteuning voor een kaart kan ook in de kernel gecompileerd worden. In /usr/src/sys/conf/NOTES, /usr/src/sys/arch/conf/NOTES en de hulppagina van het stuurprogramma is na te lezen wat er in het kernelinstellingenbestand moet staan. In staat meer informatie over het compileren van een eigen kernel. Als een netwerkkaart al bij het opstarten wordt herkend door de GENERIC kernel, is er geen reden om een andere kernel te bouwen. De netwerkkaart instellen netwerkkaarten instellen Nadat een geschikt stuurprogramma geladen is, moet de kaart nog ingestelt worden. Mogelijk is dit al gebeurd door sysinstall tijdens de installatie. Om de instellen van de netwerkkaarten weer te geven zien: &prompt.user; ifconfig dc0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 inet 192.168.1.3 netmask 0xffffff00 broadcast 192.168.1.255 ether 00:a0:cc:da:da:da media: Ethernet autoselect (100baseTX <full-duplex>) status: active dc1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 inet 10.0.0.1 netmask 0xffffff00 broadcast 10.0.0.255 ether 00:a0:cc:da:da:db media: Ethernet 10baseT/UTP status: no carrier lp0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> mtu 1500 lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384 inet 127.0.0.1 netmask 0xff000000 tun0: flags=8010<POINTOPOINT,MULTICAST> mtu 1500 Op oudere versies van of &os; moet volgens &man.ifconfig.8; misschien de optie gebruikt worden. In &man.ifconfig.8;zijn meer details over de syntaxis te lezen. In dit voorbeeld is de uitvoer over IPv6 (inet6 etc.) achterwege gelaten. In dit voorbeeld werden de volgende apparaten weergegeven: dc0: de eerste Ethernet interface; dc1: de tweede Ethernet interface; lp0: de parallelle poort interface; lo0: het loopback apparaat; tun0: het tunnelapparaat gebruikt door ppp. &os; gebruikt de naam van het stuurprogramma gevolgd door een nummer voor de volgorde waarop de kaarten gedetecteerd zijn bij het opstarten. sis2 is de derde netwerkkaart in het systeem die het stuurprogramma &man.sis.4; gebruikt. In het vorige voorbeeld is het apparaat dc0 volledig operationeel. Dit blijkt uit de volgende indicatoren: UP betekent dat de kaart ingesteld is en klaar voor gebruik; De kaart heeft een Internet (inet) adres (in dit geval 192.168.1.3); Het heeft een geldig subnetmasker (netmask; 0xffffff00 is hetzelfde als 255.255.255.0); Het heeft een geldig broadcastadres (in dit geval, 192.168.1.255); Het MAC adres van de kaart (ether) is 00:a0:cc:da:da:da; De fysieke mediaselectie staat in autoselectiemodus (media: Ethernet autoselect (100baseTX <full-duplex>)). dc1 is ingesteld om met 10baseT/UTP media te werken. Meet informatie over de mogelijke media types staan in de hulppagina's voor het betreffende stuurprogramma. De status van de link (status) is active, dat wil zeggen dat de drager is gevonden. Bij dc1staat echter status: no carrier. Dit is normaal als er geen ethernet kabel in de kaart gestoken is. Als de uitvoer &man.ifconfig.8; uitvoer er ongeveer zoals hieronder uitziet, dan is de netwerkkaart nog niet ingesteld: dc0: flags=8843<BROADCAST,SIMPLEX,MULTICAST> mtu 1500 ether 00:a0:cc:da:da:da Om de kaart te instellen zijn root rechten nodig. De netwerkkaart van vanaf de console worden ingesteld met &man.ifconfig.8;, maar dan moet dat na elke herstart herhaald worden. Daarom wordt het vrijwel altijd in /etc/rc.conf gezet. In /etc/rc.conf moet voor elke netwerkkaart in een systeem een regel toegevoegd worden. In het huidige voorbeeld zou dat het volgende kunnen zijn: ifconfig_dc0="inet 192.168.1.3 netmask 255.255.255.0" ifconfig_dc1="inet 10.0.0.1 netmask 255.255.255.0 media 10baseT/UTP" dc0, dc1, enzovoort, moeten vervangen worden door de correcte stuurprogramma's voor de netwerkkaarten, zo ook de IP adressen. In de handleiding van het stuurprogramma en van &man.ifconfig.8; staan meer details over de mogelijke opties en in &man.rc.conf.5; staat meer informatie over /etc/rc.conf. Als het netwerk al is ingesteld tijdens het installeren van &os; staan er al enkele regels met betrekking tot de netwerkkaart(en) in /etc/rc.conf. Het is dus handig /etc/rc.conf te controleren voordat er regels toegevoegd worden. Ook /etc/hosts moet worden gewijzigd om de namen en IP adressen van verschillende machines op het lokale netwerk, als ze er nog niet in staan. Meer informatie staat in &man.hosts.5; en /usr/share/examples/etc/hosts. Testen en problemen oplossen Als de veranderingen in /etc/rc.conf zijn gemaakt, moet het systeem opnieuw gestarten worden (of moeten nauwkeurig alle daemons gestart of herstart worden). Veranderingen aan de interface(s) worden dan toegepast en dan kan er controleerd worden of herstarten goed werkt zonder foutmeldingen. Als de kaart werkt, maar de performance is slecht, dan kan het de moeite waard zijn om &man.tuning.7; door te nemen. Incorrecte netwerkinstellingen kunnen ook tot langzame verbindingen leiden. Soms kunnen enkele device timeouts optreden. Met sommige kaarten is dit normaal gedrag. Maar als dit continu gebeurd of storend is, is het verstandig uit te zoeken of er geen sprake is van een hardwareconfict tussen de netwerkkaart en een ander apparaat. Ook dient nogmaals de bekabeling gecontroleer te worden. Misschien zit er niets anders op dan een andere netwerkkaart te gebruiken. Het is ook mogelijk dat er watchdog timeout foutmeldingen optreden. Als eerste moet dan de netwerkkabel fecontroleerd worden. Veel kaarten hebben een PCI slot nodig dat Bus Mastering ondersteunt. Sommige oudere moederborden hebben maar één PCI slot waarmee dit kan (meestal slot 0). In de documentatie van de netwerkkaart en het moederbord is na te gaan of dit het probleem is. No route to host meldingen treden op als het systeem niet in staat is om een pakket naar de eindbestemming te routeren. Dit kan gebeuren als er geen standaardroute aangegeven is of als er een kabel niet verbonden is. De uitvoer van netstat -rn moet gecontroleerd worden en of er een geldige route is naar de bestemming. Mocht dit niet het geval zijn, dan staat er meer informatie in . ping: sendto: Permission denied foutmeldingen worden vaak veroorzaakt door een verkeerd ingestelde firewall. Als de kernel ipfw activeert bij het opstarten zonder dat er firewallregels zijn gedefiniëerd, is het standaardbeleid om alle verkeer te weigeren, zelfs pings! In staat meer informatie. Er kan ook sprake zijn van onvoldoende prestaties doordat de mediaselectie instelling niet optimaal is. In dergelijke gevallen is het mogelijk om de mediaselectie niet als autoselect in te stellen, maar expliciet aan te geven wat de mediaselectie moet zijn, bijvoorbeeld 10baseT/UTP voor twisted pair. Hoewel dit voor de meeste hardware helpt, kan het zijn dat de problemen blijven. Dan moeten nogmaals de netwerkinstellingen gecontroleerd worden en geeft de &man.tuning.7; handleiding wellicht meer informatie. Virtuele hosts virtuele hosts IP aliassen &os; wordt veel gebruikt voor virtuele sitehosting, waarbij één fysieke server er op het netwerk uitziet alsof het meerdere servers zijn. Dit kan bereikt worden door meerdere IP adressen toe te kennen aan dezelfde interface. Een bepaalde netwerkinterface heeft een echt adres en kan daarnaast een willekeurig aantal alias adressen hebben. Normaliter worden dergelijke aliassen toegevoegd door aliasregels toe te voegen aan /etc/rc.conf. Een aliasregel voor de interface fxp0 ziet er zo uit: ifconfig_fxp0_alias0="inet xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx" De aliasregels moeten beginnen met alias0 en moete elkaar dan opvolgen (bijvoorbeeld _alias1,, _alias2, enzovoort). Het instelproces stopt als er een nummer ontbreekt. Het is belangrijk dat aliassen het juiste netmasker hebben. Dit is eenvoudig: Een bepaalde interface moet altijd één adres hebben dat het netmasker van het netwerk correct representeert. Elk ander adres binnen dit netwerk op deze interface (alias) moet een netmasker van allemaal 1'en (bits) hebben (getoond als 255.255.255.255 of 0xffffffff). Een voorbeeld. Stel de fxp0 interface is verbonden met twee netwerken, het 10.1.1.0 netwerk met masker 255.255.255.0 en het 202.0.75.16 met netmasker 255.255.255.240. Het systeem moet ook de adressen 10.1.1.1 tot en met 10.1.1.5 en 202.0.75.17 tot en met 202.0.75.20 krijgen. Zoals hierboven vermeld, heeft alleen het eerste adres in een netwerkreeks (in dit geval 10.0.1.1 en 202.0.75.17) een geldig netmasker. Alle overige (10.1.1.2 tot en met 10.1.1.5 en 202.0.75.18 tot en met 202.0.75.20) moeten ingesteld worden met het netmasker 255.255.255.255. De volgende regels voor /etc/rc.conf stellen een adapter in voor het bovenstaande scenario: ifconfig_fxp0="inet 10.1.1.1 netmask 255.255.255.0" ifconfig_fxp0_alias0="inet 10.1.1.2 netmask 255.255.255.255" ifconfig_fxp0_alias1="inet 10.1.1.3 netmask 255.255.255.255" ifconfig_fxp0_alias2="inet 10.1.1.4 netmask 255.255.255.255" ifconfig_fxp0_alias3="inet 10.1.1.5 netmask 255.255.255.255" ifconfig_fxp0_alias4="inet 202.0.75.17 netmask 255.255.255.240" ifconfig_fxp0_alias5="inet 202.0.75.18 netmask 255.255.255.255" ifconfig_fxp0_alias6="inet 202.0.75.19 netmask 255.255.255.255" ifconfig_fxp0_alias7="inet 202.0.75.20 netmask 255.255.255.255" Instellingenbestanden <filename>/etc</filename> layout Instellingengegevens wordt in een aantal mappen bewaard. Daar zijn onder andere: /etc Generieke systeeminstellingenbestanden, specifiek voor het systeem. /etc/defaults De standaardversies van systeeminstellingenbestanden die gebruikt worden als er geen in /etc staat. /etc/mail Extra &man.sendmail.8; instellingenbestanden of instellingenbestanden voor andere MTAs. /etc/ppp Instellingen voor zowel user- als kernel-ppp programma's. /etc/namedb Standaardlocatie voor &man.named.8; gegevens. Normaal gesproken bevinden zich hier named.conf en zonebestanden. /usr/local/etc Instellingenbestanden voor geïnstalleerde software. Kan submappen hebben waarin bij elkaar horende instellingengegevens van een applicatie gegroepeerd zijn. /usr/local/etc/rc.d Start en stop scripts voor geïnstalleerde diensten. /var/db Automatisch gemaakte systeemspecifieke databasebestanden, zoals de packagedatabase, de &man.locate.1; database, enzovoort. Hostnamen hostnaam DNS <filename>/etc/resolv.conf</filename> resolv.conf In /etc/resolv.conf wordt voorgeschreven op welke wijze &os; het Domain Name System (DNS) moet gebruiken. De meest voorkomende termen in resolv.conf zijn: nameserver Het IP adres van een naamserver die ondervraagd moet worden voor naam/IP conversie. De servers worden in volgorde geprobeerd en het maximale aantal is drie. search Zoeklijst voor het opzoeken van hostnamen. Meestal wordt deze bepaald door het domein waarop de lokale hostnaam zich bevindt. domain De lokale domeinnaam. Een typisch resolv.conf bestand: search example.com nameserver 147.11.1.11 nameserver 147.11.100.30 search en domain dienen niet tegelijk gebruikt te worden. Als DHCP wordt gebruikt: &man.dhclient.8; overschrijft meestal resolv.conf met informatie ontvangen van de DHCP server. <filename>/etc/hosts</filename> hosts /etc/hosts is een eenvoudige tekstdatabase uit de dagen van het oude internet. Het werkt samen met DNS en NIS om namen en IP adressen over en weer te vertalen. Lokale computers, verbonden via een LAN, kunnen hier het beste in opgenomen worden om zo op simpele wijze naam/IP conversie voor een LAN te hebben, zonder noodzaak voor een &man.named.8; server. Ook kunnen naamaliassen toegekend worden (vergelijkbaar met CNAMES bij DNS). Op soortgelijke wijze kan /etc/hosts gebruikt worden als een (zeer beperkte) lokale DNS cache. # $&os;$ # # Host Database # Dit bestand hoort de adressen en aliassen te bevatten # voor de lokale hosts die dit bestand gebruiken. # Bij gebruik van DNS of NIS hoeft dit bestand helemaal niet gebruikt # te worden. Zie /etc/nsswitch.conf voor de volgorde van resolutie. # # ::1 localhost localhost.my.domain myname.my.domain 127.0.0.1 localhost localhost.my.domain myname.my.domain # # Verzonnen netwerk. #10.0.0.2 myname.my.domain myname #10.0.0.3 myfriend.my.domain myfriend # # Volgens RFC 1918 mogen de volgende IP netwerken gebruikt worden # als private netwerken die niet met internet verbonden zijn: # # 10.0.0.0 - 10.255.255.255 # 172.16.0.0 - 172.31.255.255 # 192.168.0.0 - 192.168.255.255 # # Als er toch verbinding moet zijn met internet, zijn echte # officieel toegewezen nummers nodig. Probeer ECHT GEEN eigen # netwerknummers te verzinnen, maar vraag ze op bij de provider # (als die er is) of bij de Internet Registry (ftp naar # rs.internic.net, map `/templates'). # /etc/hosts heeft als formaat: [Internet address] [official hostname] [alias1] [alias2] ... Bijvoorbeeld: 10.0.0.1 myRealHostname.example.com myRealHostname foobar1 foobar2 In &man.hosts.5; staat meer informatie. Logboekbestanden instellen logboekbestanden <filename>syslog.conf</filename> syslog.conf syslog.conf is het instellingenbestand voor het programma &man.syslogd.8;. Het geeft aan welke soorten syslog berichten er gelogd moeten worden en naar welke logboekbestanden, apparaten, gebruikers of machines. # $&os;$ # # Spaties zijn TOEGESTAAN als veldscheiding in dit bestand. # Maar andere *nix-achtige systemen eisen nog steeds het gebruik # van tabs als veldscheiding. Als dit bestand gedeeld wordt met # andere systemen, is het verstandig alle tabs als veldscheiding # te gebruiken. # Zie ook de handleding van syslog.conf(5). *.err;kern.debug;auth.notice;mail.crit /dev/console *.notice;kern.debug;lpr.info;mail.crit;news.err /var/log/messages security.* /var/log/security mail.info /var/log/maillog lpr.info /var/log/lpd-errs cron.* /var/log/cron *.err root *.notice;news.err root *.alert root *.emerg * # verwijder het commentaarkarakter om alle schrijfacties naar # /dev/console naar /var/log/console.log te schrijven. #console.info /var/log/console.log # verwijder het commentaarkarakter om alle berichten naar # /var/log/all.log te schrijven. #*.* /var/log/all.log # # verwijder het commentaarkarakter om alle liggen naar een andere # host in te schakelen met de naam loghost. #*.* @loghost # # verwijder het commentaarkarakter als inn draait. # news.crit /var/log/news/news.crit # news.err /var/log/news/news.err # news.notice /var/log/news/news.notice !startslip *.* /var/log/slip.log !ppp *.* /var/log/ppp.log In &man.syslog.conf.5; staat meer informatie. <filename>newsyslog.conf</filename> newsyslog.conf newsyslog.conf is het instellingenbestand voor &man.newsyslog.8;, een programma dat op gezette tijden via &man.cron.8; wordt uitgevoerd. &man.newsyslog.8; stelt vast wanneer logboekbestanden gearchiveerd moeten worden of anderszins opnieuw gerangschikt moeten worden. logfile wordt hernoemd naar logfile.0, logfile.0 naar logfile.1, enzovoort. newsyslog.conf geeft aan welke logboekbestanden beheerd moeten worden, hoeveel er in archieven bewaard moeten worden en wanneer ze aangemaakt moeten worden. Logboekbestanden kunnen gereorganiseerd en/of gearchiveerd worden als ze een bepaalde grootte bereikt hebben of op een bepaald periodiek tijdstip of een bepaalde datum. # configuration file for newsyslog # $&os;$ # # filename [owner:group] mode count size when [ZB] [/pid_file] [sig_num] /var/log/cron 600 3 100 * Z /var/log/amd.log 644 7 100 * Z /var/log/kerberos.log 644 7 100 * Z /var/log/lpd-errs 644 7 100 * Z /var/log/maillog 644 7 * @T00 Z /var/log/sendmail.st 644 10 * 168 B /var/log/messages 644 5 100 * Z /var/log/all.log 600 7 * @T00 Z /var/log/slip.log 600 3 100 * Z /var/log/ppp.log 600 3 100 * Z /var/log/security 600 10 100 * Z /var/log/wtmp 644 3 * @01T05 B /var/log/daily.log 640 7 * @T00 Z /var/log/weekly.log 640 5 1 $W6D0 Z /var/log/monthly.log 640 12 * $M1D0 Z /var/log/console.log 640 5 100 * Z In &man.newsyslog.8; staat meer informatie. <filename>sysctl.conf</filename> sysctl.conf sysctl sysctl.conf lijkt veel op rc.conf. Waardetoekenning heeft weer de vorm variable=value. De ingestelde &man.sysctl.8; waarden worden doorgevoerd op het moment dat het systeem naar multi-user modus gaat. Niet alle variabelen kunnen in deze modus gewijzigd worden. Hieronder staat een voorbeeld van sysctl.conf waarin het loggen van gevallen waarin een proces beëindigd wordt ten gevolge van een fataal signaal (bijvoorbeeld een TERM signaal of een exitcode van een programma dat crasht) wordt uitgezet en waarin de &linux; emulatielaag zodanig wordt ingesteld dat een &linux; programma ook echt rapporteert dat het onder &os; draait: kern.logsigexit=0 # Do not log fatal signal exits (e.g. sig 11) compat.linux.osname=&os; compat.linux.osrelease=4.3-STABLE Optimaliseren met sysctl sysctl optimalisering met sysctl &man.sysctl.8; is een interface waarmee veranderingen gemaakt kunnen worden aan een draaiend &os; systeem. Er zijn onder meer vele geavanceerde opties voor de TCP/IP stack en het virtuele geheugensysteem, waarmee een ervaren systeembeheerder de systeemprestaties drastisch kan verbeteren. Met &man.sysctl.8; kunnen meer dan vijfhonderd ststeemvariabelen opgevraagd en ingesteld worden. In essentie heeft &man.sysctl.8; twee funkties: het lezen en wijzigen van systeeminstellingen. Om alle leesbare variabelen te tonen: &prompt.user; sysctl -a Om een bepaalde variabele op te vragen, bijvoorbeeld kern.maxproc: &prompt.user; sysctl kern.maxproc kern.maxproc: 1044 Om een bepaalde variabele toe te kennen (te wijzigen), is de syntaxis variable=value: &prompt.root; sysctl kern.maxfiles=5000 kern.maxfiles: 2088 -> 5000 Waarden van sysctl variabelen zijn doorgaans strings (tekst), getallen of booleans (1 als waar, 0 als onwaar). Om automatisch variabelen in te stellen als de machine start, kunnen ze toegevoegd worden aan /etc/sysctl.conf. Meer informatie staat in &man.sysctl.conf.5; en . Tom Rhodes Geschreven door &man.sysctl.8; alleen-lezen In sommige gevallen is het wenselijk zijn om &man.sysctl.8; waarden die alleen-lezen zijn toch te wijzigen. Hoewel dit soms onontkoombaar is, kan het alleen bij een (her)start gedaan worden. Op sommige laptops is bijvoorbeeld het apparaat &man.cardbus.4; niet in staat om geheugenregio's af te tasten, met als gevolg foutmeldingen als: cbb0: Could not map register memory device_probe_and_attach: cbb0 attach returned 12 In dergelijke gevallen moeten er meestal enkele &man.sysctl.8; instellingen gewijzigd worden die alleen-lezen zijn en een standaardwaarde hebben. Dit kan bereikt worden door &man.sysctl.8; OIDs in de lokale /boot/loader.conf te zetten. Standaardinstellingen staan in /boot/defaults/loader.conf. Om het bovenstaande probleem op te lossen moet in in /boot/loader.confhw.pci.allow_unsupported_io_range=1 ingesteld worden. Dan werkt &man.cardbus.4; wel goed. Harde schijven optimaliseren Sysctl variabelen <varname>vfs.vmiodirenable</varname> vfs.vmiodirenable De sysctl variabele vfs.vmiodirenable kan de waarde 0 (uit) of 1 (aan) hebben. De standaardwaarde is 1. Deze variabele bepaalt hoe mappen door het systeem in een cache bewaard worden. De meeste mappen zijn klein en gebruiken slechts een klein fragment (typisch 1 K) in het bestandssysteem en nog minder (typisch 512 bytes) in de buffercache. Als deze variabele uit staat (op 0) bewaart de buffercache slechts een bepaald aantal mappen in de cache, ook al is er een overvloed aan geheugen beschikbaar. Wanneer deze aan staat (op 1), wordt de VM pagecache gebruikt, waardoor voor het cachen van mappen al het geheugen kan worden gebruikt. Het is echter wel zo dat het minimale in-core geheugen dat gebruikt wordt om een map te cachen in dat geval de fysieke pagegrootte is (typisch 4 K) in plaats van 512  bytes. Het is aan te raden deze optie aan te laten staat als gebruik gemaakt worden van diensten die met grote aantallen bestanden werken, zoals webcaches, grote mailsystemen en newsservers. Als deze optie aan blijft staan, verlaagt die de prestaties niet, ook al kost het meer geheugen. Door experimenteren is dit voor een systeem na te gaan. <varname>vfs.write_behind</varname> vfs.write_behind De sysctl variabele vfs.write_behind staat standaard aan (1). Dit betekent dat het bestandssysteem gegevens naar het medium gaat schrijven op het moment dat er een volledig cluster aan data verzameld is. Dit is meestal het geval bij het schrijven van grote sequentiële bestanden. Het idee is om te voorkomen dat de buffercache verzadigd raakt met vuile buffers zonder dat dit bijdraagt aan de I/O prestaties. Dit kan echter processen ophouden en onder sommige omstandigheden is het wellicht beter deze sysctl uit te zetten. <varname>vfs.hirunningspace</varname> vfs.hirunningspace De sysctl variabele vfs.hirunningspace bepaalt hoeveel nog te schrijven gegevens er in het complete systeem op elk moment in de wachtrij naar schijfcontrollers mag staan. De standaardwaarde is meestal voldoende, maar op machines met veel schijven, is het beter deze te verhogen naar vier of vijf megabyte. Het instellen van een te hoge waarde (groter dan de schrijfdrempel van de buffercache) kan leiden tot zeer slechte prestaties bij clustering. Stel deze waarde niet arbitrair hoog in! Hogere schrijfwaarden kunnen vertraging veroorzaken in het lezen, als dit tegelijk plaatsvindt. Er zijn verscheidene andere sysctls voor buffercache en VM pagecache. Het wordt afgeraden deze te wijzigen. Sinds &os; 4.3 is het VM systeem zeer goed in staat zichzelf automatisch te optimaliseren. <varname>vm.swap_idle_enabled</varname> vm.swap_idle_enabled De sysctl variabele vm.swap_idle_enabled is nuttig in grote multi-user systemen met veel gebruikers die af- en aanmelden en veel onbenutte processen. Dergelijke systemen hebben de neiging om voortdurend de vrije geheugenreserves onder druk te zetten. Het is mogelijk om de prioriteit van geheugenpages die verband houden met onbenutte processen sneller te laten dalen dan met het normale pageout algoritme, door deze sysctl aan te zetten en via vm.swap_idle_threshold1 en vm.swap_idle_threshold2 de swapout hysterese (in seconden onbenut) af te stemmen. Deze optie dient alleen gebruikt te worden als ze echt nodig is, want de andere kant van de medaille is dat dit eerder pre-page geheugen inhoudt in plaats van later, waardoor het meer wisselbestand- en schijfbandbreedte kost. In een klein systeem heeft deze optie een voorspelbaar effect, maar in grote systemen waar al sprake is van een matige paging kan deze optie het mogelijk maken voor het VM systeem om hele processen gemakkelijk in en uit het geheugen te halen. <varname>hw.ata.wc</varname> hw.ata.wc Ten tijde van &os; 4.3 is er geflirt met het uitzetten van IDE schrijfcaching. Hierdoor neemt de bandbraadte naar IDE schijven af, maar het werd als noodzakelijk beschouwd vanwege ernstige problemen met gegevensinconsistentie die door harde schijfproducenten geëintroduceerd waren. Het probleem is dat IDE schijven niet de waarheid vertellen over wanneer een schrijfactie klaar is. Door IDE schrijfcaching wordt data niet alleen ongeordend geschreven, maar soms kan zelfs het schrijven van sommige blokken voortdurend uitgesteld worden als er sprake is van een hoge schijfbelasting. Een crash of stroomstoring kan dan ernstige corruptie van het bestandssysteem veroorzaken. Daarom werd de standaardinstelling van &os; voor alle zekerheid gewijzigd. Helaas was het resultaat een groot verlies aan prestaties en na die release is de standaardwaarde weer terug veranderd. Met de sysctl variabele hw.ata.wc kan gecontroleerd worden of schrijfcaching aan of uit staat. Als schrijfcaching uit staat, het die weer aangezet worden door hw.ata.wc naar 1 te zetten. Aangezien dit een kernelvariabele is, moet deze ingesteld worden vanuit de bootloader tijdens het opstarten. Nadat de kernel eenmaal opgestart is, heeft het wijzigen van deze sysctl geen effect. Meer informatie staat in &man.ata.4;. <literal>SCSI_DELAY</literal> (<varname>kern.cam.scsi_delay</varname>) kern.cam.scsi.delay kernelopties SCSI_DELAY De SCSI_DELAY kernelinstelling kan gebruikt worden om de opstarttijd te versnellen. De standaardwaarde is nogal hoog en kan 15 seconden vertraging veroorzaken. Met modernere SCSI systemen is 5 seconden al voldoende. Nieuwere versies van &os; (5.0 en hoger) gebruiken de opstartvariabele kern.cam.scsi_delay. Zowel deze als de optie SCSI_DELAY gebruiken waarden uitgedrukt in milliseconden en niet in seconden. Softupdates Softupdates tunefs &man.tunefs.8; kan gebruikt worden om een bestandsysteem nauwkeurig af te stellen. Het heeft veel opties, maar nu wordt alleen het aan- en uitzetten van softupdates besproken. Dat gaat als volgt: &prompt.root; tunefs -n enable /filesystem &prompt.root; tunefs -n disable /filesystem Een bestandssysteem kan niet met &man.tunefs.8; gewijzigd worden als het gemount is. Softupdates aanzetten wordt dus in het algemeen gedaan vanuit single-user modus, voordat partities gemount zijn. Vanaf &os; 4.5, is het mogelijk om softupdates aan te zetten op het moment dat de bestandssystemen aangemaakt worden, door middel van de -U optie van &man.newfs.8;. Softupdates zorgen voor een drastische verbetering van de meta-data prestaties, met name het aanmaken en verwijderen van bestanden, door gebruik van een geheugencache. Het wordt dan ook aangeraden om op alle bestandssystemen softupdates te gebruiken. Er zijn twee nadelen aan softupdates: softupdates garandeert een consistent bestandssysteem in geval van een crash, maar het kan makkelijk enkele seconden (zelfs een minuut) achter liggen met het daadwerkelijk bijwerken op de fysieke harde schijf. Als een systeem crasht wordt wellicht meer werk verloren dan anders het geval zou zijn. Daarnaast vertraagt softupdates het vrijgeven van bestandssysteemblokken. Als een bestandssysteem (zoals de root partitie) bijna vol is, dan kan het verrichten van een grote update, zoals make installworld, ertoe leiden dat het bestandssysteem ruimtegebrek krijgt en dat daardoor de operatie mislukt. Meer over softupdates Softupdates details Er zijn traditioneel twee methodes om de metadata van een bestandssysteem terug naar de schijf te schrijven. Het bijwerken van metadata houdt het bijwerken van van niet-inhoudelijke data zoals inodes of mappen in. Historisch gezien was het gebruikelijk om metadataupdates synchroon weg te schrijven. Als een map bijvoorbeeld gewijzigd was, wachtte het systeem totdat de verandering daadwerkelijk naar de schijf geschreven was. De databuffers (de inhoud van een bestand) werden doorgeschoven naar de buffercache en op een later moment asynchroon op de schijf opgeslagen. Het voordeel van deze benadering is dat ze altijd veilig is. Als het systeem faalt tijdens het bijwerken, is de metadata nog altijd consistent. Een bestand kan volledig gecreëerd zijn of helemaal niet. Als de datablokken van een bestand nog niet van de buffercache naar de schijf geschreven zijn ten tijde van de crash, is &man.fsck.8; in staat om dit te herkennen en het bestandssysteem te repareren door de lengte van het bestand nul te maken. Deze implementatie is ook helder en eenvoudig. Het nadeel is echter dat het wijzigen van metadata een traag proces is. Een rm -r commando benadert bijvoorbeeld alle bestanden in een map sequentiëel, maar elke mapverandering (verwijderen van een bestand) wordt synchroon naar de schijf geschreven. Dit omvat ook het bijwerken van de map zelf, van de inodetabel en mogelijk ook van indirecte blokken die voor het bestand in kwestie zijn gealloceerd. Gelijksoortige processen spelen zich af bij een commando als tar -x, waarbij een grote bestandshiëearchie wordt uitgepakt. De tweede mogelijkheid is om het bijwerken van metadata asynchroon weg te schrijven. Dit is standaard in &linux;/ext2fs en als een *BSD ufs bestandssysteem met mount -o async gemount is, is de werking hetzelfde. Alle bijwerkingen aan metagegevens worden eenvoudigweg doorgegeven aan de buffercache en vermengd met inhoudelijke updates van de bestandsgegevens. Het voordeel is een grote winst aan snelheid, omdat er niet telkens gewacht hoeft te worden op het bijwerken van metagegevens tot deze daadwerkelijk naar de schijf geschreven zijn. De implementatie is ook in dit geval helder en eenvoudig. Het grote nadeel is uiteraard dat er geen enkele garantie is voor de consistentie van het bestandssysteem. Als het systeem faalt tijdens een operatie waarbij veel metagegevens worden bijgewerkt (bijvoorbeeld door een stroomstoring of iemand drukt op de resetknop), blijft het bestandssysteem in een onvoorspelbare toestand achter. Er is geen mogelijkheid om de toestand van het bestandssysteem te onderzoeken als het systeem weer opstart, want de datablokken van een bestand kunnen al weggeschreven zijn geweest terwijl het wegschrijven van bijwerkingen aan de inodetabel of de bijhorende map nog niet plaats heeft gevonden. Het is zelfs onmogelijk om een fsck te implementeren die de overgebleven chaos kan opruimen: de benodigde informatie is gewoon niet volledig aanwezig op de schijf. Als een bestandssysteem op deze manier onherstelbaar beschadigd is, is de enige optie &man.newfs.8; te gebruiken en vervolgens te herstellen van een backup. De gebruikelijke oplossing voor dit probleem is het implementeren van dirty region logging, ook wel journaling genoemd, hoewel deze term niet consistent gebruikt wordt en soms ook wordt gebruikt voor andere vormen van transactielogging. Het bijwerken van metagegevens wordt nog steeds synchroon geschreven, maar slechts naar een klein gebied van de schijf. Later worden ze dan naar de juiste locatie verplaatst. Omdat het loggebied klein is, hoeven de koppen van de schijf zelfs tijdens schrijfintensieve operaties nog maar over een kleine fysieke afstand te bewegen en door deze snellere respons zijn dit soort operaties sneller dan op de traditionele manier. De extra complexiteit van de implementatie is nogal beperkt, dus het risico van introductie van extra bugs valt mee. Een nadeel is dat alle metagegevens tweemaal geschreven worden (eerst naar het loggebied en later nog eens naar de definitieve locatie). Dus bij normaal gebruik kan er sprake zijn van wat men wel noemt een performance pessimization. Anderzijds kunnen in geval van een crash alle nog uitstaande metagegevensoperaties snel worden teruggedraaid of vanuit het loggebied alsnog worden afgemaakt, wanneer de machine weer opstart. Het bestandssysteem start dan snel op. Kirk McKusick, de vader van het Berkeley FFS, loste dit probleem op met softupdates, wat betekent dat alle uitstaande acties voor het bijwerken van metagegevens in het geheugen bewaard worden en dan geordend naar de schijf geschreven worden. Dit heeft het gevolg dat in geval van intensieve operaties met betrekking tot metagegevens, latere bijwerkingen aan een item eerdere bewerkingen opvangen (catch) als deze nog in het geheugen zitten en nog niet weggeschreven waren. Dus alle operaties, op bijvoorbeeld een map, worden in het algemeen eerst in het geheugen uitgevoerd voordat er wordt bijgewerkt naar schijf. De datablokken worden geordend conform hun positie, zodat ze nooit weggeschreven worden voordat hun metagegevens geschreven zijn. Als het systeem een crash ondervindt, veroorzaakt dat impliciet het terugdraaien van uitstaande operaties (log rewind): alle operaties die nog niet weggeschreven waren lijken nooit gebeurd te zijn. Zo wordt een consistent bestandssysteem in stand gehouden dat eruit ziet alsof het 30 tot 60 seconden eerder was. Het gebruikte algoritme garandeert dat alle bronnen die in gebruik zijn als zodanig gemarkeerd worden in hun daarvoor geschikte bitmaps: blokken en inodes. Na een crash is de enige allocatiefout die kan optreden dat bronnen gemarkeerd kunnen zijn als in gebruik (used), terwijl ze feitelijk alweer beschikbaar (free) zijn. &man.fsck.8; herkent deze situatie en stelt dergelijke vrij te maken bronnen opnieuw beschikbaar. Het is volkomen veilig om na een crash te negeren dat het bestandssysteem niet schoon is en het tot mounten te dwingen met mount -f. Om niet langer gebruikte bronnen vrij te maken moet later &man.fsck.8; uitgevoerd worden. Dit is dan ook het idee achter background fsck: op het moment dat het systeem aan het opstarten is, wordt er alleen een snapshot van het systeem bewaard. fsck kan later uitgevoerd worden. Alle bestandssystemen kunnen dirty gemount worden en het systeem kan gewoon verder opstarten naar multi-user modus. Vervolgens zijn er fscks gepland die in de achtergrond draaien voor elk bestandssysteem dat niet schoon is en waarmee bezette bronnen vrijgegeven worden. Bestandssystemen die geen gebruik maken van softupdates moeten echter nog steeds gebruik maken van de normale fsck in de voorgrond. Het voordeel van softupdates is dat operaties op metagegevens bijna net zo snel zijn als asynchrone updates (dat wil zeggen sneller dan met logging, waarbij de metagegevens keer keer geschreven worden). Nadelen zijn de complexiteit van de code (wat een groter risico op bugs impliceert in een gebied dat bijzonder gevoelig is voor verlies van gebruikersgegevens) en een groter geheugenverbruik. Tevens moet de gebruiker wennen aan enkele eigenaardigheden. Na een crash lijkt de toestand van het bestandssysteem wat ouder. In situaties waar de standaard synchrone benadering een aantal lege bestanden zou hebben achtergelaten na fsck, is het met softupdates juist zo dat dergelijke bestanden er helemaal niet zijn, omdat de metadata of de bestandsinhoud nooit naar de schijf is geschreven. Schijfruimte wordt pas vrijgegeven als de bijwerkingen aan metagegevens en inhoudelijke bestandsdata weggeschreven zijn, wat mogelijk pas enige tijd na het uitvoeren van rm plaatsvindt. Dit kan problemen veroorzaken als er grote hoeveelheden data naar een bestandssysteem geschreven worden dat onvoldoende vrije ruimte heeft om alle bestanden twee keer te kunnen bevatten (bijvoorbeeld in /tmp). Fijnafstemming van kernellimieten fijnafstemming kernellimieten Bestandsproceslimieten <varname>kern.maxfiles</varname> kern.maxfiles kern.maxfiles kan worden verhoogd of verlaagd, afhankelijk van de systeembehoeften. Deze variabele geeft het maximale aantal bestandsdescriptors op een systeem. Als de bestandsdescriptortabel vol is,.toont de systeembuffer meerdere malen file: table is full, hetgeen achteraf te zien is net dmesg. Elk geopend bestand, socket of fifo heeft een bestandsdescriptor. Een grote produktieserver kan makkelijk enige duizenden bestandsdescriptors nodig hebben, afhankelijk van het soort en aantal diensten die tegelijk draaien. De standaardwaarde voor kern.maxfiles - wordt bepaald door de optie MAXUSERS in + wordt bepaald door de optie maxusers in het bestand met kernelinstellingen. kern.maxfiles groeit evenredig met de - waarde van MAXUSERS. Als een aangepaste + waarde van maxusers. Als een aangepaste kernel wordt gebouwd, is het een goed idee om deze kerneloptie in te stellen afhankelijk van het gebruikt van een systeemhet (maar niet te laag). Hoewel een produktieserver misschien niet 256 gebruikers gelijktijdige gebruikers heeft, kunnen de benodigde systeembronnen best vergelijkbaar zijn met een grootschalige webserver. + De optie maxusers stelt de grootte van + een aantal belangrijke systeemtabellen in. Dit aantal moet + ruwweg gelijk zijn aan het aantal gebruikers dat verwacht + wordt gelijktijdig van de machine gebruik te maken. + + Met ingang van &os; 4.5 stelt het systeem deze + waarde zelf in als deze uitdrukkelijk op 0 + is gezet. + + + Het auto-tuning-algoritme stelt + maxusers in afhankelijk van de + hoeveelheid geheugen in het systeem, met een minimum van + 32 en een maximum van 384. + + + In &os; 5.X en hoger heeft maxusers + een standaardwaarde van 0 als deze niet gespecificeerd is. + Als er een versie van &os; lager dan 4.5 wordt gebruikt of + het gewenst is om de waarde zelf te beheren, wordt aangeraden + om maxusers minstens op 4 te zetten, met + name als het X Window systeem in gebruik is of als er + software gecompileerd wordt. De reden hiervoor is dat de + belangrijkste tabel die door maxusers + ingesteld wordt, het maximum aantal processen is, dat + ingesteld wordt op 20 + 16 * maxusers, dus + als maxusers op 1 ingesteld wordt, zijn er + maar 36 gelijktijdige processen mogelijk, inclusief de + ongeveer achttien processen die door het systeem tijdens het + opstarten start en de ongeveer vijftien processen die + waarschijnlijk aangemaakt worden door het opstarten van het X + Window systeem. Zelfs een eenvoudige taak als het afbeelden + van een hulppagina start negen processen op om de pagina te + filteren, te decomprimeren en af te beelden. Als + maxusers op 64 ingesteld wordt, zijn er + 1044 gelijktijdige processen mogelijk, wat genoeg moet zijn + voor bijna alle soorten gebruik. Als echter de gevreesde + fout proc table full verschijnt als er + geprobeerd wordt om een programma op te starten of als er een + server gedraaid wordt met een groot aantal gelijktijdige + gebruikers, zoals ftp.FreeBSD.org, kan het getal altijd + verhoogd worden en kan de kernel opnieuw gebouwd + worden. + - Vanaf &os; 4.5 kan meestal het beste - MAXUSERS op 0 gezet - worden in het bestand met kernelinstellingen. Er wordt dan - een redelijke waarde gekozen, die gebaseerd is op de - hoeveelheid RAM in een systeem. + maxusers stelt + geen grens aan het aantal gebruikers + dat op de machine kan aanmelden. Het stelt gewoon + verschillende tabelgroottes in op redelijke waardes, + uitgaande van het maximum aantal gebruikers dat + waarschijnlijk de machine gebruikt en van het aantal + processen dat elk van deze gebruikers zal draaien. Een + sleutelwoord dat wel het aantal + gelijktijdige aanmeldingen op afstand en X-terminalvensters + begrensd is pseudo-device pty + 16. In &os; 5.X kan dit getal + genegeerd worden omdat daar het stuurprogramma &man.pty.4; + auto-cloning is. Er kan eenvoudig gebruik + worden gemaakt van de regel device pty + in het instellingenbestand. <varname>kern.ipc.somaxconn</varname> kern.ipc.somaxconn De sysctl variabele kern.ipc.somaxconn beparkt de grootte van de luisterwachtrij voor het accepteren van nieuwe TCP verbindingen. De standaardwaarde van 128 is meestal te laag voor robuuste behandeling van nieuwe verbindingen in een zwaarbeladen webserver omgeving. Voor zulke omgevingen wordt aangeraden deze waarde te verhogen tot 1024 of hoger. De dienstdaemon beperkt misschien zelf de luisterwachtrij (bijvoorbeeld &man.sendmail.8; of Apache), maar heeft vaak een mogelijkheid in een configuratiebestand de wachtrijgrootte aan te passen. Grote luisterwachtrijen zijn ook beter in het ontwijken van Ontzegging van Dienst (DoS) aanvallen. Netwerkbeperkingen De kerneloptie NMBCLUSTERS bepaalt het aantal netwerk Mbufs dat beschikbaar is voor een systeem. Een veel bezochte server met een laag aantal Mbufs beperkt de mogelijkheden van &os;. Elk cluster staat voor ongeveer 2 K geheugen, dus een waarde van 1024 stelt 2 megabyte aan kernelgeheugen voor, dat is gereserveerd voor netwerkbuffers. Een simpele berekening geeft aan hoeveel er nodig is. Stel dat een webserver met een maximum van 1000 simultane verbindingen voor elke verbinding 16 K aan ontvangst netwerkbuffers en 16 K aan zendbuffers kost, dan is ongeveer 32 MB aan netbuffers nodig voor de webserver. Een goede vuistregel is te vermeniguldigen met twee, dus 2x32 MB / 2 KB = 64 MB / 2 kB = 32768. Voor machines met veel geheugen wordt 4096 tot 32768 aangeraden. Er moet in geen geval een arbitrair hoge waarde voor deze sysctl opgegeven worden, want dat kan leiden tot een crash tijdens het opstarten. Met de optie van &man.netstat.1; kan clustergebruik van het netwerk bekeken worden. De loaderparameter kern.ipc.nmbclusters moet gebruikt worden om dit tijdens het opstarten toe te passen. Alleen voor oudere versies van &os; is het nodig om de kerneloptie NMBCLUSTERS te gebruiken. Voor drukke servers die extensief gebruik maken van de systeemaanroep &man.sendfile.2;, kan het nodig zijn het aantal &man.sendfile.2; buffers te verhogen via de kerneloptie NSFBUFS of door de waarde in te stellen in /boot/loader.conf (in &man.loader.8; staan details). Als er in de procestabel processen staan met een status sfbufa is dat een algemene indicator dat deze parameter aangepast moet worden. De sysctl variabele kern.ipc.nsfbufs is alleen-lezen en laat zien op welke waarde deze kernelvariabele is ingesteld. Deze parameter schaalt engiszins met de variabele kern.maxusers, maar het kan nodig zijn om deze bij te stellen. Zelfs als een socket als non-blocking gemarkeerd is, dan nog kan het aanroepen van &man.sendfile.2; op de non-blocking socket ertoe leiden dat er toch blokkade optreedt totdat er voldoende struct sf_buf's vrijgemaakt zijn. <varname>net.inet.ip.portrange.*</varname> net.inet.ip.portrange.* De sysctle variabelelen net.inet.ip.portrange.* bepalen welke reeks poortnummers automatisch gebonden wordt aan TCP en UDP sockets. Er zijn drie gebieden: een laag gebied, een (standaard) middengebied en een hoog gebied. De meeste netwerkprogramma's gebruiken het standaardbereik, wat begrensd wordt door net.inet.ip.portrange.first en net.inet.ip.portrange.last met standaardwaarden van respectievelijk 1024 en 5000. Gebonden poortreeksen worden gebruikt voor uitgaande verbindingen en het is onder bepaalde omstandigheden mogelijk dat poorten op raken. Dit gebeurt meestal in het geval van een zwaar belaste webproxy. Poortbereik is niet van belang als vooral diensten draaien die zich bezighouden met inkomende verbindingen, zoals een normale webserver, of als het aantal uitgaande verbindingen beperkt is, zoals bij een mailrelay. Voor situaties waarin een tekort aan poorten dreigt, wordt aangeraden om net.inet.ip.portrange.last bescheiden op te hogen. Een waarde van 10000, 20000 of 30000 is redelijk. Er moet ook rekening met effecten op firewalls gehouden worden als de poortreeks gewijzigd wordt. Sommige firewalls kunnen grote poortreeksen blokkeren, meestal de lagere poorten, en verwachten dat andere systemen hogere poorten gebruiken voor uitgaande verbindingen. Om deze reden wordt het aanbevolen om net.inet.ip.portrange.first te verlagen. TCP Bandbreedtevertragingsproduct (TCP Bandwidth Delay Product) TCP bandbreedtevertragingsproduct net.inet.tcp.inflight.enable De TCP bandbreedtevertragingsproduct limitatie lijkt op TCP/Vegas in NetBSD. Het kan aangezet worden door de sysctl variabelel net.inet.tcp.inflight.enable de waarde 1 te geven. Het systeem tracht dan het bandbreedtevertragingssprodukt te berekenen voor elke verbinding en beperkt dan de hoeveelheid gegevens in de wachtrij naar het netwerk tot de hoeveelheid die vereist is om maximale doorvoer te kunnen handhaven. Dit is nuttig bij gebruik van modems, Gigabit Ethernet of zelfs bij hoge snelheid WAN links (of elke andere link met een groot bandbreedtevertragingsprodukt), in het bijzonder als ook windowschaling of een groot verzendwindow gebruikt wordt. Als deze optie aangezet wordt, dient ook net.inet.tcp.inflight.debug de waarde 0 te krijgen (geen debugging) en voor produktiegebruik kan het instellen van net.inet.tcp.inflight.min naar minstens 6144 voordeel opleveren. Het instellen van hoge minima kan effectief het beperken van bandbreedte ondermijnen, afhankelijk van de link. De mogelijkheid tot limitering zorgt ervoor dat de hoeveelheid data die opgebouwd wordt, in tussentijdse route- en switchwachtrijen verlaagd kan worden en tevens kan de hoeveelheid gegevens die opgebouwd wordt in de interfacewachtrij van de lokale host verlaagd worden. Met minder pakketten in wachtrijen, kunnen interactieve verbindingen opereren met lagere Round Trip tijden, met name over langzame modems. Deze optie gaat alleen over datatransmissie (upload / serverkant) en heeft geen effect gegevensontvangst (download / clientkant). Aanpassen van net.inet.tcp.inflight.stab wordt niet aangeraden. Deze parameter krijgt standaard een waarde van 20, wat 2 maximale pakketten opgeteld bij de bandbreedtevensterberekening representeert. Het extra venster is nodig om het algoritme stabiel te houden en om de reactietijd bij veranderende omstandigheden te verbeteren, maar het kan ook leiden tot langere pingtijden over langzame verbindingen (zonder het inflight algoritme kan dit echter nog erger zijn). In dergelijke gevallen kan deze parameter misschien verlaagd worden naar 15, 10 of 5 en misschien moet voor het gewenste effect ook net.inet.tcp.inflight.min verlaagd worden (bijvoorbeeld naar 3500). Het verlagen van deze parameters moet pas in laatste instantie overwogen worden. In 4.X en eerdere releases van &os; staan de sysctl variabelen inflight direct onder net.inet.tcp. Hun namen waren (in alfabetische volgorde): net.inet.tcp.inflight_debug, net.inet.tcp.inflight_enable, net.inet.tcp.inflight_max, net.inet.tcp.inflight_min, net.inet.tcp.inflight_stab. Virtueel Geheugen <varname>kern.maxvnodes</varname> Een vnode is de interne representatie van een bestand of een map. Het verlagen van het aantal beschikbare vnodes voor het besturingssysteem leidt dus tot een daling van disk I/O. Normaliter wordt dit door het besturingssysteem afgehandeld en hoeft de instelling niet gewijzigd te worden. Im sommige gevallen kan disk I/O de beperkende factor zijn en kan het systeem alle beschikbare vnodes in gebruik hebben. Dan dient deze instelling gewijzigd te worden. De hoeveelheid inactief en beschikbaar RAM dient meegenomen te worden in de beslissing. Het huidige aantal gebruikte vnodes kan als volgt bekeken worden: &prompt.root; sysctl vfs.numvnodes vfs.numvnodes: 91349 Om het maximale aantal vnodes weer te geven: &prompt.root; sysctl kern.maxvnodes kern.maxvnodes: 100000 Als het huidige aantal gebruikte vnodes dicht bij het maximale aantal ligt, is het verstandig om kern.maxvnodes op te hogen met 1.000. Ook vfs.numvnodes dient in de gaten gehouden te worden. Als de waarde weer tot aan het maximum stijgt, dan moet kern.maxvnodes verder opgehoogd worden. Er dient een verschuiving op te treden in het door &man.top.1; gerapporteerde geheugengebruik. Er hoort meer geheugen actief te zijn. Wisselbestandruimte toevoegen Hoe goed er ook gepland wordt, soms draait een systeem gewoon niet zoals verwacht. Een oorzaak hiervoor kan een tekort aan wisselbestandruimte zijn. Als blijkt dat er meer wisselbestandruimte nodig is, kan dat eenvoudig. Er zijn drie manieren om de totale ruimte beschikbaar als wisselbestand te vergroten: een nieuwe harde schijf toevoegen, swappen over NFS of een wisselbestand maken op een bestaande (UFS of andere) partitie. Wisselbestand (partitie) op een nieuwe harde schijf Dit is natuurlijk de beste manier om de wisselbestandsruimte te vergroten en een goed excuus om een extra harde schijf toe te voegen. Die komt immers altijd wel van pas. In dat geval kan het beste de discussie over wisselbestandruimte in nog eens herlezen worden om wat suggesties te krijgen over hoe wisselbestandpartitie(s) het beste ingedeeld kunnen worden. Swappen over NFS In het algemeen wordt swappen over NFS niet aangeraden omdat het langzaam is. Dit dient alleen gebruikt te worden als het onmogelijk om naar een lokale schijf te swappen. In &os; versies voor 4.X was het hanteren van een wisselbestand over NFS erg langzaam en inefficiënt. Nieuwere versies werken beter, maar dan nog wordt swappen over NFS sterk gelimiteerd door de aanwezige netwerkbandbreedte en belast het de NFS server. Wisselbestanden Het is mogelijk om een bestand aan te maken van een bepaalde grootte en dit als swap te gebruiken. In dit voorbeeld wordt een 64 MB bestand gebruikt, /usr/swap0. Uiteraard kan een willekeurige naam gebruikt worden. Een wisselbestand aanmaken met &os; 4.X De kernel moet het vnode stuurprogramma bevatten. In recente versies van GENERIC is vnode niet opgenomen. pseudo-device vn #Vnode driver (turns a file into a device) Een vn-apparaat aanmaken: &prompt.root; cd /dev &prompt.root; sh MAKEDEV vn0 Een wisselbestand aanmaken (/usr/swap0): &prompt.root; dd if=/dev/zero of=/usr/swap0 bs=1024k count=64 Correcte rechten op (/usr/swap0) instellen: &prompt.root; chmod 0600 /usr/swap0 Wisselbestand opnemen in /etc/rc.conf: swapfile="/usr/swap0" # Set to name of swapfile if aux swapfile desired. Nu kan de machine herstart worden of het wisselbestand meteen te gebruiken: &prompt.root; vnconfig -e /dev/vn0b /usr/swap0 swap Een wisselbestand aanmaken met &os; 5.X De kernel moet het stuurprogramma voor de geheugenschijf (&man.md.4;) bevatten. Dat zit standaard in de GENERIC kernel. device md # Memory "disks" Het wisselbestand /usr/swap0 aanmaken: &prompt.root; dd if=/dev/zero of=/usr/swap0 bs=1024k count=64 De correctie rechten op /usr/swap0 instellen: &prompt.root; chmod 0600 /usr/swap0 Het wisselbestand opnemen in /etc/rc.conf: swapfile="/usr/swap0" # Set to name of swapfile if aux swapfile desired. De machine moet herstart worden of om het wisselbestand direct in te schakelen: &prompt.root; mdconfig -a -t vnode -f /usr/swap0 -u 0 && swapon /dev/md0 Hiten Pandya Geschreven door Tom Rhodes Energie- en bronnenbeheer Het is belangrijk om hardwarebronnen op een efficiënte wijze te benutten. Voordat ACPI geïntroduceerd werd was het erg lastig en onflexibel om het energieverbruik en de thermische eigenschappen van een systeem te beheersen. De hardware werd beheerst door deze of gene interface, ingebed in het BIOS, zoals de Plug-n-play BIOS (PNPBIOS) of Advanced Power Management (APM), enzovoort. Energie- en bronnenbeheer is een kerntaak van moderne besturingssystemen. Het besturingssysteem moet bijvoorbeeld systeemlimieten in de gaten houdt (en mogelijk een SMS sturen of iets dergelijks) als de systeemtemperatuur onverwacht toeneemt. In dit deel van het &os; handboek wordt uitgebreide informatie verschaft over ACPI. Aan het einde staan referenties naar meer leesmateriaal. ACPI is op &os; 5.X en nieuwere systemen als een standaard ingeladen kernelmodule aanwezig. In &os; 4.9 kan ACPI aangezet worden door de regel device acpica toe te voegen aan het bestand met kernelinstellingen en een nieuwe kernel te bouwen en te installeren. Wat is ACPI? ACPI APM Advanced Configuration and Power Interface (ACPI) is een standaard die door een alliantie van producenten geschreven is, met als doel te voorzien in een een standaardinterface voor hardware bronnen- en energiebeheer. Een belangrijk element is dat het meer flexibiliteit en beheersmogelijkheden biedt aan het besturingssysteem (OS). Moderne systemen hebben de limieten van de huidige PNP interfaces verder opgerekt dan wenselijk en misschien wel mogelijk was. ACPI is de directe opvolger van APM (Advanced Power Management). Centraal is het verleggen van hardwarebeheer en -monitoring naar de OS laag in plaats van de zeer beperkte BIOS laag. Tekortkomingen van APM Met de Advanced Power Management (APM) faciliteit kan het energieverbruik van een systeem geregeld worden op basis van de systeemactiviteit. Het APM BIOS wordt geleverd door de systeemproducent of -verkoper en het is specifiek voor dat betreffende hardware platform. Een APM stuurprogramma in het besturingssysteem regelt vervolgens de toegang tot de APM Software Interface, die het besturen van vermogensniveau mogelijk maakt. Er zijn vier hoofdproblemen met APM te onderscheiden: ten eerste wordt het energiebeheer verricht door een BIOS (afhankelijk van producent) en het besturingssysteem heeft daar geen kennis van. De gebruiker die idle-time waarden instelt voor een harde schijf in het APM BIOS is hier een voorbeeld van. Dan zal het BIOS de harde schijf langzamer kunnen laten draaien zonder dat het besturingssysteem de noodzaak ziet of het goedkeurt. Ten tweede: de APM logica is ingebed in de BIOS, waardoor het buiten het besturingssysteem om opereert. Dit houdt in dat gebruikers problemen met hun APM BIOS alleen kunnen verhelpen door een nieuw BIOS in het ROM te flashen, wat een gevaarlijke en mogelijk onherstelbare operatie is. Ten derde is APM een producent-specifieke technologie, in de zin dat er altijd een hoge mate van duplicatie zal zijn van al dan niet geslaagde pogingen om het wiel opnieuw uit te vinden en uiteraard ook van bugs. Er is geen enkele garantie dat het wegnemen van een bug door een producent ook een zelfde bug wegneemt bij een concurrent. Tenslotte is het van belang te weten dat de APM BIOS in het algemeen gewoon te weing geheugen kon gebruiken om een ingewikkeld energiebeheer te kunnen implementeren. Laat staan dat deze goed aanpasbaar was aan veranderlijke doelstellingen voor de betreffende machine. Plug-n-play BIOS (PNPBIOS) was in veel situations onbetrouwbaar. PNPBIOS is 16-bit technologie, dus het besturingssysteem moet 16-bit emulatie gebruiken om met PNPBIOS methoden te kunnen samenwerken. Het &os; stuurprogramma APM is gedocumenteerd in &man.apm.4;. <acronym>ACPI</acronym> instellen Het stuurprogramma acpi.ko wordt standaard geladen bij het opstarten door de &man.loader.8; en hoeft niet gecompileerd te worden. De redenatie is dat er met modules gemakkelijker gewerkt kan worden, bijvoorbeeld een andere acpi.ko gebruiken zonder dat er een nieuwe kernel gebouwd moet worden. Dit heeft het voordeel dat testen eenvoudiger is. Een andere reden is dat het opstarten van ACPI nadat een systeem eenmaal volledig opgestart is, weinig nuttig is en in sommige gevallen fataal kan zijn. In geval van tijfel kan ACPI beter uitgeschakeld worden. Dit stuurprogramma kan niet gestopt worden als het eenmaal geladen is, omdat de systeembus het gebruikt voor allerlei interacties met hardware. ACPI kan uitgezet worden met het hulpprogramma &man.acpiconf.8;. In feite kan de meeste interactie met het ACPI systeem gedaan worden via &man.acpiconf.8;. In wezen betekent dit dat als er iets over ACPI in &man.dmesg.8; staat, het hoogstwaarschijnlijk al draait. ACPI en APM kunnen niet samenleven en moeten afzonderlijk en exclusief gebruikt worden. De laatste die gestart wordt bepaalt of het stuurprogramma de ander wel of niet ziet. In haar eenvoudigste vorm kan ACPI gebruikt worden om het systeem in slaapmodus te zetten met de vlag en een 1-5 optie met &man.acpiconf.8;. De meeste gebruikers hebben alleen 1 nodig. De optie 5 verricht een soft-off, wat hetzelfde is als: &prompt.root; halt -p Andere opties zijn mogelijk. In &man.acpiconf.8; staat meer informatie. Nate Lawson Geschreven door Peter Schultz Met medewerking van Tom Rhodes &os; <acronym>ACPI</acronym> gebruiken en debuggen ACPI is een totaal nieuwe manier om apparaten te ontdekken, om energieverbruik te beheren en om een gestandaardiseerde toegang te bieden tot allerlei apparaten die eerder via het BIOS beheerd werden. Er wordt voortdurend vooruitgang geboekt om ACPI op alle systemen te laten werken, maar bugs in de ACPIMachine Language (AML) bytecode van sommige moederborden, onvolledigheden in &os;'s kernel subsystemen en bugs in de &intel; ACPI-CA interpreter blijven opduiken. Deze tekst is bedoeld om de &os; ACPI beheerders (maintainers) te helpen met het vinden van de hoofdoorzaken van problemen die voorkomen en met het debuggen en het vinden van een oplossing. Debuginformatie aanleveren Voordat een probleem wordt aanmeld, moet het zeker zijn dat de laatste BIOS versie draait en indien beschikbaar de geïntregeerde controller firmware versie. Diegenen die meteen een probleem willen indienen, sturen de volgende informatie naar freebsd-acpi@FreeBSD.org: Omschrijving van het foutieve gedrag, inclusief systeemtype en model en alles wat de fout kan veroorzaken. Als het een nieuw fenomeen is, dan dient ook zo accuraat mogelijk aangegeven te worden wanneer de fout het eerst optrad. De &man.dmesg.8; uitvoer van boot -v, inclusief foutmeldingen die gegenereerd worden als de fout optreedt. De &man.dmesg.8; uitvoer van boot -v met ACPI uitgeschakeld, indien het uitzetten van ACPI het probleem oplost. Uitvoer van sysctl hw.acpi. Dit is tevens een goede manier om uit te vinden welke ACPI mogelijkheden een systeem heeft. Een URL waar de ACPISource Language (ASL) gevonden kan worden. De ASL dient niet rechtstreeks naar de lijst gezonden te worden, omdat deze nogal groot kan zijn. Een kopie van een ASL kan gemaakt worden met het volgende commando: &prompt.root; acpidump -t -d > name-system.asl (Vervang een aanmeldnaam door $NAME en producent/model door $SYSTEM. Bijvoorbeeld: njl-FooCo6000.asl) De meeste &os; programmeurs lezen de &a.current; mailinglijst, maar problemen gaan bij voorkeur ook naar &a.acpi.name; zodat ze zeker gezien worden. Het kan enige tijd duren voordat er antwoord komt, omdat deze mensen elders ook nog fulltime banen hebben. Als de bug niet meteen duidelijk is, komt er waarschijnlijk en verzoek om een PR in te dienen via &man.send-pr.1;. Als er een PR moet worden opgesteld, dan dient alle hierboven gevraagde informatie vermeld te worden. Dit helpt om het probleem te kunnen volgen en oplossen. Het sturen van een PR zonder eerst &a.acpi.name; te mailen is niet wenselijk, aangezien men PRs gebruikt als herinnering, niet als rapportagesysteem. Mogelijk is een probleem al eens door iemand anders aangemeld. Achtergrond ACPI is aanwezig op alle moderne computers die voldoen aan de ia32 (x86), ia64 (Itanium) of amd64 (AMD) architecturen. De volledige standaard heeft vele mogelijkheden zoals CPU prestatiebeheer, energiebeheer, thermische zones, diverse batterijsystemen, ingebedde controllers en busnummering. De meeste systemen implementeren minder dan de volledige standaard. Een desktopsysteem implementeert bijvoorbeeld meestal alleen busnummering, terwijl laptops mogelijk ook koeling- en batterijbeheer ondersteunen. Laptops hebben ook suspend en resume (slapen en wakker worden) met hun eigen aanverwante comlexiteit. Een ACPI-compliant systeem heeft verscheidene componenten. Het BIOS is de eerste en dan zijn er verscheidene tabellen in het geheugen zoals FADT die zaken als de APIC map (gebruikt voor SMP) specificeren, beschikbaar gesteld door verschillende producenten/verkopers. Daarnaast zijn er specifieke eenvoudige instellingen en instellingenregisters, ook allen specifiek voor de leverancier. Ook wordt er een tabel van bytecode (de Differentiated System Description Table DSDT) geleverd die een op een boomstructuur lijkende namespace biedt voor apparaten en apparaatobjectfuncties. Het stuurprogramma ACPI moet de voorgedefinieerde tabellen verwerken, een interpreter voor de bytecode implementeren en apparaatstuurprogramma's en de kernel aanpassen om alleen al informatie van het ACPI subsysteem te kunnen accepteren. &intel; heeft een interpreter beschikbaar gesteld (ACPI-CA) die door &os; en ook door &linux; en NetBSD gebruikt wordt. De ACPI-CA broncode staat in src/sys/contrib/dev/acpica. De lijmcode (glue code) die ACPI-CA laat werken met &os; staat in src/sys/dev/acpica/Osd. Stuurprogramma's die verscheidene ACPI apparaten implementeren staan in src/sys/dev/acpica. Algemene problemen Wil ACPI goed werken, dan moeten alle onderdelen goed werken. Hieronder staan enkele algemene problemen in volgorde van hoe vaak ze optreden en enkele mogelijke oplossingen of manieren om de problemen te vermijden. Muisproblemen Soms doet een muis het niet bij het opstarten uit de slaapstand. Een bekend lapmiddel is het toevoegen van hint.psm.0.flags="0x3000" aan het bestand /boot/loader.conf. Als dat niet werkt, dan wordt aangeraden een bugrapport in te sturen, zoals eerder is beschreven. Suspend/resume ACPI heeft drie slaapstanden waarbij het geheugen (RAM) wordt ingezet. Dit zijn de STR toestanden S1-S3,en nog een slaap-met-gebruik-van-harde-schijf toestand (STD) die S4 heet. S5 is zacht uit en is de normale status van een systeem als het is aangesloten maar niet is aangezet. S4 kan feitelijk op twee manieren geïmplementeerd worden: S4BIOS is een slaapstand naar schijf met behulp van het BIOS en S4OS wordt volledig door het besturingssysteem beheerd. als eerste dienen de sysctl items die iets met de slaapstand te maken hebben gecontroleerd te worden. Hieronder staan de resultaten voor een Thinkpad: hw.acpi.supported_sleep_state: S3 S4 S5 hw.acpi.s4bios: 0 Dit betekent dat hier acpiconf -s gebruikt kan worden om S3, S4 OS en S5 te testen. Als gelijk was aan (1), dan zou er S4BIOS ondersteuning zijn in plaats van S4 OS. Als suspend/resume getest moet worden, dient, indien ondersteund, bij S1 begonnen te worden. Deze toestand heeft de grootste kans om te werken, omdat deze niet veel stuurprogrammaondersteuning vereist. Niemand heeft nog S2 geïmplementeerd, maar het is ongeveer hetzelfde als S1. Daarna wordt S3 getest. Dit is het diepste STR niveau en heeft uitgebreide ondersteuning van stuurprogramma's nodig om hardware goed opnieuw te kunnen starten. Mochten er blokkades optreden, dan kan naar de &a.acpi.name; lijst gemaild worden. Er kan echter geen snelle oplossing verwacht worden, omdat er nog de nodige stuurprogramma's/hardware liggen om getest en bewerkt te worden. Om een probleem te kunnen isoleren helpt het om zoveel mogelijk stuurprogramma's uit de kernel te halen. Als dit werkt, kan er teruggewerkt worden naar de driver die schuldig is aan het falen. Meestal vertonen binaire stuurprogramma's als nvidia.ko, X11 beeldschermstuurprogramma's en USB de meeste problemen, terwijl bijvoorbeeld Ethernet interfaces meestal meteen goed werken. Als de stuurprogramma's zonder problemen geladen en verwijderd kunnen worden, dan is dit te automatiseren door de juiste commando's in /etc/rc.suspend en /etc/rc.resume te zetten. Er staat een voorbeeld (achter commentaartekens) voor het laden en verwijderen van een driver. Als het beeldscherm er na wakker worden vreemd uitziet, kan geprobeerd worden naar nul (0) te zetten. Met langere of kortere waarden voor kan bekeken worden of dat helpt. In geval van problemen is het ook een optie om een recente &linux; distibutie met ondersteuning voor ACPI support te starten en daarvan de suspend/resume ondersteuning op dezelfde hardware uit te proberen. Als het werkt met &linux;, dan is het waarschijnlijk een &os; stuurprogrammaprobleem en als het mogelijk is uit te vinden over welke driver het gaat, kan dat bijdragen aan het oplossen van het probleem. ACPI houdt zich in het algemeen niet bezig met andere stuurprogramma's bijvoorbeeld geluid, ATA, enzovoort. Als er dus een echt driverprobleem is, dan is waarchijnlijk uiteindelijk ook nodig naar de &a.current.name; lijst te posten en naar de beheerder van het stuurprogramma. Voor degenen met moed is het vooral aan te raden een paar &man.printf.3;s in problematische stukken van een stuurprogramma te plaatsen voor debugging om na te gaan waar de resumefunctie precies hangt. Tot slot kan geprobeerd worden om ACPI uit te zetten en in plaats daarvan APM aan te zetten. Als suspend/resume werkt met APM, is het wellicht verstandig het daarbij te houden, vooral met wat oudere apparatuur (voor 2000). Producenten hebben nogal wat tijd nodig gehad om ACPI ondersteuning goed te krijgen en voor oudere hardware is het waarschijnlijker dat er BIOS problemen zijn met ACPI. Systeem hangt (tijdelijk of permanent) Meestal is het hangen van het systeem het gevolg van verloren interrupts of een interruptstorm. Chipsets kunnen een heleboel problemen hebben, afhankelijk van hoe het BIOS interrupts instelt voor het opstarten, of de APIC (MADT) tabel correct is en de routering van het System Control Interrupt (SCI). interrupt storms Interruptstorms kunnen onderscheiden worden van verloren geraakte interrupts door de uitvoer van vmstat -i te controleren en de regel met acpi0 goed te lezen. Als de teller in toenemende mate hoger staat dan enkele per seconde, dan is sprake van een interruptstorm. Als het systeem lijkt te hangen, is het wellicht nog mogelijk door te dringen tot de DDB (CTRL ALTESC) show interrupts uit te voeren. APIC uitschakelen De beste hoop in geval van interruptproblemen is om APIC ondersteuning uit te zetten met hint.apic.0.disabled="1" in loader.conf. Panics Panics zijn relatief zeldzaam met ACPI en krijgen de hoogste prioriteit bij het oplossen. Eerst moeten de verschillende gebeurtenissen waarmee de panic (als mogelijk) te reproduceren is geïsoleerd worden en moet een backtrace gemaakt worden. options DDB dient aangezet te worden en er dient een een seriële console () of een &man.dump.8; partitie te komen.. In DDB is een backtrace te maken met tr. Als de backtrace handmatig opgeschreven moet worden, is het belangrijk dat in ieder geval de bovenste en onderste vijf (5) regels van de backtrace genoteerd worden. Daarna dient getracht te worden het systeem te starten zonder ACPI. Als dat werkt, is het ACPI subsysteem geïsoleerd en kunnen de verschillende waarden uitgeprobeerd worden. In &man.acpi.4; staan enkele voorbeelden. Systeem slaat aan na slaapstand of stop hw.acpi.disable_on_poweroff="0" kan uitgezet worden in &man.loader.conf.5;. Hierdoor schakelt ACPI bepaalde gebeurtenissen tijdens het afsluitproces niet uit. Om dezelfde redenen moeten sommige systemen deze waarde altijd op 1 (standaard) hebben staan. In het algemeen lost dit een probleem op waarbij een systeem spontaan weer opkomt nadat het in slaapstand is gezet of geheel gestopt is. Overige problemen Als er nog andere problemen zijn met ACPI (met een docking station of apparaten niet gedetecteerd, enzovoort), dan kan een mail met beschijving naar de mailinglijst gezonden worden. Sommige zaken kunnen echter gerelateerd zijn aan delen van het ACPI subsysteem die nog niet af zijn, dus het kan in sommige gevallen een tijd duren. Gebruikers moeten soms geduld hebben en de bereidheid om eventuele patches uit te proberen. <acronym>ASL</acronym>, <command>acpidump</command> en <acronym>IASL</acronym> ACPI ASL Het grootste probleem is dat BIOS producenten vaak incorrecte (of gewoon foutieve) bytecode leveren. Dit blijkt doorgaans uit kernelboodschappen als: ACPI-1287: *** Error: Method execution failed [\\_SB_.PCI0.LPC0.FIGD._STA] \\ (Node 0xc3f6d160), AE_NOT_FOUND Vaak kunnen dergelijke problemen geoplost worden door de BIOS bij te werken tot de laatste revisie. De meeste consoleberichten zijn onschuldig, maar als er andere problemen zijn, zoals batterijstatus die niet werkt, dan ligt het voor de hand te zoeken naar problemen in de AML code. De bytecode die AML genoemd wordt, wordt gecompileerd van een broncodetaal ASL. Deze staat weer in een tabel DSDT. Met &man.acpidump.8; kan een kopie van de ASL gemaakt worden. Dan moeten zowel de opties (laat inhoud van vaste tabellen zien) als (disassembleer AML naar ASL) gebruikt worden. In Debuginformatie aanleveren staat een voorbeeld. De eenvoudigste eerste controle is de ASL code opnieuw compileren en kijken of er foutmeldingen optreden. Waarschuwingen kunnen doorgaans genegeerd worden, maar fouten zijn bugs die er meestal toe leiden dat ACPI niet correct werkt. Om ASL te hercompileren: &prompt.root; iasl eigen.asl <acronym>ASL</acronym> repareren ACPI ASL Op langere termijn is het de bedoeling dat voor vrijwel elke machine ACPI werkt zonder enig ingrijpen van de gebruiker. Op dit moment wordt er echter nog gewerkt aan oplossingen voor veel voorkomende vergissingen die BIOS producenten maken. De µsoft; interpreter (acpi.sys en acpiec.sys) controleert niet strikt of het BIOS volledig aan de standaard voldoet, waardoor het voorkomt dat BIOS makers die alleen testen onder &windows; bepaalde fouten in hun ASL nooit correct repareren. &os; hoopt door te gaan met de identificatie en documentatie van welk niet-standaard gedrag precies wordt toegelaten door µsoft;'s interpreter en te dit te repliceren zodat &os; kan werken zonder dat gebruikers zich gedwongen zien om de ASL te repareren. Als een tijdelijke oplossing en om te helpen met het in kaart brengen van bepaald gedrag, kan de ASL handmatig gerepareerd worden. Mocht dit lukken, dan wordt erop aangedrongen een &man.diff.1; van de oude en de nieuwe ASL te mailen, zodat het foutieve gedrag mogelijk in ACPI-CA kan worden verwerkt, waardoor andere gebruikers niet meer handmatig met hun ASL aan de gang hoeven. ACPI error messages Hieronder staat een lijst algemene foutmeldingen, hun oorzaken en hoe ze op te lossen: _OS afhankelijkheden Sommige AMLs gaan ervan uit dat de wereld enkel bestaat uit &windows; versies. &os; kan zich voordoen als elk OS om te kijken of dit problemen oplost. Een gemakkelijke manier om dit te doen is hw.acpi.osname="Windows 2001" in te stellen in /boot/loader.conf of andere gelijksoortige strings die in een ASL staan. Ontbrekende return opdrachten Sommige methoden hebben geen specifieke returnwaarde, zoals wel vereist wordt door de standaard. Hoewel ACPI-CA hier niets mee doet, heeft &os; de mogelijkheid tot impliciete returns. Er kunnen ook expliciet return opdrachten toegevoegd worden waar vereist, als het bekend is welke waarden teruggevoerd moeten worden. Om iasl te dwingen tot compilatie van ASL kan de schakeloptie gebruikt worden. De standaard <acronym>AML</acronym> aanpassen Nadat eigen.asl aangepast is, kan deze als volgt gecompileerd wordent: &prompt.root; iasl eigen.asl Met de optie is af te dwingen dat de AML gemaakt wordt, zelfs als er compileerfouten optreden. Sommige fouten (zoals ontbrekende return opdrachten) worden automatisch opgelost door de interpreter. DSDT.aml is de standaardnaam voor het bestand dat door iasl wordt geproduceerd. Dit is in plaats van de foutieve versie uit het BIOS (die nog steeds aanwezig is in het flashgeneugen) te laden door /boot/loader.conf als volgt te wijzigen: acpi_dsdt_load="YES" acpi_dsdt_name="/boot/DSDT.aml" DSDT.aml moet in de map /boot staan. Debuguitvoer van <acronym>ACPI</acronym> verkrijgen ACPI problemen ACPI debuggen Het stuurprogramma ACPI heeft een zeer flexibele debugfaciliteit. Er kan zowel een set van subsystemen aangegeven worden als het niveau van uitvoerigheid. De te debuggen subsystemen worden aangegeven als lagen (layers) en zijn opgedeeld in ACPI-CA componenten (ACPI_ALL_COMPONENTS) en ACPI hardware ondersteuning (ACPI_ALL_DRIVERS). De uitvoerigheid van debuguitvoer wordt aangegeven als het niveau (level) en gaat van CPI_LV_ERROR (alleen fouten rapporteren) tot ACPI_LV_VERBOSE (alles). Het niveau is een bitmasker en dus kunnen er meerdere opties tegelijk ingeschakeld worden (gescheiden door spaties). In de praktijk wordt wellicht een seriële console gebruikt om de uitvoer te loggen als deze zo omvangrijk is dat de console berichtbuffer vol loopt (misschien wel meerdere keren). Een complete lijst van de individuele lagen en niveaus staat in &man.acpi.4;. Debuguitvoer staat staandaard niet aan. Door options ACPI_DEBUG toe te voegen aan het bestand met kernelinstellingen als ACPI als de kernel is gebouwd, wordt het ingeschakeld. Door ACPI_DEBUG=1 toe te voegen aan /etc/make.conf wordt het systeembreed ingeschakeld. Als ACPI als module wordt gebruikt (de normale situatie), dan hoeft slechts de acpi.ko module opnieuw gecompileerd te worden: &prompt.root; cd /sys/modules/acpi/acpi && make clean && make ACPI_DEBUG=1 acpi.ko moet in /boot/kernel komen te staan en de gewenste debuglaag en het gewenste niveau van uitvoerigheid dienen toegevoegd te worden aan loader.conf. Hieronder een voorbeeld waarmee debuguitvoer wordt aangezet voor alle ACPI-CA componenten en alle ACPI hardware stuurprogramma's (CPU, LID, enzovoort. Het niveau van uitvoerigheid is het laagst mogelijke. Er worden alleen fouten gemeld. debug.acpi.layer="ACPI_ALL_COMPONENTS ACPI_ALL_DRIVERS" debug.acpi.level="ACPI_LV_ERROR" Als de gezochte informatie wordt veroorzaakt door een specifieke gebeurtenis (bijvoorbeeld in en uit slaapstand gaan), dan kunnen wijzigingen aan loader.conf achterwege blijven en in plaats daarvan kan sysctl gebruikt worden om laag en niveau in te stellen na het opstarten en zo het systeem voor te bereiden op die specifieke gebeurtenis. De sysctls hebben dezelfde namen als de parameters in loader.conf. Verwijzingen Meer informatie over ACPI staat op de volgende locaties: De &a.acpi; De ACPI mailinglijst archieven De oude ACPI mailinglijst archieven De ACPI 2.0 specificatie &os; Handleidingen: &man.acpi.4;, &man.acpi.thermal.4;, &man.acpidump.8;, &man.iasl.8;, &man.acpidb.8; DSDT debugging informatie. (Gebruikt Compaq als voorbeeld, maar van algemeen nut). diff --git a/nl_NL.ISO8859-1/books/handbook/desktop/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/desktop/chapter.sgml index a5a5eb8812..2cd2d2b521 100644 --- a/nl_NL.ISO8859-1/books/handbook/desktop/chapter.sgml +++ b/nl_NL.ISO8859-1/books/handbook/desktop/chapter.sgml @@ -1,1429 +1,1384 @@ Chrisptophe Juliet Bijgedragen door René Ladan Vertaald door Bureaubladapplicaties Overzicht &os; kan een groot aantal bureaubladapplicaties draaien, zoals browsers en tekstverwerkers. De meeste hiervan zijn beschikbaar als packages of kunnen automatisch vanuit de Portscollectie gebouwd worden. Veel nieuwe gebruikers verwachten dit soort applicaties op hun bureaublad. Dit hoofdstuk laat zien hoe populaire bureaubladapplicaties moeiteloos geïnstalleerd kunnen worden vanuit een package of vanuit de Portscollectie. Als programma's vanuit ports geïnstalleerd worden, wordt hun broncode gecompileerd. Dit kan erg lang duren, afhankelijk van wat er gecompileerd wordt en de rekenkracht van een machine. Als compileren vanuit broncode te veel tijd kost, kunnen de meeste programma's van de Portscollectie als een voorafgebouwd package geïnstalleerd worden. Omdat &os; compatibel is met &linux;, zijn veel applicaties die voor &linux; zijn ontwikkeld beschikbaar een &os; bureaublad. Het wordt sterk aanbevolen om te lezen voordat &linux; applicaties geïnstalleerd worden. Veel ports die gebruik maken van &linux; compatibiliteit beginnen met linux-. Dit is handig om te onthouden wanneer er naar een port gezocht wordt met bijvoorbeeld &man.whereis.1;. In dit hoofdstuk wordt aangenomen dat &linux; binaire compatibiliteit is ingeschakeld voordat &linux; applicaties worden geïnstalleerd. In dit hoofdstuk worden de volgende categoriën behandeld: Browsers (zoals Mozilla, - &netscape;, Opera, Firefox, Konqueror) Productiviteit (zoals KOffice, AbiWord, The GIMP, OpenOffice.org) Documentviewers (zoals &acrobat.reader;, gv, Xpdf, GQview) Financieel (zoals GnuCash, Gnumeric, Abacus) Er wordt aangenomen dat de lezer van dit hoofdstuk: Weet hoe aanvullende software van derde partijen geïnstalleerd wordt (). Weet hoe aanvullende &linux; software geïnstalleerd wordt (). Meer informatie over een multimedia-omgeving staat in . Installatie van e-mail staat beschreven in . Browsers browsers web &os; wordt zonder een voor-geïnstalleerde browser geleverd. In plaats hiervan bevat de www map van de Portscollectie browsers om te installeren. Het is ook mogelijk voor de meeste ports een package te installeren als compileren niet gewenst is. Compileren kan soms lang duren. KDE en GNOME bevatten reeds HTML-browsers. In staat meer informatie over de installatie van deze complete bureaubladen. Lichtgewicht browsers uit de Portscollectie zijn onder andere www/dillo, www/links of www/w3m. Dit gedeelte behandelt deze applicaties: Applicatie Bronnen Ports Afhankelijkheden Mozilla veel zwaar Gtk+ - - &netscape; - - veel - - licht - - &linux; binaire compatibiliteit - - Opera weinig licht &os; en &linux; versies beschikbaar. De &linux; versie is afhankelijk van de &linux; binaire compatibiliteit en linux-openmotif. Firefox gemiddeld zwaar Gtk+ Konqueror gemiddeld zwaar KDE bibliotheken Mozilla Mozilla Mozilla is misschien wel de meest geschikte browser voor &os;. De browser is modern, stabiel en volledig geschikt naar &os;. De HTML-weergave engine voldoet in grote mate aan de standaarden. Er worden een mail- en nieuwslezer bijleverd en het pakket bevat zelfs een HTML-bewerker voor het maken van webpagina's. Mozilla heeft dezelfde broncodebasis met &netscape; Communicator. Op langzame machines, met een CPU-snelheid van 233MHz of minder dan 64MB aan RAM, kan Mozilla te veeleisend zijn om volledig bruikbaar te zijn. In dat geval is Opera browser een mogelijke vervanger. Als het niet wenselijk of mogelijk is om Mozilla te compileren, dan is dit al door het &os; GNOME team gedaan. Het package kan geïnstalleerd worden met: &prompt.root; pkg_add -r mozilla Als het package niet beschikbaar is en er genoeg tijd en schijfruimte schikbaar zijn, kan de broncode van Mozilla gedownload, gecompileerd en geïnstalleerd worden. Dit gaat met: &prompt.root; cd /usr/ports/www/mozilla &prompt.root; make install clean De Mozilla port zorgt voor een correcte installatie door de chrome registry setup met root rechten te draaien. Als echter ook toevoegingen zoals muisgebaren geïnstalleerd moeten worden, dan moet Mozilla als root gedraaid worden om dat op de juiste wijze geïnstalleerd te krijgen. Als de installatie van Mozilla eenmaal voltooid is, is root zijn niet langer nodig. Mozilla kan als browser gestart worden met: &prompt.user; mozilla Het kan direct als mailprogramma of nieuwslezer gestart worden met: &prompt.user; mozilla -mail - + Tom Rhodes Bijgedragen door - Mozilla, &java;, en ¯omedia; &flash; + Mozilla en &java; plugin Mozilla installeren is eenvoudig, maar helaas neemt Mozilla installeren met ondersteuning voor add-ons zoals &java; en ¯omedia; &flash; zowel tijd als schijfruimte in beslag. Als eerste moeten de bestanden gedownload worden die gebruikt worden met Mozilla. Op kan een account aangemaakt worden. De gebruikersnaam en het wachtwoord moeten bewaard worden omdat ze in de toekomst nog - nodig kunnen zijn. Daarna dient - j2sdk-1_3_1-src.tar.gz gedownload te - worden en in /usr/ports/distfiles/ - geplaatst te worden, omdat de port het bestand niet automatisch - kan ophalen. Dit komt door licentiebeperkingen. Ook kan - meteen de java environment kan vanaf + nodig kunnen zijn. Download daarna de bestanden + jdk-1_5_0-bin-scsl.zip (JDK 5.0 SCSL + Binaries) en jdk-1_5_0-src-scsl.zip (JDK + 5.0 SCSL Source) en plaats ze in + /usr/ports/distfiles omdat de port ze niet + automatisch download. Dit heeft te maken met beperkingen in de + licentie. Ook kan meteen de java environment + vanaf gedownload worden. De bestandsnaam is - j2sdk-1_3_1_08-linux-i586.bin en is - rond 25 megabyte groot. Ook dit bestand dient in - /usr/ports/distfiles/ te worden geplaatst. - Tenslotte dient de java patchkit van - gedownload te worden en in - /usr/ports/distfiles/ gezet te - worden. + j2sdk-1_4_2_08-linux-i586.bin. Ook dit + bestand dient in /usr/ports/distfiles/ te + worden geplaatst. Download ook de java patchkit + van + en plaats deze in /usr/ports/distfiles/. + Installeer tenslotte de port java/jdk15 met het + standaardcommando make install clean. + + Start Mozilla ga naar de optie + About Plug-ins in het menu + Help. Daar hoort nu de + &java; plugin in de lijst te + staan. + - Installeer de java/jdk13 port met make - install clean en installeer vervolgens de www/flashpluginwrapper port. Deze + + Mozilla en ¯omedia; &flash; plugin + + ¯omedia; &flash; plugin is niet beschikbaar voor &os;. + Er is echter wel een softwarelaag (wrapper) om de + &linux;-versie van de plugin te draaien. Deze wrapper + ondersteunt ook &adobe; &acrobat; plugin, RealPlayer plugin en + meer. + + Installeer de port www/linuxpluginwrapper. Deze is afhankelijk van emulators/linux_base wat een grote - port is. Er bestaan andere &flash; - plug-ins, maar die werken niet op het moment van - schrijven. + port is. Volg de instructies die door de port worden + weergegeven om /etc/libmap.conf juist in + te stellen! Voorbeeldinstellingen worden geïnstalleerd in + de map + /usr/local/share/examples/linuxpluginwrapper/. Installeer de www/mozilla port als Mozilla niet al is geïnstalleerd. - Kopieer de &flash; plug-in - met: - - &prompt.root; cp /usr/local/lib/flash/libflashplayer.so \ - /usr/X11R6/lib/browser_plugins/libflashplayer_linux.so - - &prompt.root; cp /usr/local/lib/flash/ShockwaveFlash.class \ - /usr/X11R6/lib/browser_plugins/ - - Voeg de volgende regels bovenin (meteen onder - #!/bin/sh) aan het opstartscript van - Mozilla - /usr/X11R6/bin/mozilla toe: - - LD_PRELOAD=/usr/local/lib/libflashplayer.so.1 -export LD_PRELOAD - Mozilla kan gestart worden met: &prompt.user; mozilla & - Ga naar de About Plug-ins - optie van het Help menu. Er verschijnt een - lijst met alle beschikbare plugins. - &java; en - &shockwave; &flash; horen beiden - in de lijst te staan. - - - - &netscape; - - &netscape; - - De Portscollectie bevat verschillende versies van de - &netscape; browser. Omdat in de &os; versie een serieuze - veiligheidsfout zit, wordt installatie sterk afgeraden ten - faveure van een meer recente &linux; of DIGITAL UNIX - versie. - - De laatste stabiele uitgave van de &netscape; browser is - &netscape; 7. Deze kan - geïnstalleerd worden vanaf de Portscollectie: - - &prompt.root; cd /usr/ports/www/netscape7 -&prompt.root; make install clean + Ga naar de optie About Plug-ins + van het menu Help. Er verschijnt een + lijst met alle beschikbare plugins. - - &netscape; 4.x versies worden - niet aangeraden omdat ze niet voldoen aan de hedendaagse - standaarden. &netscape; 7.x en - nieuwere versies zijn echter alleen beschikbaar voor het - &i386; platform. - + + De linuxpluginwrapper werkt + alleen op de i386 systeemarchitectuur. + Opera Opera Opera is een zeer snelle, complete browser en voldoet aan standaarden. Hij komt in twee smaken: een &os; versie en een versie die draait onder &linux; emulatie. Voor elk besturingssysteem is er een gratis versie van de browser (adware) en een reclameloze versie die gekocht kan worden op de Opera website. De &os; package versie van Opera wordt zo geïnstalleerd: &prompt.root; pkg_add -r opera Sommige FTP-sites hebben niet alle packages, maar hetzelfde resultaat kan worden behaald met de Portscollectie door te typen: &prompt.root; cd /usr/ports/www/opera &prompt.root; make install clean De &linux; versie van Opera kan geïnstlleerd worden door bij de bovenstaande voorbeelden linux-opera te gebruiken in plaats van opera. De &linux; versie is nuttig in situaties waarin plugins nodig zijn die alleen voor &linux; beschikbaar zijn, zoals Adobe &acrobat.reader;. In alle andere opzichten lijken de &os; en &linux; versies identiek. Firefox Firefox Firefox is de browser voor de volgende generatie, gebaseerd op de codebase van Mozilla. Mozilla is een volledig pakket van applicaties, zoals een browser, een mailclient, een chatclient en nog veel meer. Firefox is gewoon een browser wat het kleiner en sneller maakt. Het package is te installeren met: &prompt.root; pkg_add -r firefox Via de Portscollectie kan ook de broncode gecompileerd worden: &prompt.root; cd /usr/ports/www/firefox &prompt.root; make install clean Konqueror Konqueror Konqueror is deel van KDE, maar kan ook buiten KDE gebruikt worden door x11/kdebase3 te installeren. Konqueror is meer dan een browser. Het is ook een bestandsbeheerder en multimedia-viewer. Konqueror wordt ook met een verzameling plugins geleverd, beschikbaar in misc/konq-plugins. Konqueror ondersteunt ook &flash;. Daarover is meer informatie beschikbaar op . Productiviteit Als het op productiviteit aankomt, zoeken nieuwe gebruikers vaak een goed kantoorpakket of een vriendelijke tekstverwerker. Hoewel sommige bureaubladomgevingen zoals KDE reeds een kantoorpakket verschaffen, is er geen standaardapplicatie. &os; verschaft alles wat nodig is, ongeacht de bureaubladomgeving. In dit gedeelte worden de onderstaande applicaties beschreven: Applicatie Bronnen Ports Afhankelijkheden KOffice weinig zwaar KDE AbiWord weinig licht Gtk+ of GNOME The GIMP weinig licht Gtk+ OpenOffice.org veel erg zwaar GCC 3.1, &jdk; 1.3, Mozilla KOffice KOffice kantoorpakket KOffice De KDE-gemeenschap heeft zijn bureaubladomgeving met een kantoorpakket geleverd dat buiten KDE gebruikt kan worden. Het bevat de vier standaardcomponenten uit andere kantoorpakketten. KWord is de tekstverwerker, KSpread is het spreadsheetprogramma, KPresenter beheert diapresentaties en Kontour voorziet in grafische mogelijkheden. Voordat de nieuwste KOffice wordt geïnstalleert, moet er een recente versie van KDE geïnstalleerd zijn. KOffice als package installeren gaat met het volgende commando: &prompt.root; pkg_add -r koffice Als het package niet beschikbaar is, kan de Portscollectie gebruiken worden. Om KOffice voor KDE3 te installeren: &prompt.root; cd /usr/ports/editors/koffice-kde3 &prompt.root; make install clean AbiWord AbiWord AbiWord is een vrij tekstverwerkingsprogramma, ongeveer gelijk aandoet als µsoft; Word. Het is geschikt om verslagen, brieven, rapporten, memo's, enzovoort mee te typen. Het programma is snel, bevat veel mogelijkheden en is gebruikersvriendelijk. AbiWord kan veel bestandsformaten importeren en exporteren, waaronder enkele gesloten formaten, zoals µsoft; .doc. AbiWord is beschikbaar als package en te installeren met: &prompt.root; pkg_add -r abiword Als het package niet beschikbaar is, kan het worden gecompileerd vanuit de Portscollectie. De Portscollectie is meer recent. Dat kan als volgt: &prompt.root; cd /usr/ports/editors/abiword &prompt.root; make install clean The GIMP The GIMP Voor het bewerken of retoucheren van afbeeldingen is The GIMP een zeer geavanceerd afbeeldingenmanipulatieprogramma. Het kan als eenvoudig tekenprogramma worden gebruikt of als kwalititeitspakket voor het retoucheren van foto's. Het ondersteunt een groot aantal plugins en bevat een scripting interface. The GIMP kan een groot aantal bestandsformaten lezen en schrijven. Het ondersteunt interfaces met scanners en tabletten. Het pakket is te installeren als package met: &prompt.root; pkg_add -r gimp Als een FTP-site dit package niet heeft, kan de Portscollectie gebruikt worden. De graphics map van de Portscollectie bevat ook The GIMP Manual. Die kan zo geïnstalleerd worden: &prompt.root; cd /usr/ports/graphics/gimp &prompt.root; make install clean &prompt.root; cd /usr/ports/graphics/gimp-manual-pdf &prompt.root; make install clean De graphics map van de Portscollectie bevat de ontwikkelversie van The GIMP in graphics/gimp-devel. Een HTML versie van The GIMP Manual staan in graphics/gimp-manual-html. OpenOffice.org OpenOffice.org kantoorpakket OpenOffice.org OpenOffice.org bevat alle noodzakelijke applicaties in een compleet kantoorproductiviteitspakket: een tekstverwerker, een spreadsheet, een presentatiebeheerder en een tekenprogramma. De gebruikersinterface is vrijwel gelijk aan die van andere kantoorpakketten en het kan veel populaire bestandsformaten in- en uitvoeren. Het is beschikbaar in een aantal verschillende talen met interfaces, spellingcontrole en woordenboeken. De tekstverwerker van OpenOffice.org gebruikt een eigen XML-bestandsformaat voor overdraagbaarheid en flexibiliteit. Het spreadsheetprogramma bevat een macrotaal en kan gekoppeld worden aan externe databases. OpenOffice.org is stabiel en draait zonder aanpassingen op &windows;, &solaris;, &linux;, &os; en &macos; X. Meer informatie over OpenOffice.org staat op de OpenOffice website. Voor specifieke &os; informatie en om direct packages te downloaden is er de website van het &os; OpenOffice Porting Team. Om OpenOffice.org te installeren: &prompt.root; pkg_add -r openoffice Dit hoort te werken als er een -RELEASE versie van &os; wordt gedraaid. In andere gevallen is het verstandig om te kijken op de website van het &os; OpenOffice Porting Team en het juiste package met &man.pkg.add.1;te downloaden en te installeren. Zowel de huidige release als de ontwikkelversie kunnen op die locatie gedownload worden. Als het package geïnstalleerd is, moet het installatieprogramma gedraaid worden en gekozen worden voor . Dit programma dient uitgevoerd te worden door de gebruiker die OpenOffice.org gaat gebruiken: &prompt.user; openoffice-setup Als de OpenOffice.org packages niet beschikbaar zijn, kan het uit de ports gecompileerd worden. Hiervoer is veel schijfruimte en tijd nodig: &prompt.root; cd /usr/ports/editors/openoffice-1.1 &prompt.root; make install clean Als de installatie klaar is, moet het installatieprogramma gedraaid worden en gekozen worden voor . Dit programma dient uitgevoerd te worden door de gebruiker die OpenOffice.org gaat gebruiken: &prompt.user; cd /usr/ports/editors/openoffice-1.1 &prompt.user; make install-user Vertaalde versies zijn als de onderstaande ports beschikbaar: Taal Port Catalaans editors/openoffice-1.1-ca Tsjechisch editors/openoffice-1.1-cs Deens editors/openoffice-1.1-dk Grieks editors/openoffice-1.1-gr Spaans editors/openoffice-1.1-es Estlands editors/openoffice-1.1-et Fins editors/openoffice-1.1-fi Italiaans editors/openoffice-1.1-it Nederlands editors/openoffice-1.1-nl Zweeds editors/openoffice-1.1-se Slowaaks editors/openoffice-1.1-sk Sloveens editors/openoffice-1.1-sl_SI Turks editors/openoffice-1.1-tr Arabisch arabic/openoffice-1.1 Chinees (Vereenvoudigd) chinese/openoffice-1.1-zh_CN Chinees (Traditioneel) chinese/openoffice-1.1-zh_TW Frans french/openoffice-1.1 Duits german/openoffice-1.1 Hongaars hungarian/openoffice-1.1 Japans japanese/openoffice-1.1 Koreaans korean/openoffice-1.1 Pools polish/openoffice-1.1 Portugees (Braziliaans) portuguese/openoffice-1.1-pt_BR Portugees portuguese/openoffice-1.1-pt_PT Russisch russian/openoffice-1.1 Documentviewers Het kan zijn dat de standaardviewers voor een aantal populaire bestandsformaten niet in het basissysteem zitten. In dit gedeelte wordt aangegeven hoe die geïnstalleerd kunnen worden. Dit gedeelte behandelt de onderstaande applicaties: Applicatie Bronnen Ports Afhankelijkheden &acrobat.reader; weinig licht &linux; binaire compatibiliteit gv weinig licht Xaw3d Xpdf weinig licht FreeType GQview weinig licht Gtk+ of GNOME &acrobat.reader; &acrobat.reader; PDF bekijken Documenten worden vaak als PDF-bestanden, Portable Document Format, verspreid. Een van de aanbevolen viewers voor dit bestandstype is &acrobat.reader; dat Adobe voor &linux; heeft uitgegeven. Omdat &os; &linux; binaries kan draaien, is het ook beschikbaar voor &os;. - Het &acrobat.reader; 5 package - wordt geïnstalleerd met: - - &prompt.root; pkg_add -r acroread + Om &acrobat.reader; 5 te + installeren uit de Portscollectie: - Zoals gewoonlijk kan ook de Portscollectie gebruikt worden - als het package niet beschikbaar is: + &prompt.root; cd /usr/ports/print/acroread7 + &prompt.root; make install clean - &prompt.root; cd /usr/ports/print/acroread5 -&prompt.root; make install clean + Vanwege de licentie is een package niet beschikbaar. gv gv PDF bekijken &postscript; bekijken gv is een &postscript; en PDF viewer. Het is gebaseerd op ghostview maar heeft een vriendelijker uiterlijk dankzij de Xaw3d bibliotheek. Het is snel en heeft mogelijkheden als oriëntatie, papiergrootte, schalen en anti-aliassen. Bijna elke bewerking kan met het toetsenbord of de muis worden gedaan. gv is als package te installeren: &prompt.root; pkg_add -r gv Of uit de Portscollectie: &prompt.root; cd /usr/ports/print/gv &prompt.root; make install clean Xpdf Xpdf PDF bekijken Xpdf een efficiënte lichtgewicht PDF-viewer voor &os;. Het heeft erg weinig bronnen nodig en is zeer stabiel. Het gebruikt de standaard X-fonts en is niet afhankelijk van &motif; of andere X-toolkits. Xpdf is als package te installeren: &prompt.root; pkg_add -r xpdf Of uit de Portscollectie: &prompt.root; cd /usr/ports/graphics/xpdf &prompt.root; make install clean Als de installatie voltooid is, kan Xpdf gestart worden en het menu kan met de rechtermuisknop geactiveerd worden. GQview GQview GQview is een afbeeldingenbeheerder. Een bestand kan met één klik bekeken worden, er kan een externe editor opgestart worden er kunnen thumbnail-voorbeelden gemaakt worden en nog veel meer. Het bevat ook een diapresentatie-modus en enkele standaard bestandsoperaties. Er kunnen afbeeldingsverzamelingen beheerd worden en eenvoudig duplicaten gevonden worden. GQview kan het complete scherm gebruiken en ondersteunt meerdere talen. GQview is als package te installeren: &prompt.root; pkg_add -r gqview Of vanuit de Portscollectie: &prompt.root; cd /usr/ports/graphics/gqview &prompt.root; make install clean Financiën Om financiën via het &os; bureaublad te beheren zijn er krachtige en gemakkelijk te gebruiken applicaties om te installeren. Sommige zijn compatibel met wijdverbreide bestandsformaten zoals Quicken of Excel documenten. Dit gedeelte behandelt deze applicaties: Applicatie Bronnen Ports Afhankelijkheden GnuCash weinig zwaar GNOME Gnumeric weinig zwaar GNOME Abacus weinig licht Tcl/Tk GnuCash GnuCash GnuCash is onderdeel van GNOME dat gebruikersvriendelijke en krachtige applicaties aan eindgebruikers wil leveren. Met GnuCash kunnen inkomsten en uitgaven, bankrekeningen en voorraden bijgehouden worden. Het bevat een intuïtieve interface terwijl het erg professioneel blijft. GnuCash levert een slim kasboek, een hiërarchisch systeem van rekeningen, veel toetsenbordversnellers en auto-invul mogelijkheden. Het een transactie splitsen in meer gedetailleerde stukken. GnuCash kan Quicken QIF-bestanden invoeren en samenvoegen. Het kan ook met de meeste internationale datum- en valutaformaten omgaan. GnuCash is als package te installeren: &prompt.root; pkg_add -r gnucash Of uit de Portscollectie: &prompt.root; cd /usr/ports/finance/gnucash &prompt.root; make install clean Gnumeric Gnumeric spreadsheet Gnumeric Gnumeric is een spreadsheet uit de GNOME bureaubladomgeving. Het maakt gebruikt van auto-invullen afhankelijk van het celformaat. Het kan bestanden in een aantal populaire formaten zoals Excel, Lotus 1-2-3 en Quattro Pro inlezen. Gnumeric ondersteunt grafieken door middel van het grafiekprogramma math/guppi. Het heeft een groot aantal ingebouwde functies en kent gebruikelijke celformaten als nummer, valuta, datum, tijd en veel meer. Gnumeric is als package te installeren: &prompt.root; pkg_add -r gnumeric Of uit de Portscollectie: &prompt.root; cd /usr/ports/math/gnumeric &prompt.root; make install clean Abacus Abacus spreadsheet Abacus Abacus is een kleine en gemakkelijk te gebruiken spreadsheet en bevat veel ingebouwde functies die nuttig zijn in verschillende domeinen zoals statistiek, financiën, en wiskunde. Het kan Excelbestanden lezen en schrijven. Abacus kan &postscript; uitvoer produceren. Abacus is als package te installeren: &prompt.root; pkg_add -r abacus Of uit de Portscollectie: &prompt.root; cd /usr/ports/deskutils/abacus &prompt.root; make install clean Samenvatting Hoewel &os; populair is bij ISP's om zijn prestaties en stabiliteit, is het behoorlijk klaar voor dagelijks gebruik als een bureaublad. Met enkele duizenden applicaties als packages of ports, is een perfect bureaublad te bouwen dat aan alle noden voldoet. Als een bureaublad is geïnstalleerd is het mogelijk een stap verder te gaan met misc/instant-workstation. Met deze meta-port kan een verzameling ports gebouwd worden die aangepast kan worden door /usr/ports/misc/instant-workstation/Makefile te bewerken en de gebruikte syntaxis voor de standaardverzameling om ports toe te voegen of te verwijderen te gebruiken. Het bouwen gaat volgens de gebruikelijke procedure. Uiteindelijk is het zo mogelijk één groot package te creëren voldoet aan de persoonlijke eisen van een gebruiker dat te installeren is op alle gebruikte werkstations! Nu volgt nog een overzicht van alle bureaubladapplicaties die in dit hoofdstuk zijn behandeld: Applicatie Package Port Mozilla mozilla www/mozilla - - &netscape; - - linux-netscape7 - - www/netscape7 - - Opera linux-opera www/linux-opera Firefox firefox www/firefox KOffice koffice-kde3 editors/koffice-kde3 AbiWord abiword editors/abiword The GIMP gimp graphics/gimp OpenOffice.org openoffice editors/openoffice-1.1 &acrobat.reader; acroread5 - print/acroread5 + print/acroread7 gv gv print/gv Xpdf xpdf graphics/xpdf GQview gqview graphics/gqview GnuCash gnucash finance/gnucash Gnumeric gnumeric math/gnumeric Abacus abacus deskutils/abacus diff --git a/nl_NL.ISO8859-1/books/handbook/eresources/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/eresources/chapter.sgml index 0c995c45aa..8a5f763c2b 100644 --- a/nl_NL.ISO8859-1/books/handbook/eresources/chapter.sgml +++ b/nl_NL.ISO8859-1/books/handbook/eresources/chapter.sgml @@ -1,1933 +1,1981 @@ Bronnen op Internet Door de snelle ontwikkeling van &os; zijn gedrukte media niet zo praktisch om de laatste ontwikkelingen te volgen. Elektronische bronnen zijn de beste, en vaak de enige, om op de hoogte te blijven van de laatste ontwikkelingen. Omdat &os; draait op de inzet van vrijwilligers, is de gebruikersgemeenschap vaak een soort technische ondersteuningsgroep, die heeft ontdekt dat e–mail en USENET de meeste effectieve manieren zijn om de gebruikersgemeenschap te bereiken. Hieronder staan de meest belangrijke contactmogelijkheden met de &os; gebruikersgemeenschap beschreven. Mochten er andere bronnen zijn die hier niet beschreven zijn, laat die dan weten aan de &a.doc;, zodat ze hier ook beschreven kunnen worden. Mailinglijsten Hoewel veel van de ontwikkelaars van &os; USENET lezen, kan niet altijd gegarandeerd worden dat vragen die in een van de groepen binnen comp.unix.bsd.freebsd.* gesteld worden, op tijd beantwoord worden - als ze al beantwoord worden. Door vragen op de daarvoor bestemde mailinglijsten te stellen, wordt het gewenste &os; publiek bereikt, waardoor een beter, of in ieder geval tijdiger, antwoord is gegarandaard. De doelstellingen van de verschillende lijsten staan onderaan dit document. Lees alsjeblieft de doelstellingen alvorens lid te worden of mail te sturen. De meeste leden ontvangen tegenwoordig vaak honderden &os; gerelateerde berichten per dag, en door de doelstellingen en gebruiksregels op te stellen wordt gestreefd om zo min mogelijk ruis op de lijn te krijgen. Door de voorgaande adviezen te negeren zouden de mailinglijsten op termijn falen als een effectief communicatiemedium over het project. Bij twijfel over naar welke lijst te posten, kan de pagina Hoe de beste resultaten uit de &os;-vragen mailinglijst te halen wellicht helpen. Alvorens naar enige lijst te posten, is het verstandig te leren hoe de mailinglijsten het beste gebruikt kunnen worden. Hoe bijvoorbeeld zich vaak herhalende discussies voorkomen kunnen worden door het document Veel Gestelde Mailinglijstvragen (FAQ) te lezen. Voor alle mailinglijsten worden archieven bijgehouden die doorzocht kunnen worden op de &os; World Wide Web server. De met sleutelwoorden te doorzoeken archieven bieden een voortreffelijke methode om antwoorden te vinden op vaak gestelde vragen en horen geraadpleegd te worden voordat er vragen op een lijst worden gesteld. Lijstsamenvatting Algemene lijsten: De volgende zijn algemene lijsten waarop vrijelijk (en aangemoedigd) geabonneerd kan worden: Lijst Doel &a.cvsall.name; Wijzigen die aan de &os; broncode zijn gemaakt &a.advocacy.name; &os; Evangelisatie &a.announce.name; Belangrijke gebeurtenissen en projectdoelen &a.arch.name; Architectuur en ontwerp discussies &a.bugbusters.name; Discussie over het onderhoud van de &os; probleemrapporten database en aanverwante zaken &a.bugs.name; Bugbeschrijvingen &a.chat.name; Niet-technische onderwerpen met betrekking tot de &os; gemeenschap &a.current.name; Discussie over het gebruik van &os.current; &a.isp.name; Zaken voor Internet Service Providers die &os; gebruiken &a.jobs.name; Werk en mogelijkheden voor het geven van advies met betrekking tot &os; &a.policy.name; Beleidsbeslissingen van het &os; Kernteam. Laag volume en alleen-lezen &a.questions.name; Gebruikersvragen en technische ondesteuning &a.security-notifications.name; Beveiligingswaarschuwingen &a.stable.name; Discussies over het gebruik van &os.stable; &a.test.name; Hier kunnen testberichten heengestuurd worden in plaats van naar de eigenlijke lijsten Technische lijsten: De volgende lijsten zijn voor technische discussie. Het is van belang de doelstellingen te lezen alvorens lid te worden of mail te sturen omdat de richlijnen voor het gebruik en de inhoud erg strikt zijn. Lijst Doel &a.acpi.name; Ontwikkeling van ACPI en energiebeheer &a.afs.name; Porten van AFS naar &os; &a.aic7xxx.name; Ontwikkeling van drivers voor de &adaptec; AIC 7xxx &a.alpha.name; Porten van &os; naar de Alpha &a.amd64.name; Porten van &os; naar AMD64 systemen &a.apache.name; Discussie over ports met betrekking tot Apache &a.arm.name; Porten van &os; naar &arm; processors &a.atm.name; Het gebruik van ATM netwerken met &os; &a.audit.name; Audit van broncode project &a.binup.name; Ontwerp en ontwikkeling van het binaire updatesysteem &a.bluetooth.name; &bluetooth; technologie gebruiken in &os; &a.cluster.name; &os; gebruiken in een geclusterde omgeving &a.cvsweb.name; CVSweb onderhoud &a.database.name; Discussie over het gebruik en de ontwikkeling van databases met &os; &a.doc.name; Het maken van &os; gerelateerde documenten &a.drivers.name; Apparaatstuurprogramma's schrijven voor &os; + + &a.eclipse.name; + + Gebruikers van Eclipse EDI, hulpprogramma's, + clientapplicaties en ports + + &a.emulation.name; Emulatie van andere systemen zoals &linux;, &ms-dos; en &windows; &a.firewire.name; &os; &firewire; (iLink, IEEE 1394) technische discussie &a.fs.name; Bestandssystemen &a.geom.name; GEOM-specifieke discussies en implementaties &a.gnome.name; Porten van GNOME en GNOME applicaties &a.hackers.name; Algemene technische discussies &a.hardware.name; Algemene discussies over hardware voor het draaien van &os; &a.i18n.name; &os; Internationalisatie &a.ia32.name; &os; op het IA-32 (&intel; x86) platform &a.ia64.name; Porten van &os; naar &intel;'s IA64 systemen &a.ipfw.name; Technische discussie over het herontwerp van de IP firewallcode &a.isdn.name; ISDN ontwikkelaars &a.java.name; &java; ontwikkelaars en mensen die &jdk;'s porten naar &os; &a.kde.name; Porten van KDE en KDE applications &a.lfs.name; Porten van LFS naar &os; &a.libh.name; Het tweede generatie installatie en package systeem &a.mips.name; Porten van &os; naar &mips; &a.mobile.name; Discussie over mobiel computeren &a.mozilla.name; Porten van Mozilla naar &os; &a.multimedia.name; Multimedia applicaties &a.newbus.name; Technische discussies over bus-architecturen &a.net.name; Discussies over netwerken en TCP/IP broncode &a.openoffice.name; Porten van OpenOffice.org en &staroffice; naar &os; &a.performance.name; Optimalisatie van prestaties voor installaties met hoge prestaties en/of load &a.perl.name; Onderhoud van een aantal ports met betrekking tot Perl &a.pf.name; Discussies en vragen voor het pakketfilter firewall systeem &a.platforms.name; Ports naar niet &intel; architectuur platforms &a.ports.name; Discussie over de Portscollectie &a.ports-bugs.name; Discussie over bugs in ports en PR's &a.ppc.name; Porten van &os; naar de &powerpc; &a.proliant.name; Technische dicussie over &os; op HP Proliant serverplatforms &a.python.name; &os;-specifieke Python zaken &a.qa.name; Discussie over Quality Assurance, meestal in een release traject &a.realtime.name; Ontwikkeling van realtime extensions voor &os; &a.rc.name; Discussie over het rc.d-systeem en de ontwikkeling daarvan &a.scsi.name; Het SCSI subsysteem &a.security.name; Beveiligingsonderwerpen betreffende &os; &a.small.name; &os; gebruiken in embedded toepassingen &a.smp.name; Discussies over het ontwerp voor [A]Symmetric MultiProcessing &a.sparc.name; Porten van &os; naar op &sparc; gebaseerde systemen &a.standards.name; Volgen van de C99 en de &posix; standaarden door &os; &a.threads.name; Threading in &os; &a.testing.name; &os; prestatie- en stabiliteitstesten &a.tokenring.name; Ondersteuning voor Token Ring in &os; &a.usb.name; Discussie over &os; ondersteuning voor USB &a.vuxml.name; Discussie over VuXML infrastructuur &a.x11.name; Onderhoud en ondersteuning voor X11 op &os; Beperkte lijsten: De volgende lijsten zijn voor meer gespecialiseerd publiek en algemene gebruikers hebben er waarschijnlijk niets aan. Het is verstandig om eerst naam te maken in de technische lijsten alvorens lid te worden van een van de onderstaande beperkte lijsten, zodat de gebruiken op die lijst bekend zijn. Lijst Doel &a.hubs.name; Mensen die mirror sites draaien (infrastructurele ondersteuning) &a.usergroups.name; Gebruikersgroep coördinatie &a.vendors.name; Coördinatie van pre-release met wederverkopers &a.www.name; Beheerders van www.FreeBSD.org Verkorte versie van lijsten (digest): Alle hierboven beschreven lijsten zijn beschikbaar in verkorte vorm. Na het lid worden van een lijst zijn de digest opties te wijzigen bij de accountopties. CVS lijsten: De volgende lijsten zijn voor mensen met interesse in het zien van logboekberichten voor wijzigingen in verschillende onderdelen van de broncodestructuur. Het zijn Alleen-lezen lijsten waar geen e–mail heen gezonden hoort te worden. Lijst Broncodegebied Broncodebeschrijving &a.cvsall.name; /usr/(CVSROOT|doc|ports|projects|src) Alle wijzigingen op welke plaats in de structuur dan ook (som van alle andere CVS commit lijsten) &a.cvs-doc.name; /usr/(doc|www) Alle wijzigingen aan de doc en www structuren &a.cvs-ports.name; /usr/ports Alle wijzigingen aan de ports structuur &a.cvs-projects.name; /usr/projects Alle wijzigingen aan de projects structuur &a.cvs-src.name; /usr/src Alle wijzigingen aan de src structuur Hoe abonneren Om te abonneren op een lijst kan geklikt worden op de naam van de lijst hierboven of kan op &a.mailman.lists.link; geklikt worden op de lijst waarin interesse bestaat. De pagina waarop de lijsten staan beschreven bevat alle informatie die nodig is om te abonneren. Om te posten op een lijst kan simpelweg een e–mail gestuurd worden naar lijstnaam@FreeBSD.org. Daarna wordt die doorgestuurd aan leden van de lijst in de hele wereld. Om het abonnement op een lijst op te zeggen kan op de URL die onderaan iedere e–mail van een lijst staat geklikt worden. Het is ook mogelijk om een e–mail te sturen naar lijstnaam-unsubscribe@FreeBSD.org om een abonnement op te zeggen. Hierbij nogmaals het advies om discussies op de technische mailinglijsten technisch te houden. Als er alleen interesse bestaat in belangrijke mededelingen dan wordt aangeraden te abonnneren op &a.announce;, waarop zelden verkeer voorkomt. Lijstdoelstellingen Alle &os; mailinglijsten hebben eigen regels waaraan voldaan dient te worden bij gebruik. Als daaraan niet wordt voldaan, resulteert dat in maximaal twee (2) schriftelijke waarschuwingen van de &os; Postmaster postmaster@FreeBSD.org, waarna na de derde overtreding de poster verwijderd wordt van alle &os; mailinglijsten en alle toekomstige mail van het adres van de verzender wordt uitgefilterd. Helaas zijn deze regels nodig, omdat het internet van vandaag de dag een onvriendelijke omgeving is en slechts weinigen zich bewust zijn van hoe fragiel sommige mechanismen zijn. Standaardregels: Het onderwerp van iedere mail dient te voldoen aan de basisdoelstellingen van de lijst waarnaar wordt gepost. Als de lijst bijvoorbeeld over technische onderwerpen gaat, dan hoort een post ook over iets technisch te gaan. Ruis en flaming doen alleen af aan de waarde van een mailinglijst voor alle leden en dat wordt niet getolereerd. Voor vrije discussie dient de &a.chat; gebruikt te worden die daar speciaal voor is ingesteld. Bijdragen horen niet naar meer dan twee mailinglijsten verzonden te worden en alleen dan naar twee als het helder en duidelijk is dat daarvoor de noodzaak bestaat. Voor de meeste lijsten bestaat er al veel overlap in de leden en met uitzondering van de meer esoterische lijsten, zoals bijvoorbeeld -stable & -scsi, is er eigenlijk slechts zelden aanleiding om naar meer dan een lijst te posten. Als een bericht zo is verzonden dat er meerdere mailinglijsten op de regel Cc staan, dan hoort de regel Cc weer ingekort te worden in een eventueel antwoord. De verzender is verantwoordelijk voor zijn eigen kruisposten, wie ook een eerdere zender was. Persoonlijke aanvallen en profane taal (in de context van een geschil) zijn niet toegestaan. Dit geldt zowel voor gebruikers als ontwikkelaars. Grove schending van de netiquette, zoals kopiëren uit of het volledig doorsturen van persoonlijke e–mail zonder dat daarvoor toestemming is gegeven, wordt niet op prijs gesteld. Er zijn hoe dan ook zeer weinig gevallen zijn waarin zoiets dergelijks wel binnen de doelstelling van een lijst valt, waardoor dat soort e–mails op grond van de inhoud alleen al vaak reden zijn voor een waarschuwing (of ban). Adverteren voor niet-&os; gerelateerde producten is streng verboden en heeft direct een ban tot gevolg als helder is dat de overtreder adverteert door middel van spam. Individuele lijstdoelstellingen: &a.acpi.name; ACPI en energiebeheerontwikkeling &a.afs.name; Andrew Bestandssysteem (Andrew File System) Deze lijst is voor onderwerpen over het porten en gebruik van AFS van CMU/Transarc &a.announce.name; Belangrijke gebeurtenissen en projectdoelen Dit is de mailinglijst voor hen die alleen interesse hebben in gelegenheidsmededelingen of belangrijke &os; gebeurtenissen. Hieronder vallen aankondigingen over snapshots en andere releases. De lijst omvat ook aankondigingen over nieuwe mogelijkheden binnen &os;. Er kunnen ook oproepen gedaan worden voor vrijwilligers, enzovoort. Deze lijst kent een laag volume en is volledig gemodereerd. &a.arch.name; Discussie van architectuur en ontwerp Deze lijst is bedoeld voor het bespreken van de &os; architectuur. Berichten zijn in het algemeen strikt technisch van aard. Voorbeelden van geschikte onderwerpen zijn: Hoe het buildsysteem bijgewerkt kan worden zodat meerdere aanpaste builds tegelijkertijd kunnen lopen. Wat moet er aan VPS aangepast worden om Heidemann layers te laten werken. Hoe kan de apparataatstuurprogramma interface aangepast worden zodat dezelfde stuurprogramma's netjes op vele bussen en architecturen gebruikt kunnen worden. Hoe een netwerkstuurprogramma geschreven kan worden. &a.audit.name; Broncode audit project Dit is de mailinglijst voor het &os; broncode audit project. Hoewel in eerst instantie bedoeld voor beveiliging gerelateerde wijzigingen, zijn de doelstellingen aangepast naar alle wijzigingen in de code. Op deze lijst komen veel patches voor en hij is waarschijnlijk niet interessant voor de gemiddelde &os; gebruiker. Beveiligingsdiscussies die niet gerelateerd zijn aan een bepaalde broncodewijziging worden gehouden op freebsd-security. Omgekeerd worden alle ontwikkelaars aangemoedigd hun patches op deze lijst ter review aan te bieden, zeker als hun patch een deel van het systeem raakt waar een bug de integriteit van het systeem nadelig kan beïnvloeden. &a.binup.name; &os; Binaire Updates Project Deze lijst bestaat om de mogelijkheid te bieden tot het bespreken van het binaire update systeem of binup. Onderwerpen met betrekking tot ontwerp, implementatie details, patches, bugreports, statusreports, feature requests, commit logs en alle andere dingen die met binup te maken hebben kunnen besproken worden. &a.bluetooth.name; &bluetooth; in &os; Dit is het forum waar gebruikers van &bluetooth; op &os; samenkomen. Gespreksstof op het gebied van ontwerp, implementatiedetails, patches, probleemrapportages, statusrapportages, verzoeken voor nieuwe mogelijkheden en al het andere dat met &bluetooth; te maken heeft is geschikt materiaal. &a.bugbusters.name; Coördinatie afhandeling Problem Reports Het doel van deze lijst is een platform zijn voor de coördinatie en discussie voor de Bugmeister, zijn Bugbusters en anderen die interesse hebben in de PR database. Deze lijst is niet bedoeld voor discussie van specifieke bugs, patches of PR's. &a.bugs.name; Bug reports Dit is de mailinglijst voor het rapporteren van bugs in &os;. Waar mogelijk dienen bugs ingezonden te worden via &man.send-pr.1; of via de WEB interface daarvan. &a.chat.name; Niet-technische onderwerpen met betrekking tot de &os; gemeenschap Deze lijst bevat alle onderwerpen waar op andere lijsten geen ruimte voor is wat betreft niet-technische en sociale informatie. Er wordt gesproken over de moord op Van Gogh, of er in onderkast of kapitalen geschreven dient te worden, wie er te veel koffie drinkt, waar het beste bier vandaan komt, enzovoort. Belangrijke gebeurtenissen (zoals feestjes, bruiloften, geboorten, nieuwe banen, enzovoort) kunnen op de technische lijsten aangekondigd worden, maar antwoorden dienen naar deze -chat lijst te gaan. &a.core.name; &os; Kernteam Dit is een interne mailinglijst die wordt gebruikt door de kernleden. Er kunnen berichten naar gestuurd worden als een belangrijke &os; gerelateerde zaak arbitrage nodig heeft of een onderzoekende blik op hoog niveau nodig is. &a.current.name; Discussie over het gebruikt van &os.current; Dit is de mailinglijst voor gebruikers van &os.current;. Er staan waarschuwingen op over nieuwe mogelijkheden in -CURRENT die impact hebben op gebruikers en instructies over de te nemen stappen om -CURRENT te blijven. Iedereen die CURRENT draait, zou zich moeten abonneren. Dit is een technische mailinglijst waarop strikt technische berichten worden verwacht. &a.cvsweb.name; &os; CVSweb Project Technische discussie over het gebruik, de ontwikkeling en het beheer van &os;-CVSweb. &a.doc.name; Documentatie project Dit is de mailinglijst voor het bespreken van onderwerpen en projecten die te maken hebben met het maken van documentatie voor &os;. De leden van deze mailinglijst worden samen The &os; Documentation Project genoemd. Het is een open lijst waarop zonder problemen een abonnement genomen kan worden en bijdragen zeer op prijs worden gesteld! &a.drivers.name; Apparaatstuurprogramma's schrijven voor - &os; + &os; Dit is een forum voor technische discussie met betrekking tot apparaatstuurprogramma's op &os;. Het is vooral een plaats voor schrijvers van apparaatstuurprogramma's om vragen te stellen over hoe apparaatstuurprogramma's te schrijven met de API's in de kernel van &os;. - + + + + + &a.eclipse.name; + + + Gebruikers van Eclipse EDI, + hulpprogramma's, clientapplicaties en + ports + + De doelstelling van deze lijst is wederzijdse + ondersteuning bieden voor alles dat te maken heeft met + het kiezen, installeren, gebruiken, ontwikkelen en + onderhouden van Eclipse EDI, hulpprogramma's en + clientapplicaties op het &os;-platform en te ondersteunen + bij het porten van Eclipse EDI en plugins naar de + &os;-omgeving. + + Het is ook de bedoeling om het uitwisselen van + informatie tussen de Eclipse gemeenschap en de &os; + gemeenschap te bevorderen zodat beiden ervan kunnen + profiteren. + + Hoewel deze lijst voornamelijk is gericht op de + behoeften van gebruikers van Eclipse, wordt ook een forum + geboden voor hen die &os;-specifieke applicaties willen + ontwikkelen met het Eclipse framwork. + + + + + &a.emulation.name; + + + Emulatie van andere systemen zoals &linux;, + &ms-dos; en &windows; + + Dit is een forum voor technische discussie met + betrekking tot het draaien van programma's op &os; die + zijn geschreven voor andere besturingssystemen. + &a.firewire.name; &firewire; (iLink, IEEE 1394) Dit is de mailinglijst voor het bespreken van het ontwerp en de implementatie van een &firewire; (ook wel IEEE 1394 of iLink) subsysteem voor &os;. Relevante onderwerpen omvatten de standaarden, bus apparaten en hun protocollen, adapter boards/kaarten/chipssets en de architectuur en implementatie van code voor een juiste ondersteuning. &a.fs.name; Bestandssystemen Discussie over &os; bestandssystemen. Dit is een technische mailinglijst waarop slechts strikt technische bijdragen worden verwacht. &a.geom.name; GEOM Discussie specifiek over GEOM en gerelateerde implementaties. Dit is een technische mailinglijst waarop slechts strikt technische bijdragen worden verwacht. &a.gnome.name; GNOME Discussie over de GNOME bureaubladomgeving voor &os;. Dit is een technische mailinglijst waarop slechts strikt technische bijdragen worden verwacht. &a.ipfw.name; IP Firewall Dit is het forum voor technische bespreking van het herontwerp van de IP firewall code in &os;. Dit is een technische mailinglijst waarop slechts strikt technische bijdragen worden verwacht. &a.ia64.name; Porten van &os; naar IA64 Dit is een technische mailinglijst voor individuen die actief werken aan het porten van &os; naar het IA-64 platform van &intel;, om problemen op tafel te leggen of alternatieve oplossingen te bespreken. Geïnteresseerden die alleen de technische bespreking willen volgen zijn ook welkom. &a.isdn.name; ISDN Communicatie Dit is de mailinglijst voor discussie over de ontwikkeling van ISDN ondersteuning voor &os;. &a.java.name; &java; Ontwikkeling Dit is de mailinglijst voor het bespreken van de ontwikkeling van significante &java; applicaties voor &os; en het porten en het beheer van &jdk;'s. &a.jobs.name; Banen in de aanbieding en gezocht Dit is een forum voor vacatures en CV's specifiek gerelateerd aan &os;, bijvoorbeeld als er &os; gerelateerd werk wordt gezocht of in de aanbieding is. Dit is geen mailinglijst voor algemene werkonderwerpen omdat daarvoor al elders ruimte staat. Ook deze lijst wordt net als alle andere FreeBSD.org mailinglijsten wereldwijd verspreid. Daarom dient duidelijk vermeld te worden om welke locatie het gaat en onder welke voorwaarden telewerken of bijdragen in huisvesting mogelijk zijn. E–mail dient alleen open formaten te bevatten. Bij voorkeur platte tekst, maar standaard Portable Document Format (PDF), HTML en een aantal andere, zijn acceptabel voor lezers. Gesloten formaten, zoals µsoft; Word (.doc), worden door de mailinglijstserver geweigerd. &a.kde.name; KDE Discussie over KDE op &os; systemen. Dit is een technische mailinglijst waarop slechts strikt technische bijdragen worden verwacht. &a.hackers.name; Technische discussies Dit is een forum voor technische discussie met betrekking tot &os;. Dit is de leidende technische mailinglijst die is bestemd voor mensen die actief aan &os; werken om problemen aan het voetlicht te brengen of alternatieve oplossingen te bespreken. Geïnteresseerden die alleen de technische bespreking willen volgen zijn ook welkom. Dit is een technische mailinglijst waarop slechts strikt technische bijdragen worden verwacht. &a.hardware.name; Algemene discussie over &os; hardware Algemene discussie over de typen hardware waar &os; op draait en problemen en oplossingen over wat te kopen en wat vooral niet. &a.hubs.name; Mirrorsites Aankondigingen en discussie voor beheerders van &os; mirrorsites. &a.isp.name; Onderwerpen voor Internet Service Providers Deze mailinglijst is voor het bespreken van relevante onderwerpen voor Internet Service Providers (ISP's) die &os; gebruiken. Dit is een technische mailinglijst waarop slechts strikt technische bijdragen worden verwacht. &a.openoffice.name; OpenOffice.org Discussie over het porten en beheren van OpenOffice.org en &staroffice;. &a.performance.name; Discussie over het optimaliseren of versnellen van &os; Deze mailinglijst is een platform voor hackers, beheerders en/of andere belanghebbenden om &os; en prestaties gerelateerde onderwerpen te bespreken. De onderwerpen die besproken kunnen worden omvatten &os; installaties met een hoge load, systemen met prestatieproblemen of systemen die tegen de limieten van &os; aan zitten. Zij die willen meewerken om de prestaties van &os; te verbeteren worden sterk aangemoedigd op deze lijst te abonneren. Deze lijst is bijzonder technisch en bijzonder geschikt voor ervaren &os; gebruikers, hackers en beheerders die &os; snel, robuust en schaalbaar willen houden. Deze lijst is geen vraag-en-antwoord lijst die dient als vervanging voor het lezen van documentatie, maar hier worden bijdragen geleverd of vragen gesteld over nog niet eerder beschreven prestatie gerelateerde onderwerpen. &a.pf.name; Discussie en vragen over het pakketfilter firewall systeem Discussie over het pakketfilter (pf) firewall systeem aangaande &os;. Technische discussie en gebruikersvragen zijn beiden welkom. Deze lijst is ook de plaats om het ALTQ QoS framework te bespreken. &a.platforms.name; Porten van niet-&intel; platforms Cross-platform &os; zaken, algemene discussie en voorstellen voor niet-&intel; &os; ports. Dit is een technische mailinglijst waarop slechts strikt technische bijdragen worden verwacht. &a.policy.name; Kernteam beleidsbeslissingen Dit is een laag volume, alleen-lezen mailinglijst voor beleidsbeslissingen van het &os; Kernteam. &a.ports.name; Discussie over ports Discussie over de Portscollectie (/usr/ports) van &os;, de ports infrastructuur en algemene coördinatie aangaande ports. Dit is een technische mailinglijst waarop slechts strikt technische bijdragen worden verwacht. &a.ports-bugs.name; Discussie over ports bugs Discussie over problem reports voor de &os; Portscollectie (/usr/ports), voorgestelde ports of aanpassingen aan ports. Dit is een technische mailinglijst waarop slechts strikt technische bijdragen worden verwacht. &a.proliant.name; Technische dicussie over &os; op HP Proliant serverplatforms Deze mailinglijst wordt gebruikt voor technische discussie over het gebruik van &os; op HP ProLiant servers, inclusief het bespreken van ProLiant-specifieke drivers, beheersoftware, gereedschappen voor instellingen en BIOS updates. Dit is daaarom ook de uitgesproken plaats voor het bespreken van de modules hpasmd, hpasmcli en hpacucli. &a.python.name; Python op &os; Dit is een lijst voor discussie gerelateerd aan het verbeteren van ondersteuning voor Python op &os;. Dit is een technische mailinglijst voor mensen die aan het porten van Python, aanverwante modules en Zope dingen naar &os; werken. &a.questions.name; Gebruikersvragen Dit is de mailinglijst voor vragen over &os;. Er horen geen how to vragen op de technische mailinglijsten thuis, tenzij een vraag erg technisch van aard is. &a.scsi.name; SCSI subsysteem Dit is de mailinglijst voor mensen die aan het SCSI subsysteem voor &os; werken. Dit is een technische mailinglijst waarop slechts strikt technische bijdragen worden verwacht. &a.security.name; Beveiligingsonderwerpen &os; computerbeveiligingsonderwerpen (DES, Kerberos, bekende beveiligingsgaten, oplossingen, enzovoort). Dit is een technische mailinglijst waarop slechts strikt technische bijdragen worden verwacht. Dit is zeker geen vraag-en-antwoord lijst, maar bijdragen voor de FAQ (zowel vraag als antwoord) zijn welkom. &a.security-notifications.name; Beveiligingswaarschuwingen Waarschuwingen voor &os; beveiligingsproblemen en oplossingen. Dit is geen discussielijst. De discussielijst is &a.security.name;. &a.small.name; &os; gebruiken in embedded toepassingen Op deze lijst worden onderwerpen gerelateerd aan ongebruikelijk kleine en embedded &os; installaties besproken. Dit is een technische mailinglijst waarop slechts strikt technische bijdragen worden verwacht. &a.stable.name; Discussie over het gebruik van &os.stable; Dit is de mailinglijst voor gebruikers van &os.stable;. Er worden ook waarschuwingen op gepost over nieuwe opties in -STABLE die invloed op de systemen van gebruikers kunnen hebben en instructies over de te nemen stappen om -STABLE te blijven. Iedereen die STABLE draait hoort zich op deze lijst te abonneren. Dit is een technische mailinglijst waarop slechts strikt technische bijdragen worden verwacht. &a.standards.name; Conformeren C99 & POSIX Dit is een forum voor technische bespreking gerelateerd aan het conformeren van &os; aan de C99 en de POSIX standaarden. &a.usb.name; Discussie over &os; ondersteuning voor USB Dit is de mailinglijst voor technische bespreking van onderwerpen gerelateerd aan &os; ondersteuning voor USB. &a.usergroups.name; Gebruikersgroep Coördinatie Lijst Dit is de mailinglijst voor coördinatoren voor alle lokale gebruikersgroepen, zodat ze met elkaar en een lid van het Kernteam zaken kunnen bespreken. Deze lijst hoort beperkt te blijven tot een overzicht van overleggen en de coördinatie van projecten waarbij meerdere gebruikersgroepen betrokken zijn. &a.vendors.name; Verkopers Coördinatie en discussie tussen het &os; project en verkopers van software en hardware voor &os;. Filters op de mailinglijsten De &os; mailinglijsten worden op verschillende manieren gefilterd om het doorsturen van spam, virussen en andere ongewenste e–mail te beperken. De hieronder beschreven filteracties bevatten niet alle genomen acties voor de beveiliging van de mailinglijsten. Er is een beperkt aantal typen bijlagen toegestaan op de mailinglijsten. Alle bijlagen met een MIME content type dat niet in de onderstaande lijst staat worden verwijderd voordat de mail wordt doorgestuurd naar de mailinglijsten. application/octet-stream application/pdf application/pgp-signature application/x-pkcs7-signature message/rfc822 multipart/alternative multipart/related multipart/signed text/html text/plain text/x-diff text/x-patch Sommige mailinglijsten staan wellicht bijlagen toe met andere MIME content typen, maar de bovenstaande lijst zal gelden voor de meeste mailinglijsten. Als een e–mail zowel een HTML als een platte tekst versie bevat, dan wordt de HTML versie verwijderd. Als een mail alleen een HTML versie bevat, dan wordt die omgezet naar platte tekst. Usenet nieuwsgroepen Naast de twee specifieke &os; nieuwsgroepen zijn er nog veel andere waarin &os; wordt besproken of die anderszins relevant zijn voor &os; gebruikers. Er zijn sleutelwoord doorzoekbare archieven voor een aantal van die nieuwsgroepen, met dank aan Warren Toomey wkt@cs.adfa.edu.au. Specifieke BSD nieuwsgroepen comp.unix.bsd.freebsd.announce comp.unix.bsd.freebsd.misc de.comp.os.unix.bsd (Duits) fr.comp.os.bsd (Frans) it.comp.os.freebsd (Italiaans) Overige interessante &unix; nieuwsgroepen comp.unix comp.unix.questions comp.unix.admin comp.unix.programmer comp.unix.shell comp.unix.user-friendly comp.security.unix comp.sources.unix comp.unix.advocacy comp.unix.misc comp.bugs.4bsd comp.bugs.4bsd.ucb-fixes comp.unix.bsd X Window systeem comp.windows.x.i386unix comp.windows.x comp.windows.x.apps comp.windows.x.announce comp.windows.x.intrinsics comp.windows.x.motif comp.windows.x.pex comp.emulators.ms-windows.wine World wide web servers Onderstaande lijst met World Wide Web Servers wordt automatisch samengesteld om zo actueel mogelijk te zijn en is daarom niet vertaald. &chap.eresources.www.inc; E–mail adressen De onderstaande gebruikersgroepen bieden &os; gerelateerde e–mail adressen aan voor hun leden. De aangegeven beheerders behouden zich het recht voor om een account te verwijderen als die op enigerlei wijze wordt misbruikt. Domein Faciliteiten Gebruikersgroep Beheerder ukug.uk.FreeBSD.org Alleen forwarden freebsd-users@uk.FreeBSD.org Lee Johnston lee@uk.FreeBSD.org Shell accounts De onderstaande gebruikersgroepen bieden shell accounts aan voor mensen die het &os; project actief ondersteunen. De aangegeven beheerders behouden zich het recht voor om een account te verwijderen als die op enigerlei wijze wordt misbruikt. Host Toegang Faciliteiten Beheerder dogma.freebsd-uk.eu.org Telnet/FTP/SSH E–mail, webhosting, anonieme FTP Lee Johnston lee@uk.FreeBSD.org diff --git a/nl_NL.ISO8859-1/books/handbook/install/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/install/chapter.sgml index 91e156084d..dd328ac344 100644 --- a/nl_NL.ISO8859-1/books/handbook/install/chapter.sgml +++ b/nl_NL.ISO8859-1/books/handbook/install/chapter.sgml @@ -1,6048 +1,6049 @@ Jim Mock Geherstructureerd, gereorganiseerd en delen herschreven door Randy Pratt De sysinstall handleiding, schermafdrukken en algemene bijdragen door Willem Jaap Zwart Vertaald door &os; installeren Overzicht installatie &os; heeft een tekstgebaseerd, gebruikersvriendelijk installatieprogramma genaamd sysinstall. Dit is het standaard installatieprogramma, maar leveranciers kunnen hun eigen installatieprogrammatuur leveren. Dit hoofdstuk beschrijft hoe sysinstall gebruikt moet worden om &os; te installeren. Na het lezen van dit hoofdstuk weet de lezer: Hoe &os; installatieschijven gemaakt kunnen worden; Hoe &os; harde schijven benoemt en onderverdeelt; Hoe sysinstall gestart kan worden; Welke vragen sysinstall stelt, wat ze betekenen en hoe er geantwoord kan worden. Veronderstelde voorkennis: De ondersteunde hardwarelijst doornemen van de versie van &os; die geïnstalleerd gaat worden op aanwezigheid van de beschikbare hardware. In zijn algemeenheid zijn deze installatie-instructies geschreven voor computers met een &i386; architectuur (PC compatible). Waar van toepassing worden instructies voor andere platformen (bijvoorbeeld Alpha) gegeven. Deze handleiding is zoveel mogelijk bijgewerkt, maar toch kunnen er verschillen optreden tussen de installatieprocedure en deze tekst. Er wordt aangeraden dit hoofdstuk te beschouwen als een algemene richtlijn en niet als een letterlijke handleiding voor installatie. Voorbereidende taken Beschrijf de computer Probeer een computer te inventariseren voordat &os; wordt geïnstalleerd. De &os; installatieroutines geven een overzicht van alle componenten (harde schijven, netwerkkaarten, cd-rom-spelers, enzovoort) met hun typenummer en fabrikant. &os; probeert ook de juiste instellingen te achterhalen, zoals IRQ en IO-poort gebruik. Vanwege de verscheidenheid aan PC-hardware verloopt dit niet altijd helemaal succesvol en daarom kan het nodig zijn om de gegevens die &os; achterhaalt te verbeteren. Mocht er al een ander besturingssysteem geïnstalleerd zijn, zoals &windows; of &linux;, dan is het aan te raden de mogelijkheden van dat besturingssysteem te gebruiken om te achterhalen hoe hardware is ingesteld. Als niet volledig bekend is welke instellingen een uitbreidingskaart heeft, dan kan het zijn dat ze op de kaart zelf zijn afgedrukt. Veelvoorkomende IRQ nummers zijn 3, 5 en 7 en IO-poort adressen zijn meestal geschreven als hexadecimale getallen, zoals 0x330. Er wordt aangeraden deze informatie af te drukken of op te schrijven voordat &os; wordt geïnstalleerd. Het kan handig zijn om een tabel te maken, zoals deze: Voorbeeld van beschrijving van componenten Component IRQ IO-poort(en) Opmerkingen Eerste harde schijf N/A N/A 40 GB, Seagate, eerste IDE master cd-rom N/A N/A Eerste IDE slave Tweede harde schijf N/A N/A 20 GB, IBM, tweede IDE master Eerste IDE controller 14 0x1f0 Netwerkkaart N/A N/A &intel; 10/100 Modem N/A N/A &tm.3com; 56K faxmodem, op COM1
Maak een back-up van gegevens Als de computer waarop &os; geïnstalleerd gaat worden waardevolle gegevens bevat, dan dient er een back-up te zijn en dient deze back-up getest te zijn voordat &os; wordt geïnstalleerd. De &os; installatieprocedure vraagt om bevestiging voordat er naar de schijven geschreven wordt, maar als dat eenmaal is begonnen kan het niet meer teruggedraaid worden. Bepaal waar &os; geïnstalleerd wordt Als de hele harde schijf voor &os; beschikbaar is, dan hoeft op dit punt verder niets gedaan te worden. Ga verder naar de volgende sectie. Als &os; echter naast een ander besturingssysteem op een computer komt, dan moet basaal bekend zijn hoe gegevens op schrijven worden opgeslagen en wat dat voor consequenties heeft. Indeling van schrijven voor &i386; Een PC schijf kan worden onderverdeeld in aparte stukken. Deze stukken heten partities. In het ontwerp van de PC is opgenomen dat een schijf slechts vier partities kan bevatten. Deze partities heten de primaire partities. Om deze beperking te omzeilen is een nieuwe soort partitie bedacht, de extended partitie. Een schijf kan slechts één extended partitie bevatten. Binnen een extended partitie kunnen speciale partities, genaamd logische partities, worden aangemaakt. Elke partitie heeft een partitie-ID, een getal dat aangeeft welk soort gegevens er op die partitie staan. &os;-partities hebben partitie-ID 165. In zijn algemeenheid benoemt elk besturingssysteem partities op zijn eigen manier. Bijvoorbeeld: &ms-dos; en zijn afgeleiden, zoals &windows;, geven elke primaire en logische partitie een (station) letter, beginnend met C:. &os; moet geïnstalleerd worden op een primaire partitie. &os; kan al zijn gegevens, inclusief alle bestanden die zelf zijn gemaakt, op deze partitie opslaan. Als er meerdere schijven zijn, dan kunnen er &os;-partities worden aangemaakt op alle of op sommige schijven. Als &os; wordt geïnstalleerd moet er een partitie beschikbaar zijn. Dit kan een lege partitie zijn die is aangemaakt of het mag een bestaande partitie zijn met gegevens die niet langer bewaard hoeven te blijven. Als alle partities op alle schijven gebruikt worden, dan moet er een leeg gemaakt worden voor &os; met de hulpprogramma's van het andere besturingssysteem dat wordt gebruikt (bijvoorbeeld fdisk onder &ms-dos; of &windows;). Als er een partitie over is, dan kan die gebruikt worden. Het kan zo zijn dat één of meer van de bestaande partities verkleind moet worden. Een minimale installatie van &os; heeft 100 MB schijfruimte nodig. Dat is wel een zeer minimale installatie, waarop bijna geen ruimte over is voor eigen bestanden. Een meer realistisch minimum is 250 MB zonder grafische gebruikersomgeving en 350 MB of meer als er ook een grafische gebruikersomgeving moet draaien. Als er ook nog gebruikt gemaakt wordt van een heleboel programma's van derde partijen dan is nog meer ruimte nodig. Met commerciële software zoals &partitionmagic; kunnen partities van grootte gewijzigd worden om ruimte te maken voor &os;. De map tools op de cd-rom bevat twee freeware programma's die dit ook kunnen, FIPS en PResizer. Handleidingen hiervoor staan in dezelfde map. FIPS, PResizer en &partitionmagic; kunnen FAT16 en FAT32-partities wijzigen als ze gebruikt worden in &ms-dos; tot &windows; ME. &partitionmagic; is het enige van de bovenstaande programma's dat NTFS-partities kan wijzigen. Verkeerd gebruik van deze programma's kan gegevens van een schijf verwijderen. Er dient een goede, werkende back-up te zijn voordat deze programma's gebruikt worden. Gebruik van een bestaande, ongewijzigde partitie Stel er is al een computer met een enkele 4 GB harde schijf waarop een versie van &windows; is geïnstalleerd en de schijf is verdeeld in twee schijfstations, C: en D:, van elk 2 GB. Er staat 1 GB aan gegevens op C: en 0.5 GB aan gegevens op D:. Dit betekent dat de harde schijf twee partities heeft, één voor elke letter. Alle gegevens op D: kunnen gekopieerd worden naar C:, waardoor de tweede partitie beschikbaar komt voor &os;. Een bestaande partitie verkleinen Stel er is een computer met een enkele 4 GB harde schijf waarop een versie van &windows; is geïnstalleerd. Bij het installeren van &windows; is een grote partitie gemaakt, station C: van 4 GB. Er is 1.5 GB in gebruik en voor &os; is 2 GB schijfruimte wenselijk. Voor een installatie van &os; is één van onderstaande opties de oplossing: Maak een back-up van de &windows; gegevens en installeer &windows; opnieuw, waarbij een partitie van 2 GB wordt aanmaakt bij het installeren. Gebruik één van de bovengenoemde programma's zoals &partitionmagic; om de &windows;-partitie te verkleinen. Schijfindelingen voor Alpha computers Alpha Op Alpha computers is een aparte harde schijf nodig voor &os;. Het is onmogelijk om een schijf te delen met een ander besturingssysteem. Afhankelijk van de Alpha computer kan de schijf een SCSI- of IDE-schijf zijn, als de computer er maar van kan opstarten. Conform de conventies van Digital / Compaq handleidingen is alle SRM invoer weergegeven in hoofdletters. SRM is ongevoelig voor hoofd- en kleine letters. Om de namen en types van de schijven in een machine te achterhalen kan het commando SHOW DEVICE in de SRM console prompt gebruikt worden: >>>SHOW DEVICE dka0.0.0.4.0 DKA0 TOSHIBA CD-ROM XM-57 3476 dkc0.0.0.1009.0 DKC0 RZ1BB-BS 0658 dkc100.1.0.1009.0 DKC100 SEAGATE ST34501W 0015 dva0.0.0.0.1 DVA0 ewa0.0.0.3.0 EWA0 00-00-F8-75-6D-01 pkc0.7.0.1009.0 PKC0 SCSI Bus ID 7 5.27 pqa0.0.0.4.0 PQA0 PCI EIDE pqb0.0.1.4.0 PQB0 PCI EIDE Dit is een voorbeeld van een Digital Personal Workstation 433au en geeft aan dat er drie schijven verbonden zijn met de computer. De eerste is een cd-rom station genaamd DKA0 en de andere twee zijn harde schijven die achtereenvolgens DKC0 en DKC100 heten. Schijven met namen in het formaat DKx zijn SCSI schijven. DKA100 is bijvoorbeeld een SCSI schijf met SCSI target ID 1 op de eerste SCSI bus (A), terwijl DKC300 een SCSI schijf is met SCSI ID 3 op de derde SCSI bus (C). Apparaatnaam PKx is de SCSI host bus adapter. Zoals te zien in de uitvoer van SHOW DEVICE worden SCSI cd-rom stations op dezelfde manier behandeld als SCSI harde schijven. IDE schijven hebben namen in het formaat DQx, terwijl PQx de naam is van de bijbehorende IDE controller. Netwerkgegevens verzamelen Als bij de installatie van &os; gebruik gemaakt wordtvan een netwerk (bijvoorbeeld bij een installatie vanaf een FTP site of een NFS server), dan moeten de netwerkinstellingen bekend zijn. Deze informatie wordt gevraagd tijdens het installeren, zodat &os; contact kan maken met het netwerk om de installatie te voltooien. Contact maken met een ethernet netwerk of kabel/DSL modem Als er contact gemaakt wordt met een ethernet netwerk of een internetverbinding met een ethernet netwerkkaart via de kabel of DSL, dan is de volgende informatie nodig: IP-adres IP-adres van de default gateway Hostname IP-adressen van de DNS server(s) Subnetmasker Als deze informatie niet bekend is, dan kan deze meestal nagevraagd worden bij de systeembeheerder of service provider. Het kan zijn dat zij aangeven dat één en ander automatisch wordt toegekend door middel van DHCP. Het is van belang hier een notitie van te maken. Contact maken met een modem Ook door middel van inbellen bij een internet service provider met een gewoon modem kan &os; geïnstalleerd worden via internet, het duurt alleen erg lang. Dan is nodig: Het inbelnummer van een ISP De COM: poort waaraan de modem zit Gebruikersnaam en wachtwoord bij de ISP Controleer op &os; Errata Hoewel het &os; project er naar streeft om elke versie van &os; zo stabiel mogelijk te laten zijn, kan het voorkomen dat er foutjes in het systeem sluipen. Heel af en toe beïnvloeden deze foutjes de installatieprocedure. Als ze ontdekt en opgelost zijn worden ze beschreven in de &os; Errata op de &os; website. Het is verstandig voor een installatie te controleren of er errata zijn om er zeker van te zijn dat er geen obstakels zijn. Informatie over alle uitgaven, inclusief de errata staan in de release information op de &os; website. De &os; installatiebestanden De &os; installatieprocedure kan &os; installeren vanaf één van de volgende plaatsen: Lokale media Cd-rom of DVD DOS-partitie op dezelfde computer SCSI of QIC tape Diskettestation Netwerk FTP site, indien noodzakelijk door een firewall of via een HTTP proxy NFS server Parallelle of seriële verbinding Als &os; gekocht is op CD of DVD dan is alles wat nodig is aanwezig om door te gaan naar . Als de installatiebestanden nog niet beschikbaar zijn wordt in uitgelegd hoe de installatie via bovenstande methoden voorbereid kan worden. Nadat de installatiebestanden beschikbaar zijn kunnen de voorbereidingen voor de installatie verdergaan in . Opstartmedia aanmaken De &os; installatieprocedure begint met het opstarten van een computer met het &os; installatieprogramma. Dit programma wordt niet uitgevoerd vanuit een ander besturingssysteem. Normaliter start een computer op met het besturingssysteem dat is geïnstalleerd op een harde schijf, maar hij kan ook ingesteld worden om op te starten van een bootable diskette. De meeste hedendaagse computers kunnen ook opstarten van een cd-rom in het cd-rom station. Als &os; op cd-rom of DVD beschikbaar is (gekocht of zelf gebrand) en een computer kan opstarten van een cd-rom of DVD (meestal een BIOS optie genaamd Boot Order of iets dergelijks), dan is het doorwerken van deze sectie niet nodig. De &os; cd-rom en DVD images zijn bootable en kunnen zonder verdere voorbereidingen gebruikt worden om &os; te installeren. Om opstartdiskettes te maken kunnen de volgende stappen gevolgd worden: Bemachtig de images voor opstartdiskettes De opstartschijven zijn beschikbaar op de installatiemedia in de map floppies/ en kunnen ook gedownload worden uit de map floppies, ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/<arch>/<versie>-RELEASE/floppies/. Vervang <arch> en <versie> door de architectuur en het versienummer dat geïnstalleerd moet worden. De images voor bootdiskettes voor bijvoorbeeld &os; &rel.current;-RELEASE voor &i386; zijn beschikbaar op . De diskette-images hebben de extensie .flp. De map floppies/ bevat een aantal images en het hangt af van de gewenste &os; versie, en in sommige gevallen ook van de hardware, welke images nodig zijn. Voor het installeren van &os; 4.X zijn meestal maar twee bestanden nodig, kern.flp en mfsroot.flp. Voor het installeren van &os; 5.X zijn in de meeste gevallen drie floppies nodig, boot.flp, kern1.flp en kern2.flp. In dezelfde map staat README.TXT voor de laatste informatie over de diskette-images. Voor 5.X systemen ouder dan &os; 5.3 kunnen extra apparaatstuurprogramma's nodig zijn. Die stuurprogramma's staan op het image drivers.flp. Het FTP-programma moet ingesteld staan in binary mode om de disk-images te downloaden. Sommige webbrowsers blijken de text (of ASCII) modus te gebruiken en dan kan er niet van de diskettes opgestart worden. Maak de diskettes aan Per gedownload image wordt een diskette aangemaakt. Vanzelfsprekend moeten deze diskettes vrij zijn van fouten. Het gemakkelijkst is dit te testen door de diskettes te formatteren. Vanaf de fabriek geformatteerde floppies kunnen niet vertrouwd worden. Het programma format in &windows; meldt niet of er bad blocks zijn, het markeert ze gewoon als bad en negeert ze. Het wordt geadviseerd schone, nieuwe floppies te gebruiken als op deze manier wordt geïnstalleerd. Als bij het installeren van &os; het installatieprogramma vastloopt, blijft hangen of zich op een andere manier vreemd gedraagt, dan ligt dat meestal aan de floppies. Probeer dan de diskette-images op nieuwe schijven te schrijven en probeer het opnieuw. Schrijf de imagebestanden op diskettes De .flp-bestanden zijn geen gewone bestanden die naar een diskette te kopiëren zijn. Het zijn images van de complete inhoud van een diskette. Dit betekent dat ze niet eenvoudigweg gekopieerd kunnen worden van de ene schijf naar de andere. In plaats daarvan moet speciale software gebruikt worden om de images rechtstreeks op de diskettes te schrijven. DOS Als de diskettes aanmaakt worden op een computer met &ms-dos;/&windows;, dan levert het &os; project de software fdimage. Als de floppies van de cd-rom worden gebruikt en het cd-rom station is E:, dan kan dit als volgt: E:\> tools\fdimage floppies\kern.flp A: Herhaal dit commando voor elk .flp-bestand, waarbij steeds een nieuwe diskette wordt gebruikt. Merk elke diskette met de naam van het bestand dat erop wordt gekopieerd. Pas de opdrachtregel steeds aan, afhankelijk van waar de .flp-bestanden staan. Als er geen cd-rom beschikbaar is dan kan fdimage gedownload worden vanuit de map tools op de &os; FTP site. Als de diskettes worden aanmaakt op een &unix; systeem (zoals een ander &os; systeem) dan kan &man.dd.1; gebruikt worden om de imagebestanden naar diskette te kopiëren. Onder &os;: &prompt.root; dd if=kern.flp of=/dev/fd0 Onder &os; verwijst /dev/fd0 naar het eerste diskettestation (de A:-schijf). /dev/fd1 zou de B:-schijf zijn enzovoorts. Andere &unix;-varianten kunnen andere namen hebben voor de diskettestations. Meer informatie staat in de documentatie van ieder systeem . Het installeren van &os; kan nu beginnen.
Beginnen met de installatie De installatie maakt geen wijzigingen op schijven totdat het volgende bericht verschijnt: Last Chance: Are you SURE you want continue the installation? If you're running this on a disk with data you wish to save then WE STRONGLY ENCOURAGE YOU TO MAKE PROPER BACKUPS before proceeding! We can take no responsibility for lost disk contents! De installatie kan worden beëindigd op elk moment voor deze laatste waarschuwing zonder dat de inhoud van harde schijven wordt gewijzigd. Als de angst bestaat dat er iets verkeerd is ingesteld, dan kan op dat moment gewoon de computer uitgezet worden zonder dat er schade optreedt. Opstarten Opstarten van &i386; Begin met een computer die uit staat. Zet de computer aan. Als hij aangaat laat hij een optie zien om het systeeminstelmenu, of BIOS, te bereiken, gewoonlijk via F2, F10, Del, of AltS. Gebruik de toets die op het scherm wordt aangegeven. In sommige gevallen laat de computer een plaatje zien terwijl hij opstart. Gewoonlijk verdwijnt dit plaatje door het intypen van Esc zodat eventuele verborgen berichten zichtbaar worden. Zoek de instelling die bepaalt vanaf welk medium de computer opstart. Dit wordt meestal aangeduid met Boot Order en laat een lijst met media zien, zoals Floppy, CD-ROM, eerste harde schijf, enzovoorts. Als het nodig was om diskettes aan te maken, stel dan floppy disk in. Als wordt opstart van een cd-rom stel dat dan in. Raadpleeg in geval van twijfel de documentatie van de computer en/of het moederbord. Maak de instellingen, bewaar de veranderingen en sluit het instelprogramma af. De computer moet dan opnieuw starten. Als het nodig was opstartdiskettes te maken, zoals beschreven in , dan is er één opstartschijf, waarschijnlijk die met kern.flp erop. Stop die diskette in het diskettestation. Bij opstarten vanaf CD moet na het aanzetten van de computer zo snel mogelijk de cd-rom ingestoken worden. Als de computer opstart zoals altijd en met het huidige besturingssysteem begint, dan kan dat om de volgende redenen zijn: De opstartschijven waren niet vroeg genoeg in de computer gedaan om ervan op te starten. Laat ze er dan inzitten en probeer de computer te herstarten. De gemaakte wijzigingen in de BIOS zijn niet goed doorgekomen. Doe dat dan nog een keer totdat de juiste instelling gevonden is. De BIOS ondersteunt het opstarten van het gekozen medium niet. &os; start nu op. Bij opstarten vanaf cd-rom is iets als het volgende op het scherm te zien (versie-informatie weggelaten): Verifying DMI Pool Data ........ Boot from ATAPI CD-ROM : 1. FD 2.88MB System Type-(00) Uncompressing ... done BTX loader 1.00 BTX version is 1.01 Console: internal video/keyboard BIOS drive A: is disk0 BIOS drive B: is disk1 BIOS drive C: is disk2 BIOS drive D: is disk3 BIOS 639kB/261120kB available memory FreeBSD/i386 bootstrap loader, Revision 0.8 /kernel text=0x277391 data=0x3268c+0x332a8 | | Hit [Enter] to boot immediately, or any other key for command prompt. Booting [kernel] in 9 seconds... _ Bij opstarten vanaf diskette is iets als het volgende op het scherm te zien (versie-informatie weggelaten): Verifying DMI Pool Data BTX loader 1.00 BTX version is 1.01 Console: internal video/keyboard BIOS drive A: is disk0 BIOS drive C: is disk1 BIOS 639kB/261120kB available memory FreeBSD/i386 bootstrap loader, Revision 0.8 /kernel text=0x277391 data=0x3268c+0x332a8 | Please insert MFS root floppy and press enter: Volg de instructies op en haal de diskette met kern.flp eruit, stop de diskette met mfsroot.flp in het station en druk op Enter. &os; 5.3 en latere versies kennen andere diskettesets, zoals beschreven in het vorige onderdeel. Start op vanaf de eerste diskette en geef volgende diskettes in als daarom wordt gevraagd. Of nu wordt opstart van diskette of cd-rom, de opstartprocedure komt op een gegeven moment op het volgende punt: Hit [Enter] to boot immediately, or any other key for command prompt. Booting [kernel] in 9 seconds... _ Wacht 10 seconden of druk op Enter. Voor &os; 4.X start dit het menu voor kernelinstellingen. Opstarten voor Alpha Alpha Begin met een computer die uit staat. Zet de computer aan en wacht op de boot monitor prompt. Als het nodig was opstartdiskettes te maken, zoals beschreven in , dan is er één opstartschijf, waarschijnlijk die met kern.flp erop. Stop die diskette in het diskettestation en geef het volgende commando om op te starten vanaf die schijf (vervang de naam van het diskettestation waar nodig): >>>BOOT DVA0 -FLAGS '' -FILE '' Bij opstarten vanaf cd-rom: stop dan de cd-rom in het cd-rom station en geef het volgende commando om de installatie te starten (vervang daarbij de naam van het cd-rom station als nodig): >>>BOOT DKA0 -FLAGS '' -FILE '' &os; start nu op. Bij opstarten vanaf diskette is op een gegeven moment het volgende op het scherm te zien: Please insert MFS root floppy and press enter: Volg de instructies op en haal de kern.flp diskette eruit, stop de mfsroot.flp diskette erin en druk op Enter. Of nu wordt opstart van diskette of cd-rom, de opstartprocedure komt op een gegeven moment op het volgende punt: Hit [Enter] to boot immediately, or any other key for command prompt. Booting [kernel] in 9 seconds... _ Wacht 10 seconden of druk op Enter. Nu start het menu voor kernelinstellingen. Kernelinstellingen Vanaf &os; versie 5.0 wordt userconfig afgeraden ten gunste van de nieuwe &man.device.hints.5; methode. Zie voor meer informatie over &man.device.hints.5;. De kernel is het hart van het besturingssysteem en verantwoordelijk voor heel veel zaken, waaronder de toegang tot alle componenten in een systeem, zoals harde schijven, netwerkkaarten, geluidskaarten, enzovoorts. Elk apparaat dat door &os; wordt ondersteund heeft een bijbehorend stuurprogramma (ook wel driver genaamd). Elk stuurprogramma heeft een twee of drieletterige naam, zoals sa voor het SCSI sequential access stuurprogramma of sio voor het Seriële I/O stuurprogramma (dat de COM poorten beheert). Als de kernel start controleert elk stuurprogramma of de hardware die wordt ondersteunt in de computer aanwezig is. Als die aanwezig is stelt het stuurprogramma die hardware in en maakt die beschikbaar voor de rest van de kernel. Deze controle wordt gewoonlijk device probing genoemd. Helaas is het niet altijd mogelijk om dit op een veilige manier te doen. Sommige stuurprogramma's voor hardware kunnen niet naast elkaar bestaan en het zoeken naar de ene hardware component laat de andere soms in een verkeerde toestand achter. Dit is een beperking van het PC-ontwerp. Veel oude componenten zijn zogenaamde ISA-apparaten, in tegenstelling tot PCI-apparaten. De ISA-specificatie schrijft voor dat elke component informatie heeft geprogrammeerd heeft in de component zelf, zoals bijvoorbeeld het Interrupt Request Line nummer (IRQ) en het IO-poortadres dat het stuurprogramma gebruikt. Dit wordt normaliter ingesteld met fysiek aanwezige jumpers op de kaart of met een DOS gebaseerd programma. Dit was vaak de bron van allerlei problemen, omdat het niet mogelijk is dat twee componenten hetzelfde IRQ of poortadres delen. Nieuwere componenten volgen de PCI-specificatie, waarbij dit niet nodig is, omdat de componenten geacht worden samen te werken met het BIOS en hen aangegeven wordt welk IRQ en poortadres zij moeten gebruiken. Als er ISA-componenten in een computer zitten moet het &os; stuurprogramma voor dat apparaat ingesteld worden voor het IRQ en poortadres dat op de kaart is ingesteld. Dat is waarom het handig is een inventarisatie van een computer te maken (zie ). Helaas, sommige standaard IRQ's en geheugenpoorten die in gebruik zijn door stuurprogramma's conflicteren. Dat komt doordat sommige ISA-kaarten geleverd worden met IRQ's en geheugenpoorten die conflicteren. De standaardwaarden in de &os; stuurprogramma's zijn bewust zo ingesteld dat zij de standaardwaarden van de leverancier volgen, waardoor, vers geïnstalleerd, zoveel mogelijk kaarten werken. Dit is bijna nooit een probleem bij het dagelijks gebruik van &os;. Een computer bevat normaliter geen twee kaarten die conflicteren, want één van de twee werkt dan niet (onafhankelijk van het besturingssysteem dat wordt gebruikt). Het is wel een probleem bij het voor de eerste keer installeren van &os;, omdat de kernel die gebruikt wordt bij de installatie zoveel mogelijk stuurprogramma's bevat, zodat zoveel mogelijk verschillende hardware ondersteund wordt. Dit heeft tot gevolg dat sommige stuurprogramma's conflicterende instellingen kunnen hebben. De apparaten worden onderzocht in een voorgeschreven volgorde en als er een kaart in een systeem zit die achteraan in het onderzoeksproces zit en conflicteert met een eerdere kaart, dan kan het zijn dat die kaart niet functioneert of niet juist herkend wordt bij de installatie van &os;. Daarom kan bij het installeren van &os; eerst bekeken worden welke stuurprogramma's er in de kernel ingesteld zijn en kunnen er enkele uitgeschakeld worden voor componenten die niet in het te installeren systeem zitten. Daarnaast kunnen de instellingen van een stuurprogramma bevestigd of gewijzigd worden als er een component in zit waarvan de standaardwaarden verkeerd staan. Dit klinkt waarschijnlijk ingewikkelder dan het in werkelijkheid is. toont het menu kernelinstellingen. We raden aan de optie Start kernel configuration in full-screen visual mode te kiezen. Dat is de meest eenvoudige interface voor nieuwe gebruikers.
Menu kernelinstellingen &txt.install.userconfig;
Het scherm voor het menu kernelinstellingen () is verdeeld in vier onderdelen: Een uitklapbare lijst met alle stuurprogramma's die als actief zijn gemarkeerd, onderverdeeld in groepen zoals Storage (opslag), en Network (netwerk). Bij elk stuurprogramma staat een beschrijving, de twee- of drieletterige naam van het stuurprogramma en de IRQ en geheugenpoort in gebruik door het stuurprogramma. Daarnaast wordt met CONF naast het stuurprogramma aangegeven of dit conflicteert met een ander stuurprogramma. Dit onderdeel laat tevens zien hoeveel conflicterende stuurprogramma's als actief gemarkeerd zijn. Stuurprogramma's die gemarkeerd zijn als inactief. Ze blijven in de kernel, maar er wordt niet gezocht naar hun apparaat als de kernel start. Deze stuurprogramma's zijn op dezelfde manier onderverdeeld als de actieve stuurprogramma's. Meer details over het geselecteerde stuurprogramma, inclusief de IRQ en geheugenpoort. Informatie over de geldige toetsaanslagen.
Het menu kernelapparaatinstellingen &txt.install.userconfig2;
De rapportage van conflicten is geen reden tot zorg, dat is te verwachten. Alle stuurprogramma's zijn ingeschakeld en zoals reeds uitgelegd conflicteren sommige stuurprogramma's met elkaar. Nu moet de lijst met stuurprogramma's doorgewerkt worden en kunnen de conflicten worden oplost. Stuurprogrammaconflicten oplossen Toets X. Hierdoor klapt de lijst met stuurprogramma's volledig uit, zodat ze allemaal te zien zijn. Met de pijltjestoetsen kan door de lijst met actieve stuurprogramma's genavigeerd worden. toont het resultaat van de toets X.
Uitgeklapte lijst stuurprogramma's
Schakel alle stuurprogramma's voor apparaten die niet in een systeem zitten uit. Selecteer een stuurprogramma met de pijltjestoetsen en druk op Del om een stuurprogramma uit te zetten. Het stuurprogramma wordt verplaatst naar de lijst Inactive Drivers. Als per ongeluk een stuurprogramma is uitzet dat toch nodig is, druk op Tab om naar de lijst met Inactive Drivers te gaan, selecteer het stuurprogramma en druk op Enter om het weer terug te zetten in de actieve lijst. Zet sc0 niet uit. Dit stuurprogramma bestuurt het scherm en dat is nodig, behalve als over een seriële kabel wordt geïnstalleerd. Zet atkbd0 alleen uit als een USB toetsenbord wordt gebruikt. Met een normaal toetsenbord moet atkbd0 actief blijven. Als er geen conflicten zijn kan deze stap overgeslagen worden. Anders moeten de overgebleven conflicten worden uitgezocht. Als ze niet de melding allowed conflict in het berichtendeel hebben, dan moet het IRQ of adres voor het apparaat wijzigen of moet het IRQ of adres op de kaart gewijzigd worden. Selecteer het stuurprogramma en druk op Enter om de IRQ en poortinstellingen van het stuurprogramma te wijzigen. De cursor gaat naar het derde deel van het scherm en daar kunnen de waarden gewijzigd worden. Hier kunnen de waarden voor IRQ en poortadres ingevuld worden die bij de hardware-inventarisatie zijn aangetroffen. Druk op Q om het wijzigen van de apparaatinstellingen te beëindigen en terug te gaan naar de lijst met actieve stuurprogramma's. Als niet helder is wat de instellingen moeten zijn, dan kan de instelling -1 geprobeerd worden. Sommige &os; stuurprogramma's kunnen veilig de hardware onderzoeken om te ontdekken wat de juiste instellingen zijn en de waarde -1 zorgt ervoor daarvoor. De manier om het adres op de hardware te wijzigen verschilt van kaart tot kaart. Voor sommige onderdelen moet de kaart uit de computer gehaald worden en dan kunnen de jumperinstellingen of DIP-switches veranderd worden. Andere kaarten hebben een DOS-diskette dat programma's bevat om de instellingen van de kaart te wijzigen. Lees in elk geval de documentatie die bij de kaart zit. Na het wijzigen van de instellingen dient zeer waarschijnlijk de computer opnieuw gestart te moeten worden en daarmee dus ook de &os; installatieprocedure. Als alle conflicten zijn opgelost dan ziet het scherm er ongeveer uit als in .
Stuurprogrammainstellingen zonder conflicten
Het is te zien dat de lijst met actieve stuurprogramma's nu veel korter is, omdat er alleen maar stuurprogramma's in staan voor apparaten die echt in de computer zitten. Bewaar de wijzigingen en ga verder met de volgende stap van de installatie. Druk op Q om het scherm met apparaatinstellingen te verlaten. Dit bericht verschijnt: Save these parameters before exiting? ([Y]es/[N]o/[C]ancel) Antwoord Y om de parameters te bewaren in het geheugen (ze worden naar schijf geschreven als de installatie is afgerond) en het onderzoeken van de hardware begint. Na het tonen van de resultaten daarvan in zwart/wit start sysinstall en wordt het hoofdmenu getoond ().
Hoofdmenu Sysinstall
Resultaten van het hardware-onderzoek bekijken De laatste paar honderd regels die op het scherm verschenen zijn bewaard en kunnen bekeken worden. Druk op Scroll Lock om ze te bekijken. Hiermee wordt de scrollmodus ingeschakeld. Gebruik de pijltjestoetsen en PageUp en PageDown om de resultaten te bekijken. Druk weer op Scroll Lock om de scrollmodus uit te schakelen. Dit kan nu gedaan worden om de tekst te bekijken die over het scherm rolde terwijl de kernel de hardware onderzocht. Er is tekst te zoals in , maar de exacte tekst is anders, afhankelijk van de componenten in een computer.
Voorbeeld resultaten hardware-onderzoek avail memory = 253050880 (247120K bytes) Preloaded elf kernel "kernel" at 0xc0817000. Preloaded mfs_root "/mfsroot" at 0xc0817084. md0: Preloaded image </mfsroot> 4423680 bytes at 0xc03ddcd4 md1: Malloc disk Using $PIR table, 4 entries at 0xc00fde60 npx0: <math processor> on motherboard npx0: INT 16 interface pcib0: <Host to PCI bridge> on motherboard pci0: <PCI bus> on pcib0 pcib1:<VIA 82C598MVP (Apollo MVP3) PCI-PCI (AGP) bridge> at device 1.0 on pci0 pci1: <PCI bus> on pcib1 pci1: <Matrox MGA G200 AGP graphics accelerator> at 0.0 irq 11 isab0: <VIA 82C586 PCI-ISA bridge> at device 7.0 on pci0 isa0: <iSA bus> on isab0 atapci0: <VIA 82C586 ATA33 controller> port 0xe000-0xe00f at device 7.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 uhci0 <VIA 83C572 USB controller> port 0xe400-0xe41f irq 10 at device 7.2 on pci 0 usb0: <VIA 83572 USB controller> on uhci0 usb0: USB revision 1.0 uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr1 uhub0: 2 ports with 2 removable, self powered pci0: <unknown card> (vendor=0x1106, dev=0x3040) at 7.3 dc0: <ADMtek AN985 10/100BaseTX> port 0xe800-0xe8ff mem 0xdb000000-0xeb0003ff ir q 11 at device 8.0 on pci0 dc0: Ethernet address: 00:04:5a:74:6b:b5 miibus0: <MII bus> on dc0 ukphy0: <Generic IEEE 802.3u media interface> on miibus0 ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto ed0: <NE2000 PCI Ethernet (RealTek 8029)> port 0xec00-0xec1f irq 9 at device 10. 0 on pci0 ed0 address 52:54:05:de:73:1b, type NE2000 (16 bit) isa0: too many dependant configs (8) isa0: unexpected small tag 14 orm0: <Option ROM> at iomem 0xc0000-0xc7fff on isa0 fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0 atkbd0: <AT Keyboard> flags 0x1 irq1 on atkbdc0 kbd0 at atkbd0 psm0: <PS/2 Mouse> irq 12 on atkbdc0 psm0: model Generic PS/@ mouse, device ID 0 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 sio0: type 16550A sio1 at port 0x2f8-0x2ff irq 3 on isa0 sio1: type 16550A ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0 pppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/15 bytes threshold plip0: <PLIP network interface> on ppbus0 ad0: 8063MB <IBM-DHEA-38451> [16383/16/63] at ata0-master UDMA33 acd0: CD-RW <LITE-ON LTR-1210B> at ata1-slave PIO4 Mounting root from ufs:/dev/md0c /stand/sysinstall running as init on vty0
Controleer de resultaten van het hardware-onderzoek nauwgezet om er zeker van te zijn dat &os; alle componenten gevonden heeft die verwacht worden. Als een component niet is gevonden, dan komt die niet voor. Als het nodig was de instellingen van het stuurprogramma voor een component te wijzigen, controleer dan of de juiste waarden zijn ingevuld. Als er wijzigingen gemaakt moeten worden dan is de meest eenvoudige wijze het programma sysinstall te beëindigen en opnieuw te beginnen. Dit is tevens een goede manier om vertrouwd te raken met het installatieproces.
Sysinstall verlaten
Gebruik de pijltjestoetsen om in het hoofdmenu Exit Install te selecteren. Het volgende bericht verschijnt: User Confirmation Requested Are you sure you wish to exit? The system will reboot (be sure to remove any floppies from the drives). [ Yes ] No Het installatieprogramma start opnieuw als de cd-rom nog in het station zit en &gui.yes; gekozen wordt. Bij opstarten van diskettes is het nodig om de diskette met mfsroot.flp uit het station te halen en te vervangen door de diskette met kern.flp voor opnieuw wordt gestart.
Inleiding Sysinstall Het hulpprogramma sysinstall is het installatieprogramma voor &os;. Het is tekstgebaseerd en is onderverdeeld in een aantal menu's en schermen die gebruikt kunnen worden om de installatieprocedure in te stellen en te beheren. Het menu van sysinstall wordt bestuurd met de pijltjestoetsen, Enter, Space en andere toetsen. Een gedetailleerde beschrijving van de gebruikte toetsen en wat ze doen is opgenomen in de gebruikersinformatie voor sysinstall. Selecteer de optie Usage om deze informatie te lezen. Selecteer de knop [Select], zoals in , en druk op Enter. De instructies om het menusysteem te gebruiken worden getoond. Na het lezen kan met Enter het hoofdmenu weer getoond worden.
Usage selecteren in het sysinstall hoofdmenu
Menu Documentation selecteren Kies met de pijltjestoetsen in het hoofdmenu Doc en druk op Enter.
Menu Documentation selecteren
Dit toont het menu Documentation.
Sysinstall menu Documentation
Het is belangrijk om de documentatie te lezen. Selecteer een document met de pijltjestoetsen en druk op Enter om het te bekijken. Na het lezen wordt met Enter teruggekeerd naar het menu Documentation. Selecteer Exit met de pijltjestoetsen en druk op Enter om het menu Documentation te verlaten.
Menu Keymap selecteren Kies met de pijltjestoetsen Keymap in het menu en druk op Enter om de toetsenbordinstellingen te wijzigen. Dit is alleen nodig als geen standaard of VS-toetsenbord wordt gebruikt.
Sysinstall hoofdmenu
Een andere toetsenbordindeling is te kiezen door het menuitem te selecteren met omhoog/omlaag en dan op Space te drukken. Nog een keer Space deselecteert het item. Nadat de keuze is gemaakt kan met de pijltjestoetsen &gui.ok; gekozen worden en op Enter gedrukt worden. In de schermafbeelding wordt maar een deel van de lijst getoond. Selecteer &gui.cancel; door op Tab te drukken. Dan wordt de standaard toetsenbordindeling gebruikt en het programma gaat terug naar het hoofdmenu voor de installatie.
Sysinstall menu Keymap
Installatiescherm Options Kies Options en druk op Enter.
Sysinstall hoofdmenu
Sysinstall opties
De standaardwaarden zijn in orde voor de meeste gebruikers en hoeven meestal niet gewijzigd te worden. De release name hangt af van de versie die geïnstalleerd wordt. Er staat een beschrijving van het geselecteerde item aan de onderkant van het scherm, geaccentueerd in blauw. Eén van de opties is Use Defaults waarmee opnieuw de beginwaarden worden ingesteld. Druk op F1 om de helptekst van de diverse opties te bekijken. Druk op Q om terug te gaan naar het hoofdmenu van de installatie.
Een standaardinstallatie starten De Standard installatie wordt aangeraden voor nieuwe gebruikers van &unix; of &os;. Gebruik de pijltjestoetsen om Standard te selecteren en druk op Enter om de installatie te starten.
Een standaardinstallatie starten
Schijfruimte toewijzen Als eerste moet schijfruimte aan &os; worden toegewezen en die ruimte dient gemerkt te worden zodat sysinstall deze kan voorbereiden.Om dit te kunnen doen is kennis nodig over hoe &os; informatie op schijven verwacht aan te treffen. BIOS schijfnummering Voordat &os; op een systeem geïnstalleerd en ingesteld kan worden is er een belangrijk onderwerp waarover kennis nodig is, met name als er meerdere harde schijven zijn. &ms-dos; µsoft.windows; Op een PC met een BIOS-afhankelijk besturingssysteem zoals &ms-dos; en µsoft.windows;, kan het BIOS de normale schijfvolgorde abstraheren en volgt het besturingssysteem die wijzigingen. Dit stelt de gebruiker in staat op te starten van een andere schijf dan de zogenaamde primary master. Dit is erg handig voor gebruikers die er achter zijn gekomen dat de gemakkelijkste en goedkoopste manier om een systeemback-up te maken het plaatsen van een identieke tweede harde schijf is en het daarop regelmatig kopieëren van de inhoud van de eerste schijf met Ghost of XCOPY. Als de eerste schijf weigert of aangevallen is door een virus of vervuild is door een fout in het besturingssysteem, dan kan eenvoudig overgeschakeld worden door in het BIOS de twee schijven logisch te wisselen. Dat is als het verwisselen van de kabels, maar dan zonder de systeemkast open te maken. SCSI BIOS Duurdere systemen met SCSI controllers hebben vaak BIOS-uitbreidingen die het mogelijk maken SCSI-schijven op soortgelijke wijze in te delen voor maximaal zeven schijven. Een gebruiker die gewend is hiervan gebruik te maken kan verrast worden als de resultaten met &os; niet overeenkomen met de verwachtingen. &os; maakt geen gebruik van het BIOS en heeft dus geen kennis van logical BIOS drive mapping. Dit kan leiden tot verbazingwekkende situaties, met name als de schijven fysiek gelijk zijn in geometrie en ook de data clonen van elkaar zijn. Bij het gebruik van &os; moet altijd de natuurlijke schijfnummering hersteld worden voordat een installatie wordt gestart en die moet ook zo blijven. Als de schijven gewisseld moeten worden, dan moet dat op de moeilijke manier: maak de systeemkast open en verplaats jumpers en kabels. Uit de verbazingwekkende avonturen van Willem en Fred Willem sloopt een oude Wintel machine om er nog een &os; machine voor Fred van te maken. Willem installeert een enkele SCSI-schijf met SCSI ID 0 en installeert er &os; op. Fred begint met systeem te werken, maar na een paar dagen komt hij er achter dat de oude SCSI-schijf veel fouten geeft en hij geeft het door aan Willem. Na weer een paar dagen besluit Willem dat het tijd is om er iets aan te doen, dus hij pakt een identieke SCSI-schijf uit het archief met schijven in een achterkamertje. Een oppervlaktecontrole toont aan dat deze schijf goed functioneert, dus Willem installeert deze schijf als SCSI ID 4 en maakt een image kopie van schijf 0 naar schijf 4. Nu de nieuwe schijf is geïnstalleerd en het prima doet, besluit Willem dat het een goed idee is om hem in bedrijf te nemen, dus gebruikt hij de mogelijkheid van het BIOS om de schijven te hernummeren, om er voor te zorgen dat het systeem opstart van schijf 4. &os; start op en werkt goed. Fred werkt nog een paar dagen door en vlot besluiten Willem en Fred dat het tijd is voor een nieuw avontuur: tijd op om te waarderen naar een nieuwere versie van &os;. Willem haalt SCSI unit 0 eruit, want die was een beetje instabiel en vervangt hem door een andere schijf uit het archief. Willem installeert vervolgens de nieuwe versie van &os; op de nieuwe SCSI ID 0 met Fred's magische internet FTP diskettes. De installatie gaat goed. Fred gebruikt de nieuwe versie van &os; een paar dagen en bevestigt dat die goed genoeg is om gebruikt te worden op de programmeerafdeling. Het is tijd om al zijn werk vanaf de oude versie te kopiëren. Dus Fred mount SCSI ID 4 (de laatste kopie van de oudere &os; versie). Fred baalt behoorlijk als hij ontdekt dat niets van zijn kostbare werk aanwezig is op SCSI ID 4. Waar is de data gebleven? Toen Willem een zuivere kopie van de originele SCSI ID 0 maakte op SCSI ID 4, werd SCSI ID 4 de nieuwe kloon. Toen Willem het SCSI BIOS zo instelde dat hij kon opstarten van SCSI ID  4 hield hij zichzelf gewoonweg voor de gek. &os; draaide nog steeds op SCSI ID 0. Dit soort wijzigingen in het BIOS zorgen ervoor dat sommige of alle opstart- en laadprogramma's van de geselecteerde BIOS schijf komen, maar als de &os; kernelstuurprogramma's het overnemen, wordt de BIOS nummering genegeerd en valt &os; terug op de normale schijfnummering. In dit voorbeeld werkte het systeem nog steeds op de originele SCSI ID 0 en Fred's gegevens stonden daarop en niet op SCSI ID 4. Het feit dat het systeem leek te draaien vanaf SCSI ID 4 was eenvoudig een luchtkasteel als gevolg van menselijke verwachtingspatronen. Verheugd kunnen we mededelen dat er geen enkele byte weggegooid is bij de ontdekking van dit verschijnsel. De oude SCSI-schijf ID 0 werd teruggehaald van de stapel en al Fred's werk is aan hem teruggegeven (en Willem weet nu dat hij al tot 0 kan tellen). Hoewel in dit voorbeeld SCSI-schijven zijn gebruikt, geldt hetzelfde voor IDE-schijven. Slices maken met <application>FDisk</application> Wijzigingen die op dit punt gemaakt worden, worden niet weggeschreven naar de schijf. Als er een fout gemaakt is kan opnieuw begonnen worden door via de menu's sysinstall te verlaten en het nog een keer te proberen of door U te toetsen kan de optie Undo gebruikt worden. Als alles te verwarrend is kan zelfs de computer uitgezet worden. Na de keuze een standaardinstallatie te beginnen toont sysinstall het volgende bericht: Message In the next menu, you will need to set up a DOS-style ("fdisk") partitioning scheme for your hard disk. If you simply wish to devote all disk space to FreeBSD (overwriting anything else that might be on the disk(s) selected) then use the (A)ll command to select the default partitioning scheme followed by a (Q)uit. If you wish to allocate only free space to FreeBSD, move to a partition marked "unused" and use the (C)reate command. [ OK ] [ Press enter or space ] Toets Enter. Er wordt dan een lijst getoond met alle harde schijven die de kernel gevonden heeft bij het onderzoeken van de hardware. toont een voorbeeld van een systeem met twee IDE-schijven. Ze heten ad0 en ad2.
Schijf kiezen voor FDisk
Waarom staat ad1 niet in de lijst? Stel er zitten twee IDE-schijven in een systeem, de eerste als master op de eerste IDE controller en de andere als master op de tweede IDE controller. Als &os; deze zou nummeren zoals ze worden aangetroffen, als ad0 en ad1, dan zou het allemaal werken. Maar als dan een derde schijf wordt toevoegd, als slave op de eerste IDE controller, dan wordt die ad1 en de vorige ad1 wordt dan ad2. Omdat apparaatnamen (zoals ad1s1a) in gebruik zijn om bestandssystemen te vinden, lijken bestandssystemen niet meer in orde zijn en moeten de &os; instellingen gewijzigd worden. Om dit te omzeilen kan de kernel zo ingesteld worden dat de IDE schijven namen krijgen gebaseerd op hun lokatie en niet in de volgorde waarin ze gevonden worden. Met dat schema wordt de masterschijf op de tweede IDE controller altijd ad2, ook als er geen ad0 of ad1 apparaten zijn. Dit is de standaardinstelling van de &os; kernel, vandaar dat dit scherm ad0 en ad2 laat zien. De machine waarop deze schermafdruk gemaakt is had IDE schijven op beide masterkanalen van de IDE controllers en geen schijven op de slavekanalen. Nu kan de schijf waarop de &os; installatie moet komen worden geselecteerd. Druk daarna op &gui.ok;. FDisk start op met een scherm vergelijkbaar met . Het scherm van FDisk bestaat uit drie delen. Het eerste deel, de eerste twee regels van het scherm, toont de details zien van de selecteerde schijf, inclusief de &os; naam, de schijfgeometrie en de totale grootte van de schijf. Het tweede deel laat de slices zien die momenteel op de schijf aanwezig zijn, waar ze beginnen en eindigen, hoe groot ze zijn en de namen die &os; ze geeft, hun omschrijving en sub-type. In dit voorbeeld zijn twee kleine ongebruikte delen te zien, die een afspiegeling zijn van de schijfindeling op het systeem. Het laat ook een grote FAT-slice zien, die bijna zeker zichtbaar is als C: in &ms-dos; of &windows;, en een extended deel, dat de andere schijfletters kan bevatten voor &ms-dos; of &windows;. Het derde deel toont de commando's zien die beschikbaar zijn in FDisk.
Typische FDisk partities voor wijzigen
De volgende stap hangt af van hoe de schijf moet worden opgedeeld. Als de hele schijf voor &os; wordt gebruikt (waardoor alle andere data op die schijf verwijderd wordt als later in de procedure met sysinstall wordt bevestigd dat de installatie verder kan gaan) toets dan A, de optie Use Entire Disk. De bestaande delen worden verwijderd en daarvoor in de plaats komt een klein gebied, dat als unused wordt aangegeven (alweer een afspiegeling van de PC schijf-opmaak) en dan een groot deel voor &os;. Hierna dient het nieuwe &os;-deel met de pijltjestoetsen geselecteerd te worden en daarna kan S ingetoetst worden om het deel bootable te maken. Het scherm ziet er dan ongeveer uit als in . Let op de A in de kolom Flags. Deze geeft aan dat dit deel actief is en er van opgestart wordt. Als er ruimte voor &os; gemaakt wordt door een bestaande slice te verwijderen, dan moet dat deel geselecteerd worden met de pijltjestoetsen en kan vervolgens op D gedrukt worden. Daarna kan C getoetst worden en wordt er gevraagd hoe groot het deel moet zijn. Geef het gewenste getal in en druk op Enter. De standaardwaarde in dit invoervak is het grootst mogelijke deel dat gemaakt kan worden. Dat kan de grootst mogelijke aaneengesloten ruimte op de harde schijf zijn of de hele schijf. Als er al ruimte gemaakt is voor &os; (bijvoorbeeld met een programma als &partitionmagic;), dan kan de optie C gebruikt worden om een nieuw deel te maken. Opnieuw komt de vraag naar de grootte van het gebied dat aangemaakt moet worden.
FDisk partitie voor een hele schijf
Toets na afronding Q. De wijzigingen worden bewaard in sysinstall, maar worden nog niet op de schijf weggeschreven.
Bootmanager installeren Hierna is het mogelijk een bootmanager te installeren. Het installeren van de &os; bootmanager is verstandig als: Er meer dan één schijf in een systeem zit en &os; op een andere dan de eerste schijf wordt geïnstalleerd; &os; geïnstalleerd wordt naast een ander besturingssysteem op dezelfde schijf en er bij het opstarten van de computer gekozen moet worden of &os; of het andere besturingssysteem wordt gestart. Als &os; het enige besturingssysteem op een computer wordt en het is geïnstalleerd op de eerste harde schijf, dan volstaat de Standard bootmanager. Kies None als een bootmanager van een derde partij wordt gebruikt die in staat is om &os; te starten. Maak de keuze en druk op Enter.
Sysinstall menu Boot Manager
Het helpscherm, bereikbaar via F1, beschrijft de problemen die mogelijk zijn als de harde schijf voor meerdere besturingssystemen gebruikt gaat worden.
Slices maken op een andere schijf Als er meer dan één schijf is komt het programma terug in het scherm Select Drives na het installeren van de bootmanager. Als &os; wordt geïnstalleerd op meerdere schijven, selecteer dan een andere schijf en herhaal het indelen van de schijf met FDisk. Als &os; wordt geïnstalleerd op een andere dan de eerste schijf, dan moet de &os; bootmanager geïnstalleerd worden op beide schijven.
Schijf selecteren verlaten
Met Tab wordt gewisseld tussen de laatst geselecteerde schijf, &gui.ok; en &gui.cancel;. Druk één keer op Tab om &gui.ok; actief te maken en druk dan op Enter om door te gaan met de installatie.
Partities maken met <application>Disklabel</application> Nu moeten er slices in elke zojuist aangemaakte partitie aangemaakt worden. Onthoud dat elke partitie een letter heeft van a tot en met h en dat partities b, c en d een betekenis hebben die gehonoreerd moet worden. Bepaalde programma's hebben voordeel van specifieke partitieschema's, met name als partities worden aanmaakt over meerdere schijven. Maar voor nu, als eerste &os; installatie, is het niet zo van belang hoe de schijf wordt gepartitioneerd. Het is belangrijker dat &os; wordt geïnstalleert en geleerd wordt hoe ermee te werken. &os; kan altijd opnieuw geïnstalleerd worden om een partitieschema te wijzigen als er meer bekendheid is met het besturingssysteem. Het onderstaande schema heeft vier partities. Eén als swapgebied en drie voor bestandssystemen. Partitieopmaak voor de eerste schijf Partitie Bestandssysteem Grootte Omschrijving a / 100 MB Dit is het root-bestandssysteem. Elk ander bestandssyteem wordt ergens in dit systeem gemount. 100 MB is een redelijke grootte voor dit bestandssysteem. Er wordt niet al te veel data in opgeslagen, want een normale &os; installatie slaat hier ongeveer 40 MB aan gegevens op. De rest van de ruimte is voor tijdelijke gegevens en laat extra ruimte over voor het geval nieuwere versies van &os; meer ruimte nodig hebben in /. b N/A 2-3 x RAM De swapruimte van een systeem wordt op deze partitie opgeslagen. De keuze van de juiste hoeveelheid swapruimte is een beetje een kunst. Een goede vuistregel is dat swapruimte twee of drie keer de hoeveelheid intern geheugen (RAM) moet zijn. Er moet minstens 64 MB aan swap zijn, dus als er minder dan 32 MB RAM in een computer zit, zet dan de swapruimte op 64 MB. Als er meer dan één schijf in een computer zit, dan kan er op iedere schijf swapruimte gemaakt worden. &os; gebruikt dan elke schijf als swap, wat effectief de snelheid van het swappen verhoogt. Bereken in dat geval de totale hoeveelheid swap die nodig is (bijv. 128 MB) en deel dat door het aantal schijven dat aanwezig is (bijvoorbeeld twee schijven) om de hoeveelheid swap per schijf te bepalen, in dit voorbeeld 64 MB swapruimte per schijf. e /var 50 MB De map /var bevat bestanden die constant veranderen: logboekbestanden en andere administratieve bestanden. Veel van deze bestanden worden intensief gelezen of beschreven gedurende het dagelijks draaien van &os;. Door deze bestanden op een apart bestandssysteem te zetten heeft &os; de mogelijkheid de toegang tot deze bestanden te optimaliseren, zonder invloed te hebben op bestanden in andere map die niet zo'n toegangspatroon hebben. f /usr Overige schijfruimte Alle andere bestanden worden gewoonlijk opgeslagen in /usr en submappen.
Als &os; wordt geïnstalleerd op meer dan één schijf dan moeten ook partities aangemaakt worden op de andere slices die zijn ingesteld. De meest eenvoudige manier om dat te doen is het aanmaken van twee partities op elke schijf: een als swap en een voor een bestandssysteem. Partitieopmaak voor volgende schijven Partitie Bestandssysteem Grootte Omschrijving b N/A Zie omschrijving Zoals beschreven kan swapruimte over alle schijven verdeeld worden. Ook al is de a partitie vrij, de conventie schrijft voor dat de swapruimte op partitie b staat. e /diskn Overige schijfruimte De overige schijfruimte wordt gebruikt voor één grote partitie. Dit kan gemakkelijk op de a-partitie, in plaats van de e-partitie. De conventie schrijft echter voor dat partitie a op een slice is gereserveerd voor het bestandssysteem dat de root (/) van het bestandssysteem is. Deze conventie hoeft niet gevolgd te worden, maar sysinstall doet dat wel, dus als de conventie wordt nageleefd wordt de installatie iets schoner. Er kan gekozen worden om dit bestandssysteem waar dan ook te mounten. Dit voorbeeld suggereert dat het wordt gemount als /diskn, waarbij n een getal is dat verandert voor elke schijf. Er kan natuurlijk ook een ander schema worden aanhouden als dat de voorkeur heeft.
Na het kiezen van de partitieopmaak kunnen ze worden aangemaakt met sysinstall. Dan verschijnt het volgende bericht: Message Now, you need to create BSD partitions inside of the fdisk partition(s) just created. If you have a reasonable amount of disk space (200MB or more) and don't have any special requirements, simply use the (A)uto command to allocate space automatically. If you have more specific needs or just don't care for the layout chosen by (A)uto, press F1 for more information on manual layout. [ OK ] [ Press enter or space ] Druk op Enter om de &os; partitie-editor, Disklabel te starten. toont het scherm als Disklabel opstart. Het scherm bestaat uit drie delen. De eerste paar regels tonen de naam van de actieve schijf en het gebied dat de partities bevat die worden aangemaakt (op dit punt noemt Disklabel dit de Partitienaam in plaats van de slicenaam). Dit scherm toont ook de hoeveelheid vrije ruimte in de slice. Dat is de gereserveerde ruimte in de slice die nog niet aan een partitie is toegewezen. Het middelste deel toont de partities die aangemaakt zijn, de naam van het bestandssysteem dat elke partitie bevat, de grootte en enkele opties betreffende het aanmaken van het bestandssysteem. Het onderderste deel van het scherm toont de toetsaanslagen die geldig zijn in Disklabel.
Sysinstall Disklabel Editor
Disklabel kan automatisch de partities aanmaken en ze de standaardgrootte geven. Dit kan door op A te drukken. Dan verschijnt een scherm zoals in . Afhankelijk van de grootte van de schrijf die wordt gebruikt zijn de standaardwaarden wel of niet van toepassing. Dit maakt niets uit, omdat de standaardaarden niet geaccepteerd hoeven te worden. Vanaf &os; 4.5 geeft de standaard partitionering de map /tmp zijn eigen partitie en is die geen onderdeel meer van de partitie /. Dit voorkomt het vollopen van de partitie / met tijdelijke bestanden.
Sysinstall Disklabel Editor met standaardwaarden
Als er gekozen is om niet de standaard partities te gebruiken en ze te vervangen door een eigen indeling, gebruik dan de pijltjestoetsen om de eerste partitie te selecteren en druk dan op D om deze te verwijderen. Herhaal dit om alle aanbevolen partities te verwijderen. Selecteer het juiste schijfdeel aan de bovenkant van het scherm om de eerste partitie aan te maken (a, gemount als / – root) en druk op C. Een dialoogscherm verschijnt met de vraag hoe groot de nieuwe partitie moet zijn (zoals te zien in ). De grootte kan opgeven worden in schijfblokken of als een getal gevolgd door M voor megabytes, G voor gigabytes of C voor cylinders. Vanaf &os; 5.X kunnen gebruikers UFS2 kiezen (de standaard op &os; 5.1 en hoger) met de optie Custom Newfs (Z), labels maken met de optie Auto Defaults en ze wijzigen met de optie Custom Newfs of toevoegen bij de standaard aanmaakmethode. Vergeet niet de optie toe te voegen voor SoftUpdates als de optie Custom Newfs wordt gebruikt!
Vrije ruimte voor de rootpartitie
De standaardgrootte maakt een partitie aan zo groot als de rest van het schijfdeel. Als de partitiegroottes worden gebruikt als beschreven in het eerdere voorbeeld, verwijder dan het reeds ingevulde getal met Backspace en type 64M, zoals te zien in . Druk dan op &gui.ok;.
Grootte van de rootpartitie wijzigen
Als de grootte van een partitie gekozen is, wordt gevraagd of deze partitie een bestandssysteem of een wisselbestand (swap) bevat. Deze dialoog is te zien in . Deze eerste partitie bevat een bestandssysteem, dus controleer of FS geselecteerd is en druk op Enter.
Type van de rootpartitie kiezen
Omdat een bestandssysteem wordt aangemaakt moet disklabel verteld worden waar het bestandssysteem gemount moet worden. Het dialoogscherm is te zien in . Het mountpunt van het root-bestandssysteem is /, dus type / en druk dan op Enter.
Root mountpunt kiezen
Het scherm wordt dan bijgewerkt met de nieuw aangemaakte partitie. Deze stappen moeten herhaald worden voor de andere partities. Als een wisselbestandpartitie wordt aanmaakt, wordt niet gevraagd naar het mountpunt, want wisselbestanden worden nooit gemount. Als de laatste partitie is aanmaakt, /usr, kan de aangegeven grootte blijven staan, want dat is de rest van de schijf. Het uiteindelijke &os; Disklabel Editor scherm kan kan eruit zien als , maar de waarden kunnen afwijken. Druk op Q om af te sluiten.
Sysinstall Disklabel Editor
Wat installeren Distributieset selecteren De keuze van de distributieset om te installeren hangt af van het gebruiksdoel van een systeem en de beschikbare schijfruimte. De voorgedefiniëerde opties variëren van het installeren van kleinste mogelijke installatie tot alles. Nieuwelingen in &unix; en/of &os; kiezen bijna zeker één van voorgedefinieerde opties. Het aanpassen van de distributieset is typisch iets voor de meer ervaren gebruikers. Druk op F1 voor meer informatie over de distributiesets en wat ze bevatten. Na het bekijken van de informatie geeft het toetsen van Enter opnieuw het menu Select Distributions weer. Als een grafische gebruikersinterface gewenst is, kies dan een distributieset waar een X voor staat. Het instellen van de X-server en de selectie van een standaard bureaublad wordt na de installatie van &os; uitgevoerd. Meer informatie over het instellen van een X-server staat beschreven in . De standaardversie van X11 hangt van de versie van &os;. Voor versies ouder dan 5.3 wordt &xfree86; 4.X geïnstalleerd. Voor &os; 5.3 en later is &xorg; de standaard. Als het wenselijk is een aangepaste kernel te compileren, kies dan een optie die de broncode bevat. Meer informatie over de redenen om een aangepaste kernel te bouwen en hoe dat moet staat in . Vanzelfsprekend is het meest uitgebreide systeem het systeem dat alles omvat. Als er genoeg schijfruimte is, kies dan met de pijltjestoetsen All, zoals in en druk op Enter. Als schijfruimte een zorg is, overweeg dan een optie die meer toegespitst is op de gewenste situatie. De perfecte keuze maken is niet nodig, naderhand kunnen distributies worden toevoegd.
Distributies kiezen
Portscollectie installeren Na het kiezen van de gewenste distributie komt de vraag of de &os; Portscollectie geïnstalleerd moet worden. De Portscollectie is een gemakkelijke en handige manier om software te installeren. De Portscollectie bevat niet de broncode die nodig is om de software te compileren. In plaats daarvan is het een verzameling bestanden die het downloaden, compileren en installeren van software automatiseert. In wordt beschreven hoe de Portscollectie gebruikt kan worden. Het installatieprogramma controleert niet of er genoeg schijfruimte is. Deze optie dient alleen gekozen te worden als er voldoende schijfruimte is. In &os; &rel.current; neemt de Portscollectie ongeveer &ports.size; schijfruimte in. Het is verstandig om aan te nemen dat in recentere versies van &os; meer ruimte nodig is. User Confirmation Requested Would you like to install the FreeBSD ports collection? This will give you ready access to over &os.numports; ported software packages, at a cost of around &ports.size; of disk space when "clean" and possibly much more than that if a lot of the distribution tarballs are loaded (unless you have the extra CDs from a FreeBSD CD/DVD distribution available and can mount it on /cdrom, in which case this is far less of a problem). The ports collection is a very valuable resource and well worth having on your /usr partition, so it is advisable to say Yes to this option. For more information on the ports collection & the latest ports, visit: http://www.FreeBSD.org/ports [ Yes ] No Selecteer &gui.yes; met de pijltjestoetsen om de Portscollectie te installeren of &gui.no; om deze optie over te slaan. Druk op Enter om verder te gaan. Het menu Choose Distributions wordt opnieuw getoond.
Distributies kiezen
Als alle keuzes gemaakt zijn, selecteer dan Exit met de pijltjestoetsen, zorg ervoor dat &gui.ok; actief is en druk op Enter om verder te gaan.
Installatiemedia kiezen Als wordt geïnstalleerd vanaf een cd-rom of DVD kies dan met de pijltjestoetsen de optie Install from a &os; CD/DVD. Zorg ervoor dat &gui.ok; actief is en druk op Enter om verder te gaan. Kies voor andere installatiemethodes de desbetreffende optie en volg de aanwijzingen. Druk op F1 om de online help voor de installatiemedia te lezen. Druk op Enter om terug te gaan naar het menu mediaselectie.
Mediaselectie
FTP installatiemethoden installatie netwerk FTP Er zijn drie manieren van installeren via FTP: active FTP, passive FTP of via een HTTP proxy. Actieve FTP: Install from an FTP server Deze optie zorgt ervoor dat alle FTP acties gebruik maken van de Active modus. Dit werkt niet door firewalls, maar werkt wel met oudere FTP-servers die de passive modus niet ondersteunen. Als een verbinding blijft hangen met de passive modus probeer dan de active modus! Passieve FTP: Install from an FTP server through a firewall FTP passive modus Deze optie geeft sysinstall aan gebruik te maken van de Passive modus voor al het FTP-verkeer. Dit zorgt ervoor dat verbindingen door firewalls heen kunnen die inkomende verbindingen niet toelaten op willekeurige TCP-poorten. FTP via een HTTP proxy: Install from an FTP server through a http proxy FTP via een HTTP proxy Deze optie geeft sysinstall aan gebruik te maken van het HTTP protocol (zoals een webbrowser) om verbinding te maken met een proxy voor alle FTP verbindingen. De proxy vertaalt de verzoeken en stuurt ze naar de FTP server. Dit zorgt ervoor dat verbindingen door firewalls heen kunnen die helemaal geen FTP toestaan, maar wel een HTTP proxy hebben. In dit geval moet naast de FTP-server ook een HTTP proxy opgegeven worden. Bij het gebruik van een proxy FTP-server moet meestal de server waar uiteindelijk verbinding mee gemaakt moet worden onderdeel zijn van de gebruikersnaam, na het teken @. De proxy server imiteert dan de echte server. Zo kan bijvoorbeeld geïnstalleerd worden vanaf ftp.FreeBSD.org, gebruikmakend van proxy FTP-server foo.example.com, luisterend op poort 1024. In dit geval kan in het menu opties menu als FTP gebruikersnaam ftp@ftp.FreeBSD.org ingevuld worden en als wachtwoord een e-mailadres. Als installatiemedium kan FTP ingevuld worden (of passieve FTP als de gebruikte proxy het ondersteunt) en als URL ftp://foo.example.com:1234/pub/FreeBSD. Omdat /pub/FreeBSD van ftp.FreeBSD.org via de proxy van foo.example.com wordt benaderd kan vanaf die machine geïnstalleerd worden (die de bestanden ophaalt van ftp.FreeBSD.org als het installatieprogramma erom vraagt).
De installatie bevestigen Nu kan de installatie verder gaan. Dit is ook de laatste mogelijkheid om de installatie te beëindigen ter voorkoming van wijzigingen op de harde schijf. User Confirmation Requested Last Chance! Are you SURE you want to continue the installation? If you're running this on a disk with data you wish to save then WE STRONGLY ENCOURAGE YOU TO MAKE PROPER BACKUPS before proceeding! We can take no responsibility for lost disk contents! [ Yes ] No Kies &gui.yes; en druk op Enter om verder te gaan. De duur van de installatie hangt af van de gekozen distributie, het installatiemedium en de snelheid van de computer. Er wordt een serie berichten getoond die de voortgang aangeeft. De installatie is klaar als het volgende bericht wordt getoond: Message Congratulations! You now have FreeBSD installed on your system. We will now move on to the final configuration questions. For any option you do not wish to configure, simply select No. If you wish to re-enter this utility after the system is up, you may do so by typing: /stand/sysinstall . [ OK ] [ Press enter to continue ] Druk op Enter om verder te gaan met instellingen na de installatie. Kiezen voor &gui.no; en bevestigen met Enter beëindigt de installatie en er worden geen wijzigingen aan het systeem gemaakt. Het volgende bericht verschijnt: Message Installation complete with some errors. You may wish to scroll through the debugging messages on VTY1 with the scroll-lock feature. You can also choose "No" at the next prompt and go back into the installation menus to retry whichever operations have failed. [ OK ] Het bovenstaande bericht verschijnt omdat er niets is geïnstalleerd. Kies Enter om terug te gaan naar het menu Main Installation en de installatie te verlaten. Instellingen na de installatie Na het installeren volgt de instelling van diverse opties. Een optie kan worden ingesteld door opnieuw naar de instellingenopties te gaan voordat de nieuwe &os;-installatie wordt gestart of door na de installatie sysinstall te gebruiken (/stand/sysinstall in &os; versies ouder dan 5.2) en te kiezen voor Configure. Netwerkapparaten instellen Als al eerder PPP is ingesteld voor een FTP-installatie verschijnt het volgende scherm niet en kan dit onderdeel worden geïnstalleerd zoals eerder beschreven. Gedetailleerde informatie over lokale netwerken (LAN's) en het instellen van &os; als een gateway of router staat in het hoofdstuk Netwerken voor Gevorderden. User Confirmation Requested Would you like to configure any Ethernet or SLIP/PPP network devices? [ Yes ] No Kies &gui.yes; en druk op Enter om een netwerkapparaat in te stellen. Kies anders &gui.no; om verder te gaan.
Ethernetapparaat kiezen
Kies de in te stellen interface met de pijltjestoetsen en druk op Enter. User Confirmation Requested Do you want to try IPv6 configuration of the interface? Yes [ No ] In dit gesloten lokale netwerk was het huidige type Internet protocol (IPv4) toereikend en dus werd &gui.no; geselecteerd met de pijltjestoetsen en kon met Enter verder gegaan worden. Als er verbinding is met een bestaand IPv6 netwerk met een RA server, kies dan &gui.yes; en druk op Enter. Zoeken naar RA servers duurt een paar seconden. User Confirmation Requested Do you want to try DHCP configuration of the interface? Yes [ No ] Kies &gui.no; met de pijltjestoetsen en druk op Enter als DHCP (Dynamic Host Configuration Protocol) niet nodig is. &gui.yes; kiezen start dhclient op en als het goed gaat stelt het netwerk zichzelf in. In staat meer informatie. Het volgende scherm met netwerkinstellingen toont de instellingen van een ethernetapparaat van een systeem dat als gateway voor een lokaal netwerk functioneert.
Netwerkinstellingen voor ed0
Met Tab kunnen de velden geselecteerd worden waarna de juiste informatie ingevuld kan worden: Host De fully-qualified hostname, in dit geval k6-2.example.com. Domain De naam van het domein waar toe de machine behoort, in dit geval example.com. IPv4 Gateway Het IP-adres van de host die pakketjes doorstuurt naar niet-lokale bestemmingen. Dit moet ingesteld worden als een machine een onderdeel is van netwerk. Laat dit veld leeg als de machine de gateway is naar het internet voor het netwerk. De IPv4 Gateway staat ook bekend onder de naam default gateway of default route. Name server Het IP-adres van de lokale DNS server. Er is op dit gesloten lokale netwerk geen DNS server, dus wordt het IP-adres van de DNS server van de provider gebruikt (208.163.10.2). IPv4 Address Het IP-adres dat gebruikt moet worden voor deze interface (192.168.0.1). Netmask Het adresblok dat gebruikt wordt door het lokale netwerk is een klasse C blok (192.168.0.0 - 192.168.255.255). Het standaard netmasker is voor een klasse C netwerk (255.255.255.0). Extra options to ifconfig Elke interface-specifieke optie voor ifconfig die toevoegd moet worden. In dit geval waren er geen. Gebruik Tab om &gui.ok; te selecteren als de instellingen gereed zijn en druk op Enter. User Confirmation Requested Would you like to Bring Up the ed0 interface right now? [ Yes ] No Het kiezen van &gui.yes; en het drukken op Enter maakt een machine onderdeel van een netwerk en daarna is hij klaar voor gebruik. Dit heeft echter nog weinig zin, omdat de machine nog opnieuw opgestart moet worden.
Als gateway instellen User Confirmation Requested Do you want this machine to function as a network gateway? [ Yes ] No Als de machine gateway voor een lokaal netwerk is en pakketjes doorstuurt naar andere machines kies dan &gui.yes; en druk op Enter. Als de machine alleen host op een netwerk is, kies dan &gui.no; en druk op Enter om verder te gaan. Internetdiensten instellen User Confirmation Requested Do you want to configure inetd and the network services that it provides? Yes [ No ] Door het selecteren van &gui.no; worden diverse diensten als telnetd niet aangezet. Dat betekent dat gebruikers op afstand niet met telnet bij de machine kunnen. Lokale gebruikers kunnen wel met telnet naar andere machines. Deze diensten kunnen na de installatie worden aangezet door /etc/inetd.conf te wijzigen met een editor naar keuze. In staat meer informatie. Selecteer &gui.yes; om deze diensten in te stellen tijdens de installatie. Er wordt een extra bevestiging getoond: User Confirmation Requested The Internet Super Server (inetd) allows a number of simple Internet services to be enabled, including finger, ftp and telnetd. Enabling these services may increase risk of security problems by increasing the exposure of your system. With this in mind, do you wish to enable inetd? [ Yes ] No Selecteer &gui.yes; om verder te gaan. User Confirmation Requested inetd(8) relies on its configuration file, /etc/inetd.conf, to determine which of its Internet services will be available. The default FreeBSD inetd.conf(5) leaves all services disabled by default, so they must be specifically enabled in the configuration file before they will function, even once inetd(8) is enabled. Note that services for IPv6 must be separately enabled from IPv4 services. Select [Yes] now to invoke an editor on /etc/inetd.conf, or [No] to use the current settings. [ Yes ] No Het selecteren van &gui.yes; geeft de mogelijkheid diensten toe te voegen door het teken # aan het begin van een regel te verwijderen.
<filename>inetd.conf</filename> bewerken
Druk na het toevoegen van de gewenste diensten, op Esc om het menu te krijgen waarin de wijzigingen opgeslagen kunnen worden en de editor verlaten kan worden.
Anonieme FTP FTP anoniem User Confirmation Requested Do you want to have anonymous FTP access to this machine? Yes [ No ] Anonieme FTP weigeren Het selecteren van de standaardwaarde &gui.no; en het drukken op Enter stelt gebruikers met toegang en een wachtwoord nog steeds in staat om de machine via FTP te benaderen. Anonieme FTP toestaan Als anonieme FTP wordt toegestaan kan iederen de machine met FTP benaderen. De gevolgen voor de veiligheid van de machine moeten overwogen worden voordat deze optie wordt ingeschakeld. Meer informatie over beveiliging staat in . Selecteer met de pijltjestoetsen &gui.yes; om anonieme FTP toe te staan en druk op Enter. Het volgende scherm (of iets soortgelijks) verschijnt:
Standaard anonieme FTP instellingen
Druk op F1 voor hulp: This screen allows you to configure the anonymous FTP user. The following configuration values are editable: UID: The user ID you wish to assign to the anonymous FTP user. All files uploaded will be owned by this ID. Group: Which group you wish the anonymous FTP user to be in. Comment: String describing this user in /etc/passwd FTP Root Directory: Where files available for anonymous FTP will be kept. Upload subdirectory: Where files uploaded by anonymous FTP users will go. De startmap voor ftp wordt standaard ingesteld op /var. Als daar niet genoeg ruimte is voor de geschatte ftp-wensen dan kan /usr gebruikt worden door de waarde FTP Root Directory op /usr/ftp in te stellen. Druk op Enter om verder te gaan als de instellingen gemaakt zijn. User Confirmation Requested Create a welcome message file for anonymous FTP users? [ Yes ] No Na het kiezen van &gui.yes; en op Enter drukken opent zich een editor waarin het welkomstbericht bewerkt kan worden.
FTP welkomstbericht bewerken
De bovenstaande editor is ee. Volg de instructies om het bericht te wijzigen of wijzig het bericht later door gebruik te maken van een editor naar keuze. Let op de bestaandsnaam en lokatie onderaan het scherm van de editor. Druk op Esc en een pop-up menu verschijnt met als standaardoptie a) leave editor. Druk op Enter om de editor te verlaten en verder te gaan. Druk nog een keer op Enter om de eventuele wijzigingen te bewaren.
Network File System instellen Network File System (NFS) maakt het mogelijk bestanden te delen over een netwerk. Een machine kan worden ingesteld als server, client of beide. In staat meer informatie. NFS Server User Confirmation Requested Do you want to configure this machine as an NFS server? Yes [ No ] Kies &gui.no; als er geen noodzaak is voor een Network File System server en druk op Enter. Na het kiezen van &gui.yes; wordt een bericht getoond dat aangeeft dat er een betand exports moet worden gemaakt. Message Operating as an NFS server means that you must first configure an /etc/exports file to indicate which hosts are allowed certain kinds of access to your local filesystems. Press [Enter] now to invoke an editor on /etc/exports [ OK ] Druk op Enter om verder te gaan. Een editor start om exports te maken en te bewerken.
<filename>exports</filename> bewerken
Volg de instructies om een te exporteren bestandssysteem toe te voegen of doe het later met een editor naar keuze. Let op de bestandsnaam en lokatie onderaan het scherm van de editor. Druk op Esc en een pop-up menu verschijnt met als standaardoptie a) leave editor. Druk op Enter om de editor te verlaten en verder te gaan.
NFS Client De NFS client maakt het mogelijk om NFS servers te benaderen. User Confirmation Requested Do you want to configure this machine as an NFS client? Yes [ No ] Kies met de pijltjestoetsen de optie &gui.yes; of &gui.no; en druk op Enter.
Beveiligingsprofiel Een security profile (beveiligingsprofiel) is een verzameling instellingen waarmee geprobeerd wordt de gewenste verhouding tussen veiligheid en gebruikersgemak in te stellen door bepaalde programma's en instellingen aan of uit te zetten. Hoe hoger het beveiligingsprofiel, hoe minder programma's standaard worden aangezet. Dat is één van de basisregels van beveiliging: gebruik niets anders dan wat echt nodig is. Het beveiligingsprofiel is slechts een standaardinstelling. Alle programma's kunnen aan- of uitgezet worden door na de installatie van &os; wijzigingen aan te brengen in /etc/rc.conf. Meer informatie staat in de handboekpagina van &man.rc.conf.5;. De volgende tabel beschrijft wat elk beveiligingsprofiel doet. De kolommen zijn de verschillende beveiligingsprofielen waaruit gekozen kan worden en de rijen zijn de programma's of opties die in dat profiel in- of uitgeschakeld zijn. Mogelijke beveiligingsprofielen Extreme Moderate &man.sendmail.8; Nee Ja &man.sshd.8; Nee Ja &man.portmap.8; Nee Wellicht De portmapper wordt aangezet als de machine eerder in de installatie is ingesteld als NFS client of server. NFS server Nee Ja &man.securelevel.8; Ja Het kiezen van een beveiligingsprofiel dat securelevel op Extreme of High zet, heeft mogelijk grote gevolgen. Lees de hulppagina &man.init.8; en let vooral op de betekenis van de security levels of anders zijn in een later stadium moeilijkheden gegarandeerd! Nee
User Confirmation Requested Do you want to select a default security profile for this host (select No for "medium" security)? [ Yes ] No Het kiezen van &gui.no; en het drukken op Enter stelt het beveiligingsprofiel in op medium. Het kiezen van &gui.yes; en het drukken op Enter geeft de mogelijkheid om een ander beveiligingsprofiel te kiezen.
Beveiligingsprofielopties
Druk op F1 voor hulp. Druk op Enter om terug te gaan naar het menu. Gebruik de pijltjestoetsen om Medium te kiezen, behalve als bekend is dat een ander niveau nodig is. Druk op Enter terwijl &gui.ok; oplicht. Afhankelijk van het gekozen beveiligingsprofiel wordt een toepasselijk bevestigingsbericht getoond: Message Moderate security settings have been selected. Sendmail and SSHd have been enabled, securelevels are disabled, and NFS server setting have been left intact. PLEASE NOTE that this still does not save you from having to properly secure your system in other ways or exercise due diligence in your administration, this simply picks a standard set of out-of-box defaults to start with. To change any of these settings later, edit /etc/rc.conf [OK] Message Extreme security settings have been selected. Sendmail, SSHd, and NFS services have been disabled, and securelevels have been enabled. PLEASE NOTE that this still does not save you from having to properly secure your system in other ways or exercise due diligence in your administration, this simply picks a more secure set of out-of-box defaults to start with. To change any of these settings later, edit /etc/rc.conf [OK] Druk op Enter om verder te gaan met de instellingen na de installatie. Het beveiligingsprofiel is geen Haarlemmerolie! Ook als de instelling extreme wordt gebruikt, moeten nog altijd beveiligingsproblemen bijgewerkt worden door de mailinglijsten te volgen (), goede wachtwoorden en wachtzinnen gebruikt worden en goede beveiligingsgewoontes gevolgd worden. Het beveiligingsprofiel stelt uitsluitend de gewenste verhouding tussen beveiliging en gebruikersvriendelijkheid op een standaard manier in.
Systeemconsole instellen Er is een aantal opties beschikbaar om de systeemconsole in aan te passen. User Confirmation Requested Would you like to customize your system console settings? [ Yes ] No Om de opties te bekijken en in te stellen, kies &gui.yes; en druk op Enter.
Systeemconsole instellingen
Een gebruikelijke optie is de schermbeveiliging. Gebruik de pijltjestoetsen om Saver te selecteren en druk op Enter.
Schermbeveiligingsopties
Kies met de pijltjestoetsen de gewenste schermbeveiliging en druk op Enter. Het instellingenmenu System Console verschijnt weer. De standaard activeringstijd is 300 seconden. Kies voor het wijzigen van de activeringstijd weer Saver. Kies in het optiemenu Screen Saver met de pijltjestoetsen Timeout en druk op Enter. Een pop-up verschijnt:
Schermbeveiliging activeringstijd
Wijzig de waarde, selecteer &gui.ok; en druk op Enter om terug te gaan naar het instellingenmenu System Console.
Systeemconsole instellingen verlaten
Met het selecteren van Exit en drukken op Enter kan verdergegaan worden met de andere instellingen.
Tijdzone instellen Het instellen van de tijdzone van een machine maakt het mogelijk om automatisch correcties door te voeren voor regionale tijdswijzigingen en het juist uitvoeren van andere tijdzone-afhankelijke functies. Het voorbeeld toont een machine die staat in de oostelijke tijdzone van de Verenigde Staten. De keuze voor een specifiek systeem hangt af van de geografische locatie. User Confirmation Requested Would you like to set this machine's time zone now? [ Yes ] No Selecteer &gui.yes; en druk op Enter om de tijdzone in te stellen. User Confirmation Requested Is this machine's CMOS clock set to UTC? If it is set to local time or you don't know, please choose NO here! Yes [ No ] Kies &gui.yes; of &gui.no; afhankelijk van de instellingen van de klok van de machine en druk op Enter.
Regio instellen
Kies met de pijltjestoetsen de juiste regio en druk op Enter.
Land kiezen
Kies met de pijltjestoetsen het juiste land en druk op Enter.
Tijdzone kiezen
Kies met de pijltjestoetsen de juiste tijdzone en druk op Enter. Confirmation Does the abbreviation 'EDT' look reasonable? [ Yes ] No Bevestig dat de afkorting van de tijdzone juist is. Als die er goed uit ziet, druk dan op Enter om verder te gaan met de overige instellingen.
Linux compatibiliteit User Confirmation Requested Would you like to enable Linux binary compatibility? [ Yes ] No Selecteer &gui.yes; en druk op Enter als de mogelijkheid om Linux software te draaien op &os; geactiveerd moet worden. Deze optie installeert de voor Linux compatibiliteit benodigde pakketten. Als via FTP wordt geïnstalleerd, dan moet de machine verbonden zijn met internet. Soms heeft een ftp-site niet alle distributies, zoals de Linux compatabiliteit, beschikbaar. Zonodig kan deze ook later geïnstalleerd worden. Muisinstellingen Deze optie geeft de mogelijkheid om tekst te kopiëren en te plakken in de console en programma's met een 3-knops muis. Als een 2-knops muis wordt gebruikt, ga dan naar de hulppagina &man.moused.8; na de installatie voor de details over het emuleren van een 3-knops muis. Dit voorbeeld toont een niet-USB muisinstelling (zoals een PS/2 of seriële poort muis): User Confirmation Requested Does this system have a non-USB mouse attached to it? [ Yes ] No Selecteer &gui.yes; voor een niet-USB muis of &gui.no; voor een USB muis en druk op Enter.
Muisprotocoltype selecteren
Gebruik de pijltjestoetsen om Type te selecteren en druk op Enter.
Muisprotocol kiezen
De muis in dit voorbeeld is een PS/2-muis, dus de standaardoptie Auto was van toepassing. Selecteer met de pijltjestoetsen een andere optie om het protocol te wijzigen. Zorg ervoor dat &gui.ok; geselecteerd is en druk op Enter om dit menu te verlaten.
Muispoort instellen
Gebruik de pijltjestoetsen om Port te selecteren en druk op Enter.
Muispoort instellen
Dit systeem heeft een PS/2 muis, dus de standaardoptie PS/2 was van toepassing. Gebruik de pijltjestoetsen en druk op Enter om de poort te wijzigen.
Muisdaemon inschakelen
Gebruik tenslotte de pijltjestoetsen om Enable te selecteren en druk op Enter om de muisdaemon aan te zetten en te testen.
Het testen van de muisdaemon
Beweeg de muis over het scherm en controleer of de cursor op de juiste manier reageert. Als dat in orde is, selecteer dan &gui.yes; en druk op Enter. Als het niet goed gaat, dan is de muis niet goed ingesteld. Kies dan &gui.no; en probeer het met andere instellingen. Kies met de pijltjestoetsen Exit en druk op Enter om terug te gaan naar het instellingenmenu.
Tom Rhodes Geschreven door Extra netwerkdiensten instellen Het instellen van netwerkdiensten kan afschrikwekkend zijn voor nieuwe gebruikers zonder (voldoende) voorkennis op dit gebied. Netwerken, inclusief internet, is van levensbelang voor alle moderne besturingssystemen, inclusief &os;. Als gevolg daarvan is het handig enig begrip te hebben van de uitgebreide netwerkmogelijkheden van &os;. Door dit tijdens de installatie te doen hebben gebruikers in elk geval enige kennis van de diverse netwerkdiensten die hen ter beschikking staan. Netwerkdiensten zijn programma's die invoer accepteren vanaf het netwerk. Al het mogelijke is gedaan om er voor te zorgen dat deze programma's niets schadelijks doen. Helaas zijn programmeurs niet perfect en in de loop van de tijd zijn er fouten gevonden in netwerkdiensten die door aanvallers zijn uitgebuit om slechte dingen te doen. Het is belangrijk alleen netwerkdiensten aan te zetten die nodig zijn. Bij twijfel kan een netwerkdienst het beste niet ingeschakeld worden totdat duidelijk is dat de dienst wél nodig is. Diensten kunnen later alsnog ingeschakeld worden door sysinstall nog een keer te draaien of door middel van de mogelijkheden van het bestand /etc/rc.conf. Het kiezen van de optie Networking toont het volgende menu:
Netwerkinstellingen - bovenste opties
De eerste optie, Interfaces, is al behandeld in , dus die wordt overgeslagen. Kies AMD voor het toevoegen van ondersteuning voor het BSD hulpprogramma voor automatisch mounten. Dit wordt meestal gebruikt in combinatie met het NFS protocol (zie verderop) voor het automatisch mounten van externe bestandssystemen. Hier zijn geen speciale instellingen nodig. De volgende optie is AMD Flags. Als deze optie wordt selecteert komt er een pop-up menu waarin de specifieke AMD vlaggen kunnen worden ingesteld. Het menu bevat al een lijst standaardopties: -a /.amd_mnt -l syslog /host /etc/amd.map /net /etc/amd.map De optie bepaalt de standaard mountlocatie die is hier ingesteld op /.amd_mnt. De optie bepaalt het standaardbestand voor log, maar als syslogd wordt gebruikt, dan worden alle acties naar de systeemlogdaemon gestuurd. De map /host wordt gebruikt om een geëxporteerd bestandssysteem van een externe host te mounten, terwijl de map /net wordt gebruikt om een geëxporteerd bestandssysteem van een IP-adres te mounten. Het bestand /etc/amd.map bepaalt de standaardopties voor AMD exports. FTP anoniem De optie Anon FTP staat anonieme FTP verbindingen toe. Kies deze optie om van een machine een anonieme FTP server te maken. Hierbij zijn de beveiligingsimplicaties van belang. Er wordt een volgend menu getoond om de beveiligingsrisico's en verdere instellingen te verklaren. Het instellingenmenu Gateway maakt van de machine een gateway, zoals eerder beschreven. Hier kan de optie Gateway ook gebruikt worden om de optie uit te zetten als die eerder in de installatie per ongeluk is aangezet. De optie Inetd kan gebruikt worden om de &man.inetd.8; daemon in te stellen of helemaal uit te schakelen, zoals boven beschreven. De optie Mail kan gebruikt worden om de standaard MTA (Mail Transfer Agent) van het systeem in te stellen. Hiervoor wordt het volgende menu gebruikt:
Standaard MTA kiezen
Hier kan gekozen worden welke MTA moet worden geïnstalleerd en gebruikt. Een MTA is niets meer dan een mailserver die mail aflevert bij gebruikers op het systeem of op internet. Het kiezen van Sendmail installeert de populaire server sendmail, die de standaard is voor &os;. De optie Sendmail local maakt van sendmail de standaard MTA, maar zet de mogelijkheid om mail te ontvangen vanaf het internet uit. De andere opties, Postfix en Exim werken net zo als Sendmail. Allebei leveren ze mail af. Sommige gebruikers geven de voorkeur aan deze alternatieven boven de sendmail MTA. Na het kiezen van een MTA of de keuze geen MTA te installeren, verschijnt het menu netwerkinstellingen met als volgende optie NFS client. De optie NFS client stelt het systeem in om te communiceren met een server via NFS. Een NFS server stelt bestandssystemen beschikbaar aan andere machines via het NFS protocol. Als de te installeren machine een op zichzelf staande machine is, dan kan deze optie uitgeschakeld blijven. Het kan zijn dat het systeem later meer instellingen nodig heeft. In staat meer informatie over client- en serverinstellingen. De volgende optie is NFS server, die het mogelijk maakt een systeem in te stellen als NFS server. Deze optie voegt de nodige informatie toe om de dienst RPC, remote procedure call, op te starten. RPC wordt gebruikt om de verbindingen tussen hosts en programma's te coördineren. Daarna volgt de optie Ntpdate die de tijdsynchronisatie afhandelt. Als deze wordt geselecteerd verschijnt het volgende menu:
Ntpdate instellingen
Kies uit dit menu de server die het dichtst bij het te installeren systeem staat. Door het kiezen van een server in de buurt is de synchronisatie preciezer omdat een verder gelegen server meer vertraging in de verbinding kan hebben. De volgende optie is de PCNFSD selectie. Deze optie installeert het pakket net/pcnfsd uit de Portscollectie. Dat is een handig hulpprogramma dat het mogelijk maakt om aan te melden bij NFS met systemen die zelf geen aanmeldsysteem hebben, zoals het besturingssysteem &ms-dos; van µsoft;. Door naar benenden te scrollen in het hoofdmenu worden de onderstaande opties zichtbaar:
Netwerkinstellingen - onderste opties
De hulpprogramma's &man.rpcbind.8;, &man.rpc.statd.8; en &man.rpc.lockd.8; worden allemaal gebruikt voor Remote Procedure Calls (RPC). Het hulpprogramma rpcbind beheert de communicatie tussen NFS servers en clients en is noodzakelijk om NFS servers correct te laten werken. De daemon rpc.statd communiceert met de daemon rpc.statd op andere machines om statusinformatie te leveren. De gerapporteerde status wordt gewoonlijk bijgehouden in het bestand /var/db/statd.status. De volgende optie in de lijst is rpc.lockd die, mits geselecteerd, bestandslockdiensten mogelijk maakt. Dit wordt meestal gebruikt door rpc.statd om bij te houden welke hosts vragen om bestanden te locken en hoe vaak ze dat doen. Hoewel deze laatste twee opties fantastisch zijn om fouten om te sporen, zijn ze niet noodzakelijk voor NFS servers en clients om correct te werken. De dan volgende optie in de lijst is Routed, een routeringsdaemon. Het hulpprogramma &man.routed.8; beheert netwerkrouteringstabellen, ontdekt multicast routers en stelt op verzoek kopieën van de routeringstabellen ter beschikking aan fysiek verbonden apparaten. Dit wordt vooral gebruikt door machines die dienst doen als gateway voor het lokale netwerk. Na het selecteren van deze optie verschijnt een menu waarin naar de standaardlocatie van het hulpprogramma wordt gevraagd. De standaardlocatie is al gedefiniëerd en kan met Enter worden geactiveerd. Dan komt er een ander menu dat vraagt om de opties die doorgegeven moeten worden aan routed op te geven. De standaard is en die staat al op het scherm. Dan volgt de optie Rwhod die, als geselecteerd, de daemon &man.rwhod.8; inschakelt bij het opstarten. Het hulpprogramma rwhod zendt periodiek systeemberichten uit over het netwerk of verzamelt die in de modus consumer. Meer informatie staat in de hulppagina's &man.ruptime.1; en &man.rwho.1;. De één na laatste optie in de lijst is de daemon &man.sshd.8;. Dat is de secure shell server van OpenSSH en deze wordt sterk aangeraden boven de standaardservers telnet en FTP. De server sshd wordt gebruikt om een veilige verbinding op te zetten van de ene computer naar de andere door een versleutelde verbinding te gebruiken. Tenslotte is er de optie TCP Extensions. Dit schakelt TCP uitbreidingen in zoals gedefiniëerd in RFC 1323 en RFC 1644. Hoewel dit op veel machines de verbindingen kan versnellen, kan het ook de oorzaak zijn van het wegvallen van sommige verbindingen. Het wordt niet aangeraden voor servers, maar voor alleenstaande machines kan het voordelig zijn. Nu de netwerkmogelijkheden zijn ingesteld kan het menu via Exit verlaten worden en doorgegaan worden met het instellen in de volgende sectie.
X-server instellen Vanaf &os; 5.3-RELEASE, is het instellen van X-server uit sysinstall verwijderd. Het installeren en instellen van X-server dient na de installatie van &os; plaats te vinden. Meer informatie over de installatie en het instellen van een X-server is te vinden in . Dit onderdeel kan overgeslagen worden als &os; versie 5.3-RELEASE of hoger wordt geïnstalleerd. Om een grafische gebruikersinterface zoals KDE, GNOME of andere te gebruiken moet de X-server ingesteld worden. Om &xfree86; te kunnen gebruiken als een andere gebruiker dan root moet x11/wrapper geïnstalleerd zijn. Dit wordt vanaf &os; 4.7 standaard gedaan. Voor oudere versies kan dit toegevoegd worden via het pakketselectiemenu. Of de videokaart uit een systeem wordt ondersteund kan worden gecontroleerd op de &xfree86; website. User Confirmation Requested Would you like to configure your X-server at this time? [ Yes ] No Het is noodzakelijk om de specificaties van monitor en videokaart te kennen. Er kan schade aan apparatuur ontstaan als er verkeerde instellingen worden gemaakt. Als deze gegevens niet beschikbaar zijn, kies dan &gui.no; en dan kunnen de instellingen na het verzamelen van de informatie gemaakt worden met sysinstall (/stand/sysinstall in &os; versies ouder dan 5.2) door te kiezen voor Configure en vervolgens XFree86. Verkeerde instellingen van de X-server op deze plaats kunnen de machine achterlaten in een bevroren status. Het wordt vaak geadviseerd de instellingen van de X-server te maken nadat de installatie is voltooid. Als de gegevens van monitor en videokaart voorhanden zijn, kies dan &gui.yes; en druk op Enter om verder te gaan met het instellen van de X-server.
Menu Instelmethode kiezen
Er zijn diverse manieren om de X-server in te stellen. Kies een methode met de pijltjestoetsen en druk op Enter. Lees alle instructies nauwgezet! De methoden xf86cfg en xf86cfg -textmode kunnen het scherm zwart maken en hebben enkele seconden nodig om op te starten. Het vervolg laat het gebruik van het hulpprogramma xf86config zien. De te maken instellingen hangen af van de hardware in een systeem en wijken waarschijnlijk af van de keuzes hier: Message You have configured and been running the mouse daemon. Choose "/dev/sysmouse" as the mouse port and "SysMouse" or "MouseSystems" as the mouse protocol in the X configuration utility. [ OK ] [ Press enter to continue ] Dit geeft aan dat de muisdaemon al eerder is ingesteld en ontdekt. Druk op Enter om verder te gaan. Aan het begin toont xf86config een korte inleiding: This program will create a basic XF86Config file, based on menu selections you make. The XF86Config file usually resides in /usr/X11R6/etc/X11 or /etc/X11. A sample XF86Config file is supplied with XFree86; it is configured for a standard VGA card and monitor with 640x480 resolution. This program will ask for a pathname when it is ready to write the file. You can either take the sample XF86Config as a base and edit it for your configuration, or let this program produce a base XF86Config file for your configuration and fine-tune it. Before continuing with this program, make sure you know what video card you have, and preferably also the chipset it uses and the amount of video memory on your video card. SuperProbe may be able to help with this. Press enter to continue, or ctrl-c to abort. Druk op Enter om de muisinstellingen te maken. Volg de instructies op het scherm en kies Mouse Systems als protocol voor de muis en /dev/sysmouse als muispoort, ook als een PS/2 muis gebruikt wordt zoals getoond ter illustratie. First specify a mouse protocol type. Choose one from the following list: 1. Microsoft compatible (2-button protocol) 2. Mouse Systems (3-button protocol) & FreeBSD moused protocol 3. Bus Mouse 4. PS/2 Mouse 5. Logitech Mouse (serial, old type, Logitech protocol) 6. Logitech MouseMan (Microsoft compatible) 7. MM Series 8. MM HitTablet 9. Microsoft IntelliMouse If you have a two-button mouse, it is most likely of type 1, and if you have a three-button mouse, it can probably support both protocol 1 and 2. There are two main varieties of the latter type: mice with a switch to select the protocol, and mice that default to 1 and require a button to be held at boot-time to select protocol 2. Some mice can be convinced to do 2 by sending a special sequence to the serial port (see the ClearDTR/ClearRTS options). Enter a protocol number: 2 You have selected a Mouse Systems protocol mouse. If your mouse is normally in Microsoft-compatible mode, enabling the ClearDTR and ClearRTS options may cause it to switch to Mouse Systems mode when the server starts. Please answer the following question with either 'y' or 'n'. Do you want to enable ClearDTR and ClearRTS? n You have selected a three-button mouse protocol. It is recommended that you do not enable Emulate3Buttons, unless the third button doesn't work. Please answer the following question with either 'y' or 'n'. Do you want to enable Emulate3Buttons? y Now give the full device name that the mouse is connected to, for example /dev/tty00. Just pressing enter will use the default, /dev/mouse. On FreeBSD, the default is /dev/sysmouse. Mouse device: /dev/sysmouse Het toetsenbord is het volgende onderdeel dat moet worden ingesteld. Een algemeen 101-toetsen model is getoond ter illustratie. Als variant mag een willekeurige naam gebruikt worden of druk gewoon op Enter om de standaardwaarden te bevestigen. Please select one of the following keyboard types that is the better description of your keyboard. If nothing really matches, choose 1 (Generic 101-key PC) 1 Generic 101-key PC 2 Generic 102-key (Intl) PC 3 Generic 104-key PC 4 Generic 105-key (Intl) PC 5 Dell 101-key PC 6 Everex STEPnote 7 Keytronic FlexPro 8 Microsoft Natural 9 Northgate OmniKey 101 10 Winbook Model XP5 11 Japanese 106-key 12 PC-98xx Series 13 Brazilian ABNT2 14 HP Internet 15 Logitech iTouch 16 Logitech Cordless Desktop Pro 17 Logitech Internet Keyboard 18 Logitech Internet Navigator Keyboard 19 Compaq Internet 20 Microsoft Natural Pro 21 Genius Comfy KB-16M 22 IBM Rapid Access 23 IBM Rapid Access II 24 Chicony Internet Keyboard 25 Dell Internet Keyboard Enter a number to choose the keyboard. 1 Please select the layout corresponding to your keyboard 1 U.S. English 2 U.S. English w/ ISO9995-3 3 U.S. English w/ deadkeys 4 Albanian 5 Arabic 6 Armenian 7 Azerbaidjani 8 Belarusian 9 Belgian 10 Bengali 11 Brazilian 12 Bulgarian 13 Burmese 14 Canadian 15 Croatian 16 Czech 17 Czech (qwerty) 18 Danish Enter a number to choose the country. Press enter for the next page 1 Please enter a variant name for 'us' layout. Or just press enter for default variant us Please answer the following question with either 'y' or 'n'. Do you want to select additional XKB options (group switcher, group indicator, etc.)? n Vervolgens wordt de monitor ingesteld. Geef geen waarden op die verder gaan dan de mogelijkheden van de monitor. Er kan schade onstaan. Maak bij twijfel deze instellingen pas als voldoende informatie is verzameld. Now we want to set the specifications of the monitor. The two critical parameters are the vertical refresh rate, which is the rate at which the whole screen is refreshed, and most importantly the horizontal sync rate, which is the rate at which scanlines are displayed. The valid range for horizontal sync and vertical sync should be documented in the manual of your monitor. If in doubt, check the monitor database /usr/X11R6/lib/X11/doc/Monitors to see if your monitor is there. Press enter to continue, or ctrl-c to abort. You must indicate the horizontal sync range of your monitor. You can either select one of the predefined ranges below that correspond to industry- standard monitor types, or give a specific range. It is VERY IMPORTANT that you do not specify a monitor type with a horizontal sync range that is beyond the capabilities of your monitor. If in doubt, choose a conservative setting. hsync in kHz; monitor type with characteristic modes 1 31.5; Standard VGA, 640x480 @ 60 Hz 2 31.5 - 35.1; Super VGA, 800x600 @ 56 Hz 3 31.5, 35.5; 8514 Compatible, 1024x768 @ 87 Hz interlaced (no 800x600) 4 31.5, 35.15, 35.5; Super VGA, 1024x768 @ 87 Hz interlaced, 800x600 @ 56 Hz 5 31.5 - 37.9; Extended Super VGA, 800x600 @ 60 Hz, 640x480 @ 72 Hz 6 31.5 - 48.5; Non-Interlaced SVGA, 1024x768 @ 60 Hz, 800x600 @ 72 Hz 7 31.5 - 57.0; High Frequency SVGA, 1024x768 @ 70 Hz 8 31.5 - 64.3; Monitor that can do 1280x1024 @ 60 Hz 9 31.5 - 79.0; Monitor that can do 1280x1024 @ 74 Hz 10 31.5 - 82.0; Monitor that can do 1280x1024 @ 76 Hz 11 Enter your own horizontal sync range Enter your choice (1-11): 6 You must indicate the vertical sync range of your monitor. You can either select one of the predefined ranges below that correspond to industry- standard monitor types, or give a specific range. For interlaced modes, the number that counts is the high one (e.g. 87 Hz rather than 43 Hz). 1 50-70 2 50-90 3 50-100 4 40-150 5 Enter your own vertical sync range Enter your choice: 2 You must now enter a few identification/description strings, namely an identifier, a vendor name, and a model name. Just pressing enter will fill in default names. The strings are free-form, spaces are allowed. Enter an identifier for your monitor definition: Hitachi Nu volgt de keuze van een videokaartstuurprogramma uit een lijst. Als de kaart uit een systeem in de lijst staat, blijf dan op Enter drukken en de lijst herhaalt zich. Hier wordt slechts een klein deel van de lijst getoond: Now we must configure video card specific settings. At this point you can choose to make a selection out of a database of video card definitions. Because there can be variation in Ramdacs and clock generators even between cards of the same model, it is not sensible to blindly copy the settings (e.g. a Device section). For this reason, after you make a selection, you will still be asked about the components of the card, with the settings from the chosen database entry presented as a strong hint. The database entries include information about the chipset, what driver to run, the Ramdac and ClockChip, and comments that will be included in the Device section. However, a lot of definitions only hint about what driver to run (based on the chipset the card uses) and are untested. If you can't find your card in the database, there's nothing to worry about. You should only choose a database entry that is exactly the same model as your card; choosing one that looks similar is just a bad idea (e.g. a GemStone Snail 64 may be as different from a GemStone Snail 64+ in terms of hardware as can be). Do you want to look at the card database? y 288 Matrox Millennium G200 8MB mgag200 289 Matrox Millennium G200 SD 16MB mgag200 290 Matrox Millennium G200 SD 4MB mgag200 291 Matrox Millennium G200 SD 8MB mgag200 292 Matrox Millennium G400 mgag400 293 Matrox Millennium II 16MB mga2164w 294 Matrox Millennium II 4MB mga2164w 295 Matrox Millennium II 8MB mga2164w 296 Matrox Mystique mga1064sg 297 Matrox Mystique G200 16MB mgag200 298 Matrox Mystique G200 4MB mgag200 299 Matrox Mystique G200 8MB mgag200 300 Matrox Productiva G100 4MB mgag100 301 Matrox Productiva G100 8MB mgag100 302 MediaGX mediagx 303 MediaVision Proaxcel 128 ET6000 304 Mirage Z-128 ET6000 305 Miro CRYSTAL VRX Verite 1000 Enter a number to choose the corresponding card definition. Press enter for the next page, q to continue configuration. 288 Your selected card definition: Identifier: Matrox Millennium G200 8MB Chipset: mgag200 Driver: mga Do NOT probe clocks or use any Clocks line. Press enter to continue, or ctrl-c to abort. Now you must give information about your video card. This will be used for the "Device" section of your video card in XF86Config. You must indicate how much video memory you have. It is probably a good idea to use the same approximate amount as that detected by the server you intend to use. If you encounter problems that are due to the used server not supporting the amount memory you have (e.g. ATI Mach64 is limited to 1024K with the SVGA server), specify the maximum amount supported by the server. How much video memory do you have on your video card: 1 256K 2 512K 3 1024K 4 2048K 5 4096K 6 Other Enter your choice: 6 Amount of video memory in Kbytes: 8192 You must now enter a few identification/description strings, namely an identifier, a vendor name, and a model name. Just pressing enter will fill in default names (possibly from a card definition). Your card definition is Matrox Millennium G200 8MB. The strings are free-form, spaces are allowed. Enter an identifier for your video card definition: Vervolgens moeten de videomodi voor de gewenste schermresoluties ingesteld worden. Normaliter zijn 640x480, 800x600 en 1024x768 goede keuzes, maar dat hangt af van de mogelijkheden van de videokaart, de afmetingen van de monitor en comfort voor de ogen. Kies bij het instellen van de kleurdiepte de hoogste waarde die een kaart aankan. For each depth, a list of modes (resolutions) is defined. The default resolution that the server will start-up with will be the first listed mode that can be supported by the monitor and card. Currently it is set to: "640x480" "800x600" "1024x768" "1280x1024" for 8-bit "640x480" "800x600" "1024x768" "1280x1024" for 16-bit "640x480" "800x600" "1024x768" "1280x1024" for 24-bit Modes that cannot be supported due to monitor or clock constraints will be automatically skipped by the server. 1 Change the modes for 8-bit (256 colors) 2 Change the modes for 16-bit (32K/64K colors) 3 Change the modes for 24-bit (24-bit color) 4 The modes are OK, continue. Enter your choice: 2 Select modes from the following list: 1 "640x400" 2 "640x480" 3 "800x600" 4 "1024x768" 5 "1280x1024" 6 "320x200" 7 "320x240" 8 "400x300" 9 "1152x864" a "1600x1200" b "1800x1400" c "512x384" Please type the digits corresponding to the modes that you want to select. For example, 432 selects "1024x768" "800x600" "640x480", with a default mode of 1024x768. Which modes? 432 You can have a virtual screen (desktop), which is screen area that is larger than the physical screen and which is panned by moving the mouse to the edge of the screen. If you don't want virtual desktop at a certain resolution, you cannot have modes listed that are larger. Each color depth can have a differently-sized virtual screen Please answer the following question with either 'y' or 'n'. Do you want a virtual screen that is larger than the physical screen? n For each depth, a list of modes (resolutions) is defined. The default resolution that the server will start-up with will be the first listed mode that can be supported by the monitor and card. Currently it is set to: "640x480" "800x600" "1024x768" "1280x1024" for 8-bit "1024x768" "800x600" "640x480" for 16-bit "640x480" "800x600" "1024x768" "1280x1024" for 24-bit Modes that cannot be supported due to monitor or clock constraints will be automatically skipped by the server. 1 Change the modes for 8-bit (256 colors) 2 Change the modes for 16-bit (32K/64K colors) 3 Change the modes for 24-bit (24-bit color) 4 The modes are OK, continue. Enter your choice: 4 Please specify which color depth you want to use by default: 1 1 bit (monochrome) 2 4 bits (16 colors) 3 8 bits (256 colors) 4 16 bits (65536 colors) 5 24 bits (16 million colors) Enter a number to choose the default depth. 4 Tenslotte moeten de instellingen bewaard worden. Geef /etc/XF86Config op als plaats om de instellingen te bewaren. I am going to write the XF86Config file now. Make sure you don't accidently overwrite a previously configured one. Shall I write it to /etc/X11/XF86Config? y Als de instellingen niet juist zijn, kan het nogmaals geprobeerd worden door &gui.yes; te kiezen als het volgende bericht verschijnt: User Confirmation Requested The XFree86 configuration process seems to have failed. Would you like to try again? [ Yes ] No Selecteer bij moeilijkheden om &xfree86; in te stellen &gui.no;, druk op Enter en ga verder met het installatieproces. Na de installatie kunnen als root de hulpprogramma's xf86cfg -textmode en xf86config gebruikt worden om commandoregelgestuurd instellingen te maken. Er is nog een methode om &xfree86; in te stellen. Deze staat beschreven in . Als de keuze is op dit moment &xfree86; niet in te stellen, dan is de volgende optie in het menu de pakketselectie. De standaardinstelling om de X-server te beëindigen is de toetscombinatie CtrlAltBackspace. Deze kan ook gebruikt worden om schade aan de apparatuur te voorkomen als er iets mis is met de server. De standaardinstelling om van videomodus te wisselen terwijl de X-server draait is CtrlAlt+ en CtrlAlt-. Als &xfree86; draait kan het scherm worden aangepast in hoogte, breedte en plaats op de monitor met xvidtune. Er wordt in waarschuwingen gemeld dat foutieve instellingen hardware kunnen beschadigen. Neem deze in acht. In geval van twijfel: niet doen! Gebruik in plaats daarvan de instellingen van de monitor zelf om de weergave van X aan te passen. De weergave kan veranderen als wordt teruggeschakeld naar tekstmodus, maar dat is nog altijd beter dan de hardware beschadigen. Lees de handboekpagina voor &man.xvidtune.1; alvorens wijzigingen te maken. Na het succesvol instellen van &xfree86; wordt de standaard bureaubladomgeving gekozen.
Standaard X bureaubladomgeving kiezen Vanaf &os; 5.3-RELEASE is het instellen van X-server uit sysinstall verwijderd. Het installeren en instellen van X-server dient na de installatie van &os; plaats te vinden. Meer informatie over de installatie en het instellen van een X-server is te vinden in . Dit onderdeel kan overgeslagen worden als &os; versie 5.3-RELEASE of hoger wordt geïnstalleerd. Er is een verscheidenheid aan window managers beschikbaar. Ze variëren van erg eenvoudige omgevingen tot volledige bureaubladomgevingen met een grote hoeveelheid software. Sommige hebben weinig schijfruimte en geheugen nodig, terwijl andere met meer mogelijkheden veel meer nodig hebben. De beste manier om uit te zoeken welke het beste is, is het uitproberen van een paar verschillende window managers. Ze zijn beschikbaar in de Portscollectie of als pakketten en kunnen na de installatie worden toegevoegd. Er kan één van de populaire bureaubladomgevingen geïnstalleerd als standaard bureaublad. Hierdoor kan direct na de installatie begonnen worden met productief zijn.
Standaard bureaublad kiezen
Kies een bureaublad met de pijltjestoetsen en druk op Enter. De installatie van het geselecteerde bureaublad start.
Pakketten installeren Pakketten zijn voorgebouwde binaire bestanden en zijn een gemakkelijke manier om software te installeren. De installatie van één pakket wordt als voorbeeld getoond. Er kunnen nog meer pakketten geïnstalleerd worden als dat wenselijk is. Na de installatie kan sysinstall (/stand/sysinstall in &os; versies ouder dan 5.2) gebruikt worden om extra pakketten te installeren. User Confirmation Requested The FreeBSD package collection is a collection of hundreds of ready-to-run applications, from text editors to games to WEB servers and more. Would you like to browse the collection now? [ Yes ] No Na het kiezen van &gui.yes; en drukken op Enter verschijnt het menu pakketkeuze:
Pakketcategorie kiezen
Alle pakketten die aanwezig zijn op het huidige installatiemedium zijn beschikbaar voor installatie op dat moment. Alle beschikbare pakketten worden getoond na het selecteren van All, maar er kan ook een bepaalde categorie geselecteerd worden. De categorie kan gekozen worden met de pijltjestoetsen en door te bevestigen met Enter. Dan wordt een menu getoond met alle beschikbare pakketten binnen de gemaakte selectie:
Pakketten selecteren
De shell bash is geselecteerd. Er kunnen zoveel pakketten als wenselijk gekozen worden door ze te selecteren en op de spatiebalk te drukken. Een korte beschrijving van elk pakket verschijnt in de linker benedenhoek van het scherm. Door te drukken op Tab wordt gewisseld tussen het laatst geselecteerde pakket, &gui.ok; en &gui.cancel;. Druk na het selecteren van pakketten voor installatie één keer op Tab om naar &gui.ok; te gaan en druk op Enter om terug te gaan naar het menu pakketkeuze. De linker- en rechterpijltjestoets wisselen eveneens tussen &gui.ok; en &gui.cancel;. Die manier kan ook gebruikt worden om &gui.ok; te kiezen en op Enter te drukken om terug te gaan naar het menu pakketkeuze.
Pakketten installeren
Gebruik Tab en de pijltjestoetsen om [ Install ] te selecteren en druk op Enter. Daarna moet de pakketinstallatie bevestigd worden:
Pakketinstallatie bevestigen
Het selecteren van &gui.ok; en drukken op Enter start de installatie. Er worden installatieberichten getoond tot alle installaties zijn afgerond. Maak een notitie van eventuele foutmeldingen. Na het installeren van pakketten gaat het maken van de laatste instellingen verder. Als er geen pakketten geselecteerd zijn kan om terug te gaan naar het menu toch Install gekozen worden.
Gebruikers en groepen toevoegen Er moet minstens één gebruiker toevoegd worden tijdens de installatie, zodat het systeem gebruikt kan worden zonder als root aan te hoeven melden. De rootpartitie is in het algemeen klein en het draaien van programma's als root kan de schijfruimte snel vullen. Een groter gevaar wordt hieronder aangegeven: User Confirmation Requested Would you like to add any initial user accounts to the system? Adding at least one account for yourself at this stage is suggested since working as the "root" user is dangerous (it is easy to do things which adversely affect the entire system). [ Yes ] No Kies &gui.yes; en druk op Enter om verder te gaan met het toevoegen van een gebruiker.
Gebruiker kiezen
Selecteer User met de pijltjestoetsen en druk op Enter.
Gebruikersinformatie toevoegen
De volgende beschrijvingen verschijnen in het onderste deel van het scherm als opties zijn geselecteerd met Tab en kunnen behulpzaam zijn bij het invullen van de benodigde informatie: Login ID De aanmeldnaam van de nieuwe gebruiker (verplicht). UID Het numerieke ID van de gebruiker (laat leeg voor automatische toewijzing). Group De naam van de aanmeldgroep van de gebruiker (laat leeg voor automatische keuze). Password Het wachtwoord voor de gebruiker (vul dit zorgvuldig in!). Full name De volledige naam van de gebruiker (commentaar). Member groups De groepen waar de gebruiker in zit (waar hij toegangsrechten voor krijgt). Home directory De locatie van de thuismap van de gebruiker (laat leeg voor de standaardwaarde). Login shell De aanmeldshell voor de gebruiker (laat leeg voor de standaardwaarde, zoals /bin/sh). De aanmeldshell is hier veranderd van /bin/sh in /usr/local/bin/bash om de shell bash te gebruiken die eerder is geïnstalleerd als pakket. Probeer geen shell op te geven die niet bestaat, want dan kan niet aangemeld worden. De meest gebruikte shell in de BSD-wereld is de C shell, die aangegeven kan worden als /bin/tcsh. De gebruiker is ook toegevoegd aan de groep wheel om het mogelijk te maken superuser te worden met root-rechten. Druk op &gui.ok; als de instellingen zijn gemaakt om naar het menu User and Group Management terug te gaan:
Gebruikers en groepbeheer
Op dit moment kunnen ook groepen worden toegevoegd als de specifieke behoeften bekend zijn. Dit kan ook door sysinstall (/stand/sysinstall in &os; versies ouder dan 5.2) na de installatie te gebruiken. Kies na het toevoegen van gebruikers Exit met de pijltjestoetsen en druk op Enter om verder te gaan met de installatie.
<username>root</username> wachtwoord instellen Message Now you must set the system manager's password. This is the password you'll use to log in as "root". [ OK ] [ Press enter to continue ] Druk op Enter om het root wachtwoord in te stellen. Het wachtwoord moet twee keer gelijk ingegeven worden. Het is vast overbodig om op te merken dat het belangrijk is zorg te dragen voor een manier om het wachtwoord terug te vinden in het geval het wordt vergeten. Tijdens de ingave van het wachtwoord wordt dit niet weergegeven en er worden ook geen sterretjes getoond. Changing local password for root. New password : Retype new password : De installatie gaat verder als het wachtwoord succesvol is ingevoerd. Install verlaten Als het nodig is om extra netwerkapparaten toe te voegen of andere instellingen te maken, dan kan dat nu of later met sysinstall (/stand/sysinstall in &os; versies ouder dan 5.2). User Confirmation Requested Visit the general configuration menu for a chance to set any last options? Yes [ No ] Selecteer &gui.no; met de pijltjestoetsen en druk op Enter om terug te gaan naar het menu Main Installation.
Install afsluiten
Selecteer [X Exit Install] met de pijltjestoetsen en druk op Enter. Er wordt om bevestiging gevraagd: User Confirmation Requested Are you sure you wish to exit? The system will reboot (be sure to remove any floppies from the drives). [ Yes ] No Selecteer &gui.yes; en verwijder de diskette als er van een diskette is opgestart. Het cd-rom station is op slot tot de machine begint met herstarten. Het cd-rom station wordt dan vrijgegeven en de CD kan dan (snel) verwijderd worden. Het systeem start op, dus let op eventuele foutberichten die getoond worden.
&os; opstarten &os; opstarten op &i386; Als alles goed is gegaan komen er berichten over het scherm rollen en komt dit uit bij de aanmeldprompt. De inhoud van de berichten kan bekeken worden door te drukken op Scroll-Lock en dan met PgUp en PgDn door de tekst heen te lopen. Druk weer op Scroll-Lock om terug te gaan naar de prompt. Het kan zijn dat het totale bericht niet getoond kan worden (beperking van de buffer). Dan kunnen de berichten later bekeken worden op de commandoregel door na het aanmelden dmesg in te geven op de prompt. Meld aan met de gebruikersnaam en het wachtwoord die zijn aangemaakt tijdens de installatie (in dit voorbeeld rpratt). Vermijd het aanmelden als root, behalve als het noodzakelijk is. Gebruikelijke opstartberichten (versieinformatie verwijderd): Copyright (c) 1992-2002 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. Timecounter "i8254" frequency 1193182 Hz CPU: AMD-K6(tm) 3D processor (300.68-MHz 586-class CPU) Origin = "AuthenticAMD" Id = 0x580 Stepping = 0 Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX> AMD Features=0x80000800<SYSCALL,3DNow!> real memory = 268435456 (262144K bytes) config> di sn0 config> di lnc0 config> di le0 config> di ie0 config> di fe0 config> di cs0 config> di bt0 config> di aic0 config> di aha0 config> di adv0 config> q avail memory = 256311296 (250304K bytes) Preloaded elf kernel "kernel" at 0xc0491000. Preloaded userconfig_script "/boot/kernel.conf" at 0xc049109c. md0: Malloc disk Using $PIR table, 4 entries at 0xc00fde60 npx0: <math processor> on motherboard npx0: INT 16 interface pcib0: <Host to PCI bridge> on motherboard pci0: <PCI bus> on pcib0 pcib1: <VIA 82C598MVP (Apollo MVP3) PCI-PCI (AGP) bridge> at device 1.0 on pci0 pci1: <PCI bus> on pcib1 pci1: <Matrox MGA G200 AGP graphics accelerator> at 0.0 irq 11 isab0: <VIA 82C586 PCI-ISA bridge> at device 7.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <VIA 82C586 ATA33 controller> port 0xe000-0xe00f at device 7.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 uhci0: <VIA 83C572 USB controller> port 0xe400-0xe41f irq 10 at device 7.2 on pci0 usb0: <VIA 83C572 USB controller> on uhci0 usb0: USB revision 1.0 uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered chip1: <VIA 82C586B ACPI interface> at device 7.3 on pci0 ed0: <NE2000 PCI Ethernet (RealTek 8029)> port 0xe800-0xe81f irq 9 at device 10.0 on pci0 ed0: address 52:54:05:de:73:1b, type NE2000 (16 bit) isa0: too many dependant configs (8) isa0: unexpected small tag 14 fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 atkbdc0: <keyboard controller (i8042)> at port 0x60-0x64 on isa0 atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0 kbd0 at atkbd0 psm0: <PS/2 Mouse> irq 12 on atkbdc0 psm0: model Generic PS/2 mouse, device ID 0 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 sc0: <System console> at flags 0x1 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 sio0: type 16550A sio1 at port 0x2f8-0x2ff irq 3 on isa0 sio1: type 16550A ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0 ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/15 bytes threshold ppbus0: IEEE1284 device found /NIBBLE Probing for PnP devices on ppbus0: plip0: <PLIP network interface> on ppbus0 lpt0: <Printer> on ppbus0 lpt0: Interrupt-driven port ppi0: <Parallel I/O> on ppbus0 ad0: 8063MB <IBM-DHEA-38451> [16383/16/63] at ata0-master using UDMA33 ad2: 8063MB <IBM-DHEA-38451> [16383/16/63] at ata1-master using UDMA33 acd0: CDROM <DELTA OTC-H101/ST3 F/W by OIPD> at ata0-slave using PIO4 Mounting root from ufs:/dev/ad0s1a swapon: adding /dev/ad0s1b as swap device Automatic boot in progress... /dev/ad0s1a: FILESYSTEM CLEAN; SKIPPING CHECKS /dev/ad0s1a: clean, 48752 free (552 frags, 6025 blocks, 0.9% fragmentation) /dev/ad0s1f: FILESYSTEM CLEAN; SKIPPING CHECKS /dev/ad0s1f: clean, 128997 free (21 frags, 16122 blocks, 0.0% fragmentation) /dev/ad0s1g: FILESYSTEM CLEAN; SKIPPING CHECKS /dev/ad0s1g: clean, 3036299 free (43175 frags, 374073 blocks, 1.3% fragmentation) /dev/ad0s1e: filesystem CLEAN; SKIPPING CHECKS /dev/ad0s1e: clean, 128193 free (17 frags, 16022 blocks, 0.0% fragmentation) Doing initial network setup: hostname. ed0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255 inet6 fe80::5054::5ff::fede:731b%ed0 prefixlen 64 tentative scopeid 0x1 ether 52:54:05:de:73:1b lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x8 inet6 ::1 prefixlen 128 inet 127.0.0.1 netmask 0xff000000 Additional routing options: IP gateway=YES TCP keepalive=YES routing daemons:. additional daemons: syslogd. Doing additional network setup:. Starting final network daemons: creating ssh RSA host key Generating public/private rsa1 key pair. Your identification has been saved in /etc/ssh/ssh_host_key. Your public key has been saved in /etc/ssh/ssh_host_key.pub. The key fingerprint is: cd:76:89:16:69:0e:d0:6e:f8:66:d0:07:26:3c:7e:2d root@k6-2.example.com creating ssh DSA host key Generating public/private dsa key pair. Your identification has been saved in /etc/ssh/ssh_host_dsa_key. Your public key has been saved in /etc/ssh/ssh_host_dsa_key.pub. The key fingerprint is: f9:a1:a9:47:c4:ad:f9:8d:52:b8:b8:ff:8c:ad:2d:e6 root@k6-2.example.com. setting ELF ldconfig path: /usr/lib /usr/lib/compat /usr/X11R6/lib /usr/local/lib a.out ldconfig path: /usr/lib/aout /usr/lib/compat/aout /usr/X11R6/lib/aout starting standard daemons: inetd cron sshd usbd sendmail. Initial rc.i386 initialization:. rc.i386 configuring syscons: blank_time screensaver moused. Additional ABI support: linux. Local package initialization:. Additional TCP options:. FreeBSD/i386 (k6-2.example.com) (ttyv0) login: rpratt Password: Het aanmaken van de RSA en DSA sleutels kan een tijdje duren op langzamere machines. Dit gebeurt alleen bij de eerste keer aanmelden na een nieuwe installatie. De volgende keren gaan sneller. Als de X-server ingesteld is en er een standaard desktop is gekozen, dan kan die worden gestart door startx in te geven op de commandoregel. &os; opstarten op Alpha Alpha Nadat de installatieprocedure voltooid is, kan &os; starten door iets als onderstaand in te voeren op de SRM prompt: >>>BOOT DKC0 Dit geeft de firmware de opdracht op te starten vanaf de aangegeven schijf. Gebruik om &os; in de toekomst automatisch op te laten starten deze commando's: >>> SET BOOT_OSFLAGS A >>> SET BOOT_FILE '' >>> SET BOOTDEF_DEV DKC0 >>> SET AUTO_ACTION BOOT De opstartberichten zijn vergelijkbaar (maar niet hetzelfde) als tijdens het opstarten van &os; op &i386;. &os; uitschakelen Het is belangrijk om het besturingssysteem op de juiste manier uit te schakelen. Schakel niet gewoon de stroom uit. Neem eerst de rol van superuser aan door su in te geven op de commandoregel en het root wachtwoord in te geven. Dit kan alleen als gebruiker die lid is van de groep wheel. Anders moet eerst worden aangemeld als root. Gebruik shutdown -h now om het systeem uit te schakelen. The operating system has halted. Please press any key to reboot. Het is veilig om de stroom uit te schakelen als na het commando shutdown het bericht Please press any key to reboot getoond wordt. Als een toets wordt ingedrukt in plaats van het uitschakelen van de stroom, dan start het systeem opnieuw. De combinatie CtrlAltDel kan ook gebruikt worden om het systeem te herstarten, maar dit wordt niet aangeraden tijdens normaal gebruik.
Ondersteunde hardware hardware &os; draait momenteel op een grote hoeveelheid ISA, VLB, EISA en PCI bus-gebaseerde PC's met Intel, AMD, Cyrix of NexGen x86 processoren en ook op een aantal machines gebaseerd op de Compaq Alpha processor. Ondersteuning voor algemene IDE of ESDI schijfopstellingen, diverse SCSI controllers, PCMCIA kaarten, USB apparaten en netwerk- en serieële-kaarten is ook aanwezig. &os; ondersteunt ook de microchannel (MCA) bus van IBM. Een lijst van ondersteunde hardware wordt meegeleverd met elke &os; versie in de &os; Hardware Notes. Dit document kan normaliter gevonden worden in een bestand genaamd HARDWARE.TXT, in de hoofdmap van een cd-rom of FTP distributie of in het documentatiemenu van sysinstall. Dit document geeft voor een bepaalde architectuur een opsomming van de hardware waarvan bekend is dat ze ondersteund wordt door elke versie van &os;. Kopieën van de ondersteunde hardwarelijst voor de diverse versies en architecturen kunnen ook gevonden worden op de pagina Release Information van de &os; website. Problemen oplossen installatie problemen oplossen Dit onderdeel behandelt het oplossen van installatieproblemen, zoals veel voorkomende problemen die gebruikers hebben gerapporteerd. Er is ook een aantal vragen en antwoorden voor mensen die een systeem willen hebben met zowel &os; als &ms-dos; (dual-boot). Wat als er iets misgaat? Door de beperkingen van de PC-architectuur is het onmogelijk om 100% betrouwbaar een hardware-onderzoek te doen, maar er zijn een paar dingen die wel gedaan kunnen worden. Controleer het Hardware Notes document voor de versie van &os; om er zeker van te zijn dat de hardware ondersteund wordt. Als de hardware wordt ondersteund, maar het systeem loopt nog steeds vast of heeft andere problemen, herstart dan de computer en als de visuele kernelinstellingoptie wordt getoond, kies die dan. Dit maakt het mogelijk om door de hardware te gaan en informatie over die hardware aan het systeem te geven. De kernel op de opstartschijven gaat er vanuit dat de hardware ingesteld is op de fabrieksinstellingen wat betreft IRQ's, IO adressen en DMA kanalen. Als de hardware anders is ingesteld, dan moet waarschijnlijk de instellingeneditor gebruikt worden om &os; te vertellen waar de apparaten te vinden zijn. Het is ook mogelijk dat een onderzoek naar een apparaat dat niet aanwezig is een probleem veroorzaakt bij een later onderzoek naar een ander apparaat dat er wel is. In dat geval moet het conflicterende stuurprogramma uitgeschakeld worden. Sommige installatieproblemen kunnen voorkomen of verminderd worden door de firmware op de diverse hardwarecomponenten bij te werken, zeker als het om het moederbord gaat. De firmware voor een moederbord wordt ook aangeduid als het BIOS en de meeste moederbord- en computerfabrikanten hebben een website waar upgrades en upgrade-informatie beschikbaar is. De meeste fabrikanten raden sterk af om het BIOS te upgraden, tenzij er een goede reden voor is, zoals bijvoorbeeld een kritische update. Het upgradeproces kan misgaan, wat beschadiging van de BIOS chip kan veroorzaken. Schakel geen stuurprogramma's uit die nodig zijn tijdens de installatie, zoals het scherm (sc0). Als de installatie vastloopt of op mysterieuze wijze misgaat na het verlaten van de instellingeneditor, dan is waarschijnlijk iets verwijderd of veranderd dat beter niet verwijderd of veranderd had kunnen worden. Herstart en probeer het opnieuw. De instellingenmodus geeft gelegenheid om: Een lijst te maken van de stuurprogramma's die geïnstalleerd zijn in de kernel; Stuurprogramma's van hardware die niet aanwezig is in een systeem uit te schakelen; IRQ's, DRQ's en IO-poort adressen die door een stuurprogramma worden gebruikt te veranderen. Na het aanpassen van de kernel aan de hardware-instellingen, kan Q ingegeven worden om op te starten met de nieuwe instellingen. Als de installatie klaar is, worden de in de instellingenmodus gemaakte wijzigingen opgeslagen, zodat ze niet bij iedere start opnieuw ingesteld hoeven worden. Het is desalniettemin waarschijnlijk dat op een gegeven moment een aangepaste kernel wenselijk is. Omgang met bestaande &ms-dos;-partities DOS Veel gebruikers willen &os; installeren op een PC waarop reeds µsoft; gebaseerde besturingssystemen zijn geïnstalleerd. Voor die gevallen heeft &os; een hulpprogramma genaamd FIPS. Dit hulpprogramma staat in de map tools op de installatie cd-rom of kan gedownload worden van één van de vele &os; mirrors. Met het hulpprogramma FIPS kan een bestaande &ms-dos;-partitie gedeeld worden in twee stukken, waarbij de oorspronkelijke partitie in stand blijft, zodat op het het tweede, vrije deel geïnstalleerd kan worden. Eerst moet de &ms-dos;-partitie gedefragmenteerd worden met het &windows; hulpprogramma Disk Defragmenter (open de verkenner, klik met de rechter muisknop op de harde schijf en selecteer het defragmenteren van de harde schijf) of gebruik Norton Disk Tools. Daarna kan FIPS gedraaid worden. Dit vraagt de benodigde informatie en de instructies op het scherm kunnen verder opgevolgd worden. Daarna kan het systeem opnieuw gestart worden om &os; te installeren op het nieuwe vrije deel. In het menu Distributions kan een schatting gemaakt worden voor de benodigde vrije ruimte voor de het type installatie dat gewenst is. Er is ook een handig product van PowerQuest (http://www.powerquest.com), &partitionmagic;. Deze applicatie heeft veel meer functionaliteit dan FIPS en wordt sterk aangeraden als het plan is om vaak besturingssystemen toe te voegen en te verwijderen. Het kost geld, dus als het de bedoeling is om &os; te installeren en geïnstalleerd te houden, dan is FIPS waarschijnlijk goed genoeg. &ms-dos; en &windows; bestandssystemen gebruiken &os; ondersteunt geen bestandssystemen die gecomprimeerd zijn met het programma Double Space™. Daarom moet het bestandssysteem eerst gedecomprimeerd worden voordat &os; de data kan benaderen. Dit kan met de Compression Agent, te vinden in het menu Start> Programma's > Bureau-accessoires > Systeemwerkset. &os; kan &ms-dos; gebaseerde bestandssystemen ondersteunen. Daarvoor dient &man.mount.msdos.8; gebruikt te worden (in &os; 5.X &man.mount.msdosfs.8;) met de noodzakeijke parameters. Het normale gebruik van dit hulpprogramma is: &prompt.root; mount_msdos /dev/ad0s1 /mnt In dit voorbeeld staat het &ms-dos; bestandssysteem op de eerste partitie van de primaire harde schijf. Iedere situatie kan anders zijn, dus controleer de uitvoer van de commando's dmesg en mount. Dat zou voldoende informatie moeten leveren om een idee te vormen over het partitieschema. Extended &ms-dos; bestandssystemen worden meestal opgeslagen na de &os;-partities. Met andere woorden: het slicenummer kan hoger zijn dan die voor &os; wordt gebruikt. Bijvoorbeeld: de eerste &ms-dos;-partitie kan zijn /dev/ad0s1, de &os;-partitie kan zijn /dev/ad0s2 en de extended &ms-dos;-partitie kan staan op /dev/ad0s3. Voor sommigen kan dit in het begin verwarrend zijn. NTFS-partities kunnen op soortgelijke manier aangekoppeld worden met het commando &man.mount.ntfs.8;. Vragen en antwoorden voor Alpha gebruikers Alpha In dit onderdeel wordt antwoord gegeven op gebruikelijke vragen bij het installeren van &os; op Alpha systemen. Is opstarten van de ARC of Alpha BIOS Console mogelijk? ARC Alpha BIOS SRM Nee. &os; kan, net als Compaq Tru64 en VMS, alleen opstarten vanaf de SRM console. Help, er is geen ruimte! Moet eerst alles weggegooid worden? Ja, helaas wel. Kunnen Compaq Tru64 of VMS bestandssystemen aangekoppeld worden? Nee, niet op dit moment. Valentino Vaschetto Geschreven door Installeren voor gevorderden In dit onderdeel wordt het installeren van &os; in bijzondere situaties beschreven. &os; installeren op een systeem zonder monitor of toetsenbord installatie zonder monitor en toetsenbord (seriële console) seriële console Dit type installatie heet ook wel een headless install, omdat de met &os; te installeren machine of geen monitor heeft aangesloten of zelfs geen VGA-uitvoer heeft. Hoe is dat mogelijk, kan de vraag zijn. Dat kan met een seriële console. Een seriële console is gewoonweg een andere machine die optreedt als monitor en toetsenbord voor een systeem. Om dit te doen moeten eerst opstartdiskettes gemaakt worden, zoals beschreven in . Volg de volgende stappen om deze diskettes aan te passen om op te starten met een seriële console: Opstartdiskettes geschikt maken voor een seriële console mount Als wordt opgestart van de zojuist gemaakt diskettes, start &os; op in de normale installatiemodus. &os; moet echter opstarten naar een seriële console voor de installatie. Om dit te regelen moet de diskette met kern.flp gekoppeld worden aan het &os; systeem met het commando &man.mount.8;. &prompt.root; mount /dev/fd0 /mnt Nu de diskette is aangekoppeld kan de map /mnt worden geopend: &prompt.root; cd /mnt Hier moet de diskette worden ingesteld om naar een seriële console op te starten. Maak een bestand genaamd boot.config met daarin /boot/loader -h. Dit geeft een instelling aan de bootloader door om naar een seriële console te starten. &prompt.root; echo "/boot/loader -h" > boot.config Nu de diskette goed is ingesteld moet deze weer afgekoppeld worden met &man.umount.8;: &prompt.root; cd / &prompt.root; umount /mnt Nu kan de diskette uit het diskettestation gehaald worden. Null-modem kabel aansluiten null-modem kabel Nu moeten de twee machines verbonden worden met een null-modem kabel. De kabel kan gewoon aangesloten worden tussen de seriële poorten van de machines. Een gewone seriële kabel werkt niet, er is een null-modem kabel nodig omdat daarin sommige draden kruiselings zijn verbonden. Opstarten voor het installeren Nu is het tijd om te beginnen met installeren. Steek de diskette kern.flp in het station van de machine die headless wordt geïnstalleerd en zet hem aan. Verbinden met de headless machine cu Nu moet verbinding gemaakt worden met die machine met &man.cu.1;: &prompt.root; cu -l /dev/cuaa0 Dat is alles! De headless machine kan bediend worden via de cu sessie. Het installatieprogramma vraagt de diskette mfsroot.flp in te geven en vraagt dan wat voor terminal er gebruikt moeten worden. Selecteer de &os; color console en ga verder met de installatie! Aangepaste installatiemedia maken Om herhaling te voorkomen: &os;-schijf betekent in deze context een &os; cd-rom of DVD die gekocht is of zelf is gemaakt. Er kunnen zich situaties voordoen waarin aangepaste &os; installatiemedia en/of bronnen gemaakt moeten worden. Dat kunnen fysieke media zijn zoals een tape of een bron die sysinstall kan gebruiken om bestanden op te halen, zoals een lokale FTP site of een &ms-dos;-partitie. Bijvoorbeeld: Er zijn veel machines aangesloten op een lokaal netwerk en er is maar één &os;-schijf. Er moet een lokale FTP site gemaakt worden met de inhoud van de &os; schijf en vervolgens gebruiken andere machines die in plaats van steeds naar het Internet te moeten. Er is een &os;-schijf, &os; herkent de CD/DVD-speler niet, maar &ms-dos;/&windows; wel. De &os; installatiebestanden moeten gekopieerd worden naar een DOS-partitie op dezelfde computer en dan moet &os; geïnstalleerd worden met die bestanden. De computer die geïnstalleerd moet worden heeft geen CD/DVD-speler of netwerkkaart, maar kan wel verbonden worden via een Laplink-achtige seriële of parallelle kabel met een computer die wel een CD/DVD-speler heeft. Er moet een tape gemaakt worden die gebruikt kan worden om &os; te installeren. Installatie cd-rom maken Als onderdeel van elke versie stelt het &os; project twee cd-rom images beschikbaar (ISO images). Deze images kunnen op een CD-R gebrand worden en dan gebruikt worden om &os; te installeren. Als een CD-schrijver aanwezig is en bandbreedte is goedkoop, dan is dit de makkelijkste manier om &os; te installeren. De juiste ISO images downloaden De ISO images voor iedere versie kunnen worden gedownload van ftp://ftp.FreeBSD.org/pub/FreeBSD/ISO-IMAGES-arch/versie of de dichtstbijzijnde mirror. Vervang arch en versie door de gewenste waarden. De bovenstaande map bevat meestal de volgende images: &os; 4.<replaceable>X</replaceable> ISO imagenamen en verklaring Bestandsnaam Bevat versie-RELEASE-arch-miniinst.iso Alles wat nodig is om &os; te installeren. versie-RELEASE-arch-disc1.iso Alles wat nodig is om &os; te installeren en zoveel additionele pakketten van derde partijen als op de schijf passen. versie-RELEASE-arch-disc2.iso Een live bestandssyteem dat gebruikt wordt in samenwerking met de optie Repair in sysinstall. Een kopie van de &os; CVS boom. Zoveel additionele pakketten van derde partijen als op de schijf passen.
FreeBSD 5.<replaceable>X</replaceable> ISO imagenamen en verklaring Bestandsnaam Bevat versie-RELEASE-arch-bootonly.iso Alles wat nodig is om in een &os; kernel te starten en in het installatieprogramma te komen. De installatiebestanden dienen van FTP of een andere ondersteunde bron te komen. versie-RELEASE-arch-miniinst.iso Alles wat nodig is om &os; te installeren. versie-RELEASE-arch-disc1.iso Alles wat nodig is om &os; te installeren en een live bestandssyteem dat gebruikt wordt in samenwerking met de optie Repair in sysinstall. versie-RELEASE-arch-disc2.iso &os; documentatie en zoveel programma's van derde partijen als op de schijf passen.
Of het mini ISO image of het disc one image moet gedownload worden. Download niet beiden, want disc one bevat alles wat ook op het miniinst ISO image staat. Het miniinst ISO image is alleen beschikbaar voor releases voor 5.4-RELEASE. Gebruik de miniinst ISO als toegang tot internet goedkoop is. Hiermee kan &os; geïnstalleerd worden, waarna pakketten van derde partijen gedownload en geïnstalleerd kunnen worden via het ports/packages systeem (zie ). Gebruik het disc one image ook om een &os; 4.X te installeren en een redelijke hoeveelheid pakketten op de installatieschijf gewenst is. De additionele disc images zijn nuttig, maar niet noodzakelijk, zeker niet als er breedband toegang tot internet is.
CD's branden Daarna moeten de CD images op een schijf gebrand worden. Als dat wordt gedaan op een ander &os; systeem, dan staat in meer informatie (meer in het bijzonder in en ). Als de CD's op een ander platform worden gebrand, gebruik dan de op dat platform beschikbare hulpprogramma's om een CD-brander aan te sturen. De images zijn samengesteld in het standaard ISO-formaat dat ondersteund wordt door de meeste CD-brandprogramma's.
Als er interesse is in het bouwen van een aangepaste versie van &os; dan staat hierover informatie in het Release Engineering artikel.
Een lokale FTP site maken met een &os;-schijf installatie netwerk FTP &os;-schijven zijn op dezelfde manier ingedeeld als de FTP site. Dat maakt het erg gemakkelijk om een lokale FTP site te maken die gebruikt kan worden door andere machines op een netwerk bij het installeren van &os;. Op de &os; computer die de FTP site bevat moet de cd-rom in het cd-rom station zitten en aangekoppeld zijn op /cdrom. &prompt.root; mount /cdrom Maak een gebruikersaccount voor anonieme FTP toegang in /etc/passwd het bestand te bewerken met &man.vipw.8; en de volgende regel toe te voegen: ftp:*:99:99::0:0:FTP:/cdrom:/nonexistent Zorg ervoor dat de dienst FTP aan staat in /etc/inetd.conf. Iedereen met een netwerkverbinding naar de machine kan nu als mediumtype FTP kiezen en ftp://de-machine ingeven na het kiezen van Other in het menu FTP sites tijdens de installatie. Als de bootmedia (meestal diskettes) voor een FTP client niet precies dezelfde versie hebben als die van de lokale FTP - site, dan kan sysinstall de installatie niet volledig - afronden. Als de versies bijna gelijk zijn kan in het menu - Options de distributienaam gewijzigd worden in - any. + site, dan kan sysinstall de + installatie niet volledig afronden. Als de versies niet + gelijk zijn, dan kan in het menu Options + de distributienaam gewijzigd worden in + any. Deze aanpak is in orde voor een machine die aan een lokaal netwerk hangt en beschermd wordt door een firewall. Het aanbieden van FTP-diensten aan andere machines over internet (en niet alleen het lokale netwerk) stelt een computer bloot aan de aandacht van krakers en andere ongewenste personen. We raden sterk aan om voldoende voorzorgsmaatregelen te nemen als hiervoor wordt gekozen. Installatiediskettes maken installatie diskettes Als wordt geïnstalleerd met diskettes (we adviseren om dit niet te doen), hetzij vanwege niet ondersteunde hardware of eenvoudigweg omdat de persoon die installeert er op staat dingen op de moeilijkste manier te doen, dan moeten eerst diskettes gemaakt worden voor de installatie. Er zijn minstens zoveel 1.44 MB of 1.2 MB diskettes nodig als nodig zijn om alle bestanden die in de map bin (binaire distributie) staan op te slaan. Als de diskettes worden gemaakt vanuit DOS, dan moeten ze geformatteerd worden met het &ms-dos; commando FORMAT. Als &windows; wordt gebruikt, formatteer de schijven dan via de verkenner (rechtermuis-klik op A: en kies dan Format). Vertrouw voorgeformatteerde schijven niet. Formatteer ze voor de zekerheid opnieuw. Veel door gebruikers gerapporteerde problemen kwamen voort uit het gebruik van verkeerd geformatteerde media, vandaar dat dit punt hier wordt benadrukt. Als de diskettes worden gemaakt op een andere &os; machine is formatteren nog steeds geen slecht idee, hoewel niet op elke diskette een DOS bestandssysteem nodig is. Met de commando's disklabel en newfs kan er een UFS bestandssysteem op gezet worden, zoals met de volgende commando's wordt getoond (voor een 3.5" 1.44 MB diskette): &prompt.root; fdformat -f 1440 fd0.1440 &prompt.root; disklabel -w -r fd0.1440 floppy3 &prompt.root; newfs -t 2 -u 18 -l 1 -i 65536 /dev/fd0 Gebruik fd0.1200 en floppy5 voor 5.25" 1.2 MB diskettes. Daarna kunnen ze aangekoppeld en beschreven worden als elk ander bestandssysteem. Nadat de diskettes zijn geformatteerd moeten de bestanden op de diskettes gezet worden. De distributiebestanden zijn opgedeeld in porties zodat vijf stuks gemakkelijk op een ouderwetse 1.44 MB diskette passen. Ga door met alle diskettes en zet zoveel bestanden als mogelijk op elke diskette tot alle distributies op die manier gekopiëerd zijn. Elke distributie moet in een submap op de diskette komen, bijvoorbeeld: a:\bin\bin.aa, a:\bin\bin.ab, enzovoorts. Als tijdens de installatie het scherm Media verschijnt kan Floppy gekozen worden en het installatiesysteem vraagt daarna om de overige diskettes. Installeren vanaf een &ms-dos;-partitie installatie van &ms-dos; Om een installatie voor te bereiden vanaf een &ms-dos;-partitie kunnen alle bestanden vanaf de distributie in een map genaamd freebsd in de hoofdmap van de partitie gezet worden, bijvoorbeeld c:\freebsd. De mappenstructuur van de cd-rom of FTP site moet gedeeltelijk worden gereproduceerd in deze map, dus we raden aan het DOS commando xcopy te gebruiken als de bron een cd-rom is. Om bijvoorbeeld een minimale installatie van &os; voor te bereiden: C:\> md c:\freebsd C:\> xcopy e:\bin c:\freebsd\bin\ /s C:\> xcopy e:\manpages c:\freebsd\manpages\ /s Hierbij wordt aangenomen dat C: de schijf is met voldoende vrije ruimte en dat E: het cd-rom station is. Als er geen cd-rom station is, dan kan de distributie gedownload worden van ftp.FreeBSD.org. Elke distributie heeft zijn eigen map. De base distributie staat bijvoorbeeld in de map &rel.current;/base/. In &os; 4.X en oudere versies heet de base distributie bin. Pas de voorbeeldcommando's en URL's hierboven daarop aan als een oudere versie wordt gebruikt. Kopiëer de vanaf een &ms-dos;-partitie te installeren distributies (en waar schijfruimte voor is) en plaats ze elk onder c:\freebsd. De distributie BIN is de enige noodzakelijke voor een minimale installatie. Installeren van tape installatie van QIC/SCSI Tape Het installeren vanaf een tape is waarschijnlijk de gemakktelijkste manier, sneller dan een online FTP installatie of een cd-rom installatie. Het installatie-programma verwacht dat de bestanden eenvoudigweg getarred zijn op een tape. Na het ophalen van alle benodigde distributiebestanden moeten ze op een tape getarred worden: &prompt.root; cd /freebsd/distdir &prompt.root; tar cvf /dev/rwt0 dist1 ... dist2 Bij het uitvoeren van de installatie moet ervoor gezorgd worden dat er voldoende ruimte is in een tijdelijke map (die gekozen kan worden) om de volledige inhoud van de gemaakte tape te bevatten. Door de sequentiële toegangsmethode van een tape heeft deze manier van installeren nogal wat tijdelijke schijfruimte nodig. Bij het begin van de installatie moet de tape al in de drive zitten voor het opstarten van de opstartdiskette. Het installatieprogramma kan hem anders niet vinden. Installeren over een netwerk installatie netwerk serieel (SLIP of PPP) installatie netwerk parallel (PLIP) installatie netwerk Ethernet Er zijn drie soorten netwerkinstallaties beschikbaar: Seriële poort (SLIP of PPP), Parallelle poort (PLIP of laplink kabel) of Ethernet (een standaard ethernetkaart, inclusief sommige PCMCIA-kaarten). De ondersteuning van SLIP is nogal primitief en hoofdzakelijk beperkt tot hard-wired links, zoals een seriële kabel tussen een laptop en een andere computer. De link moet hard-wired zijn, omdat de SLIP installatie geen inbelfaciliteiten biedt. Zo'n faciliteit wordt wel geboden met het PPP-hulpprogramma, dat dan ook gebruikt moet in worden in plaats van SLIP als maar enigzins mogelijk. Als een modem wordt gebruikt is PPP hoogstwaarschijnlijk de enige mogelijkheid. Er dient informatie over de provider beschikbaar te zijn omdat die redelijk vroeg in het installatieproces nodig is. Als PAP of CHAP wordt gebruikt om een verbinding te maken met een ISP (met andere woorden als een verbinding gemaakt kan worden met een ISP onder &windows; zonder een script te gebruiken), dan is alles wat gedaan moet worden het ingeven van het dial commando op de ppp prompt. Anders moet bekend zijn hoe de ISP gebeld moet worden met AT commando's die specifiek zijn voor een modem, aangezien de PPP-dialer slechts een erg eenvoudige terminal emulator bevat. In het ppp-gebruikers handboek en de FAQ staat meer informatie. Bij problemen kan de log naar het scherm worden gestuurd met het commando set log local .... Als een hard-wired verbinding naar een andere &os; (2.0-R of later) machine beschikbaar is kan ook overwogen worden te installeren via een laplink parallelle poort kabel. De snelheid van een parallelle poort is veel hoger dan wat normaal mogelijk is over een seriële kabel (tot 50 kbytes/sec), resulterend een veel snellere installatie. Tenslotte, voor de snelst mogelijke netwerk-nstallatie is een Ethernet adapter altijd een goede keuze! &os; ondersteunt de meeste ethernetkaarten. Een overzicht van de ondersteunde kaarten (en de benodigde instellingen) is beschikbaar in de Hardware Notes voor elke versie van &os;. Als gebruik gemaakt wordt van een ondersteunde PCMCIA kaart, stop deze dan in het slot vóór de laptop wordt aangezet. &os; ondersteunt momenteel helaas geen hot insertion van PCMCIA-kaarten tijdens de installatie. Een toe te wijzen IP-adres op het netwerk, het netmask van de adresklasse en de naam voor de te installeren machine moeten ook bekend zijn. Als wordt geïnstalleerd over een PPP-verbinding en er is geen vast IP-adres, wanhoop dan niet. Het IP-adres kan dynamisch toegekend worden door een ISP. Een systeembeheerder kan aangeven welke waarden gebruikt moeten worden voor netwerkinstellingen. Als andere hosts benaderd moeten worden op naam en niet op IP-adres, dan moet ook een nameserver en mogelijk het adres van een gateway opgegeven worden (als PPP wordt gebruikt is dat het IP-adres van de provider). Bij installatie met FTP via een HTTP-proxy moet ook het adres van de proxy bekend zijn. Als het antwoord op één of meerdere vragen niet bekend is, dan moet echt gesproken worden met de systeembeheerder of ISP vóóor dit soort installaties worden uitgevoerd. Installeren via NFS installatie netwerk NFS De installatie via NFS is redelijk rechttoe-rechtaan. Kopiëer gewoon de &os; distributiebestanden die nodig zijn naar een NFS server en geef die server dan aan in de NFS-media selectie. Als de server alleen zogenaamde privileged ports toestaat (zoals in z'n algemeenheid de standaard voor Sun workstations), dan moet ook de optie NFS Secure aangezet worden in het menu Options voor de installatie verder kan gaan. Bij het gebruik van een ethernetkaart van lage kwaliteit die last heeft van erg lage overdrachtssnelheden kan ook de vlag NFS Slow aangezet worden. Om de installatie van NFS te laten werken, moet de server het aankoppelen van submappen ondersteunen. Als bijvoorbeeld een &os; &rel.current; distributie op ziggy:/usr/archive/stuff/FreeBSD staat, dan moet ziggy toestaan dat /usr/archive/stuff/FreeBSD rechtstreeks wordt aangekoppeld en niet alleen /usr of /usr/archive/stuff. Dit wordt vanuit het &os;-bestand /etc/exports geregeld door de opties . Andere NFS servers kunnen andere gewoontes hebben. Bij een foutbericht permission denied van de server is het waarschijnlijk dat deze niet goed is ingesteld.
diff --git a/nl_NL.ISO8859-1/books/handbook/kernelconfig/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/kernelconfig/chapter.sgml index 9d9874c815..dc03103fa3 100644 --- a/nl_NL.ISO8859-1/books/handbook/kernelconfig/chapter.sgml +++ b/nl_NL.ISO8859-1/books/handbook/kernelconfig/chapter.sgml @@ -1,1922 +1,1834 @@ Jim Mock Bijgewerkt en opnieuw gestructureerd door Jake Hamby Oorspronkelijk bijgedragen door René Ladan Vertaald door De &os;-kernel instellen Samenvatting kernel een aangepaste kernel bouwen De kernel is de kern van het &os;-besturingssysteem en is verantwoordelijk voor het geheugenbeheer, het opleggen van beveiligingsregels, het aansturen van het netwerk, de toegang tot schijven en nog veel meer. Hoewel steeds meer in &os; dynamisch instelbaar wordt, is het af en toe nodig om de kernel opnieuw in te stellen en te compileren. Na het lezen van dit hoofdstuk weet de lezer: Waarom het nodig is om een aangepaste kernel te bouwen; Hoe een nieuw kernelinstellingenbestand te schrijven of een bestaand kernelinstellingenbestand aan te passen; Hoe het kernelinstellingenbestand te gebruiken om een nieuwe kernel aan te maken en te bouwen; Hoe een nieuwe kernel te installeren; Hoe de ingangen in /dev die nodig kunnen zijn aan te maken; Hoe problemen op te lossen als er iets verkeerd gaat. Alle opdrachten die in dit hoofdstuk als voorbeeld zijn gegeven moeten als root uitgevoerd worden om te slagen. Redenen om een aangepaste kernel te bouwen Traditioneel heeft &os; zoals dat heet een monolitische kernel gehad. Dit betekent dat de kernel één groot programma was, een vaste lijst van apparaten ondersteunde en als het gewenst was om het gedrag van de kernel te veranderen, moest er een nieuwe kernel gecompileerd worden en moest daarna de computer opnieuw gestart worden met de nieuwe kernel. Vandaag de dag beweegt &os; zich snel naar een model waar veel van de functionaliteit van de kernel in modules zit die dynamisch in en uit de kernel kunnen worden geladen, naargelang dat noodzakelijk is. Dit stelt de kernel in staat om zich aan nieuwe hardware aan te passen die plotseling beschikbaar komt (zoals PCMCIA-kaarten in een laptop) of om nieuwe functionaliteit in zich op te nemen die niet noodzakelijk was toen de kernel oorspronkelijk werd gecompileerd. Dit staat bekend als een modulaire kernel. Desondanks is het nog steeds nodig om enkele dingen van de kernel statisch in te stellen. In sommige gevallen komt dit doordat de functionaliteit zo diep geworteld zit in de kernel dat het niet dynamisch laadbaar gemaakt kan worden. In andere gevallen kan het simpelweg komen doordat nog niemand de tijd heeft genomen om een dynamisch laadbare kernelmodule voor die functionaliteit te schrijven. Het bouwen van een aangepaste kernel is een van de meest belangrijke beproevingen die bijna elke BSD-gebruiker moet doorstaan. Hoewel dit proces veel tijd in beslag neemt, levert het veel voordelen op voor een &os; systeem. In tegenstelling tot de GENERIC-kernel, die vele typen hardware moet ondersteunen, ondersteunt een aangepaste kernel alleen de hardware van de computer waar hij voor gemaakt is. Dit biedt een aantal voordelen, zoals: Een snellere opstarttijd. Aangezien de kernel alleen de hardware zoekt die zich in het systeem bevindt, kan de tijd die het systeem nodig heeft om op te starten aanzienlijk korter worden; Minder geheugengebruik. Een aangepaste kernel gebruikt vaak minder geheugen dan de GENERIC-kernel, wat van belang is aangezien de kernel zich altijd in het echte geheugen moet bevinden. Om deze reden is een aangepaste kernel geknipt voor een systeem met een kleine hoeveelheid RAM; Aanvullende hardware-ondersteuning. Een aangepaste kernel kan ingebouwde ondersteuning bieden voor apparaten die zich niet in de GENERIC-kernel bevinden, zoals geluidskaarten. Bouwen en installeren van een aangepaste kernel kernel bouwen / installeren Eerst wordt er een overzicht gegeven van de mappen waarin de kernel gebouwd wordt. Alle genoemde mappen staan onder de map /usr/src/sys, die ook toegankelijk is via de padnaam /sys. Er zijn hier een aantal mappen aanwezig die de verschillende delen van de kernel representeren, maar de meest belangrijke hiervan zijn arch/conf, waarin de kernelinstellingen bewerkt worden en compile, waarin de aangepaste kernel gebouwd wordt. arch representeert hier één van i386, alpha, amd64, ia64, powerpc, sparc64 of pc98 (een alternatieve ontwikkelingstak van PC-hardware die populair is in Japan). Alles binnen de map van een bepaalde architectuur is er alleen voor die architectuur. De rest van de code is machine-onafhankelijk en hetzelfde op alle platformen waarnaar &os; eventueel geport kan worden. De indeling van de mapstructuur is logisch: alle ondersteunde apparaten, bestandssystemen en opties staan in een eigen submap. Versies van &os; beneden 5.X ondersteunen alleen de i386-, alpha- en pc98-architecturen. Dit hoofdstuk veronderstelt dat de i386-architectuur in de voorbeelden gebruikt wordt. Als dit voor de lezer anders is, moeten de juiste aanpassingen aan de padnamen worden gemaakt voor de architectuur van zijn systeem. Als de map /usr/src/sys niet aanwezig is op een systeem, dan is de kernelbroncode niet geïnstalleerd. De eenvoudigste manier om dit te doen is door sysinstall ( /stand/sysinstall voor versies van &os; ouder dan 5.2) te draaien als root en Configure, Distributions, src, sys te kiezen. Als sysinstall ongewenst is en er toegang is tot een officiële &os; cd-rom, is de broncode ook vanaf de opdrachtregel te installeren: &prompt.root; mount /cdrom &prompt.root; mkdir -p /usr/src/sys &prompt.root; ln -s /usr/src/sys /sys &prompt.root; cat /cdrom/src/sys.[a-d]* | tar -xzvf - Daarna kan vanuit de map arch/conf het instellingenbestand GENERIC naar de naam voor de aangepaste kernel gekopieerd worden: &prompt.root; cd /usr/src/sys/i386/conf &prompt.root; cp GENERIC MIJNKERNEL Traditioneel bestaat deze naam geheel uit hoofdletters en als er meerdere &os;-machines worden beheerd met verschillende hardware is het een goed idee om het te vernoemen naar de hostnaam van de machine. Omwille van dit voorbeeld wordt het MIJNKERNEL genoemd. Het kernelinstellingenbestand direct onder /usr/src opslaan kan een slecht idee zijn. In geval van problemen kan het verleidelijk zijn om /usr/src te verwijderen en opnieuw te beginnen. Nadat dit gedaan is kost het vaak maar enkele seconden om te realiseren dat het instellingenbestand voor de aangepaste kernel verwijderd is. Ook moet GENERIC niet gewijzigd worden, omdat het tijdens de volgende keer dat de broncodestructuur bijgewerkt wordt, overschreven kan worden waarbij de wijzigingen in de kernelinstellingen verloren gaan. Het kan gewenst zijn om het kernelinstellingenbestand ergens anders op te slaan en een symbolische link naar het bestand in de map i386 aan te maken: &prompt.root; cd /usr/src/sys/i386/conf &prompt.root; mkdir /root/kernels &prompt.root; cp GENERIC /root/kernels/MIJNKERNEL &prompt.root; ln -s /root/kernels/MIJNKERNEL Nu moet MIJNKERNEL met de favoriete tekstverwerker bewerkt worden. Voor beginners is waarschijnlijk alleen de tekstverwerker vi beschikbaar, die te ingewikkeld is om hier te beschrijven, maar goed is beschreven in vele boeken in de bibliografie. &os; biedt ook de eenvoudigere tekstverwerker ee, die voor een beginner de keuze bij uitstek is. De commentaarregels in het begin kunnen gewijzigd worden om de persoonlijke instellingen of de veranderingen die gemaakt zijn ten opzichte van GENERIC weer te geven. &sunos; Voor degenen die een kernel op &sunos; of een andere BSD hebben gebouwd zal veel van dit bestand bekend voorkomen. Echter, voor degenen die van een ander besturingssysteem zoals DOS komen, kan het instellingenbestand GENERIC overdonderend overkomen, dus moeten de beschrijvingen in de sectie Het Instellingenbestand zorgvuldig opgevolgd worden. Als de broncodestructuur gesynchroniseerd is met de nieuwste broncode van het &os;-project, moet altijd /usr/src/UPDATING gelezen worden voordat enige updatestappen worden genomen. Dit bestand beschrijft alle belangrijke zaken en gebieden binnen de broncodestructuur die speciale aandacht nodig hebben. /usr/src/UPDATING komt altijd overeen met de lokale versie van de &os;-broncode en is daarom meer bijgewerkt met nieuwe informatie dan dit handboek. Nu moet de broncode voor de kernel gecompileerd worden. Hiervoor zijn twee procedures beschikbaar en degene die gebruikt wordt hangt af van de reden waarom de kernel opnieuw gebouwd wordt en de gebruikte versie van &os;. Als alleen de kernelbroncode is geïnstalleerd, moet procedure 1 gevolgd worden. Als een versie van &os; lager dan 4.0 wordt gedraaid, en er niet wordt geupdate naar &os; 4.0 of hoger door middel van de make buildworld–procedure, moet procedure 1 gebruikt worden. Als er een nieuwe kernel gebouwd wordt zonder dat de broncode geupdate wordt (misschien om een nieuwe optie, zoals IPFIREWALL, toe te voegen), kunnen beide procedures gebruikt worden. Als de kernel opnieuw wordt gebouwd als onderdeel van een make buildworld-proces, moet procedure 2 gebruikt worden. cvsup CTM CVS anoniem Als de broncodestructuur niet op enige wijze bijgewerkt is sinds de laatste keer dat er met succes een buildworld-installworld cyclus werd uitgevoerd, CVSup noch CTM werden gedraaid en anoncvs werd niet gebruikt, dan is het veilig om config, make depend, make, make install te gebruiken. Procedure 1: een kernel op <quote>traditionele wijze</quote> bouwen Draai &man.config.8; om de kernelbroncode aan te maken: &prompt.root; /usr/sbin/config MIJNKERNEL Ga naar de bouwmap. &man.config.8; geeft de naam van deze map nadat het gedraaid is zoals boven is aangegeven: &prompt.root; cd ../compile/MIJNKERNEL Voor &os; versies lager dan 5.0 moet het volgende gebruikt worden: &prompt.root; cd ../../compile/MIJNKERNEL Compileer de kernel: &prompt.root; make depend &prompt.root; make Installeer de nieuwe kernel: &prompt.root; make install Procedure 2: een kernel op de <quote>nieuwe wijze</quote> bouwen Ga naar de map /usr/src: &prompt.root; cd /usr/src Compileer de kernel: &prompt.root; make buildkernel KERNCONF=MIJNKERNEL Installeer de nieuwe kernel: &prompt.user; make installkernel KERNCONF=MIJNKERNEL + + Voor deze methode voor het bouwen van een kernel is de + volledige broncode nodig. Als alleen de kernelbroncode is + geïnstalleerd, gebruik dan de traditionele methode zoals + hiervoor beschreven. + + In &os; 4.2 en eerder moet KERNCONF= door KERNEL= vervangen worden. Een 4.2-STABLE die voor 2 februari 2001 is opgehaald herkent KERNCONF= niet. /boot/kernel.old De nieuwe kernel wordt naar de map /boot/kernel gekopieerd als /boot/kernel/kernel en de oude kernel wordt verplaatst naar /boot/kernel.old/kernel. Nu moet het systeem afgesloten worden en opnieuw worden opgestart om gebruik te maken van de nieuwe kernel. Er zijn wat instructies voor problemen oplossen aan het einde van dit hoofdstuk, die erg nuttig kunnen zijn als er iets misgaat. Vergeet niet om het gedeelte te lezen waarin staat uitgelegd hoe te herstellen als de nieuwe kernel niet opstart. In &os; 4.X en eerder worden kernels in /kernel en modules in /modules geïnstalleerd en worden oude kernels gebackupt in /kernel.old. Andere bestanden die te maken hebben met het opstartproces, zoals de boot &man.loader.8; en instellingen worden opgeslagen in /boot. Modules van derde partijen of eigen modules kunnen in /modules opgeslagen worden, alhoewel gebruikers erop bedacht moeten zijn dat het erg belangrijk is dat de modules synchroon worden gehouden met de gecompileerde kernel. Modules die niet bedoeld zijn om met de gecompileerde kernel te draaien kunnen voor instabiliteit of onjuistheden zorgen. Als er nieuwe apparaten (zoals geluidskaarten) zijn toegevoegd en &os; 4.X of eerder wordt gedraaid, kan het zijn dat er enkele apparaatnodes aan de map /dev moeten worden toegevoegd, voordat ze gebruikt kunnen worden. Er staat meer informatie in het Apparaatnodes maken later in dit hoofdstuk. Joel Dahl Bijgewerkt voor &os; 5.X door Het instellingenbestand kernel NOTES kernel LINT NOTES LINT kernel instellingenbestand Het algemene formaat van een instellingenbestand is vrij eenvoudig. Elke regel bevat een sleutelwoord en één of meer argumenten. Omwille van de eenvoud bevatten de meeste regels maar één argument. Alles wat na een # komt, wordt als commentaar beschouwd en genegeerd. De volgende gedeelten beschrijven elk sleutelwoord, in het algemeen in dezelfde volgorde als GENERIC, alhoewel sommige samenhangende sleutelwoorden gegroepeerd zijn in een enkel gedeelte (zoals Netwerken) zelfs al staan ze verspreid in het bestand GENERIC. Een uitputtende lijst van architectuurafhankelijke opties en apparaten staat in het bestand NOTES, dat in dezelfde map staat als GENERIC. Architectuuronafhankelijke opties staan in /usr/src/sys/conf/NOTES. NOTES bestaat niet in &os; 4.X. In plaats daarvan bevat het bestand LINT een uitgebreide uitleg over opties en apparaten in GENERIC. LINT had twee doelen in 4.X: een naslagwerk leveren om kernelopties te kiezen voor het bouwen van een aangepaste kernel en een kernelinstelling leveren met zoveel mogelijk instelbare opties ingesteld op niet-standaardwaarden. De redenering hierachter was dat zo'n instelling veel hielp (en nog steeds helpt) met het testen van nieuwe code en veranderingen aan bestaande code die conflicten met andere delen van de kernel kunnen veroorzaken. Er zijn in 5.X echter een hoop veranderingen gemaakt aan het raamwerk van kernelinstellingen. Een voorbeeld hiervan is dat de instelopties van de stuurprogramma's zijn verplaatst naar een bestand hints zodat ze tijdens het opstarten dynamisch veranderd en geladen kunnen worden, en LINT kon deze aanwijzingen niet meer bevatten. Om deze en andere redenen is LINT hernoemd tot NOTES en heeft het hoofdzakelijk z'n eerste bestaansreden gehouden: de beschikbare opties documenteren voor gebruikersgemak. In &os; 5.X en latere versies is het nog steeds mogelijk om een bouwbaar bestand LINT aan te maken door middel van: &prompt.root; cd /usr/src/sys/i386/conf && make LINT kernel instellingenbestand Het volgende is een voorbeeld van het kernelinstellingenbestand GENERIC met aanvullend commentaar omwille van de helderheid. Dit voorbeeld is redelijk gelijk aan de versie in /usr/src/sys/i386/conf/GENERIC. - # -# GENERIC -- Standaard kernelinstellingenbestand voor &os;/i386 -# -# Meer informatie over dit bestand staat in het onderdeel Het Instellen -# van de FreeBSD-kernel in het handboek: -# -# http://www.FreeBSD.org/doc/nl_NL.ISO8859-1/books/handbook/kernelconfig-config.html -# -# Het handboek is ook lokaal beschikbaar in /usr/share/doc/handbook -# als de doc distributie is geïnstalleerd. Op de &os; World Wide Web -# server (http://www.FreeBSD.org/) staat altijd de meest recente -# informatie. -# -# Een uitputtende lijst met opties en meer gedetailleerde beschrijving -# van de apparaatregels staat ook in de bestanden ../../conf/NOTES en -# NOTES. -# Bij twijfel over het doel en de noodzaak van een regel dient eerst in -# NOTES gekeken te worden. -# -# $FreeBSD: /repoman/r/ncvs/src/sys/i386/conf/GENERIC,v 1.413 2004/08/11 01:34:18 rwatson Exp $ - - De volgende sleutelwoorden zijn noodzakelijk in - elke kernel die gebouwd wordt: - kernelopties machine machine i386 Dit is de architectuur van de machine. Het moet één van alpha, amd64, i386, ia64, pc98, powerpc of sparc64 zijn. kernelopties cpu cpu I486_CPU cpu I586_CPU cpu I686_CPU Bovenstaande optie geeft het type CPU aan dat in een systeem zit. De CPU-regel kan meerdere keren voorkomen (als bijvoorbeeld onbekend is of I586_CPU of I686_CPU gebruikt moet worden), maar voor een aangepaste kernel is het beter om alleen de aanwezige CPU aan te geven. Als er twijfel bestaat over het type CPU, kan het bestand /var/run/dmesg.boot worden bekeken voor de opstartberichten. kernelopties cputype De broncode van &os; bevat nog steeds ondersteuning voor I386_CPU, maar staat standaard uit in zowel -STABLE als -CURRENT. Dit betekent dat er nu de volgende mogelijkheden zijn om &os; op een CPU van de 386-klasse te installeren: Installeer een oudere versie van &os; en herbouw vanuit de broncode zoals beschreven staat in . Bouw userland en de kernel op een nieuwere machine en verricht de installatie op de 386 door gebruik te maken van de voorgecompileerde bestanden in /usr/obj (in staan details). Maak een aangepaste versie van &os; die ondersteuning voor I386_CPU bevat in de kernels van de installatie-cd-rom. De eerste van deze opties is waarschijnlijk de gemakkelijkste, maar deze heeft veel schijfruimte nodig wat een probleem kan zijn voor 386-klasse machines. kernelopties ident ident GENERIC Dit is de identificatie van de kernel. Dit moet veranderd worden in de naam van de kernel, dus MIJNKERNEL als de instructies van de voorgaande voorbeelden gevolgd zijn. De waarde in de string ident wordt afgebeeld wanneer de kernel opstart, dus is het handig om de nieuwe kernel een andere naam te geven als deze apart moet worden gehouden van de gebruikelijke kernel (als er bijvoorbeeld een experimentele kernel gebouwd wordt). - - kernelopties - - maxusers - - - maxusers n - - De optie maxusers stelt de grootte van een - aantal belangrijke systeemtabellen in. Dit aantal moet ruwweg - gelijk zijn aan het aantal gebruikers dat verwacht wordt - gelijktijdig van de machine gebruik te maken. - - Met ingang van &os; 4.5 stelt het systeem deze waarde - zelf in als deze uitdrukkelijk op 0 is gezet. - - - Het auto-tuning-algoritme stelt - maxusers in afhankelijk van de hoeveelheid - geheugen in het systeem, met een minimum van 32 en een - maximum van 384. - - - In &os; 5.X en hoger heeft maxusers een - standaardwaarde van 0 als deze niet gespecificeerd is. Als er - een versie van &os; lager dan 4.5 wordt gebruikt of het gewenst - is om de waarde zelf te beheren, wordt aangeraden om - maxusers minstens op 4 te zetten, met name als - het X Window systeem in gebruik is of als er software - gecompileerd wordt. De reden hiervoor is dat de belangrijkste - tabel die door maxusers ingesteld wordt, het - maximum aantal processen is, dat ingesteld wordt op 20 + - 16 * maxusers, dus als maxusers op 1 - ingesteld wordt, zijn er maar 36 gelijktijdige processen - mogelijk, inclusief de ongeveer achttien processen die door het - systeem tijdens het opstarten start en de ongeveer vijftien - processen die waarschijnlijk aangemaakt worden door het opstarten - van het X Window systeem. Zelfs een eenvoudige taak als het - afbeelden van een hulppagina start negen processen op om de - pagina te filteren, te decomprimeren en af te beelden. Als - maxusers op 64 ingesteld wordt, zijn er 1044 - gelijktijdige processen mogelijk, wat genoeg moet zijn voor bijna - alle soorten gebruik. Als echter de gevreesde fout - proc table full verschijnt als er - geprobeerd wordt om een programma op te starten of als er een - server gedraaid wordt met een groot aantal gelijktijdige - gebruikers, zoals ftp.FreeBSD.org, - kan het getal altijd verhoogd worden en kan de kernel opnieuw - gebouwd worden. - - - maxusers stelt geen - grens aan het aantal gebruikers dat op de machine kan - aanmelden. Het stelt gewoon verschillende tabelgroottes in op - redelijke waardes, uitgaande van het maximum aantal gebruikers - dat waarschijnlijk de machine gebruikt en van het aantal - processen dat elk van deze gebruikers zal draaien. Een - sleutelwoord dat wel het aantal - gelijktijdige aanmeldingen op afstand en X-terminalvensters - begrenst is pseudo-device pty - 16. In &os; 5.X kan dit getal - genegeerd worden omdat daar het stuurprogramma &man.pty.4; - auto-cloning is. Er kan eenvoudig gebruik - worden gemaakt van de regel device pty in - het instellingenbestand. - - - # Floating point ondersteuning - niet uitschakelen. -device npx - - npx is de interface naar de wiskundige - floating point-eenheid in &os;, die ofwel de hardware coprocessor - is ofwel de softwarematige wiskundige emulator. Dit is - niet optioneel. - - # Pseudo devices -device loop # Netwerk loopback - - Dit is het generieke loopbackapparaat voor TCP/IP. Als - telnet of FTP op localhost (ook bekend als - 127.0.0.1) gebruikt wordt, loopt - dat via dit apparaat. Dit is verplicht. Op - &os; 4.X moet de volgende regel gebruikt worden: - - # Gebruiken in &os; 4.X -pseudo-device loop - - Alles wat nu volgt is min of meer optioneel. Meer informatie - over elke optie staat in de notities eronder of ernaast. - #Om statisch te compileren in device wiring in plaats van /boot/device.hints. #hints "GENERIC.hints" # Standaardlocatie voor devices. In &os; 5.X en nieuwer wordt &man.device.hints.5; gebruikt om opties van de programma's die de apparaten aansturen in te stellen. De standaardplaats die &man.loader.8; controleert tijdens het opstarten is /boot/device.hints. Met de optie hints is het mogelijk om deze aanwijzingen statisch in de kernel te compileren, waardoor er geen noodzaak is om een bestand device.hints in /boot aan te maken. #makeoptions DEBUG=-g # Bouw kernel met gdb(1) debug symbolen. Om ruimte te sparen in de installatieplaats voegt het normale bouwproces van &os; geen debug-informatie toe tijdens het bouwen van de kernel en stript de meeste symbolen nadat de resulterende kernel is gelinkt. Voor het testen van kernels van de tak -CURRENT of van zelfgemaakte veranderingen in de &os;-kernel kan het gewenst zijn om deze regel uit te commentariëren. Dit zet het gebruik van de optie aan die debug-informatie aanzet als de broncode wordt doorgegeven aan &man.gcc.1;. Hetzelfde kan bereikt worden met de optie van &man.config.8; als de traditionele manier wordt gebruikt om een kernel te bouwen. Meer informatie staat in . options SCHED_4BSD # 4BSD taakplanner De traditionele taakplanner voor &os;. Afhankelijk van de systeembelasting kan de prestatie worden verhoogd door de nieuwe scheduler ULE voor &os; te gebruiken, die speciaal voor SMP ontworpen is, maar ook goed werkt op UP-systemen. Vervang desgewenst, om deze uit te proberen, SCHED_4BSD door SCHED_ULE in het instellingenbestand. options INET # internetwerken Netwerkondersteuning. Laat dit aanstaan, zelfs als een verbinding met een netwerk niet gepland is. De meeste programma's hebben tenminste een loopbacknetwerk nodig (dat wil zeggen het maken van netwerkverbindingen binnen de PC), dus dit is eigenlijk verplicht. options INET6 # IPv6 communicatieprotocollen Dit zet de IPv6-communicatieprotocollen aan. options FFS # Berkeley Fast Bestandssysteem Dit is het basisbestandssysteem voor de harde schijf. Laat dit erin staan als er vanaf de harde schijf wordt opgestart. options SOFTUPDATES # Schakel FFS Softupdates ondersteuning in Deze optie zet softupdates in de kernel aan en helpt om de schijftoegang voor schrijven te verhogen. Zelfs als deze functionaliteit door de kernel geleverd wordt, moet die voor specifieke schijven worden aangezet. Bekijk de uitvoer van &man.mount.8; om te zien of softupdates aanstaat voor de systeemschijven. Als de optie soft-updates niet zichtbaar is, dient deze geactiveerd te worden met behulp van &man.tunefs.8; voor bestaande bestandssystemen of &man.newfs.8; voor nieuwe bestandssystemen. options UFS_ACL # Ondersteuning voor toeganscontrolelijsten Met deze optie, die alleen in &os; 5.X aanwezig is, wordt de ondersteuning voor toegangscontrolelijsten aangezet. Hiervoor zijn uitgebreide attributen en UFS2 nodig. Een en ander wordt in detail beschreven in . ACL's staan standaard aan en moeten niet uitgezet worden in de kernel als ze al eerder op een bestandssysteem zijn gebruikt, omdat dit de toegangscontrolelijsten verwijdert en hierdoor de manier waarop bestanden beschermd worden op onvoorspelbare wijze verandert. options UFS_DIRHASH # Verbeter prestaties in grote mappen Deze optie bevat functionaliteit om schijfoperaties op grote mappen te versnellen, ten koste van extra geheugen. Deze staat normaalgesproken, zoals voor een grote server of interactief werkstation, aan en wordt uitgezet als &os; op een kleiner systeem wordt gebruikt waar geheugen het belangrijkste en schijfsnelheid minder belangrijk is, zoals voor een firewall. options MD_ROOT # MD is een potentieel rootapparaat Deze optie zet ondersteuning aan voor een virtuële schijf die in het geheugen wordt geïmplementeerd en als rootapparaat wordt gebruikt. kernelopties NFS kernelopties NFS_ROOT options NFSCLIENT # Netwerk Bestandssysteem Client options NFSSERVER # Netwerk Bestandssysteem Server options NFS_ROOT # NFS bruikbaar als /, NFSCLIENT nodig Het netwerkbestandssysteem. Dit kan weggelaten worden tenzij er gepland is om partities te mounten van een &unix; bestandsserver over TCP/IP. kernelopties MSDOSFS options MSDOSFS # MSDOS Bestandssysteem Het &ms-dos; bestandssysteem. Dit kan veilig weggelaten worden, tenzij er gepland is om een DOS-geformatteerde partitie van de harde schijf tijdens het opstarten te mounten. Het wordt automatisch geladen als er voor de eerste keer een DOS-partitie wordt gemount, zoals boven beschreven. Bovendien geeft de uitstekende software emulators/mtools toegang tot DOS-floppies zonder dat ze gemount en gedismount moeten worden en heeft het MSDOSFS helemaal niet nodig. options CD9660 # ISO 9660 Bestandssysteem Het ISO 9960-bestandssysteem voor cd-roms. Commentarieer dit uit als er geen cd-rom drive aanwezig is of als er slechts af en toe data-cd-roms gemount worden (aangezien het dynamisch geladen wordt als er voor de eerste keer een data-cd-rom gemount wordt). Audio-CD's hebben dit bestandssysteem niet nodig. options PROCFS # Procesbestandssysteem Het procesbestandssysteem. Dit is een als-of bestandssysteem, gemount in /proc, dat programma's als &man.ps.1; in staat stelt om meer informatie over de draaiende processen te geven. In &os; 5.X en hoger is het onder de meeste omstandigheden niet nodig om PROCFS te gebruiken, omdat de meeste debug- en monitorgereedschappen zijn aangepast om zonder PROCFS te draaien. In tegenstelling tot &os; 4.X mounten nieuwe installaties op &os; 5.X standaard het procesbestandssysteem niet. Bovendien moeten 6.X-CURRENT kernels die gebruik maken van PROCFS, nu ook ondersteuning bevatten voor PSEUDOFS: options PSEUDOFS # Pseudo-bestandssysteem framework PSEUDOFS is niet beschikbaar in &os; 4.X. options GEOM_GPT # GUID Partitietabellen. Met deze optie kan een groot aantal partities op een enkele schijf aanwezig zijn. options COMPAT_43 # Compatibel met BSD 4.3 [ERIN HOUDEN!] Compatibiliteit met 4.3BSD. Laat dit aanstaan. Sommige programma's gedragen zich vreemd als dit uitgecommentarieerd wordt. options COMPAT_FREEBSD4 # Compatibel met &os; 4 Deze optie is nodig op &os; 5.X &i386; en Alpha systemen om ondersteuning te bieden aan applicaties die gecompileerd zijn op oudere versies van &os; en gebruik maken van oudere systeemaanroep-interfaces. Het is aanbevolen dat deze optie gebruikt wordt op alle &i386; en Alpha systemen die mogelijk oudere applicaties draaien. Voor platformen die pas in 5.X ondersteuning verwierven, zoals ia64 en &sparc64;, is deze optie niet nodig. options SCSI_DELAY=15000 # Vertraging (in ms) voordat SCSI wordt afgezocht. Dit zorgt ervoor dat de kernel vijftien seconden wacht voordat die elk SCSI-apparaat in het systeem afzoekt. Als er alleen IDE harde schijven zijn, kan deze optie genegeerd worden, anders is het misschien wenselijk om deze waarde te verlagen tot vijf seconden, om het opstarten te versnellen. Uiteraard moet deze waarde weer verhoogd worden als &os; problemen heeft om de SCSI-apparaten te herkennen. options KTRACE # ktrace(1) ondersteuning Dit schakelt kernelondersteuning voor het volgen processen in, wat handig is tijdens debuggen. options SYSVSHM # SYSV-stijl gedeeld geheugen Deze optie biedt System V gedeeld geheugen. Meestal wordt dit wegens de XSHM-uitbreiding in X gebruikt, waar door vele grafische programma's automatisch gebruik van wordt gemaakt voor extra snelheid. Als X gebruik wordt, is het raadzaam om dit op te nemen. options SYSVMSG # SYSV-stijl berichtwachtrijen Dit biedt ondersteuning voor System V berichten. Ook deze optie voegt slechts een paar honderd bytes aan de kernel toe. options SYSVSEM # SYSV-stijl semaforen Dit biedt ondersteuning voor System V semaforen. Het wordt minder vaak gebruikt, maar voegt slechts een paar honderd bytes aan de kernel toe. De optie van het commando &man.ipcs.1; geeft een lijst van alle processen die een van deze System V faciliteiten gebruikt. options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensies Dit biedt real-time-uitbreidingen die in de 1993 &posix; zijn toegevoegd. Bepaalde applicaties in de Portscollectie gebruiken deze (zoals &staroffice;). options KBD_INSTALL_CDEV # installeer een CDEV-ingang in /dev Deze optie is gerelateerd aan het toetsenbord. Het installeert een CDEV-ingang in /dev. options AHC_REG_PRETTY_PRINT # Toon register bitveld in debuguitvoer. # Voegt ~128k toe aan driver. options AHD_REG_PRETTY_PRINT # Toon register bitveld in debuguitvoer. # Voegt ~215k toe aan driver. Dit helpt bij het debuggen door makkelijker te lezen registerdefinities af te beelden. options ADAPTIVE_GIANT # Giant mutex is adaptief. Giant is de naam van een wederzijds uitsluitingsmechanisme (een sleep mutex) dat een grote verzameling kernelbronnen beschermt. Vandaag de dag is dit een onaccaptabele prestatie-bottleneck die actief door sloten wordt vervangen die individuele bronnen beschermen. De optie ADAPTIVE_GIANT zorgt ervoor dat Giant in de verzamelingen van mutexen wordt opgenomen waar actief wordt opgespind. Dit betekent dat wanneer een thread de Giant-mutex wil nemen, maar die reeds door een thread op een andere CPU genomen is, de eerste thread blijft draaien en wacht tot er een slot vrijkomt. Normaalgesproken zou de thread weer gaan slapen en wachten op de volgende kans om te draaien. Laat dit er in geval van twijfel instaan. kernelopties SMP device apic # I/O APIC Het apic-apparaat zet de ondersteuning voor I/O-APIC voor het afleveren van interrupts aan. Het apic-apparaat kan zowel in UP- als in SMP-kernels gebruikt worden, maar is noodzakelijk voor SMP-kernels. Voeg options SMP toe om ondersteuning voor meerdere processoren op te nemen. device isa Alle computers die door &os; ondersteund worden hebben één van deze apparaten. Verwijder dit niet, zelfs niet als er geen ISA-sloten aanwezig zijn. &os; biedt momenteel slechts gedeeltelijke ondersteuning aan IBM PS/2 (Micro Channel Architecture)-systemen. Meer informatie over de ondersteuning voor MCA staat in /usr/src/sys/i386/conf/notes. device eisa Neem dit op voor een EISA-moederbord. Dit zet ondersteuning voor zelfdetectie en -instelling aan voor alle apparaten op de EISA-bus. device pci Neem dit op voor een PCI-moederbord. Dit zet ondersteuning voor zelfdetectie van PCI-kaarten en gatewaying van PCI-naar-ISA-bus aan. # Floppy drives device fdc Dit is de controller voor de floppydrive. # ATA- en ATAPI-apparaten device ata Dit stuurprogramma biedt ondersteuning aan alle ATA- en ATAPI-apparaten. Er is slechts één device ata-regel nodig om de kernel alle PCI ATA/ATAPI-apparaten te laten ontdekken op moderne machines. device atadisk # ATA schijven Dit is samen met device ata nodig voor ATA schijven. device ataraid # ATA RAID schijven Dit is samen met device ata nodig voor ATA RAID-schijven. device atapicd # ATAPI cd-rom drives Dit is samen met device ata nodig voor ATAPI cd-rom drives. device atapifd # ATAPI floppy drives Dit is samen met device ata nodig voor ATAPI floppydrives. device atapist # ATAPI tape drives Dit is samen met device ata nodig voor ATAPI tapedrives. options ATA_STATIC_ID # Statische apparaatnummering Dit zorgt ervoor dat de controller statisch nummert. Zonder deze optie worden nummers dynamisch toegewezen. # SCSI Controllers device ahb # EISA AHA1742 familie device ahc # AHA2940 en onboard AIC7xxx apparaten device ahd # AHA39320/29320 en onboard AIC79xx apparaten device amd # AMD 53C974 (Teckram DC-390(T)) device isp # Qlogic familie device mpt # LSI-Logic MPT-Fusion #device ncr # NCR/Symbios Logic device sym # NCR/Symbios Logic (nieuwere chipsets) device trm # Tekram DC395U/UW/F DC315U adapters device adv # Advansys SCSI adapters device adw # Advansys wide SCSI adapters device aha # Adaptec 154x SCSI adapters device aic # Adaptec 15[012]x SCSI adapters, AIC-6[23]60. device bt # Buslogic/Mylex MultiMaster SCSI adapters device ncv # NCR 53C500 device nsp # Workbit Ninja SCSI-3 device stg # TMC 18C30/18C50 SCSI controllers. Commentarieer de regels uit voor apparaten die niet in het systeem aanwezig zijn. Als het een systeem met alleen IDE apparaten betreft, kunnen ze allemaal weggelaten worden. # SCSI randapparaten device scbus # SCSI bus (nodig voor SCSI) device ch # SCSI media changers device da # Direct Access (schijven) device sa # Sequential Access (tape, enzovoort) device cd # CD device pass # Passthrough apparaat (directe SCSI-toegang) device ses # SCSI Omgevingsdiensten (en SAF-TE) SCSI-aanhangels. Ook hier geldt dat apparaten die niet aanwezig zijn uitgecommentarieerd kunnen worden, of als alleen IDE-hardware aanwezig aanwezig is, ze allemaal weggelaten kunnen worden. Het USB-stuurprogramma &man.umass.4; en enkele andere stuurprogramma's gebruiken het SCSI-subsysteem, alhoewel ze geen echte SCSI-apparaten zijn. Daarom mag SCSI-ondersteuning niet verwijderd worden als dit soort stuurprogramma's in de kernelinstellingen worden opgenomen. # RAID controllers met interfaces naar het SCSI subsysteem device amr # AMI MegaRAID device arcmsr # Areca SATA II RAID device asr # DPT SmartRAID V, VI en Adaptec SCSI RAID device ciss # Compaq Smart RAID 5* device dpt # DPT Smartcache III, IV - Zie NOTES voor opties device hptmv # Highpoint RocketRAID 182x device iir # Intel Integrated RAID device ips # IBM (Adaptec) ServeRAID device mly # Mylex AcceleRAID/eXtremeRAID device twa # 3ware 9000 series PATA/SATA RAID # RAID controllers device aac # Adaptec FSA RAID device aacp # SCSI passthrough voor aac (CAM nodig) device ida # Compaq Smart RAID device mlx # Mylex DAC960 famile device pst # Promise Supertrak SX6000 device twe # 3ware ATA RAID Ondersteunde RAID-controllers. Als een van deze niet aanwezig is, kan deze uitgecommentarieerd of verwijderd worden. # atkbdc0 bestuurt het toetsenbord en de PS/2 muis device atkbdc # AT toetsenbordcontroller De toetsenbordcontroller (atkbdc) biedt I/O-diensten aan voor het AT-toetsenbord en het PS/2-type van aanwijsapparaten. Deze controller is noodzakelijk voor het toetsenbordstuurprogramma (atkbd) en het PS/2-aanwijsapparaatstuurprogramma (psm). device atkbd # AT toetsenbord Het stuurprogramma atkbd biedt samen met de controller atkbdc toegang tot het AT84-toetsenbord of het uitgebreide AT-toetsenbord dat verbonden is met de controller voor het AT-toetsenbord. device psm # PS/2 muis Dit apparaat kan gebruikt worden als de muis in de PS/2-muispoort wordt geplugd. device vga # VGA videokaart stuurprogramma Het stuurprogramma voor de videokaart. # splash screen/screensaver device splash # Splash screen en screensaver ondersteuning Een splash-scherm tijdens het opstarten! Screensavers hebben deze optie ook nodig (voor &os; 4.X dient pseudo-device splash gebruikt te worden. # syscons is het standaard consolestuurprogramma, lijkt op een SCO console device sc sc is het standaard consolestuurprogramma en lijkt op een SCO-console. Aangezien de meeste programma's die met een volledig scherm werken de console via een terminaldatabase zoals termcap benaderen, moet het niet uitmaken of dit of vt, het VT220-compatibele consolestuurprogramma, gebruikt wordt. Wanneer er aangemeld wordt, dient de variabele TERM op scoansi gezet worden indien programma's die met een volledig scherm werken problemen hebben om met dit console te draaien. # Schakel dit in voor het pcvt (VT220 compatibele) consolestuurprogramma #device vt #options XSERVER # ondersteuning voor X server op een vt console #options FAT_CURSOR # begin met een blokcursor Dit is een VT220-compatibel consolestuurprogramma, achterwaarts compatibel met de VT100/102. Het werkt goed op enkele laptops die hardware-incompatibiliteiten hebben met sc. Ook dient de variabele TERM op vt100 of vt220 gezet te worden bij het aanmelden. Dit stuurprogramma kan ook nuttig zijn wanneer er verbinding wordt gemaakt met een groot aantal verschillende machines in een netwerk, waarbij de ingangen termcap of terminfo voor het apparaat sc vaak niet beschikbaar zijn. vt100 is op bijna elk platform beschikbaar. device agp Neem dit op als er een AGP-kaart in het systeem aanwezig is. Dit zet ondersteuning voor AGP aan, en ondersteuning voor AGP GART voor borden die deze mogelijkheden hebben. + # Floating point ondersteuning - niet uitschakelen. +device npx + + npx is de interface naar de wiskundige + floating point-eenheid in &os;, die ofwel de hardware coprocessor + is ofwel de softwarematige wiskundige emulator. Dit is + niet optioneel. + APM # Ondersteuning voor energiebeheer (zie NOTES voor meer opties) #device apm Ondersteuning voor geavanceerd energiebeheer (Advanced Power Management). Dit is nuttig voor laptops, alhoewel dit in &os; 5.X en hoger standaard uitgeschakeld is in GENERIC. # Schakel suspend/resume ondersteuning voor de i8254 in. device pmtimer Het stuurprogramma voor het timerapparaat voor energiebeheergebeurtenissen, zoals APM en ACPI. # PCCARD (PCMCIA) ondersteuning. # PCMCIA en cardbus bridge ondersteuning. device cbb # cardbus (yenta) bridge device pccard # PC Card (16-bit) bus device cardbus # CardBus (32-bit) bus Ondersteuning voor PCMCIA. Dit is wenselijk voor laptopgebruikers. # Serial (COM) poorten device sio # 8250, 16[45]50-gebaseerde seriële poorten Dit zijn de seriële poorten waarnaar in de wereld van &ms-dos;/&windows; verwezen wordt als COM-poorten. Als er een intern modem op COM4 en een seriële poort op COM2 aanwezig is, moet het IRQ van het modem in 2 worden veranderd (om duistere technische redenen geldt dat IRQ2 = IRQ9) om er vanuit &os; toegang toe te krijgen. Als er een multipoort seriële kaart aanwezig is, staat in &man.sio.4; meer informatie over de juiste waarden die aan /boot/device.hints toegevoegd moeten worden. Sommige videokaarten (vaak gebaseerd op S3 chips) gebruiken IO-adressen van de vorm 0x*2e8, en omdat vele goedkope serieële kaarten de 16-bits IO-adresruimte niet volledig decoderen, botsen ze met deze kaarten waardoor de COM4-poort praktisch onbruikbaar is. Elke serieële poort moet een uniek IRQ hebben (tenzij er gebruik wordt gemaakt van een van de multipoortkaarten waarbij gedeelde interrupts ondersteund worden), dus kunnen de standaard IRQ's voor COM3 en COM4 niet gebruikt worden. # Parallelle poort device ppc Dit is de interface voor de parallelle poort op de ISA-bus. device ppbus # Parallelle poortbus (verplicht) Biedt ondersteuning voor de parallelle poortbus. device lpt # Printer Ondersteuning voor parallelle poort-printers. Alle van de bovenstaande drie zijn noodzakelijk om ondersteuning voor parallelle printers aan te zetten. device plip # TCP/IP over parallel Dit is het stuurprogramma voor de parallelle netwerkinterface. device ppi # Parallelle poort interface apparaat De algemene I/O (geek-poort) + IEEE1284 I/O. #device vpo # scbus en da verplicht zipdrive Dit is voor een Iomega Zipdrive. Hiervoor is ondersteuning voor scbus en da nodig. De beste prestaties worden gehaald met poorten in EPP 1.9-modus. #device puc Dit dient uitgecommentarieerd te worden indien er een domme seriële of parallelle PCI-kaart aanwezig is die ondersteund wordt door het &man.puc.4; verbindingsstuurprogramma. # PCI Ethernet NIC's. device de # DEC/Intel DC21x4x (Tulip) device em # Intel PRO/1000 adapter Gigabit Ethernet Card device ixgb # Intel PRO/10GbE Ethernet Card device txp # 3Com 3cR990 (Typhoon) device vx # 3Com 3c590, 3c595 (Vortex) Verscheidene PCI-netwerkkaartstuurprogramma's. Degenen die niet in het systeem aanwezig zijn kunnen uitgecommentarieerd of verwijderd worden. # PCI Ethernet NIC's die de MII bus controller code gebruiken. # NB: 'device miibus' moet behouden blijven om deze NIC's te kunnen gebruiken! device miibus # MII bus ondersteuning Ondersteuning voor MII-bus is noodzakelijk voor sommige PCI 10/100 Ethernet-NICs, namelijk voor diegenen die MII-geldige transceivers gebruiken of interfaces voor transceiverbesturing implementeren die als een MII werken. Door device miibus aan de kernelinstellingen toe te voegen wordt de ondersteuning voor de generieke miibus-API en voor alle PHY-stuurprogramma's opgenomen, waaronder een generieke voor PHYs die niet specifiek door een individueel stuurprogramma worden behandeld. device bfe # Broadcom BCM440x 10/100 Ethernet device bge # Broadcom BCM570xx Gigabit Ethernet device dc # DEC/Intel 21143 en verschillende gelijkwerkenden device fxp # Intel EtherExpress PRO/100B (82557, 82558) device lge # Level 1 LXT1001 gigabit ethernet device nge # NatSemi DP83820 gigabit ethernet device pcn # AMD Am79C97x PCI 10/100 (voorrang boven 'lnc') device re # RealTek 8139C+/8169/8169S/8110S device rl # RealTek 8129/8139 device sf # Adaptec AIC-6915 (Starfire) device sis # Silicon Integrated Systems SiS 900/SiS 7016 device sk # SysKonnect SK-984x & SK-982x gigabit Ethernet device ste # Sundance ST201 (D-Link DFE-550TX) device ti # Alteon Networks Tigon I/II gigabit Ethernet device tl # Texas Instruments ThunderLAN device tx # SMC EtherPower II (83c170 EPIC) device ge # VIA VT612x gigabit ethernet device vr # VIA Rhine, Rhine II device wb # Winbond W89C840F device xl # 3Com 3c90x (Boomerang, Cyclone) Stuurprogramma's die gebruik maken van de MII bus-controllercode. # ISA Ethernet NIC's. Inclusief pccard NIC's. device cs # Crystal Semiconductor CS89x0 NIC # 'device ed' heeft 'device miibus' nodig device ed # NE[12]000, SMC Ultra, 3c503, DS8390 kaarten device ex # Intel EtherExpress Pro/10 en Pro/10+ device ep # Etherlink III-gebaseerde kaarten device fe # Fujitsu MB8696x-gebaseerde kaarten device ie # EtherExpress 8/16, 3C507, StarLAN 10, etc. device lnc # NE2100, NE32-VL Lance Ethernet kaarten device sn # SMC's 9000 serie Ethernet chips device xe # Xircom pccard Ethernet # ISA apparaten die de oude ISA shims gebruiken #device le ISA Ethernetstuurprogramma's. In /usr/src/sys/i386/conf/NOTES staan details over welke kaarten door welk stuurprogramma ondersteund worden. # Draadloze NIC kaarten device wlan # 802.11 ondersteuning device an # Aironet 4500/4800 802.11 draadloze NIC's. device awi # BayStack 660 en anderen device wi # WaveLAN/Intersil/Symbol 802.11 draadloze NIC's. #device wl # Oudere niet-802.11 Wavelan draadloze NIC. Ondersteuning voor verscheidene draadloze kaarten. + # Pseudo devices +device loop # Netwerk loopback + + Dit is het generieke loopbackapparaat voor TCP/IP. Als + telnet of FTP op localhost (ook bekend als + 127.0.0.1) gebruikt wordt, loopt + dat via dit apparaat. Dit is verplicht. Op + &os; 4.X moet de volgende regel gebruikt worden: + + # Gebruiken in &os; 4.X +pseudo-device loop + device mem # Geheugen- en kernelgeheugenapparaten De geheugenapparaten van het systeem. device io # I/O apparaat Deze optie stelt een proces in staat om I/O-privileges te verkrijgen. Dit is nuttig als er gebruikerprogramma's worden geschreven die direct met hardware werken. Dit is nodig om het X Window systeem te draaien. device random # Entropy apparaat Cryptografisch veilige willekeurige getallengenerator. device ether # Ethernet ondersteuning ether is allen noodzakelijk als er een Ethernetkaart aanwezig is. Het bevat code voor het generieke Ethernet protocol. Op &os; 4.X dient pseudo-device ether gebruikt te worden. device sl # Kernel SLIP sl dient voor SLIP-ondersteuning. Dit is bijna geheel overgenomen door PPP, wat eenvoudiger is op te zetten, beter geschikt is voor modem-naar-modem-verbindingen en krachtiger is. Met &os; 4.X dient pseudo-device sl gebruikt te worden. device ppp # Kernel PPP Dit dient voor PPP-ondersteuning van inbelverbindingen door de kernel. Er is ook een versie van PPP als gebruikersapplicatie geïmplementeerd die tun gebruikt en meer flexibiliteit en mogelijkheden biedt zoals demand-bellen. Met &os; 4.X dient pseudo-device ppp gebruikt te worden. device tun # Packet tunnel. Dit wordt gebruikt door de gebruikers-PPP-software. In PPP staat meer informatie. Met &os; 4.X dient pseudo-device tun gebruikt te worden. device pty # Pseudo-ttys (telnet, etc.) Dit is een pseudo-terminal of gesimuleerde aanmeldpoort. Die wordt gebruikt door binnenkomende sessies van telnet en rlogin, door xterm en voor sommige andere applicaties zoals Emacs. Met &os; 4.X dient pseudo-device ptynummer gebruikt te worden. Het nummer na pty geeft het aantal pty's aan dat aangemaakt dient te worden. Als er meer dan het standaard aantal van zestien gelijktijdige xterm schermen en/of remote aanmeldingen nodig zijn, dient dit nummer overeenkomstig verhoogd te worden, tot maximaal 256. device md # Geheugenschijven Pseudo-apparaten die een schijf in het geheugen implementeren. Met &os; 4.X dient pseudo-device md gebruikt te worden. device gif # IPv6 en IPv4 tunnelen Dit implementeert IPv6-over-IPv4-tunneling, IPv4-over-IPv6-tunneling, IPv4-over-IPv4-tunneling en IPv6-over-IPv6-tunneling. Met ingang van &os; 4.4 is het apparaat gif zelfklonend en dient de regel pseudo-device gif gebruikt te worden. Eerdere versies van &os; 4.X vereisen een getal, bijvoorbeeld pseudo-device gif 4. device faith # IPv6-naar-IPv4-relay (vertaling) Dit pseudo-apparaat onderschept pakketten die ernaar verzonden worden en leidt ze om naar het IPv4/IPv6-vertaaldaemon. Met &os; 4.X dient pseudo-device faith 1 gebruikt te worden. # Het `bpf' apparaat schakelt de Berkeley Pakketfilter in. # Wees bewust van de administratieve consequenties die dit heeft! # 'bpf' is nodig bij gebruik van DHCP. device bpf # Berkeley pakketfilter Dit is het Berkeley Pakketfilter. Dit pseudo-apparaat staat netwerkinterfaces toe om in luistermodus gezet te worden, zodat elk pakket op een uitzendnetwerk (bijvoorbeeld een Ethernet) onderschept wordt. Deze pakketten kunnen naar schijf onderschept en/of onderzocht worden met het programma &man.tcpdump.1;. Met &os; 4.X dient pseudo-device bpf gebruikt te worden. Het apparaat &man.bpf.4; wordt ook gebruikt door &man.dhclient.8; om het IP-adres van de standaardrouter (gateway) te verkrijgen, enzovoorts. Als DHCP gebruikt wordt, dient dit ingeschakeld te blijven. # USB support device uhci # UHCI PCI->USB interface device ohci # OHCI PCI->USB interface #device ehci # EHCI PCI->USB interface (USB 2.0) device usb # USB Bus (verplicht) #device udbp # USB Double Bulk Pipe apparaten device ugen # Generic device uhid # Human Interface Devices device ukbd # Toetsenbord device ulpt # Printer device umass # Schijnven/Massaopslag - scbus en da nodig device ums # Muis device urio # Diamond Rio 500 MP3 speler device uscanner # Scanners # USB Ethernet, requires mii device aue # ADMtek USB Ethernet device axe # ASIX Electronics USB Ethernet device cdce # Generic USB over Ethernet device cue # CATC USB Ethernet device kue # Kawasaki LSI USB Ethernet device rue # RealTek RTL8150 USB Ethernet Ondersteuning voor verscheidene USB-apparaten. # FireWire ondersteuning device firewire # FireWire bus code device sbp # SCSI over FireWire (scbus en da nodig) device fwe # Ethernet over FireWire (niet-standaard!) Ondersteuning voor verscheidene Firewire-apparaten. Meer informatie en aanvullende apparaten die door &os; ondersteund worden staan in /usr/src/sys/i386/conf/NOTES. Instellingen bij veel geheugen (<acronym>PAE</acronym>) Physical Address Extensions (PAE) veel geheugen Sommige machines (PAE) hebben meer geheugen nodig dan limiet van 4 gigabyte op User+Kernel Virtual Adress (KVA) ruimte. Vanwege deze limiet voegde Intel ondersteuning toe voor toegang tot 36-bits fysieke adresruimte in de &pentium; Pro en nieuwere lijn van CPU's. De Physical Address Extension (PAE) mogelijkheden van de &intel; &pentium; Pro en nieuwere CPU's staan geheugenhoeveelheden toe tot 64 gigabyte. &os; biedt ondersteuning voor deze mogelijkheid via de kernelinsteloptie , die beschikbaar is in de 4.X-serie van &os; met ingang van 4.9-RELEASE en in de 5.X-serie van &os; met ingang van 5.1-RELEASE. Vanwege de beperkingen van de geheugenarchitectuur van Intel wordt er geen onderscheid gemaakt tussen geheugen boven of beneden 4 gigabytes. Geheugen dat boven de 4 gigabytes is toegewezen wordt gewoon bij het beschikbare gevoegd. Om ondersteuning voor PAE in de kernel aan te zetten, dient de volgende regel aan het kernelinstellingenbestand te worden toegevoegd: options PAE De ondersteuning voor PAE in &os; is alleen beschikbaar voor &intel; IA-32-processoren. Ook dient opgemerkt te worden dat ondersteuning voor PAE nog niet wijdverbreid getest is en als betakwaliteit beschouwd dient te worden vergeleken met andere stabiele kenmerken van &os;. Ondersteuning voor PAE in &os; heeft enige beperkingen: Een proces kan niet meer dan 4 gigabyte VM-ruimte krijgen; KLD-modules kunnen niet in een kernel worden geladen die PAE aan heeft staan, vanwege de verschillen in het bouwraamwerk van een module en de kernel; Apparaatstuurprogramma's die geen gebruik maken van de &man.bus.dma.9;-interface zullen gegevenscorruptie veroorzaken in een kernel die PAE aan heeft staan en hun gebruik wordt afgeraden. Om deze reden wordt er een kernelinstellingenbestand voor PAE geleverd met &os; 5.X, die alle stuurprogramma's uitsluit waarvan bekend is dat ze niet werken in een kernel die PAE aan heeft staan; Sommige systeeminstellingen bepalen het geheugenbronverbruik aan de hand van de hoeveelheid beschikbaar fysiek geheugen. Zulke instellingen kunnen onnodig veel toewijzen vanwege de grote hoeveelheid geheugen in een PAE systeem. Een voorbeeld hiervan is de sysctl , die het maximum aantal vnodes dat in de kernel aanwezig mag zijn beheert. Het is aan te raden om deze en andere van dit soort instellingen aan te passen aan een redelijke waarde; Het kan nodig zijn om de virtuele kerneladresruimte (KVA) te vergroten of om het aantal kernelbronnen dat veel gebruikt wordt (zie boven) te verminderen om zo uitputting van KVA te voorkomen. De kerneloptie kan gebruikt worden om de KVA-ruimte te vergroten. Om prestatie- en stabiliteitsredenen is het aan te raden om &man.tuning.7; te raadplegen. &man.pae.4; bevat bijgewerkte informatie over de ondersteuning voor PAE in &os;. Apparaatnodes maken apparaatnodes MAKEDEV Als &os; 5.0 of hoger gedraaid wordt, kan deze sectie veilig worden overgeslagen. Deze versies gebruiken &man.devfs.5; om transparant apparaatnodes voor de gebruiker toe te wijzen. Bijna elk apparaat in de kernel heeft een overeenkomstige node-ingang in de map /dev. Deze nodes zien eruit als reguliere bestanden, maar zijn eigenlijk speciale ingangen in de kernel die door programma's gebruikt worden om toegang tot het apparaat te verkrijgen. Het shellscript /dev/MAKEDEV, dat wordt uitgevoerd als het besturingssysteem voor het eerst wordt geïnstalleerd, maakt bijna alle ondersteunde apparaatnodes aan. Het maakt echter niet alle nodes aan, dus als ondersteuning voor een apparaat wordt toegevoegd, loont het om te controleren of de geschikte ingangen in de map aanwezig zijn en deze toe te voegen als ze ontbreken. Hier volgt een eenvoudig voorbeeld: Stel dat ondersteuning voor de IDE cd-rom aan de kernel wordt toegevoegd: device ad0 Dit betekent dat de map /dev moet worden onderzocht op ingangen die met acd0 beginnen, mogelijk gevolgd door een letter zoals c of voorafgegaan door de letter r, wat duidt op een raw apparaat. Die bestanden zijn daar niet, dus moet in de map /dev het volgende ingegeven worden: MAKEDEV &prompt.root; sh MAKEDEV acd0 Als dit script geëindigd is, zijn de ingangen acd0c en racd0c in de map /dev aanwezig, wat duidt op een juiste uitvoer. Voor geluidskaarten maakt het volgende commando de juiste ingangen aan: &prompt.root; sh MAKEDEV snd0 Als apparaatnodes voor apparaten als geluidskaarten worden aangemaakt en andere mensen toegang tot de machine hebben, kan het wenselijk zijn om de apparaten tegen toegang van buitenaf te beschermen door deze aan /etc/fbtab toe te voegen. In &man.fbtab.5; staat meer informatie. Deze eenvoudige procedure dient gevolgd te worden voor elk ander apparaat dat niet in GENERIC staat en geen ingangen heeft in /dev. Alle SCSI-controllers gebruiken dezelfde verzameling ingangen in /dev, dus is het niet nodig om deze aan te maken. Ook hebben netwerkkaarten en SLIP/PPP pseudo-apparaten geen ingang in /dev, dus is het niet nodig om hierover bezorgd te zijn. Problemen oplossen Er zijn vijf categoriën problemen die op kunnen treden tijdens het bouwen van een aangepaste kernel: config faalt Als het commando &man.config.8; faalt bij het verwerken van de kernelbeschrijving, is er waarschijnlijk ergens een eenvoudige fout gemaakt. Gelukkig geeft &man.config.8; het nummer van de regel weer waarmee het problemen had, dus kan snel de regel gevonden worden waarin de fout zit. In het onderstaande voorbeeld dient gecontroleerd te worden of het sleutelwoord juist is ingevoerd door het met de kernel GENERIC of een andere referentie te vergelijken: config: line 17: syntax error make faalt Als make faalt, duidt dit meestal op een fout in de kernelbeschrijving die niet erg genoeg is om door &man.config.8; opgemerkt te worden. De instellingen dienen nogmaals nagekeken te worden. Als het probleem nog steeds niet is op te lossen, stuur dan een mail naar de &a.questions; met de kernelinstellingen. Dat leidt meestal snel tot een diagnose. Het installeren van de nieuwe kernel mislukt Als het compileren van de kernel goed ging, maar het installeren mislukte (make install of make installkernel faalde), dient als eerste gecontroleerd te worden of het systeem op beveiligingsniveau (securelevel) 1 of hoger draait (zie &man.init.8;). De kernelinstallatie probeert namelijk om de vlag immutable van de oude kernel te verwijderen en de vlag immutable op de nieuwe kernel te zetten. Aangezien beveiligingsniveau 1 of hoger verhindert om de vlag immutable te verwijderen van enig bestand op het systeem, dient de kernelinstallatie op beveiligingsniveau 0 of lager uitgevoerd te worden. Bovenstaande geldt alleen voor &os; 4.X en eerdere versies. &os; 5.X en hogere versies zetten de vlag immutable niet op de kernel en een mislukte poging om de kernel de kernel te installeren duidt meestal op een fundamenteler probleem. De kernel start niet op Als de nieuwe kernel niet opstart of de apparaten niet herkent is kalmte geboden. &os; heeft een uitstekend mechanisme om van niet-compatibele kernels te herstellen. De gewenste kernel om mee op te starten kan vanuit de &os; boot loader gekozen worden. Als het systeem terugtelt vanaf 10, kan deze vanuit het opstartmenu gekozen worden. Sla een willekeurige toets, behalve de Enter toets, aan, voer unload in en daarna boot /boot/kernel.old/kernel of de bestandsnaam van enige andere kernel die correct opstart. Als de kernelinstellingen gewijzigd worden, is het altijd aan te raden om een kernel bij de hand te houden waarvan bekend is dat die juist werkt. Nadat er met een goede kernel is opgestart, kan het instellingenbestand gecontroleerd worden en geprobeerd worden om de kernel nogmaals te bouwen. Een behulpzame bron is het bestand /var/log/messages, dat onder andere alle kernelberichten van alle keren dat er succesvol is opgestart vastlegt. Ook geeft &man.dmesg.8; alle kernelberichten weer van de huidige opstartprocedure. Als er problemen zijn met het bouwen van een kernel, dient een GENERIC, of een andere kernel waarvan bekend is dat die werkt, bewaard te worden onder een andere naam die niet verwijderd wordt als de volgende kernel gebouwd wordt. Er kan niet op kernel.old vertrouwd worden omdat bij de installatie van een nieuwe kernel kernel.old overschreven wordt met de laatst geïnstaleerde kernel, die niet hoeft te werken. Ook dient de werkende kernel zo snel mogelijk naar de juiste plaats /boot/kernel verplaatst te worden, omdat anders commando's als &man.ps.1; eventueel onjuist werken. Hiervoor dient simpelweg de map met de goede kernel hernoemd te worden: &prompt.root; mv /boot/kernel /boot/kernel.slecht &prompt.root; mv /boot/kernel.goed /boot/kernel Voor versies van &os; eerder dan 5.X luidt het juiste commando om het kernelbestand dat make installeert te ontgrendelen (om een andere kernel definitief terug te zetten): &prompt.root; chflags noschg /kernel Als dit niet mogelijk is, wordt er waarschijnlijk op een beveiligingsniveau groter dan nul gedraaid. Wijzig kern_securelevel in /etc/rc.conf naar –1 en start het systeem opnieuw. Deze instelling kan op het vorige niveau worden teruggezet als de nieuwe kernel naar behoren werkt. Als het wenselijk is om de nieuwe kernel vast te zetten op zijn plaats, of enig ander bestand, zodat het niet verplaatst of verknoeid kan worden: &prompt.root; chflags schg /kernel De kernel werkt, maar &man.ps.1; werkt niet meer Als er een andere versie van de kernel is geïnstalleerd dan degene waarmee de systeemgereedschappen gebouwd zijn, bijvoorbeeld een kernel voor 5.X op een 4.X-systeem, werken vele systeemstatuscommando's als &man.ps.1; en &man.vmstat.8; niet langer. De wereld moet opnieuw gecompileerd en geïnstalleerd worden en met dezelfde broncodestructuur als de kernel zijn gebouwd. Dit is een van de redenen waarom het normaliter geen goed idee is om een afwijkende versie van de kernel ten opzichte van de rest van de wereld te gebruiken. diff --git a/nl_NL.ISO8859-1/books/handbook/pgpkeys/chapter.sgml b/nl_NL.ISO8859-1/books/handbook/pgpkeys/chapter.sgml index 1dcfcdf484..4f41434bb6 100644 --- a/nl_NL.ISO8859-1/books/handbook/pgpkeys/chapter.sgml +++ b/nl_NL.ISO8859-1/books/handbook/pgpkeys/chapter.sgml @@ -1,1001 +1,1006 @@ PGP sleutels pgp sleutels In het geval een handtekening van een van de beambten of ontwikkelaars gecontroleerd moet worden of er een versleutelde e-mail aan ze gezonden moet worden, worden hier voor het gemak een aantal sleutels weergegeven. Een complete sleutelring van FreeBSD.org gebruikers kan op de volgende link gedownload worden: http://www.FreeBSD.org/doc/pgpkeyring.txt. Beambten &a.security-officer; &pgpkey.security-officer; &a.core-secretary; &pgpkey.core-secretary; Leden Kernteam &a.jhb; &pgpkey.jhb; &a.kuriyama; &pgpkey.kuriyama; &a.scottl; &pgpkey.scottl; &a.imp; &pgpkey.imp; &a.wes; &pgpkey.wes; &a.murray; &pgpkey.murray; &a.peter; &pgpkey.peter; Ontwikkelaars &a.will; &pgpkey.will; &a.anholt; &pgpkey.anholt; &a.mat; &pgpkey.mat; &a.asami; &pgpkey.asami; &a.barner; &pgpkey.barner; &a.dougb; &pgpkey.dougb; &a.tobez; &pgpkey.tobez; &a.damien; &pgpkey.damien; &a.mbr; &pgpkey.mbr; &a.novel; &pgpkey.novel; &a.harti; &pgpkey.harti; &a.obraun; &pgpkey.obraun; &a.jmb; &pgpkey.jmb; &a.brueffer; &pgpkey.brueffer; &a.markus; &pgpkey.markus; &a.wilko; &pgpkey.wilko; &a.jcamou; &pgpkey.jcamou; &a.perky; &pgpkey.perky; &a.jon; &pgpkey.jon; &a.luoqi; &pgpkey.luoqi; &a.ache; &pgpkey.ache; &a.seanc; &pgpkey.seanc; &a.cjh; &pgpkey.cjh; &a.cjc; &pgpkey.cjc; &a.marcus; &pgpkey.marcus; &a.nik; &pgpkey.nik; &a.ceri; &pgpkey.ceri; &a.brd; &pgpkey.brd; &a.brooks; &pgpkey.brooks; &a.gnn; &pgpkey.gnn; &a.pjd; &pgpkey.pjd; &a.bsd; &pgpkey.bsd; &a.danfe; &pgpkey.danfe; &a.dd; &pgpkey.dd; &a.bruno; &pgpkey.bruno; &a.ale; &pgpkey.ale; &a.peadar; &pgpkey.peadar; &a.josef; &pgpkey.josef; &a.ue; &pgpkey.ue; &a.ru; &pgpkey.ru; &a.le; &pgpkey.le; &a.stefanf; &pgpkey.stefanf; &a.jedgar; &pgpkey.jedgar; &a.green; &pgpkey.green; &a.lioux; &pgpkey.lioux; &a.fanf; &pgpkey.fanf; &a.blackend; &pgpkey.blackend; &a.petef; &pgpkey.petef; &a.billf; &pgpkey.billf; &a.patrick; &pgpkey.patrick; &a.gioria; &pgpkey.gioria; &a.jmg; &pgpkey.jmg; &a.dannyboy; &pgpkey.dannyboy; &a.dhartmei; &pgpkey.dhartmei; &a.jhay; &pgpkey.jhay; &a.sheldonh; &pgpkey.sheldonh; &a.mikeh; &pgpkey.mikeh; &a.mheinen; &pgpkey.mheinen; &a.niels; &pgpkey.niels; &a.ghelmer; &pgpkey.ghelmer; &a.mux; &pgpkey.mux; &a.mich; &pgpkey.mich; &a.foxfair; &pgpkey.foxfair; &a.jkh; &pgpkey.jkh; &a.ahze; &pgpkey.ahze; &a.trevor; &pgpkey.trevor; &a.phk; &pgpkey.phk; &a.joe; &pgpkey.joe; &a.vkashyap; &pgpkey.vkashyap; &a.kris; &pgpkey.kris; &a.keramida; &pgpkey.keramida; &a.fjoe; &pgpkey.fjoe; &a.jkim; &pgpkey.jkim; &a.andreas; &pgpkey.andreas; &a.jkois; &pgpkey.jkois; &a.sergei; &pgpkey.sergei; &a.maxim; &pgpkey.maxim; &a.jkoshy; &pgpkey.jkoshy; &a.rik; &pgpkey.rik; &a.rushani; &pgpkey.rushani; &a.clement; &pgpkey.clement; &a.mlaier; &pgpkey.mlaier; &a.alex; &pgpkey.alex; &a.erwin; &pgpkey.erwin; &a.lawrance; &pgpkey.lawrance; &a.leeym; &pgpkey.leeym; &a.sam; &pgpkey.sam; &a.jylefort; &pgpkey.jylefort; &a.netchild; &pgpkey.netchild; &a.lesi; &pgpkey.lesi; &a.glewis; &pgpkey.glewis; &a.delphij; &pgpkey.delphij; &a.avatar; &pgpkey.avatar; &a.ijliao; &pgpkey.ijliao; &a.clive; &pgpkey.clive; &a.clsung; &pgpkey.clsung; &a.arved; &pgpkey.arved; &a.remko; &pgpkey.remko; &a.pav; &pgpkey.pav; &a.bmah; &pgpkey.bmah; &a.mtm; &pgpkey.mtm; &a.dwmalone; &pgpkey.dwmalone; &a.kwm; &pgpkey.kwm; &a.matusita; &pgpkey.matusita; &a.ken; &pgpkey.ken; &a.dinoex; &pgpkey.dinoex; &a.sanpei; &pgpkey.sanpei; &a.jim; &pgpkey.jim; &a.marcel; &pgpkey.marcel; &a.marck; &pgpkey.marck; &a.tmm; &pgpkey.tmm; &a.rich; &pgpkey.rich; &a.knu; &pgpkey.knu; &a.max; &pgpkey.max; &a.yoichi; &pgpkey.yoichi; &a.bland; &pgpkey.bland; &a.simon; &pgpkey.simon; &a.anders; &pgpkey.anders; &a.obrien; &pgpkey.obrien; &a.philip; &pgpkey.philip; &a.hmp; &pgpkey.hmp; &a.mp; &pgpkey.mp; &a.roam; &pgpkey.roam; &a.den; &pgpkey.den; &a.pirzyk; &pgpkey.pirzyk; &a.jdp; &pgpkey.jdp; &a.krion; &pgpkey.krion; &a.markp; &pgpkey.markp; &a.thomas; &pgpkey.thomas; &a.hq; &pgpkey.hq; &a.dfr; &pgpkey.dfr; &a.trhodes; &pgpkey.trhodes; &a.benno; &pgpkey.benno; &a.paul; &pgpkey.paul; &a.roberto; &pgpkey.roberto; &a.rodrigc; &pgpkey.rodrigc; &a.guido; &pgpkey.guido; &a.niklas; &pgpkey.niklas; &a.marks; &pgpkey.marks; &a.hrs; &pgpkey.hrs; &a.wosch; &pgpkey.wosch; &a.das; &pgpkey.das; &a.schweikh; &pgpkey.schweikh; &a.gshapiro; &pgpkey.gshapiro; &a.arun; &pgpkey.arun; &a.nork; &pgpkey.nork; &a.vanilla; &pgpkey.vanilla; &a.cshumway; &pgpkey.cshumway; &a.demon; &pgpkey.demon; &a.jesper; &pgpkey.jesper; &a.scop; &pgpkey.scop; &a.glebius; &pgpkey.glebius; &a.kensmith; &pgpkey.kensmith; &a.ben; &pgpkey.ben; &a.des; &pgpkey.des; &a.sobomax; &pgpkey.sobomax; &a.dcs; &pgpkey.dcs; &a.brian; &pgpkey.brian; &a.nsouch; &pgpkey.nsouch; &a.ssouhlal; &pgpkey.ssouhlal; &a.vsevolod; &pgpkey.vsevolod; &a.vs; &pgpkey.vs; &a.gsutter; &pgpkey.gsutter; &a.metal; &pgpkey.metal; + + &a.garys; + &pgpkey.garys; + + &a.nyan; &pgpkey.nyan; &a.mi; &pgpkey.mi; &a.gordon; &pgpkey.gordon; &a.lth; &pgpkey.lth; &a.thierry; &pgpkey.thierry; &a.thompsa; &pgpkey.thompsa; &a.flz; &pgpkey.flz; &a.viny; &pgpkey.viny; &a.ume; &pgpkey.ume; &a.ups; &pgpkey.ups; &a.nectar; &pgpkey.nectar; &a.adamw; &pgpkey.adamw; &a.nate; &pgpkey.nate; &a.wollman; &pgpkey.wollman; &a.joerg; &pgpkey.joerg; &a.bz; &pgpkey.bz; &a.phantom; &pgpkey.phantom; diff --git a/nl_NL.ISO8859-1/share/sgml/mailing-lists.ent b/nl_NL.ISO8859-1/share/sgml/mailing-lists.ent index 308df954e7..8ce4c3b39c 100644 --- a/nl_NL.ISO8859-1/share/sgml/mailing-lists.ent +++ b/nl_NL.ISO8859-1/share/sgml/mailing-lists.ent @@ -1,421 +1,426 @@ FreeBSD lijstserver"> &a.mailman.listinfo;"> FreeBSD ACPI mailinglijst"> freebsd-acpi"> FreeBSD steun mailinglijst"> freebsd-advocacy"> FreeBSD AFS porting mailinglijst"> freebsd-afs"> FreeBSD Adaptec AIC7xxx discussies mailinglijst"> freebsd-aic7xxx"> FreeBSD Alpha porting mailinglijst"> freebsd-alpha"> FreeBSD porten naar AMD64 systemen"> freebsd-amd64"> FreeBSD aankondigingen mailinglijst"> freebsd-announce"> FreeBSD Apache mailinglijst"> freebsd-apache"> FreeBSD architectuur en ontwerp mailinglijst"> freebsd-arch"> FreeBSD ARM porting mailinglijst"> freebsd-arm"> FreeBSD ATM netwerken mailinglijst"> freebsd-atm"> FreeBSD broncode audit mailinglijst"> freebsd-audit"> FreeBSD binair updatesysteem systeem mailinglijst"> freebsd-binup"> FreeBSD Bluetooth mailinglijst"> freebsd-bluetooth"> FreeBSD bugbusters mailinglijst"> freebsd-bugbusters"> FreeBSD problem reports mailinglijst"> freebsd-bugs"> FreeBSD babbel mailinglijst"> freebsd-chat"> FreeBSD clustering mailinglijst"> freebsd-cluster"> &os.current; mailinglijst"> freebsd-current"> CTM aankondigingen"> ctm-announce"> CTM distributie van CVS bestanden"> ctm-cvs-cur"> CTM 4-STABLE src tak distributie mailinglijst"> ctm-src-4"> CTM -CURRENT src tak distributie mailinglijst"> ctm-src-cur"> CTM gebruikersdiscussie mailinglijst"> ctm-users"> FreeBSD CVS commitberichten mailinglijst"> cvs-all"> FreeBSD CVS doc commitlijst"> cvs-doc"> FreeBSD CVS ports commitlijst"> cvs-ports"> FreeBSD CVS projecten commitlijst"> cvs-projects"> FreeBSD CVS src commitlijst"> cvs-src"> FreeBSD CVSweb beheer mailinglijst"> freebsd-cvsweb"> FreeBSD gebaseerde Databases mailinglijst"> freebsd-database"> FreeBSD documentatieproject mailinglijst"> freebsd-doc"> Apparaatstuurprogramma's schrijven voor FreeBSD"> freebsd-drivers"> + +FreeBSD gebruikers van Eclipse EDI, hulpprogramma's, clientapplicaties en ports"> +freebsd-eclipse"> + FreeBSD-emulatie mailinglijst"> freebsd-emulatie"> FreeBSD FireWire (IEEE 1394) discussion mailinglijst"> freebsd-firewire"> FreeBSD bestandssysteem project mailinglijst"> freebsd-fs"> FreeBSD GEOM mailinglijst"> freebsd-geom"> FreeBSD GNOME and GNOME applications mailinglijst"> freebsd-gnome"> FreeBSD technische discussie mailinglijst"> freebsd-hackers"> FreeBSD hardware and apparatuur mailinglijst"> freebsd-hardware"> FreeBSD mirror sites mailinglijsts"> freebsd-hubs"> FreeBSD internationalisatie mailinglijst"> freebsd-i18n"> FreeBSD i386-specifieke onderwerpen mailinglijst"> freebsd-i386"> FreeBSD IA32 porting mailinglijst"> freebsd-ia32"> FreeBSD IA64 porting mailinglijst"> freebsd-ia64"> FreeBSD IPFW code mailinglijst"> freebsd-ipfw"> FreeBSD ISDN mailinglijst"> freebsd-isdn"> FreeBSD Internet service provider mailinglijst"> freebsd-isp"> FreeBSD Java Language mailinglijst"> freebsd-java"> FreeBSD gerelateerd werk mailinglijst"> freebsd-jobs"> FreeBSD KDE/Qt en KDE applicaties mailinglijst"> freebsd-kde"> FreeBSD LFS porting mailinglijst"> freebsd-lfs"> FreeBSD libh installatie and packagingsysteem mailinglijst"> freebsd-libh"> FreeBSD MIPS porting mailinglijst"> freebsd-mips"> FreeBSD mirrorsite beheerders"> mirror-announce"> FreeBSD laptop computer mailinglijst"> freebsd-mobile"> FreeBSD port van de Mozilla browser mailinglijst"> freebsd-mozilla"> FreeBSD multimedia mailinglijst"> freebsd-multimedia"> FreeBSD netwerken mailinglijst"> freebsd-net"> FreeBSD nieuwe gebruikers mailinglijst"> freebsd-newbies"> FreeBSD new-bus mailinglijst"> freebsd-new-bus"> FreeBSD OpenOffice mailinglijst"> freebsd-openoffice"> FreeBSD prestaties mailinglijst"> freebsd-performance"> FreeBSD Perl mailinglijst"> freebsd-perl"> FreeBSD pakketfilter mailinglijst"> freebsd-pf"> FreeBSD niet-Intel platformen porting mailinglijst"> freebsd-platforms"> FreeBSD core team beleidsbeslissingen mailinglijst"> freebsd-policy"> FreeBSD ports mailinglijst"> freebsd-ports"> FreeBSD ports bugs mailinglijst"> freebsd-ports-bugs"> FreeBSD PowerPC porting mailinglijst"> freebsd-ppc"> Technische discussie over FreeBSD op HP ProLiant serverplatforms"> freebsd-proliant"> FreeBSD Python mailinglijst"> freebsd-python"> FreeBSD Quality Assurance mailinglijst"> freebsd-qa"> FreeBSD algemene vragen mailinglijst"> freebsd-questions"> FreeBSD boot script system mailing list"> freebsd-rc"> FreeBSD realtime extensions mailinglijst"> freebsd-realtime"> FreeBSD SCSI subsysteem mailinglijst"> freebsd-scsi"> FreeBSD beveiliging mailinglijst"> freebsd-security"> FreeBSD beveiligingswaarschuwingen mailinglijst"> freebsd-security-notifications"> FreeBSD-small mailinglijst"> freebsd-small"> FreeBSD symmetric multiprocessing mailinglijst"> freebsd-smp"> FreeBSD SPARC porting mailinglijst"> freebsd-sparc64"> &os.stable; mailinglijst"> freebsd-stable"> FreeBSD C99 en POSIX compliance mailinglijst"> freebsd-standards"> FreeBSD test mailinglijst"> freebsd-test"> FreeBSD prestaties en stabiliteit test mailinglijst"> freebsd-testing"> FreeBSD threads mailinglijst"> freebsd-threads"> FreeBSD tokenring mailinglijst"> freebsd-tokenring"> FreeBSD USB mailinglijst"> freebsd-usb"> FreeBSD gebruikersgroep coördinatie mailinglijst"> freebsd-user-groups"> FreeBSD wederverkopers pre-release coördinatie mailinglijst"> freebsd-vendors"> Discussis over de VuXML infrastructuur"> freebsd-vuxml"> FreeBSD Webmaster mailinglijst"> freebsd-www"> FreeBSD X11 mailinglijst"> freebsd-x11"> bug-followup@FreeBSD.org"> majordomo@FreeBSD.org">