在安裝完畢之後,電腦將會重新開機:如果沒有問題,你將會在數秒之後 看到登入提示符號(或是數分鐘,依你的硬體而定)。系統還未被設定, 但別擔心:設定將是非常容易的且方便的,還給你許多的彈性。你將會了 解如何快速地設定每樣東西,同時,你也將學習知道系統如何運作,更進 一步,在發生問題時知道要檢查什麼地方。
如果系統沒有開機,這可能是開機管理程式並沒有被正確地安裝或 在 MBR (Master Boot Record) 發生了問題。使用開機片重新開機, 你會看到以下的提示符號:
booting fd0a:netbsd - starting in ...
在 5 秒內按下空白鍵;開機程序將停止並出現另一個提示符號。 藉由 "?" 鍵或是輸入 "help" 命令,可以 得到基本的幫助。
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
系統現在應該使用硬碟開機來取代軟碟。如果 NetBSD 從硬碟正確地開機, 那就是 Master Boot Record 的問題:你可以安裝開機管理程式,或是利用 fdisk -B 指令修改它的設定。 請看 Section 19.4,可以得到詳細的敘述。
你將使用 root 權限做第一次登入,這是 在安裝完成後,唯一設定的使用者。在密碼提示中,輸入先前在 安裝過程中所定義的密碼。如果先前沒有定義,則按 Enter 鍵。
NetBSD/i386 (Amnesiac) (ttyE0)
login: root
password
...
We recommend creating a non-root account and using su(1) for root access.
#
鍵盤仍然是美式的配置;如果你有不同的鍵盤,最好現在改變它的配置, 再開始設定系統。例如,要使用義大利式鍵盤,可利用以下指令:
# wsconsctl -k -w encoding=it
encoding -> it
所有鍵盤對照表的清單在 /sys/dev/wscons/wsksymdef.h 中,但是 一些常用的對照是:
de
dk
fr
it
jp
sv
uk
us
這個設定並不會延續到下一次的開機。你可以將先前的指令寫入 /etc/rc.local:這將使它在下次開機時, 被自動地執行。
# echo "wsconsctl -k -w encoding=it" >> /etc/rc.local
Note: 請留意要鍵入兩個 ">"。如果只鍵入一個 ">" 你將會複寫整個檔案而不是加入一行。
對於鍵盤配置問題較佳的作法是:使用你喜愛的配置作為預設值來 編譯新的核心。這將被描述在 Chapter 7。
如果你之前尚未使用過 Unix(-like) 作業系統,那麼你現在最好的 朋友便是 man 指令,這會向你展示線上手冊: NetBSD 的線上手冊是極佳的,可以找到很詳細的說明,雖然它們 是技術性的。
man name 會展示 "name" 的線上 手冊,而 man -k name 則展示與 "name" 相關的線上手冊清單(你也可以使用 apropos 指令。)
要學習 man 指令,鍵入:
# man man
線上手冊被分成九大部份,不但包含了指令的基本資訊,也包括 一些 NetBSD 特徵與架構上的描述。例如,請看 hier(7) 的線上 手冊,它詳細描述了 NetBSD 檔案系統的配置。
# man hier
類似的線上手冊還有 release(7) 和 packages(7)。線上手冊中的 每一段都有 intro 線上手冊描寫它的內容。 例如:
# man 8 intro
Example 4-1. 線上手冊的段落
general commands (tools and utilities)
system calls and error numbers
C libraries
special files and hardware support
file formats
games
miscellaneous information pages
system maintenance and operation commands
kernel internals
相同的標題可以出現在不同的線上手冊段落;想要查閱指定的 線上手冊,要提供區塊的號碼做為 man 指令的參數。例如, time 出現在第 1 段(time 指令的使 用),第 3 段(在 C 程式庫裡的 time 函數)和第 9 段( time 的系統變數)。要查閱 time 函數,鍵入:
# man 3 time
要看所有有效的手冊:
# man -a time
如果在開機時沒有定義 root 的密碼(在 1.5 以前的系統沒有 這項功能)。現在可以執行,使用 passwd 指令。
# passwd
Changing local password for root.
New password:
Retype new password:
在你鍵入密碼時,它不會顯示在螢幕上。稍後我們接學習如何 在系統上增加其他的使用者。
root 的 shell 預設為 csh;如果你不懂它 的意義,你可以開始使用(man csh)來學習 它:它是一個很好的交談式 shell,雖然缺乏歷史編輯的功能( 請看 tcsh,bash 之於 NetBSD /bin/sh 也是這個原因)。如果你想要更改 你的 shell,使用 chsh。在 NetBSD 安裝完 之後,有效的 shell 有:
csh
sh
ksh
新的 shell 在你下次登入便會生效。同時,你可以鍵入以下指令:
# set filec
使檔案名稱在命令列被完成(利用 ESC 鍵,Ctrl+D 則列出可完成的 清單。)
如果你想要,你也可以安裝其他的 shell 在你的系統上: tcsh, bash, zsh 和其他的 shell 都已經在 package 集合裡( 我們稍後會解釋)。
現在可以建立 shell 初始化檔案 (.chsrc, .login, ...)。
和所有的 UNIX 作業系統一樣,NetBSD 使用以格林威治時間為基礎 的系統時鐘 (UTC) 而這也就是為什麼你要設定系統時間的原因。如 果你想將系統時間設為你區域性的時間(例如,你需要和 Windows 做多重開機),你必須告知 NetBSD,修改 rtc_offset 系統變數。你可以編輯核心設定檔 重新編譯或是你可以對現有的核心做修正(新的時間只在下次開機時 才會生效):這比你想像的還簡單。例如:
# 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
The value supplied (-60) is the number of minutes west of UTC. 設定值 (-60) 是 UTC 以西的分鐘數。
要展示目前的 rtc_offset 設定值:
# sysctl kern.rtc_offset
kern.rtc_offset = -60
現在核心已經知道如何轉換 PC 時鐘的時間為 UTC 系統時間,但是 你仍必須將系統設定為你區域性的時間(你可以在 /usr/share/zoneinfo/ 發現他們。) 如果你已經在安裝過程中完成這項步驟,你可以略過(雖然最好檢查 設定是否正確。) 例如,對義大利而言:
# rm -f /etc/localtime
# ln -s /usr/share/zoneinfo/Europe/Rome /etc/localtime
在做了正確的設定之後,你可以使用以下的指令來更改時間:
# date [[[[[cc]yy]mm]dd]hh]mm
NetBSD 使用 /etc/rc.conf 作為系統設定 的開始:這個檔案決定了在系統開機時,要執行什麼指令。了解 這個檔案是非常重要的。
從 NetBSD 1.5 開始,rc.conf 的管理已經有所改變。在先前的 版本中,所有預設值都被儲存在 /etc/rc.conf 而使用者需要直接修改這個檔案;1.5 版引進了包含預設值的 /etc/defaults/rc.conf 檔。要修改預設 值,使用者必須將新的值寫入 /etc/rc.conf: 這個定義覆蓋了在 /etc/defaults/rc.conf 所出現的值(但卻沒有被改變)。
了解這個檔案是非常重要的。線上手冊包含了所有選項的 詳細說明。
# man rc.conf
首先要修改的是:
Set 'rc_configured=YES' (this modification might already have been done by the installation software.)
Set 'wscons=YES' to enable virtual consoles.
Set 'lpd=YES' to activate the printer spooler daemon
替你的機器定義 hostname(使用全名)。 如果你有一台獨立的機器,你可以使用任何名稱(例如, "woody.toys.net"。)如果你的機器連結到網路上,你需要提供 正確的網路上的名稱。
或是建立一個設定檔來定義主機名稱,你可以將它寫入 /etc/myname 檔中:結果是相同的。
以下的設定描述在 1.5 以後是不需要的,因為虛擬終端機已經 是預設值。
編輯 /etc/ttys 檔並檢查 ttyE0-ttyE3 是否為 'on'。ttyE4 必須為 off(為了使用 X。)例如:
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
如果你沒有耐性: 在修改 /etc/ttys 之後,你可以立刻啟動 虛擬終端機,而不需要重開機。你應該:
sh /etc/rc.wscons
kill -1 1
在啟動之後,你可以使用組合鍵 Ctrl-Alt-Fn 來切換(Fn 是功能鍵: F1 是 console 1,F2 是 console 2,以此類推)。想要更進一步的 說明,請看 Chapter 12。
Note: 使用 Left_Ctrl 和 Left_Alt 和 功能鍵組合。
在第一階段時,你已經
設定鍵盤
更改 root 密碼
更改 root 的 shell(選擇性的)
更改系統時間和 RTC 的設定
定義區域性的時間
設定 /etc/rc.conf
設定虛擬終端機
現在你可以重新開機,使用以下的指令:
# reboot