BBS水木清华站∶精华区

发信人: yorkwu@ms4.hinet.net (), 看板: Linux 
标  题: [更新文件]CDROM HOWTO 中文版 1.11(part 2/3) 
发信站: DCI HiNet (Sat Aug  9 16:26:51 1997) 
转信站: sobee!netnews.ntu!news.mcu!news.cs.nthu!news.csie.nctu!aidebbs!news.yz 
 
 
4. Installation 
 
4. 安装 
 
在 Linux 下 安 装 CD-ROM 包 含 了 以 下 步 骤: 
 
  1. 安 装 硬 体 
  2. 设 置 及 重 建 Linux 核 心 
  3. 建 立 设 备 档 及 设 定 启 动 参 数 
  4. 重 新 启 动 Linux 核 心 
  5. 挂 上 媒 体 ( 片 子 ) 
 
下 几 节 将 会 详 细 列 出 该 有 的 步 骤. 
 
4.1 安 装 硬 体 
 
按 照 厂 商 的 说 明 书 指 示 去 安 装 硬 体 , 或 请 厂 商 帮 你 装. 详 细 
情 形 会 因 你 使 用 的 介 面 及 内 接 或 外 接 而 有 所 不 同. 对 Linux 来 
说 , 并 没 有 特 别 的 安 装 要 求. 你 也 许 要 设 定 机 器 或 介 面 卡 上 
的 跳 线 盒 (jumper) 以 使 之 正 常 工 作; 有 些 核 心 驱 动 程 式 有 README 
档 教 你 如 何 做. 
 
就 如 同 档 案ide-cd中 所 描 述 的,ATAPI CD-ROM 在 做 排 线 上 唯 一 的 一 
台 机 器 时, 应 调 成 'single' 或 'master' , 不 要 调 'slave'. (虽 然 最 新 
的 核 心 已 不 是 很 必 要 这 样 做 了.) 
 
4.2 设置及建立核心 
 
当 开 始 从 CD-ROM 安 装 Linux 时 你 应 该 早 就 有 一 片 boot 或 者 boot 兼 
root 磁 片. 如 果 可 能 的 话 , 你 可 以 选 有 支 援 你 的 CD-ROM 的 boot 磁 
片. 如 果 你 找 不 到 支 援 你 的 CD-ROM 的 启 动 磁 片 , 你 可 以: 
 
  1. 从 网 路 安 装 
  2. 启 动 DOS , 将 Linux 档 案 装 在 你 的 硬 碟 上 
  3. 启 动 DOS , 一 片 一 片 地 制 作 开 机 安 装 片 
  4. 找 个 可 以 帮 你 做 支 援 你 CD-ROM 的 启 动 磁 片 的 人 
 
在 Linux Installation HOWTO 中 对 安 装 Linux 有 更 详 细 的 步 骤. 如 果 你 
是 买 Linux CD-ROM , 经 常 也 会 有 一 些 安 装 指 示 ( 在 CD 盒 的 小 封 面 
底 , 或 在 CD 的 档 案 上 ). 
 
Linux 刚 安 装 好 时 , 多 数 人 基 於 以 下 原 因 , 会 重 新 编 译 核 心: 
 
   * 支 援 CD-ROM 或 其 它 硬 体 
   * 升 级 至 更 新 的 核 心 版 本 
   * 缩 小 核 心 , 节 省 记 忆 体 资 源. 
 
有 关 建 立 核 心 的 详 情 请 见 Kernel HOWTO 我 只 针 对 和 CD-ROM 有 关 的 
稍 微 提 一 下 
 
很 明 显 的, 你在 make config 时, 需 要 加 入 对 你 的 CD-ROM 的 支 援. 
 
如 果 你 有 ATAPI 的 机 种 , 你 对 下 面 问 题 应 回 答yes 
 
     Enhanced IDE/MFM/RLL disk/cdrom/tape support (CONFIG_BLK_DEV_IDE) [Y/n/?] 
     Include IDE/ATAPI CDROM support (CONFIG_BLK_DEV_IDECD) [Y/n/?] 
 
对 SCSI 机 种 , 用 yes 回 答 以 下 问 题: 
 
     SCSI support (CONFIG_SCSI) [Y/n/m/?] 
     SCSI CD-ROM support (CONFIG_BLK_DEV_SR) [Y/n/m/?] 
 
当 问 到 你 的 SCSI 卡 时 , 当 然 也 要 加 入 对 它 的 支 援 , 如: 
 
     Adaptec AHA152X support (CONFIG_SCSI_AHA152X) [Y/n/m/?] 
 
对 专 属 介 面 CD-ROM , 使 用 相 对 应 的 驱 动 程 式. 你 可 以 用 上 一 章 
列 的 表 得 知 你 用 的 光 碟 机 应 该 用 那 种 驱 动 程 式. 
 
基 本 上 所 有 CD-ROM 碟 片 都 用 ISO-9660 档 案 系 统 , 所 以 你 也 必 须 
包 括 它: 
 
     ISO9660 cdrom filesystem support (CONFIG_ISO9660_FS) [Y/n/m/?] 
 
虽 说 对 CD-ROM 运 作 不 是 必 要 的 , 如 果 你 有 Linux 支 援 的 音 效 卡 , 
你 也 许 会 想 设 定 及 使 用 它.Sound HOWTO将 是 一 个 很 好 的 参 考. 
 
然 後 你 应 该 照 通 常 的 步 骤 去 编 译 及 安 装 核 心. 在 你 建 造 设 备 
档 及 照 下 一 节 设 定 启 动 参 数 前 , 不 要 急 著 用 新 造 的 核 心 
开 机! 
 
ISO-9660 档 案 系 统 及 几 乎 所 有 CD-ROM 驱 动 程 式 都 可 被 做 成 可 载 
入 模 组. 这 样 子 一 些 核 心 驱 动 程 式 就 不 必 重 开 机 即 可 载 入 及 
丢 弃. 我 建 议 你 先 不 要 做 成 模 组. 可 在 模 组 的 文 件 及 Kernel 
HOWTO 中 找 到 使 用 模 组 的 方 法. 
 
如 果 列 在 这 里 的 机 器 并 没 有 被 你 的 核 心 支 援 , 你 大 概 要 更 新 
你 的 核 心 吧! 
 
你 也 可 能 要 自 己 抓 核 心 之 外 的 修 补 档 , 这 通 常 牵 涉 到 修 补 核 
心. 当 然, Kernel HOWTO 也 解 释 了 如 何 做. 
 
注 意 新 版 的 核 心 有 个 功 能 表 式 的 设 置 程 式 , 可 用 make 
menuconfig 做 , 或 是 X11 式 的 设 置 程 式 ( 用 make xconfig ). 三 种 方 法 
都 提 供 线 上 求 助. 
 
---------------------------------------------------------------------------- 
 
( 译 注 :1.3.xx 版 以 上 才 有 menuconfig; xconfig 好 像 较 早...) 
 
---------------------------------------------------------------------------- 
 
4.3 建 立 设 备 档 及 设 定 起 动 时 参 数 
 
核 心 使 用 特 别 的 档 案 来 辨 识 该 用 那 个 驱 动 程 式. 如 果 你 用 的 
是 一 个 发 行 的 Linux 套 件 , 安 装 後 你 也 许 已 经 有 必 需 的 设 备 档 
了. 例 如 说 , 在 Slackware Linux 下 , 有 个 选 单 型 安 装 程 式 , 它 包 含 
了 CD-ROM 安 装. 多 数 系 统 也 有 /dev/MAKEDEV 这 个 叙述档(script). 如 果 
你 不 用 这 些 方 法 , 你 可 用 像 以 下 的 更 加 手 动 的 方 法 做. 即 使 
你 用 了 "较 自 动" 的 装 法 , 仍 然 建 议 你 再 确 认 一 下 , 以 确 保 它 
们 的 正 确 性. 
 
你可以用指出你机器型式的 shell 命令建立设备档. 这应该可用 root这个身份完成. 
注意有些 Linux 套件用的名称可能 不太一样. 
 
另 外 也 建 议 你 建 立 一 个 符 号 连 结 , 这 会 好 记 一 点. 例 如 说 , 对 
一 台 IDE 介 面 的 机 器 来 说 , 可 以 如 下 般 建 立: 
 
     % ln -s /dev/hdd /dev/cdrom 
 
如 果 你 想 放 唱 片 , 你 就 要 设 定 保 护 ( 不 是 符 号 连 结 档 , 是 真 
正 的 设 备 档! ) , 使 其 它 人 也 可 读 写. 
 
     % chmod 666 /dev/hdd 
     % ls -l /dev/hdd 
     brw-rw-rw-   1 root     disk      22,  64 Feb  4  1995 /dev/hdd 
 
起 动 Linux 时 , 驱 动 程 式 要 确 定 该 设 备 是 否 存 在 , 这 通 常 是 靠 
自 动 侦 测. 多 数 驱 动 程 式 会 侦 测 好 几 个 位 址 , 但 因 配 备 不 同 . 
可 能 的 设 备 冲 突 . 及 硬 体 限 制 , 有 时 需 要 手 动 给 予 这 些 资 讯. 
多 数 驱 动 程 式 支 援 从 核 心 的 命 令 列 取 得 这 些 资 讯. 这 可 以 手 
动输入, 或 加 在 你 的 开 机 载 入 程 式 里. 例 如 说 , 你 用 LILO 当 开 机 
载 入 程 式 的 话 , 你 可 以 在 /etc/lilo.conf 用 append 命 令: 
 
     append = "sbpcd=0x230,SoundBlaster" 
 
请 看 LILO 的 文 件 获 得 更 多 资 讯. 
 
下 一 节 我 讨 论 每 一 种 驱 动 程 式 , 它 的 设 备 档 , 启 动 参 数 , 及 
它 们 的 具 备 的 能 力. 你 也 许 只 想 看 和 你 的 机 器 有 关 的 部 份. 
 
Sbpcd 驱动程式 
 
                  作者 : Eberhard Moenkeberg (emoenke@gwdg.de) 
      支援多次烧录碟片?: 是 (但并非所有机种皆可) 
          支援多台机器?: 是 
      可做成可载入模组?: 可 
        可读取数位音轨?: 可 (只有CR-562, CR-563及CD-200) 
            能自动侦测?: 能 
                 设备档: /dev/sbpcd, 主编号25 
                 设定档: sbpcd.h 
         核心设定的问题: Matsushita/Panasonic CDROM support? 
             请另外阅读: ide-cd 
 
     sbpcd=<io-address>,<interface-type> 
 
第 一 个 参 数 是 I/O 基 底 位 址 ( 如 0x230). interface-type 可 以 是 
"SoundBlaster","LaserMate" 或 "SPEA" , 请 看 sbpcd.h 中 的 提 示. 要 关 闭 
此 驱 动 程 式 , 用 sbpcd=0. 
 
可 照 下 面 建 立 设 备 档: 
 
     % mknod /dev/sbpcd b 25 0 
 
一 片 卡 最 大 可 以 装 到 四 台 , 後 三 台 的 次 编 号 分 别 由 一 到 三. 
如 果 你 的 界 面 卡 更 多 , 可 建 立 主 编 号 26,27,28. 最 多 可 有 4 片 卡 
, 也 就 是 16 台 CD-ROM 可 用 , 对 一 般 使 用 者 应 该 够 了 :-). 
 
请 看 sbpcd 档 案 以 获 得 更 多 资 讯 
 
如 果 你 最 近 才 买 , 不 要 假 设 接 声 霸 卡 的 就 应 该 用 这 驱 动 程 
式. 现 在 Creative Labs 卖 的 多 半 是 EIDE/ATAPI 的 机 种 了. 
 
Sonycdu535 驱动程式 
 
                  作者 : Ken Pizzini (ken@halcyon.com) 
      支援多次烧录碟片?: 否 
          支援多台机器?: 否 
      可做成可载入模组?: 是 
        可读取数位音轨?: 不可 
            能自动侦测?: 不能 
                 设备档: /dev/sonycd535, 主编号 24 
                 设定档: sonycd535.h 
         核心设定的问题: Sony CDU535 CDROM support? 
             请另外阅读: sonycd535 
 
这 个 驱 动 程 式 的 命 令 列 是 这 样 的: 
 
     sonycd535=<io-address> 
 
io-address 是 基 底 位 址 ( 如 0x320). 不 然 你 也 可 以 写 在 sonycd535.h 
里 编 译. 
 
设 备 档 这 样 建 立: 
 
     % mknod /dev/sonycd535 b 24 0 
 
有 些 Linux 套 件 用 /dev/sonycd 这 个 档. 旧 版 核 心 给 它 主 编 号 21 , 
确 定 一 下 你 的 设 备 档 是 正 确 的. 
 
这 个 驱 动 程 式 原 本 只 是 修 补 , 不 过 现 在 已 是 标 准 核 心 的 一 部 
份 了. 请 参 考 sonycd535 这 档 案 取 得 进 一 步 资 讯. 
 
Cdu31a 驱动程式 
 
                  作者 : Corey Minyard (minyard@-rch.cirr.com) 
      支援多次烧录碟片?: 是 
          支援多台机器?: 否 
      可做成可载入模组?: 可 
        可读取数位音轨?: 可 
            能自动侦测?: 不能 
                 设备档: /dev/cdu31a, 主编号 15 
                 设定档: cdu31a.h 
         核心设定的问题: Sony CDU31A/CDU33A CDROM support? 
             请另外阅读: cdu31a 
 
这 个 驱 动 程 式 的 命 令 列 是 这 样 的: 
 
     cdu31a=<io-address>,<interrupt>,PAS 
 
第 一 个 参 数 是 I/O 基 底 位 址 ( 如 0x340). 第 二 个 是 中 断 号 码 (0 代 
表 不 用 中 断 , 用 轮 询), 第 三 个 参 数 只 有 在 连 接 Pro Audio Spectrum 
16 音 效 卡 时 要 加 , 固 定 是 PAS. 
 
如 果 是 作 成 模 组, 命 令 列 格 式 则 有 些 不 一 样. 用 modprobe 或 
insmod 命 令 时, 是 以 以 下 形 式 载 入: 
 
     cdu31a_port=<io-address> cdu31a_irq=<interrupt> 
 
io-address 是 必 要 的, 而 interrupt 则 可 有 可 无. 
 
设 备 档 这 样 建 立: 
 
     % mknod /dev/cdu31a b 15 0 
 
详 细 资 讯 请 参 见 cdu31a 档 案 
 
这 个 驱 动 程 式 也 有 个 资 讯 网 站 台 , 可 在 
http://www.infinet.com/~zureal/cdu31a.html 找 到. 作 者 是 Jeffrey 
Oxenreider (zureal@infinet.com), 包 含 了 许 多 此 驱 动 程 式 的 常 见 问 
题. 
 
Aztcd 驱动程式 
 
                  作者 : Werner Zimmermann (zimmerma@rz.fht-esslingen.de) 
      支援多次烧录碟片?: 是 
          支援多台机器?: 否 
      可做成可载入模组?: 可 
        可读取数位音轨?: 不可 
            能自动侦测?: 不能 
                 设备档: /dev/aztcd0, 主编号 29 
                 设定档: aztcd.h 
         核心设定的问题: Aztech/Orchid/Okano/Wearnes (non IDE) CDROM support? 
             请另外阅读: aztcd 
 
This driver accepts a kernel command line of the form: 
 
核 心 命 令 列 像 这 样: 
 
     aztcd=<io-address> 
 
唯 一 参 数 是 I/O 基 底 位 址 ( 如 0x340) 
 
设 备 档 如 下 建 立: 
 
     % mknod /dev/aztcd0 b 29 0 
 
注 意 这 个 驱 动 程 式 仅 供 CDA268-01A 用. 其 他 机 型 如 CDA268-03I 及 
CDA269-031SE 等 不 是 专 属 介 面, 应 该 用 IDECD (ATAPI) 驱 动 程 式. 
 
详 细 资 讯 请 参 考 aztcd 档 案 
 
Gscd 驱动程式 
 
                  作者 : Oliver Raupach (raupach@nwfs1.rz.fh-hannover.de) 
      支援多次烧录碟片?: 否 
          支援多台机器?: 否 
      可做成可载入模组?: 可 
        可读取数位音轨?: 不可 
            能自动侦测?: 不能 
                 设备档: /dev/gscd0, 主编号 16 
                 设定档: gscd.h 
         核心设定的问题: Goldstar R420 CDROM support? 
             请另外阅读: gscd 
 
核 心 命 令 列 如 下: 
 
     gscd=<io-address> 
 
写 出 I/O 基 底 位 址 , 作 为 其 参 数. ( 如 0x340) 
 
设 备 档 可 照 下 建: 
 
     % mknod /dev/gscd0 b 16 0 
 
详 细 资 讯 请 参 考 gscd 档 案 及 http://linux.rz.fh-hannover.de/~raupach 
以 取 得 更 多 资 讯. 
 
Mcd 驱动程式 
 
                  作者 : Martin  (martin@bdsi.com) 
      支援多次烧录碟片?: 否 
          支援多台机器?: 否 
      可做成可载入模组?: 可 
        可读取数位音轨?: 不可 
            能自动侦测?: 不能 
                 设备档: /dev/mcd, 主编号 23 
                 设定档: mcd.h 
         核心设定的问题: Standard Mitsumi CDROM support? 
             请另外阅读: mcd 
 
这 是 旧 版 的 Mitsumi 机 器 驱 动 程 式 , 存 在 很 久 了. 你 也 许 想 用 新 
的 mcdx 驱 动 程 式 , 它 提 供 更 多 功 能 , 但 也 许 没 这 麽 稳. 
 
允 许 的 核 心 命 令 列 如 下: 
 
     mcd=<io-address>,<irq> 
 
参 数 分 别 是 介 面 卡 的 I/O 基 底 位 址 ( 如 0x340) 及 IRQ 要 求 号 码. 
 
设 备 档 如 下 建 立: 
 
     % mknod /dev/mcd b 23 0 
 
详 情 请 参 阅 mcd 档 案 
 
Mcdx 驱动程式 
 
                  作者 : Heiko Schlittermann 
      支援多次烧录碟片?: 是 
          支援多台机器?: 是 
      可做成可载入模组?: 可 
        可读取数位音轨?: 不可(硬体不支援) 
            能自动侦测?: 不能 
                 设备档: /dev/mcdx0, 主编号 20 
                 设定档: mcdx.h 
         核心设定的问题: Experimental Mitsumi support? 
             请另外阅读: mcdx 
 
这 是 新 的 实 验 性 Mitsumi 驱 动 程 式. 旧 的 mcd 可 能 仍 然 比 较 稳 , 
且 仍 然 存 在. 
 
可 接 受 的 核 心 命 令 列: 
 
     mcdx=<io-address>,<irq> 
 
参 数 分 别 是 介 面 卡 I/O 基 底 位 址 ( 如 0x340)及 IRQ 要 求 号 码. 
 
设 备 档 照 下 面 建: 
 
     % mknod /dev/mcdx0 b 20 0 
 
如 果 你 最 近 买 Mitsumi 机 器 , 不 要 假 设 它 应 该 用 这 驱 动 程 式 ; 
现 在 Mitsumi 也 只 做 EIDE/ATAPI 机 种 了 , 应 该 用 idecd 驱 动 程 式. 
 
详 细 资 讯 见 mcdx 档 
 
Cm206 驱动程式 
 
                  作者 : David A. van Leeuwen (david@tm.tno.) 
      支援多次烧录碟片?: 是 
          支援多台机器?: 否 
      可做成可载入模组?: 可 
        可读取数位音轨?: 不可 
            能自动侦测?: 能 
                 设备档: /dev/cm206cd, 主编号 32 
                 设定档: cm206.h 
         核心设定的问题: Philips/LMS CM206 CDROM support? 
             请另外阅读: cm206 
 
核 心 命 令 列 像 下 面: 
 
     cm206=<io-address>,<interrupt> 
 
第 一 个 是 基 底 位 址 ( 如 0x340) , 第 二 个 是 中 断 号 码. 
 
The device file can be created using: 
 
照 下 面 方 法 造 设 备 档: 
 
     % mknod /dev/cm206cd b 32 0 
 
更 详 细 的 资 讯 请 见 cm206 档 
 
Optcd 驱动程式 
 
                  作者 : Leo Spiekman (spiekman@dutette.et.tudelft.nl) 
      支援多次烧录碟片?: 是 
          支援多台机器?: 否 
      可做成可载入模组?: 可 
        可读取数位音轨?: 不可 
            能自动侦测?: 不能 
                 设备档: /dev/optcd0, 主编号 17 
                 设定档: optcd.h 
         核心设定的问题: Experimental Optics Storage ... CDROM support? 
             请另外阅读: optcd 
 
它 接 受 下 面 的 核 心 命 令 列: 
 
     optcd=<io-address> 
 
参 数 是 介 面 卡 I/O 基 底 位 址. 
 
设 备 档 建 立 法: 
 
     % mknod /dev/optcd0 b 17 0 
 
详 细 资 讯 见 optcd 档 
 
Sjcd 驱动程式 
 
                  作者 : Vadim V. Model (vadim@rbrf.msk.su) 
      支援多次烧录碟片?: 否 
          支援多台机器?: 否 
      可做成可载入模组?: 可 
        可读取数位音轨?: 不可 
            能自动侦测?: 不能 
                 设备档: /dev/sjcd, 主编号 18 
                 设定档: sjcd.h 
         核心设定的问题: Experimental Sanyo H94A CDROM support? 
             请另外阅读: sjcd 
 
核 心 命 令 列 像 下 面: 
 
     sjcd=<io-address>,<interrupt>,<dma> 
 
指 出 基 底 位 址 , 中 断 , 及 直 接 记 忆 体 存 取 通 道 号 码. ( 如 
sjcd=0x340,10,5) 
 
设 备 档 以 下 面 方 法 做: 
 
     % mknod /dev/sjcd b 18 0 
 
详 情 见 sjcd 档 案 
 
Bpcd 驱动程式 
 
Principal author: Grant R. Guenther (grant@torque.net) Multi-session 
support: unknown Multiple drive support: no Loadable module support: yes 
Reading audio frames: no Auto-probing: yes Device file: /dev/bpcd, major 41 
Configuration file: bpcd.h Kernel config option: MicroSolutions backpack 
CDROM support? README file: bpcd 
 
                  作者 : Grant R. Guenther (grant@torque.net) 
      支援多次烧录碟片?: 不明 
          支援多台机器?: 否 
      可做成可载入模组?: 可 
        可读取数位音轨?: 不可 
            能自动侦测?: 能 
                 设备档: /dev/bpcd, 主编号 41 
                 设定档: bpcd.h 
         核心设定的问题: MicroSolutions backpack CDROM support? 
             请另外阅读: bpcd 
 
这驱动程式的核心命令列如下: 
 
            bpcd= 
 
参数是使用的基底位址(如 bpcd=0x3bc) 
 
设备档的建造法: 
 
            # mknod /dev/bpcd b 41 0 
 
这个驱动程式已包含於2.1版的核心原始程式中. 请看bpcd档以得到最新资讯. 
 
SCSI CD-ROM(sr)驱动程式 
 
                  作者 : David Giller 
      支援多次烧录碟片?: 是 (受限於机器) 
          支援多台机器?: 是 
      可做成可载入模组?: 可 
        可读取数位音轨?: 不可 
            能自动侦测?: 能 
                 设备档: /dev/scd0, 主编号 11 
                 设定档: cdrom.h 
         核心设定的问题: SCSI CDROM support? 
             请另外阅读: 无 
 
对 每 一 种 不 同 的 SCSI 卡 而 言 , 用 的 命 令 列 参 数 不 一 样 , 请 参 
考 SCSI HOWTO. 可 以 接 多 台 机 器 ( 至 多 接 到 SCSI bus 能 接 的 上 限). 
设 备 档 主 编 号 是 11 , 次 编 号 由 0 起 算: 
---------------------------------------------------------------------------- 
(译 注 : 最 多 可 有 256 个 SCSI CD-ROM 设 备 档 , 不 过 事 实 上 极 难 做 
到... 除 非 用 光 碟 塔...) 
---------------------------------------------------------------------------- 
 
     % mknod /dev/scd0 b 11 0 
     % mknod /dev/scd1 b 11 1 
 
---------------------------------------------------------------------------- 
( 译 注: 也 有 时 候 叫 /dev/sr0, /dev/sr1, 等) 
---------------------------------------------------------------------------- 
此 驱 动 程 式 本 身 不 支 援 读 取 数 位 音 轨 功 能, 然 而 有 些 SCSI 
CD-ROM 有 这 能 力, 可 用 cdda2wav 程 式 达 成 ( 它 使 用 通 用 SCSI 核 心 
介 面 ). 
 
IDECD 驱动程式 
 
                  作者 : Scott Snyder (snyder@fnald0.fnal.gov) 
      支援多次烧录碟片?: 是 
          支援多台机器?: 是 
      可做成可载入模组?: 不可 
        可读取数位音轨?: 可 (在硬体支援的机种上) 
            能自动侦测?: 能 
                 设备档: /dev/hd{a,b,c,d}, 主编号 22 
                 设定档: cdrom.h 
         核心设定的问题: Include support for IDE/ATAPI CDROMs? 
             请另外阅读: ide-cd 
 
这 是 ATAPI CD-ROM 驱 动 程 式. 它 支 援 下 面 的 命 令 列 格 式: 
 
     hdx=cyls,heads,sects,wpcom,irq 
       or 
     hdx=cdrom 
 
这 里 的 hdx 可 以 是 {hda,hdb,hdc,hdd}, 或 只 有 hd , 表 示 下 一 台 机 器. 
只 有 前 三 个 参 数 是 必 要 的 (cyls,heads,sects), 例 如 说 , 
hdc=1050,32,64 hdd=cdrom 
 
要 让 IDE 驱 动 程 式 认 识 你 的 CD-ROM 可 能 有 点 麻 烦 , 特 别 是 你 有 
超 过 二 台 设 备 或 超 过 一 个 IDE 接 头. 通 常 这 需 要 由 LILO 送 出 正 
确 的 命 令 列 参 数. /usr/src/linux/Documentation/ide-cd 这 档 案 有 详 细 
介 绍 , 请 仔 细 看. 
 
最 近 的 核 心 对 多 台 IDE 设 备 支 援 的 更 好 了. 所 以 如 果 在 旧 核 心 
上 有 问 题 , 升 级 也 许 能 解 决. 
 
有 些 IDE 介 面 硬 体 有 问 题 , 但 核 心 可 以 处 理. 这 种 情 形 你 要 送 
参 数 给 核 心 以 启 动 此 功 能. 细 节 请 见 文 件. 
 
4.4 起 动 Linux 核 心 
 
你 可 以 用 新 核 心 启 动 了. 请 注 意 看 一 下 类 似 以 下 的 讯 息 , 它 
指 出 CD-ROM 驱 动 程 式 有 没 有 发 现 你 的 CD-ROM ( 讯 息 会 因 你 用 的 
CD-ROM 种 类 不 同 而 有 变 化) 
 
             hdd: NEC CD-ROM DRIVE:282, ATAPI CDROM drive 
 
如 果 讯 息 卷 动 得 太 快 了 , 你 应 该 可 以 用 dmesg 或 tail 
/var/adm/messages 来 查 看. 
 
如果没有找到该机器, 那就代表有问题出现了, 请看 "问题与解决"一节. 
 
4.5 挂 上 , 卸 下 , 及 退 出 光 碟 片 
 
若 想 挂 上 CD-ROM , 把 光 碟 片 放 进 机 器 , 然 後 以 root 身 份 执 行 
mount 命 令. ( 这 里 假 设 你 已 经 如 我 们 所 建 议 的 做 了 符 号 连 结 , 
并 且 也 有 空 的 /mnt/cdrom 目 录) 
 
     % mount -t iso9660 -r /dev/cdrom /mnt/cdrom 
 
现 在 你 可 以 到 /mnt/cdrom 下 去 存 取 CD 上 的 东 西 了. 
 
你 也 许 还 想 用 其 它 的 参 数 挂 载 CD-ROM, 欲 知 详 情, 见 man(8) 说 明 
页. 
 
你 可 以 在 /etc/fstab 加 进 一 行 , 使 Linux 开 机 时 就 自 动 挂 上 CD-ROM 
, 或 给 予 一 些 挂 载 时 的 参 数. 请 看 fstab(5) 说 明 页. 
 
注 意 , 若 想 要 听 CD 唱 片 , 那 就 不 应 该 挂 上 它. 
 
要 卸 下 CD-ROM , 以 root 身 份 执 行 umount 命 令. 
 
     % umount /mnt/cdrom 
 
只 有 在 没 人 存 取 CD-ROM 时 ( 包 括 没 人 目 前 目 录 在 CD-ROM 时 ) 方 
可 以 卸 下 该 片 子. 卸 下 後 就 可 以 退 片 了. 大 多 数 机 器 都 有 退 片 
钮 , 不 过 也 有 一 个 软 体 退 片 程 式 eject可 以 靠 命 令 就 退 出 片 子. 
 
注 意 不 要 在 碟 片 还 在 挂 载 中 时 退 出 片 子 ( 这 个 因 CD-ROM 种 类 
而 可 能 或 不 可 能 发 生. ). 有 些 CD-ROM 驱 动 程 式 可 以 在 卸 下 时 自 
动 退 片 , 而 挂 上 时 自 动 自 动 进 片. (你 可 以 重 新 编 译 核 心 或 用 
软 体 命 令 关 闭 这 功 能) 
 
---------------------------------------------------------------------------- 
(译 注 : 有 些 光 碟 机 挂 上 时 会 把 面 板 锁 定 , 就 无 法 退 片 了 , 当 
然 不 会 不 小 心 按 到 退 片 钮 而 将 片 子 退 出 ) 
---------------------------------------------------------------------------- 
 
也 有 可 能 在 放 了 CD 唱 片 後, 无 法 挂 上 CD-ROM 片 子 了. 这 时 你 要 
用 CD 播 放 程 式 送 出 "停 止" 命 令 後 再 尝 试 挂 上. 这 问 题 只 在 
sbpcd 驱 动 程 式 出 现 过. 
 
Stephen Tweedie (sct@dcs.ed.ac.uk) 写 了 一 个 叫 Supermount 的 程 式 提 供 
了 包 括 CD-ROM 的 可 移 动 媒 体 的 透 明 化 挂 载 能 力. (译 : 这 是 什 麽 
意 思 ?) 你 可 以 在 ftp://sunsite.unc.edu/pub/linux/patches/diskdrives/ 找 
到. 
 
4.6 问 题 与 解 决 
 
如 果 你 按 照 本 HOWTO 的 指 示 去 做 却 还 有 问 题 , 有 一 些 地 方 可 以 
先 确 认 一 下. 这 里 由 简 单 到 复 杂 一 条 条 列 出 来. 如 果 问 题 刚 好 
出 现 在 某 步 骤 , 先 解 决 这 问 题 再 进 行 下 一 步. 
 
第一步: 确 定 你 用 你 自 己 编 译 的 核 心启 动 系 统 
 
你 可 以 检 查 核 心 中 的 时 戳 , 看 看 是 不 是 有 包 含 支 援 CD-ROM 的 
版 本. 你 可 以 用 uname 这 个 命 令 来 检 查: 
 
     % uname -a 
     Linux fizzbin 2.0.18 Fri Sep 6 10:10:54 EDT 1996 i586 
 
或 显 示 /proc/version 档 中 的 内 容: 
 
     % cat /proc/version 
     Linux version 2.0.18 (root@fizzbin) (gcc version 2.7.2) Fri Sep 6 10:10:54 EDT 1996 
 
如 果 这 个 时 间 戳 记 比 你 编 译 还 早 , 那 你 就 是 在 用 旧 核 心 了. 
你 真 的 重 开 机 过 吗 ? 如 果 你 用 LILO , 是 否 忘 记 重 装 一 次 ( 一 般 
执 行 /etc/lilo/install)? 用 软 碟 开 机 的 话 , 做 了 一 片 新 开 机 片 , 
并 用 它 开 机 了 吗 ? 
 
第二步: 确 定 需 要 的 核 心 驱 动 程 式 有 被 编 译 进 去 
 
你 可 藉 由 观 察 /proc/devices 来 看 编 译 进 了 什 麽 驱 动 程 式: 
 
     % cat /proc/devices 
     Character devices: 
      1 mem 
      2 pty 
      3 ttyp 
      4 ttyS 
      5 cua 
      7 vcs 
 
     Block devices: 
      3 ide0 
     22 ide1 
 
首 先 看 你 的 CD-ROM 驱 动 程 式. CD-ROM 都 是 区 块 设 备. 在 这 里 我 们 
看 到 主 编 号 22 的 idecd 驱 动 程 式 存 在 著. 
 
     % cat /proc/filesystems 
             ext2 
             msdos 
     nodev   proc 
             iso9660 
 
你 也 可 以 藉 由 看 /proc/ioports 档 来 看 使 用 了 那 些 I/O port: 
 
     howto % cat /proc/ioports 
      ... 
     0230-0233 : sbpcd 
      ... 
 
如 果 有 东 西 你 记 得 有 编 译 但 却 没 显 示 , 那 麽 就 是 你 设 置 核 心 
时 出 了 问 题. 由 再 设 置 及 重 建 核 心 开 始 , 再 重 复 安 装 核 心 步 
骤. 
 
第三步: 起 动 时 , 核 心 有 侦 测 你 的 机 器 吗 ? 
 
当 核 心 起 动 时 , 确 定 你 的 CD-ROM 被 侦 测 到 了. 应 该 在 开 机 讯 息 
里 可 以 看 到. 如 果 讯 息 卷 动 太 快 , 看 不 到 , 你 可 以 用 dmesg 命 令 
来 叫 回 它: 
 
     % dmesg 
 
或 者 
 
     % tail /var/adm/messages 
 
如 果 开 机 没 找 到 , 那 一 定 某 处 有 问 题. 确 定 它 开 电 源 了 , 并 且 
连 线 也 都 接 对 了. 如 果 你 的 机 器 有 位 址 的 跳 线 ( 如 SCSI ID 或 
562B 的 ID), 确 定 它 设 在 正 确 位 置 上 ( 例 如 , 若 是 只 有 一 台 则 设 
"drive 0") ATAPI CD-ROM 若 是 该 IDE 排 线 上 唯 一 一 台 , 则 必 须 设 
"single" 或 "master" , 不 要 设 "slave". 如 果 在 DOS 下 很 正 常 , 那 你 就 
可 以 相 信 硬 体 是 正 常 的 了. 
 
有 些 驱 动 程 式 用 自 动 侦 测 , 有 些 不 用 , 而 且 自 动 侦 测 也 不 是 
完 全 可 信 的. 使 用 你 的 驱 动 程 式 提 供 的 核 心 命 令 列 选 项. 如 果 
你 不 是 很 确 定 I/O 位 址 或 其 它 参 数 的 话 , 你 可 能 要 试 好 几 遍. 
LILO 可 以 被 设 成 允 许 你 起 动 时 手 动 输 入 参 数. 
 
另 一 个 可 能 就 是 你 用 错 驱 动 程 式 了. 有 些 文 件 将 专 属 介 面 写 
成 IDE , 使 人 们 误 以 为 它 是 ATAPI 的 机 种. 
 
还 有 一 个 可 能 是 你 的 机 器 ( 或 介 面 卡 ) 是 那 种 需 要 DOS 驱 动 程 
式 来 驱 动 它 的 所 谓 "相 容 型". 这 样 的 话, 你 要 先 用 DOS 开 机 , 载 
入 这 个 驱 动 程 式 , 再 按 Control-Alt-Del 重 起 动 Linux. 
 
如 果 本 文 件 中 没 列 出 你 的 机 器 , 那 可 能 在 Linux 下 没 驱 动 程 式 
吧! 你 可 以 看 一 下 文 後 的 参 考 资 料 表 , 试 著 求 一 点 帮 助. 
 
第四步: 你 能 从 机 器 上 读 出 资 料 吗? 
 
试 著 从 CD-ROM 读 资 料. 打 入 以 下 命 令 後 , 应 该 可 以 看 到 CD-ROM 的 
灯 亮 起 来( 如 果 有 灯 的 话 ) , 而 且 也 不 会 回 报 错 误. 照 你 的 驱 
动 程 式 的 设 备 档 , 并 确 定 放 了 一 片 CD-ROM 片 子 ; 按 下 Control-C 
离 开. 
 
     dd if=/dev/cdrom of=/dev/null bs=2048 
     ^C 
     124+0 records in 
     124+0 records out 
 
如 果 成 功 , 那 核 心 就 能 成 功 的 和 机 器 通 讯 , 你 可 以 跳 到 下 一 
步. 
 
如 果 不 能 的 话 , 问 题 可 能 出 在 设 备 档. 确 定 在 /dev 下 的 设 备 档 
的 主 编 号 及 次 编 号 如 前 面 写 的 一 样. 也 检 查 一 下 它 是 否 允 许 
读 取 及 写 入 权. 
 
也 有 一 点 点 可 能 是 硬 体 问 题. 可 能 的 话 , 在 DOS 下 试 试 看 , 确 
认 是 不 是 这 状 况. 
 
第五步: 你 能 挂 上 片 子 吗? 
 
如 果 你 能 读 取 但 不 能 挂 上 , 首 先 确 定 一 下 核 心 有 没 有 支 援 
ISO-9660 档 案 系 统. 如 前 所 述 , 看 /proc/filesystems 档. 
 
注 意 一 下 , 请 在 挂 上 时 用 "-t iso9660" 及 "-r" 选 项. 还 有 在 CD-ROM 
机 中 放 的 是 资 料 碟 片 , 不 是 唱 片. 通 常 要 以 root 身 份 执 行 挂 上 
命 令. 
 
确 定 挂 载 点 存 在 , 且 是 个 空 目 录. 
 
如 果 你 想 开 机 时 自 动 挂 载 , 确 定 在 /etc/fstab 中 有 正 确 的 一 行. 
 
如 果 你 有 跑 syslog , 那 可 能 有 些 讯 息 你 没 看 见. 试 试 dmesg 命 令: 
 
     % dmesg 
     SBPCD: sbpcd_open: no disk in drive 
 
错 误 也 可 能 记 录 在 /var/adm 目 录 下 的 档 案 中 , 全 看 你 的 系 统 怎 
麽 设 的. 
 
消 除 听 音 乐 时 的 问 题 
 
如 果 你 的 机 器 读 CD-ROM 时 没 问 题 , 但 听 唱 片 就 有 问 题 , 这 里 提 
供 些 解 决 之 道. 
 
你 需 要 些 可 放 唱 片 的 软 体. 有 些 程 式 可 能 和 你 的 机 器 不 相 容. 
试 试 其 它 的 或 重 新 编 译 它. 一 个 找 软 体 的 好 地 方 在 
ftp://sunsite.unc.edu/pub/linux/apps/sound/cds/. 
 
有 些 CD-ROM 不 支 援 放 唱 片. 检 查 README 档 或 原 始 码 看 看 是 不 是 
这 情 形. 
 
检 查 一 下 声 音 是 不 是 会 从 耳 机 孔 出 来. 如 果 可 以, 那 八 成 和 你 
的 音 效 卡 有 关. 使 用 混 音 程 式 设 定 输 入 频 道 及 音 量. 确 定 你 从 
CD-ROM 接 了 条 音 源 线 到 音 效 卡 上. 也 确 认 一 下 核 心 的 音 效 卡 驱 
动 程 式 存 在 及 可 用 ( 请 看 Sound HOWTO). 
 
要 是 一 切 都 没 用 呢? 
 
如 果 你 还 有 问 题 , 这 里 有 一 些 最 後 的 建 议 , 你 可 以 试 试: 
 
   * 小 心 地 重 读 这 份 HOWTO 文 件 
   * 读 文 後 列 出 的 参 考 文 件 , 特 别 是 相 关 的 核 心 原 始 码 的 
     README 档. 
   * 在 comp.os.linux 或 其 它 USENET 新 闻 组 贴 帖 子 , 问 问 题. 
   * 送 一 个 问 题 到 Linux 通 信 论 坛 
   * 用 最 新 版 的 Linux 核 心 
   * 向 店 家 求 救 
   * 找 你 的 CD-ROM 厂 商 
   * 寄 封 信 给 相 关 驱 动 程 式 的 作 者 
   * 寄 信 给 我 ( 译 注 : 指 作 者 , 当 然 要 寄 给 我 也 可 以 啦!) 
   * 叫 出 emacs , 打 入 "ESC-x","doctor" (:-) 
 
 
5. 应用 
 
这 一 节 简 要 地 列 出 在 Linux 下 CD-ROM 的 主 要 应 用. 查 阅 Linux软体大 
地图 (LSM) 看 看 它 们 在 何 处 及 最 新 是 第 几 版. 
 
5.1 CD 唱 片 播 放 程 式 
 
有 好 些 程 式 有 能 力 放 唱 片, 可 从 耳 机 洞 或 音 效 卡 出 声. 
 
Workman 
 
     一 个 在 X11 下 的 图 型 化 播 放 机 , 支 援 CD 资 料 库 及 很 多 特 
     点. 
 
WorkBone 
 
     一 个 互 动 性 的 文 字 模 式 播 放 机 
 
xcdplayer 
 
     一 个 X11 下 的 简 单 播 放 机 
 
cdplayer 
 
     非 常 简 单 的 命 令 列 播 放 器 
 
Xmcd 
 
     一 个 X11/Motif 的 播 放 器 
 
xmitsumi 
 
     另 一 个 给 Mitsumi 机 器 用 的 X11 下 播 放 程 式 
 
xplaycd 
 
     另 一 个 X11 的 播 放 器 , 包 含 一 个 混 音 器 及 VU 表 程 式 
 
cdtool 
 
     命 令 列 播 放 CD 唱 片 的 工 具 
 
以 上 有 些 程 式 可 能 程 式 里 规 定 用 某 个 设 备 档 ( 如 /dev/cdrom). 
你 可 能 可 以 用 参 数 指 示 它 用 什 麽 设 备 档 , 或 你 也 可 在 /dev 下 
建 符 号 连 结. 如 果 将 声 音 送 到 音 效 卡 , 你 可 能 想 用 混 音 器 来 
调 音 量 或 选 择 CD-ROM 输 入 当 录 音 源. 
 
5.2 相 片 光 碟 
 
相 片 光 碟 利 用 ISO-9660 档 案 系 统 存 放 专 属 格 式 的 影 像 档. 并 非 
所 有 CD-ROM 都 支 援 读 取 相 片 光 碟. 
 
Hadmut Danisch 写 的 hpcdtoppm 程 式 可 将 像 片 光 碟 档 案 转 成 可 转 移 
式 点 图 (ppm, portable pixmap) 格 式. 它 可 经 由 
ftp://ftp.gwdg.de/pub/linux/hpcdtoppm 取 得 , 或 在 很 多 档 案 库 中 可 取 
得 的 PBM(portable bit map) 公 用 程 式 里 面. ( 请 查 询 "pbm" 或 "netpbm") 
 
Gerd Knorr(kraxel@cs.tu-berlin.de) 写 的 photocd 程 式 可 将 相 片 光 碟 转 
成 Targa 或 者 Windows及OS/2 用 的 BMP 档. 
 
这 位 作 者 也 写 了 xpcd , 一 个 可 处 理 相 片 光 碟 影 像 的 X11 软 体. 
你 可 以 用 滑 鼠 选 择 影 像 , 在 小 视 窗 中 浏 览 , 或 用 五 种 解 析 度 
看 它. 你 也 可 选 定 影 像 的 一 部 份 , 只 载 入 它 们. xpcd 可 在 
ftp://ftp.cs.tu-berlin.de/pub/linux/Local/misc/ 中 找 到. 
 
ImageMagick 影 像 档 操 作 程 式 也 支 援 像 片 光 碟 档 案. 它 在 
ftp://ftp.x.org/contrib/applications/ImageMagick/ 里. 
 
5.3 Mkisofs 
 
Eric Youngdale 的 mkisofs 套 件 允 许 你 在 硬 碟 上 建 立 ISO-9660 档 案 系 
统. 这 样 可 以 帮 助 你 深 入 了 解 光 碟 , 也 能 在 烧 光 碟 前 先 测 试 
其 档 案 系 统. 
 
真 正 烧 光 碟 的 程 式 几 乎 都 和 厂 商 有 关. 它 们 也 要 求 写 资 料 时 
不 能 有 任 何 中 断 , 所 以 像 Linux 这 种 多 工 作 业 系 统 并 不 是 很 适 
合 这 种 工 作. 
 
5.4 ISO-9660 公 用 程 式 
 
有 些 公 用 程 式 可 以 确 认 ISO-9660 格 式 化 的 碟 片 是 否 正 确. 你 也 
许 会 发 现 在 测 试 奇 怪 的 CD 时 会 有 用. 这 玩 意 可 在 
ftp://ftp.cdrom.com/pub/cdrom/ptf/中 找 到. 作 者 是 Bill Siegmund 及 Rich 
Morin. 
 
 
 
-- 
o=|====> yorkwu@ms4.hinet.net 

BBS水木清华站∶精华区