MAKEDEV(8)

NAME
MAKEDEV - 建立設備

總覽 (SYNOPSIS)
cd dev; ./MAKEDEV -V
cd dev; ./MAKEDEV [ -n ] [ -v ] update
cd dev; ./MAKEDEV [ -n ] [ -v ] [ -d ] device ...

描述 (DESCRIPTION)
MAKEDEV 是 一個 稿本程式, 用於 在 /dev 目錄下 建立 設備, 通過 這些 設備檔案 可以 訪問 位於 核心 的 驅動程式.

注意, 如果 應用程式 顯示 出錯信息 ``ENOENT: No such file or directory'', 一般指 設備檔案 不存在, 而 ``ENODEV: No such device'' 則 表明 核心 沒有 配置 或 裝載 相應的 驅動程式.

選項 (OPTIONS)

-V  顯示 版本信息 (實際上 是 RCS 版本信息) 然後 退出.

-n  並不做 真正的 更新, 只是 顯示 一下 它的 執行 效果.

-d  刪除 設備檔案. 主要 供 MAKEDEV 自己 用.

-v  繁瑣模式. 顯示出 執行的 每一個 動作. 它的 輸出內容 和 -n 選項 的 輸出內容 一樣.

自定義 (CUSTOMISATION)
由於 目前 還沒有 系統 使用者 和 使用者組 的 標準名稱, 你 可能 需要 修改 MAKEDEV 以 配合 你的 系統設置. 在 這個 程式 的 開始位置, 定義了 從 設備類型 到 使用者, 使用者組 和 訪問權限 的 映射關系 (例如, 所有的 CD-ROM 設備 通過 $cdrom 變量 設置). 如果 你 打算 改變 預設定義, 就需要 編輯 這個 部分.

設備 (DEVICES)

基本選項 (General Option)

update
    該選項 只用於 實現了 /proc/interrupts 的 核心(從 1.1.x 開始). MAKEDEV 掃描 這個檔案, 檢查 目前 核心 配置了 什麼設備, 它 和 上次 配置 的 設備 做 比較 (記錄在 檔案 DEVICES 中), 創建 新設備 或 主設備號 不相同 的 設備, 刪除 沒有 配置的 設備.

generic
    創建 通用設備 子集. 包括 標準設備, 軟驅, 各種硬驅, 偽終端, 控制台設備, 基本串行設備, 總線滑鼠 和 列印口.

std 標準設備. 它們有:
    mem - 訪問 物理記憶體;
    kmem - 訪問 核心虛擬記憶體;
    null - 空設備 (無限寫入 infinite sink);
    port - 訪問 I/O 端口;
    zero - 空(0)字節 來源 (無限讀出 infinite source);
    core - /proc/kcore 的 符號連接 (用於 核心除錯);
    full - 寫訪問 這個設備 一定 返回 ENOSPACE;
    ram - 虛擬磁碟 (ramdisk);
    tty - 訪問 進程 的 控制終端.

local
    運行 MAKEDEV.local. 它是個 稿本程式, 用來 創建 各種 本地設備 (local devices).

虛擬終端 (Virtual Terminal)

console
    用於 建立 關聯(associate) 控制台 的 設備. 就是 虛擬終端 ttyx, x 從 0 到 63. 設備 tty0 是 當前的 活動 虛擬終端, 也就是 console. 每個 虛擬終端 有 兩個 設備, vcsx 和 vcsax, 用做 虛擬終端 的 螢幕轉儲(screen-dump), vcsx 只有 文本, vcsax 還包括 屬性.

串行設備 (Serial Device)

ttyS{0..63}
    串行口 和 對應的 撥出設備(dial-out). 對於 ttySx 設備, 有 同樣的 設備 cuax 用於 撥出. 在 一些 簡單 的 應用環境, 這種 形式 可以 避免 使用 協作鎖.

cyclades
    用於 cyclades 智能 I/O 串行卡 的 撥入和撥出 設備. 撥入設備 是 ttyCx, 對應的 撥出設備 是 cubx. 預設情況是 創建 7線 設備, 但是 去掉 注釋 可以 改成 15線.

偽終端 (Pseudo Terminal)

pty[p-s]
    參數中的 每個字符 可以 創建 一組 共 16 個 主從偽終端對. 1.2 版本的 核心 支持 64 對. 主偽終端 是 pty[p-s][0-9a-f], 從偽終端是 tty[p-s][0-9a-f].

並行口 (Parallel Port)

lp  標準並行口. 創建的 設備 是 lp0, lp1 和 lp2. 它們 對應的 端口 是 0x3bc, 0x378 和 0x278. 因此, 有些 機器 上 的 第一個 列印口 是 lp1.

par lp 的替換. 端口 由 parx 命名, 代替了 lpx.

總線滑鼠 (Bus Mice)

busmice
    各種 總線滑鼠 設備. 有 logimouse (Logitech bus mouse), psmouse (PS/2-style mouse), msmouse (Microsoft Inport bus mouse) 和 atimouse (ATI XL bus mouse) 和 jmouse (J-mouse).

遊戲桿設備 (Joystick Device)

js  遊戲操縱桿. 創建 js0 和 js1.

Disk Devices

fd[0-7]
    軟驅設備. fdx 設備 能夠 自動檢測 (盤面)格式, 其他設備 採用 固定格式, 在 名字中 指定 容量. 命名格式 是 fdxLn, 字母 L 表明 軟碟 規格 (d = 5.25" DD, h = 5.25" HD, D = 3.5" DD, H = 3.5" HD, E = 3.5" ED). 數字 n 代表 這種規格下 的 盤面 容量 (單位是K). 因此 標準的容量 是 fdxd360, fdxh1200, fdxD720, fdxH1440, 和 fdxE2880.

    更多的 內容 請參看 Alain Knaff 的 fdutils 發行包.

    從 fd0* 到 fd3* 的 設備 是 第一個 控制器 上的 軟驅, 而 fd4* 到 fd7* 則 位於 第二個 控制器 上.

hd[a-d]
    AT 硬碟. 設備 hdx 提供 對 整個 硬碟 的 訪問, 訪問 分區 用 hdx[0-20]. 四個 主分區 從 hdx1 到 hdx4, 它們的 邏輯分區 從 hdx5 開始 到 hdx20. (主分區 可以 配置為 擴展分區, 擴展分區 可以 容納 4個 邏輯分區). 預設情況下, 一個 設備 只創建 4個 邏輯分區. 如果 要求 更多的 邏輯分區, 可以 在 MAKEDEV 中 去掉 相應的 注釋.

    驅動器 hda 和 hdb 位於 第一個 控制器 上. 如果 使用 新型的 IDE 驅動器 (而非 老式的 HD 驅動器), 還會有 hdc 和 hdd, 在 第二個 磁碟控制器上. 這些設備 同樣可以 訪問 IDE CDROM 驅動器.

xd[a-d]
    XT 硬碟. 分區結構 和 IDE 硬碟 一樣.

sd[a-z], sd[a-c][a-z], sdd[a-x]
    SCSI 硬碟. 分區結構 和 IDE 硬碟 類似, 但是 邏輯分區 限制在 11 個 以內, (sdx5 到 sdx15). 允許 有 128個 SCSI 硬碟.

loop
    自環(loopback) 磁碟設備. 允許 你 把 普通檔案 當做 塊設備 使用. 這 意味著 可以 掛載(mount) 各種 檔案系統 的 映像(檔案), 用起來 和 普通 的 檔案系統 一樣. 一般 創建 8個 設備, loop0 到 loop7.

磁帶設備 (Tape Device)

st[0-7]
    SCSI 磁帶. 有 可回卷(rewinding)的 磁帶設備 stx 和 不可回卷(non-rewinding) 的 nstx.

qic QIC-80 磁帶. 創建 的 設備 有 rmt8, rmt16, tape-d 和 tape-reset.

ftape
    軟驅磁帶 (QIC-117). 根據 不同的 驅動方法, 有 四種 存取 方法 0, 1, 2 和 3, 對應 各自的 設備 rftx (可回卷) 和 nrftx (不可回卷). 另外 還提供了 相容設備 ftape 和 nftape , 它們是 rft0 和 nrft0 的 符號連接.

CDROM 設備

scd[0-7]
    SCSI CD 播放器.

sonycd
    Sony CDU-31A CD 播放器.

mcd Mitsumi CD 播放器.

cdu535
    Sony CDU-535 CD 播放器.

lmscd
    LMS/Philips CD 播放器.

sbpcd{,1,2,3}
    Sound Blaster CD 播放器. 核心 能夠 支持 16個 CDROM, 通過 sbpcd[0-9a-f] 訪問. 它們 每四個 一組 分配 在 各個 控制器 上. sbpcd 是 sbpcd0 的 符號連接.

掃描儀 (Scanner)

logiscan
    Logitech ScanMan32 & ScanMan 256.

m105scan
    Mustek M105 手持式.

ac4096
    A4Tek 彩色手持式.

音頻 (Audio)

audio
    建立 供 聲音驅動程式 使用的 音頻設備. 包括 mixer, sequencer, dsp 和 audio.

pcaudio
    PC 揚聲器 聲音驅動程式 的 設備. 有 pcmixer. pxsp, 和 pcaudio.

雜項 (Miscellaneous)

sg  通用 SCSI 設備. 從 sga 到 sgh , sg0 到 sg7. 它們 允許 對 任何 SCSI 設備 發出 任意指令. 可以 查詢 設備信息, 或者 控制 不是 磁碟, 磁帶 或 CDROM 的 SCSI 設備 (例如 掃描儀, 可擦寫CDROM).

fd  允許 任何程式 從 檔案描述符 x 中 獲取 輸入, 檔名 是 /dev/fd/x. 而且 還創建了 /dev/stdin, /dev/stdout, 和 /dev/stderr. (注意, 這些 只是 到 /proc/self/fd 的 符號連接).

ibcs2
    IBCS2 模擬器 所需的 設備(和符號連接).

apm 電源管理設備.

dcf DCF-77 radio clock 驅動程式 用的 設備.

helloworld
    核心模塊 的 演示設備. 見 模塊 源程式.

網路設備
    Linux 曾經在 /dev 下面 放了一些 設備檔案, 用於 控制 網路設備, 現在 取消了. 想知道 核心 支持 什麼 網路設備, 請 查看 /proc/net/dev.

另見 (SEE ALSO)
Linux Allocated Devices, H. Peter Anvin 維護, <Peter.Anvin@linux.org>.

作者 (AUTHOR)
Nick Holloway, <Nick.Hollowa

[中文版維護人]
徐明 <xuming@iname.com>

[中文版最新更新]
2001/11/03

《中國linux論壇man手冊頁翻譯計劃》:
http://cmpp.linuxforum.net