Inhoudsopgave
/etc/rc.conf
Na de installatie start de computer van de harde schijf: als alles goed is gegaan ziet u de login prompt binnen een paar seconden (of minuten, afhankelijk van uw hardware). Het systeem is nog niet geconfigureerd, maar maakt u zich geen zorgen: configuratie is erg gemakkelijk. Deze benadering is niet oncomfortabel want het geeft u veel meer flexibiliteit. U zult zien hoe u alles kunt configureren en tegelijkertijd zult u leren hoe het systeem werkt. Als u later eens problemen heeft weet u waar u moet zoeken.
Als het systeem niet start kan het zijn dat de boot manager niet goed geïnstalleerd is of dat er een probleem is met de MBR (Master Boot Record). Herstart de machine vanaf de bootfloppy en als de prompt:
booting fd0a:netbsd - starting in ...
ziet, druk dan op spatie gedurende het aftellen; het starten stopt en er wordt een prompt afgebeeld. U kunt hulp krijgen bij de commando's met de "?" toets of met het "help" commando.
type "?" or "help" for help.>
?
commands are: boot [xdNx:][filename] [-adrs] (ex. "sd0a:netbsd.old -s") ls [path] dev xd[N[x]]: help|? quit>
boot wd0a:netbsd
Het systeem zou nu van de hardeschijf moeten starten in plaats van vanaf floppy. Als NetBSD correct start vanaf de hardeschijf is er waarschijnlijk een probleem met de Master Boot Record: u kunt de bootmanager installeren of aanpassen met het fdisk -B commando.
Om voor de eerste keer om in te loggen moet u als de root superuser inloggen, wat de enige gebruiker is na de installatie. Voer als wachtwoord het wachtwoord in dat u tijdens de installatie gegeven heeft. Als u geen wachtwoord opgegeven heeft kunt u hier gewoon op Enter drukken.
NetBSD/i386 (Amnesiac) (ttyE0)
login:
root
password
... We recommend creating a non-root account and using su(1) for root access.#
Het toetsenbord gebruikt nog steeds de US layout; als u een ander toetsenbord heeft is het aan te bevelen nu de layout te veranderen, voordat u begint met het configureren van het systeem. Voer om bijvoorbeeld een Italiaans toetsenbord te gebruiken het volgende uit:
#
wsconsctl -k -w encoding=it
encoding -> it
Een volledige lijst van ondersteunde layouts kan gevonden worden in
/sys/dev/wscons/wsksymdef.h
, maar de meest
voorkomende configuraties zijn:
de
dk
fr
it
jp
sv
uk
us
Deze instelling blijft actief totdat u het systeem herstart.
Voeg het vorige commando toe aan het einde van het
/etc/rc.local
bestand deze instelling
permanent te maken. Dit bestand wordt namelijk automatisch
bij elke start van het systeem uitgevoerd.
#
echo "wsconsctl -k -w encoding=it" >> /etc/rc.local
let op dat u twee ">" karakters tikt. Als u slechts één ">", tikt wordt het bestand overschreven en niet alleen een regel toegevoegd.
Er is ook een betere manier voor het instellen van het toetsenbord: u kunt ook een nieuwe kernel compileren die de door u geprefereerde layout standaard gebruikt.
Als u al eerder een Unix(-achtig) besturingssysteem gebruikt heeft weet u dat het man commando nu uw beste vriend is. Het commando toont handleidingen: de NetBSD handleidingen zijn zeer goed, maar ook vrij technisch.
man naam toont de handleiding (manual page) van het "naam" commando en man -k naam toont een lijst van handleidingen die over "naam" gaan (u kunt ook het apropos commando gebruiken).
Om te leren hoe het man commando werkt, tik:
#
man man
De handleidingen zijn ingedeeld in negen secties, ze bevatten niet alleen informatie over commando's, maar ook beschrijvingen van een aantal mogelijkheden en structuren van NetBSD. Kijk bijvoorbeeld eens naar de hier(7) man page die in detail de layout van het NetBSD bestandssysteem beschrijft.
#
man hier
Andere vergelijkbare pagina's zijn release(7) en packages(7). Elke sectie heeft een intro man page die de inhoud van die sectie beschrijft. Probeer bijvoorbeeld:
#
man 8 intro
Voorbeeld 5.1. Secties:
algemene commando's (tools en utilities)
systeemaanroepen en foutnummers
C bibliotheken
speciale bestanden en hardware-ondersteuning
bestandsformaten
spellen
verscheidene informatiepagina's
commando's voor systeembeheer en andere operaties
kernel informatie
Een onderwerp kan in meer dan één sectie voorkomen; geef het nummer van de sectie mee om een specifieke pagina te bekijken. Bijvoorbeeld, time komt voor in sectie 1 (het time commando), in sectie 3 (de time functie van de C bibliotheek) en in sectie 9 (de time systeemvariabele). Om de man page van de time C functie te bekijken voert u uit:
#
man 3 time
Om alle beschikbare pagina's te zien:
#
man -a time
Als u geen wachtwoord voor root ingesteld heeft tijdens de installatie (wat niet mogelijk was op pre 1.5 systemen) is het nu tijd dat te doen met het passwd commando.
#
passwd
Changing local password for root. New password: Retype new password:
Wachtwoorden worden niet op het scherm getoond als u ze typt. Later zullen we zien hoe er andere accounts aan het systeem toegevoegd kunnen worden.
De standaard shell voor root is csh; als
dit u niks zegt kunt u het beste eerst csh gaan bestuderen
met man csh: het is een goede interactieve
shell, maar er ontbreken mogelijkheden de historie te bewerken
(kijk eens naar tcsh, bash of zelfs de
NetBSD /bin/sh
voor deze mogelijkheid).
Als u uw shell wilt veranderen kan die met het chsh
commando. De volgende shells zijn beschikbaar na de NetBSD
installatie:
csh
sh
ksh
De nieuwe shell wordt de volgende keer dat u inlogt actief. In de tussentijd kunt u het volgende commando uitvoeren:
#
set filec
dit schakelt een speciale optie aan die bestandsnamen kan voltooien (met de ESC toets; gebruik Ctrl+D voor een lijst van mogelijkheden).
U kunt ook andere shells op het systeem installeren als u dat graag wilt; tcsh, bash, zsh en andere shells zijn beschikbaar via de package collectie (die we later zullen bespreken).
Dit is een goed moment de initialisatiebestanden voor de shell aan te maken (.chsrc, .login, ...).
NetBSD gebruikt net als andere UNIX systemen een systeemklok
die gebaseerd is op Greenwich time (UTC) en daar moet u uw
systeemklok op zetten.
Als u uw systeemklok op de lokale tijd wilt zetten (bijvoorbeeld
omdat u een dual boot systeem heeft met Windows), moet u de
NetBSD kernel daarover informeren met behulp van de
rtc_offset
systeemvariabele.
U kunt de kernel configuratie bewerken en de kernel hercompileren
of de huidige kernel rechtstreeks patchen (de nieuwe tijd wordt
pas aktief na het herstarten van uw systeem). Dit is eenvoudiger
dan u denkt. Bijvoorbeeld:
#
gdb --write /netbsd
GNU gdb 4.17 Copyright 1998 Free Software Foundation, Inc. ... This GDB was configured as "i386--netbsd"...(no debugging symbols found)... (gdb)set rtc_offset=-60
(gdb)quit
De waarde die gespecificeerd is (-60) is het aantal minuten ten westen van UTC.
Voer het volgende uit om de huidige instelling van de
rtc_offset
variabele te tonen:
#
sysctl kern.rtc_offset
kern.rtc_offset = -60
Nu de kernel weet hoe uw systeemtijd in UTC tijd omgezet kan
worden moet u nog steeds het systeem configureren voor uw
lokale tijdzone (die u kunt vinden in
/usr/share/zoneinfo
).
Als u dit al tijdens de installatie gedaan heeft kunt u deze
stap overslaan (het is echter verstandig te controleren of
de tijdzone goed ingesteld is). Voor Italië voert u
bijvoorbeeld het volgende uit:
#
rm -f /etc/localtime
#
ln -s /usr/share/zoneinfo/Europe/Rome /etc/localtime
Als alles goed ingesteld is kunt u de tijd veranderen met het volgende commando:
#
date [[[[[cc]yy]mm]dd]hh]mm
NetBSD gebruikt het /etc/rc.conf
bestand
voor het configureren van het systeem tijdens het opstarten:
dit bestand bepaald wat er gestart zal worden als het systeem
start. Dit bestand begrijpen is erg belangrijk.
Vanaf NetBSD versie 1.5 is de configuratie van rc.conf
veranderd.
In voorgaande versies waren alle instellingen opgeslagen in
/etc/rc.conf
en de gebruiker moest
dit bestand rechtstreeks veranderen; versie 1.5 heeft het
/etc/rc.conf
bestand geïntroduceerd,
dat de standaardinstellingen bevat.
Om een standaardinstelling te veranderen wordt de nieuwe
instelling opgegeven in /etc/rc.conf
,
deze instelling overschrijft de instelling in
/etc/defaults/rc.conf
(die onveranderd
blijft).
Dit bestand begrijpen is erg belangrijk. De man page bevat een gedetailleerde beschrijving van alle opties.
#
man rc.conf
De eerste veranderingen die u moet maken zijn:
Stel 'rc_configured=YES' in (deze instelling kan al door het installatieprogramma toegevoegd zijn).
Stel 'wscons=YES' in om virtuele consoles aan te schakelen.
Stel 'lpd=YES' in om de printer spooler daemon te activeren.
Definieer een hostnaam voor uw machine met hostname="hostnaam" (gebruik een volledig gekwalificeerde hostnaam). Als u een machine heeft zonder netwerkconnectie voldoet elke naam (bijvoorbeeld "woody.toys.net"). Als uw machine gekoppeld is met een netwerk moet u de juiste netwerknaam gebruiken.
In plaats van deze benadering kunt u de hostnaam ook
wegschrijven naar /etc/myname
;
het resultaat is hetzelfde.
De instellingen die beschreven worden in deze sectie hoeven niet toegepast te worden op versie 1.5 of hoger, omdat virtuele consoles nu standaard aangeschakeld zijn.
Bewerk het /etc/ttys
bestand en controleer
of ttyE0-ttyE3 op 'on' staan. ttyE4 kan op 'off staan' (voor
het gebruik met X). Bijvoorbeeld:
console "/usr/libexec/getty Pc" pc3 off secure ttyE0 "/usr/libexec/getty Pc" vt220 on secure ttyE1 "/usr/libexec/getty Pc" vt220 on secure ttyE2 "/usr/libexec/getty Pc" vt220 on secure ttyE3 "/usr/libexec/getty Pc" vt220 on secure ttyE4 "/usr/libexec/getty Pc" vt220 off secure
zodra u het /etc/ttys
bestand aangepast heeft
kunt u de virtuele consoles onmiddellijk activeren zonder te herstarten.
Hiervoor dient u uit te voeren:
sh /etc/rc.wscons
kill -1 1
Wanneer de virtuele consoles geactiveerd zijn kunt u tussen consoles schakelen met de Ctrl-Alt-Fn toetsencombinatie (Fn is een functietoets: F1 is console 1, F2 is console 2, enzovoorts).
gebruikt de linker Ctrl en linker Alt toetsen in combinatie met een functietoets.
Dit is een goed moment om soft-dependencies aan te schakelen voor
FFS bestandssystemen. Gewoonlijk mount NetBSD meta-data synchroon, dat
wil zeggen dat meta-data onmiddellijk naar de schijf wordt
weggeschreven. Soft-dependencies is een mechanisme dat er voor zorgt dat
de meta-data niet direct wordt weggeschreven, in plaats daarvan wordt
het op een geordende manier weggeschreven, zodat het bestandssysteem
consistent blijft. Dit biedt prestaties die vergelijkbaar zijn met
asynchrone mounts, zonder dezelfde risico's. Soft-dependencies
kunnen aangezet worden door de softdep
optie
toe te voegen aan de bestandssysteem opties in
/etc/fstab
. Laten we kijken naar een voorbeeld van
/etc/fstab
:
/dev/wd0a / ffs rw 1 1 /dev/wd0b none swap sw 0 0 /dev/wd0e /var ffs rw 1 2 /dev/wd0f /tmp ffs rw 1 2 /dev/wd0g /usr ffs rw 1 2
Stel dat we soft-dependencies voor alle bestandssystemen willen
aanzetten, behalve de /
partities, dan zouden
we het veranderen in (veranderingen zijn cursief weergegeven):
/dev/wd0a / ffs rw 1 1 /dev/wd0b none swap sw 0 0 /dev/wd0e /var ffs rw,softdep 1 2 /dev/wd0f /tmp ffs rw,softdep 1 2 /dev/wd0g /usr ffs rw,softdep 1 2
Dit zijn een aantal verwijzingen naar meer informatie over bestandssystemen en soft-dependencies:
De wikipedia pagina over bestandssystemen: http://en.wikipedia.org/wiki/File_system
The Filesystems HOWTO: http://www.tldp.org/HOWTO/Filesystems-HOWTO.html
Marshall Kirk McKusick's pagina over soft-dependencies: http://www.mckusick.com/softdep/
In deze eerste sessie heeft u
Het toetsenbord geconfigureerd
Het root wachtwoord veranderd
Root's shell gewijzigd (optioneel)
De systeemtijd en de RTC offset veranderd
De lokale tijd gedefinieerd
/etc/rc.conf
geconfigureerd
Virtuele consoles aangeschakeld
Het is nu tijd het systeem te herstarten met het volgende commando:
#
reboot