Chapter 5. 第二次開機

Table of Contents
5.1. dmesg
5.2. 掛上 CD-ROM
5.3. 掛上軟碟
5.4. 存取 DOS/Windows 分割區
5.5. 增加使用者
5.6. Shadow passwords
5.7. 中止系統和重開機

在首次開機後,你已經完成了基本的系統設定。這一章開始描述一些 一般的指令和作業。

5.1. dmesg

在系統啟動之後,核心會在螢幕上展示一長串的訊息:這些訊息提供了 核心狀態的資訊還有為週邊決定了裝置名稱(例如,你可以檢查你的網 路卡是否被偵測為 ne0 或是 ne1)。通常這些訊息捲動得非常快而難以使用, 但你可以利用 dmesg 指令來再一次檢視它們。

# dmesg | more
    

有時候你的系統並不會正確地工作,你可以在 NetBSD mailing lists 上 請求幫助。但請記得要包含相關的 dmesg 資訊在你的郵件中:這將幫助 其他人診斷你的問題。

5.2. 掛上 CD-ROM

新手常會對一件事感到驚訝,在安裝程式能完美地承認並掛上他們 的 CD-ROM,但安裝完後系統卻"忘了"如何使用 CD-ROM。 使用 CD-ROM 並沒有特別的魔法:你可以掛上它就如同其他的檔案 系統,你所必須知道的只是裝置的名稱和一些選項來使用 mount 指令。你可以找到裝置的名稱經由上述 的 dmesg 指令。例如,如果 dmesg 顯示:

# dmesg | grep ^cd
cd0 at atapibus0 drive 1: <ASUS CD-S400/A, , V2.1H> type 5 cdrom removable
    

裝置名稱便是 cd0,而你可以使用以下的 指令掛上 CD-ROM:

# mkdir /cdrom
# mount -t cd9660 -o ro /dev/cd0a /cdrom
    

要讓事情簡化,加入這行到 /etc/fstab

/dev/cd0a /cdrom cd9660 ro,noauto 0 0
    

無須重開機,你現在可以掛上 cdrom:

# mount /cdrom
    

當 cdrom 被掛上後,你不能手動退片;你必須先使它卸載:

# umount /cdrom
    

或是使用指令使它卸載並退片:

# eject /dev/cd0a
    

5.3. 掛上軟碟

要掛上軟碟你必須知道裝置名稱和軟碟上的檔案系統。例如, 要讀取和寫入 MS-DOS 格式的軟碟,使用以下指令:

# mount -t msdos /dev/fd0a /mnt
    

如果不用 /mnt,可以另外選定目錄。如果 可以,建立一個 /floppy 目錄,就像 cdrom 一樣。如果你需要處理大量的 MS-DOS 軟碟,你可以安裝 "mtools" package,使你能夠存取 MS-DOS 軟碟而不用 掛上它。這是非常有用的工具,使你快速地複製檔案從/到軟碟上。

5.4. 存取 DOS/Windows 分割區

如果 NetBSD 和 MS-DOS 或 Windows 共享硬碟,我們可以修改 disklabel 使 DOS 分割區能在 NetBSD 下被存取。首先,你必 需決定 DOS 分割區的幾何數據,可以使用 fdisk

# fdisk wd0
NetBSD disklabel disk geometry:
cylinders: 6232 heads: 16 sectors/track: 63 (1008 sectors/cylinder)
...
Partition table:
0: sysid 6 (Primary 'big' DOS, 16-bit FAT (> 32MB))
    start 63, size 2088516 (1019 MB), flag 0x80
        beg: cylinder    0, head   1, sector  1
        end: cylinder  259, head   0, sector  4
1: sysid 169 (NetBSD)
    start 2088579, size 4193277 (2047 MB), flag 0x0
        beg: cylinder  259, head   0, sector  4
        end: cylinder  779, head   0, sector  1
2: <UNUSED>
3: <UNUSED>
    

Note: 這個例子使用 wd0 硬碟:換成你 實際使用的硬碟。

fdisk 指令的輸出顯示了 DOS 分割區起始在 63 磁區, 共有 2088516 磁區。NetBSD 分割區起始在 2088579 (2088579 = 2088516 + 63)。你將使用這些資料來修改 BSD disklabel: 你所要做的只是加入一行 MS-DOS 分割區的定義,選一個未使用的分割 區代號。使用 disklabel 來修改 disklabel。 如果你使用 the -e 選項給 disklabel 它會呼叫你喜愛的編輯器來修改 disklabel。例如:

# disklabel -e wd0
...
#        size   offset     fstype  [fsize bsize  cpg]
...
  e:  3450624  2831232    4.2BSD    1024  8192    16   # (Cyl.  2808* - 6231)
  f:  2088516       63    MSDOS
    

分割區從 "a" 到 "e" 已經被 NetBSD 使用了 而第一個有效的 id 是 "f"。"size" 和 "offset" 已經填上被預先計算好的數值。下一步,必須 建立掛入點。例如:

# mkdir /msdos
    

最後,加入這行到 /etc/fstab

/dev/wd0f /msdos msdos rw,noauto 1 3
    

現在 MS-DOS 分割區可以用簡單的命令掛上:

# mount /msdos
    

使用這個方法你可以掛上 FAT 和 FAT32 分割區。如果要在開機時 自動地掛上分割區,從 /etc/fstab 中移除 "noauto" 選項。

/dev/wd0f /msdos msdos rw 1 3
    

5.5. 增加使用者

現在可以在你的系統上增加一個使用者,因為不要在日常的 工作中使用 root 帳號。NetBSD 沒有增加使用者的工具; 但你可以參閱 adduser 的線上手冊。

# man adduser
    

隨著以下的敘述,你將開始使用 vipw 作為, 在 NetBSD 底下增加帳號的工具。

Note: NetBSD 1.4.2 已經有一群使用者管理工具了; useradd 及其他的指令等。 例如,要增加一個使用者:

# useradd -m joe
      

useradd 指令的預設值已經改變了; 請看 useradd(8) 線上手冊。

如果你有較早的 NetBSD 版本而又不想手動地增加帳號,你可以安裝 package 像是 addnerd。但無論如何, 我還是建議參考一下線上手冊並至少手動地增加一個帳號。

5.6. Shadow passwords

shadow passwords 在 NetBSD 上已經為預設值了而不能被更改:所有 在 /etc/passwd 的密碼包含一個 '*';經過 編碼後的密碼屬於另一個檔案 /etc/master.passwd, 且只能被 root 讀取。當你使用 vipw 編輯 密碼檔時,程式會開啟 /etc/master.passwd 的備份;當你離開時,vipw 會檢查備份的 合法性,然後建立一個新的 /etc/passwd 並 安裝到 /etc/master.passwd。最後, vipw 使用 pwd_mkdb 建立 /etc/pwd.db/etc/spwd.db,這兩個資料庫相等於 /etc/passwd/etc/master.passwd 但能被處理得比較快。

如你所見,密碼被 NetBSD 自動地處理;如果你使用 vipw 編輯密碼,你不會看到任何特殊的 管理程序。

總是使用 vipw 和 其他工具來做帳號管理 (chfn, chsh, chpass, passwd) 並且 絕不直接地修改 /etc/master.passwd 是非常重要的。

5.7. 中止系統和重開機

用來中止並/或使系統重開機的指令是 shutdown

# shutdown -h now
# shutdown -r now
    

另外兩個指令執行相同的工作:

# halt
# reboot
    

halt/rebootshutdown 是不相同的:後者較為精巧。在多人使用的系統,你應該使用 shutdown:你可以將它列為工作排程,並通知使用者等。進一步的說明 請看 shutdown(8),halt(8) 和 reboot(8)。