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水木清华站∶精华区