⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cdrom-howto-4.html

📁 CD-ROM使用与维修资料大全
💻 HTML
📖 第 1 页 / 共 2 页
字号:
作者 : David A. van Leeuwen (david@tm.tno.)支援多次烧录碟片?: 是支援多台机器?: 否可做成可载入模组?: 可可读取数位音轨?: 不可能自动侦测?: 能设备档: /dev/cm206cd, 主编号 32设定档: cm206.h核心设定的问题: Philips/LMS CM206 CDROM support?请另外阅读: cm206</CODE></BLOCKQUOTE><P>核心命令列像下面:<P><BLOCKQUOTE><CODE><PRE>cm206=&lt;io-address&gt;,&lt;interrupt&gt;</PRE></CODE></BLOCKQUOTE><P>第一个是基底位址(如 0x340), 第二个是中断号码.<P>照下面方法造设备档:<P><BLOCKQUOTE><CODE><PRE>% mknod /dev/cm206cd b 32 0</PRE></CODE></BLOCKQUOTE><P>更详细的资讯请见 cm206 档<P><H3>Optcd 驱动程式</H3><P><P><PRE>                  作者 : Leo Spiekman (spiekman@dutette.et.tudelft.nl)      支援多次烧录碟片?: 是          支援多台机器?: 否      可做成可载入模组?: 可        可读取数位音轨?: 不可            能自动侦测?: 不能                 设备档: /dev/optcd0, 主编号 17                 设定档: optcd.h         核心设定的问题: Experimental Optics Storage ... CDROM support?             请另外阅读: optcd</PRE><P>它接受下面的核心命令列:<P><BLOCKQUOTE><CODE><PRE>optcd=&lt;io-address&gt;</PRE></CODE></BLOCKQUOTE><P>参数是介面卡 I/O 基底位址.<P>设备档建立法:<P><BLOCKQUOTE><CODE><PRE>% mknod /dev/optcd0 b 17 0</PRE></CODE></BLOCKQUOTE><P>详细资讯见 optcd 档.<P><H3>Sjcd 驱动程式</H3><P><P><PRE>                  作者 : Vadim V. Model (vadim@rbrf.msk.su)      支援多次烧录碟片?: 否          支援多台机器?: 否      可做成可载入模组?: 可        可读取数位音轨?: 不可            能自动侦测?: 不能                 设备档: /dev/sjcd, 主编号 18                 设定档: sjcd.h         核心设定的问题: Experimental Sanyo H94A CDROM support?             请另外阅读: sjcd</PRE><P>核心命令列像下面这行:<P><BLOCKQUOTE><CODE><PRE>sjcd=&lt;io-address&gt;,&lt;interrupt&gt;,&lt;dma&gt;</PRE></CODE></BLOCKQUOTE><P>指出基底位址, 中断, 及DMA直接记忆体存取通道号码.(如 sjcd=0x340,10,5)<P>设备档以下面方法做:<P><BLOCKQUOTE><CODE><PRE>% mknod /dev/sjcd b 18 0</PRE></CODE></BLOCKQUOTE><P>详情见 sjcd 档案<P><H3>Bpcd 驱动程式</H3><P><P><PRE>                  作者 : Grant R. Guenther (grant@torque.net)      支援多次烧录碟片?: 不明          支援多台机器?: 否      可做成可载入模组?: 可        可读取数位音轨?: 不可            能自动侦测?: 能                 设备档: /dev/bpcd, 主编号 41                 设定档: bpcd.h         核心设定的问题: MicroSolutions backpack CDROM support?             请另外阅读: bpcd</PRE><P>这驱动程式的核心命令列如下:<BLOCKQUOTE><CODE><PRE>bpcd=&lt;io-address></PRE></CODE></BLOCKQUOTE><P>参数是使用的基底位址(如 bpcd=0x3bc)<P>设备档的建造法:<BLOCKQUOTE><CODE><PRE># mknod /dev/bpcd b 41 0</PRE></CODE></BLOCKQUOTE><P>这个驱动程式已包含於2.1版的核心原始程式中. 请看bpcd档以得到最新资讯.<P><H3>SCSI CD-ROM 驱动程式</H3><P><P><PRE>                  作者 : David Giller      支援多次烧录碟片?: 是 (受限於机器)          支援多台机器?: 是      可做成可载入模组?: 可        可读取数位音轨?: 不可            能自动侦测?: 能                 设备档: /dev/scd0, 主编号 11                 设定档: cdrom.h         核心设定的问题: SCSI CDROM support?             请另外阅读: 无</PRE><P>对每一种不同的 SCSI 卡而言, 用的命令列参数不一样, 请参考<A HREF="http://sunsite.unc.edu/mdw/HOWTO/SCSI-HOWTO.html">SCSI HOWTO</A>.<P>可以接多台机器(至多接到 SCSI bus 能接的上限). 设备档主编号是 11, 次编号由 0 起算:<P><BLOCKQUOTE><CODE><PRE>% mknod /dev/scd0 b 11 0% mknod /dev/scd1 b 11 1</PRE></CODE></BLOCKQUOTE><P>(译注: 在核心里叫做 /dev/sr0, /dev/sr1, 等, 但其实它们就是/dev/scdX)<P>此驱动程式本身不支援读取数位音轨功能, 然而有些 SCSI CD-ROM 有这能力, 可用 cdda2wav 程式达成(它使用通用 SCSI 核心介面).<P><H3>IDECD 驱动程式</H3><P><P><PRE>                  作者 : Scott Snyder (snyder@fnald0.fnal.gov)      支援多次烧录碟片?: 是          支援多台机器?: 是      可做成可载入模组?: 不可        可读取数位音轨?: 可 (在硬体支援的机种上)            能自动侦测?: 能                 设备档: /dev/hd{a,b,c,d}, 主编号 22                 设定档: cdrom.h         核心设定的问题: Include support for IDE/ATAPI CDROMs?             请另外阅读: ide-cd</PRE><P>这是 ATAPI CD-ROM 驱动程式. 它支援下面的命令列格式:<P><BLOCKQUOTE><CODE><PRE>hdx=cyls,heads,sects,wpcom,irqhdx=cdrom</PRE></CODE></BLOCKQUOTE><P>这里的 hdx 可以是 {hda,hdb,hdc,hdd}, 或只有 hd, 表示下一台机器. 只有前三个参数是必要的(cyls,heads,sects), 例如说, <CODE>hdc=1050,32,64 hdd=cdrom</CODE><P>要让 IDE 驱动程式认识你的 CD-ROM 可能有点麻烦, 特别是你有超过二台设备或超过一个 IDE 接头. 通常这需要由 LILO 送出正确的命令列参数.<A HREF="/usr/src/linux/Documentation/ide-cd">/usr/src/linux/Documentation/ide-cd</A>这档案有详细介绍, 请仔细看.<P>最近的核心对多台 IDE 设备支援的更好了. 所以如果在旧核心上有问题, 升级也许能解决.<P>有些 IDE 介面硬体有问题, 但核心可以处理. 这种情形你要送参数给核心以启动此功能.细节请见核心内文件.<P><H2><A NAME="ss4.4">4.4 起动 Linux 核心</A></H2><P><P>现在你可以用新核心启动了. 请注意看一下和以下的很像的讯息 ,它指出 CD-ROM 驱动程式有没有发现你的 CD-ROM( 讯息会因你用的 CD-ROM 种类不同而有变化)<P><BLOCKQUOTE><CODE><PRE>        hdd: NEC CD-ROM DRIVE:282, ATAPI CDROM drive</PRE></CODE></BLOCKQUOTE><P>如果讯息卷动得太快了, 应该也可以用 dmesg 或 tail /var/adm/messages 来查看.<P>如果没有找到该机器, 那就代表有问题出现了, 请看``问题与解决''一节.<P><H2><A NAME="ss4.5">4.5 挂上, 卸下, 及退出光碟片</A></H2><P><P>若想挂上 CD-ROM, 把光碟片放进机器, 然後以 <CODE>root</CODE> 身份执行<CODE>mount</CODE> 命令.(这里假设你已经如我们所建议的, 做了符号连结, 并且也有空的 /mnt/cdrom 目录)<P><BLOCKQUOTE><CODE><PRE>% mount -t iso9660 -r /dev/cdrom /mnt/cdrom</PRE></CODE></BLOCKQUOTE><P>现在你可以到 /mnt/cdrom 下去存取 CD 上的东西了.<P>你也许还想用其它的参数挂载 CD-ROM. 欲知详情, 见 man(8) 说明页.<P>你可以在 /etc/fstab 加进一行, 使 Linux 开机时就自动挂上 CD-ROM, 或给予一些挂载时的参数. 请看 fstab(5) 说明页.<P>注意, 若想要听 CD 唱片, 那就不要挂上它.<P>要卸下 CD-ROM, 以 root 身份执行 umount 命令.<P><BLOCKQUOTE><CODE><PRE>% umount /mnt/cdrom</PRE></CODE></BLOCKQUOTE><P>只有在没人存取 CD-ROM 时(包括没人目前目录在 CD-ROM 时) 才可以卸下该片子. 卸下後就可以退片了. 大多数机器都有退片钮, 不过也有一个软体退片程式<A HREF="ftp://sunsite.unc.edu/pub/Linux/utils/disk-management/eject-1.1.tar.gz">eject</A>可以靠命令就退出片子.<P>注意不要在碟片还在挂载中时退出片子( 这种状况因 CD-ROM 种类不同而可能或不可能发生.). 有些 CD-ROM 驱动程式可以在卸下时自动退片, 而挂上时自动进片. (你可以重新编译核心或用软体命令关闭这功能)<P>(译注 : 有些光碟机挂上时会把面板锁定, 就无法退片了, 当然不会不小心按到退片钮而将片子退出)<P>也有可能在放了 CD 唱片後, 无法挂上 CD-ROM 片子了. 这时你要用 CD 播放程式送出``停 止'' 命令後再尝试挂上. 这问题只在 sbpcd 驱动程式出现过.<P>Stephen Tweedie (<A HREF="mailto:sct@dcs.ed.ac.uk">sct@dcs.ed.ac.uk</A>)写了一个叫 Supermount 的程式提供了包括 CD-ROM 的可移动媒体的透明化挂载能力.你可以在<A HREF="ftp://sunsite.unc.edu/pub/linux/patches/diskdrives/">ftp://sunsite.unc.edu/pub/linux/patches/diskdrives/</A>找到.<P><H2><A NAME="ss4.6">4.6 问题与解决</A></H2><P><P>如果你按照本 HOWTO 的指示去做却还有问题, 有一些地方可以先确认一下. 这里由简单到复杂一条条列出来. 如果问题刚好出现在某步骤, 先解决这问题再进行下一步.<P><H3>第一步: 确定你用你自己编译的核心启动系统</H3><P><P>你可以检查核心中的时戳, 看看是不是有包含支援 CD-ROM 的版本. 你可以用 uname 这个命令来检查:<P><BLOCKQUOTE><CODE><PRE>% uname -aLinux fizzbin 2.0.18 Fri Sep 6 10:10:54 EDT 1996 i586</PRE></CODE></BLOCKQUOTE><P>或显示 /proc/version 档中的内容:<P><BLOCKQUOTE><CODE><PRE>% cat /proc/versionLinux version 2.0.18 (root@fizzbin) (gcc version 2.7.2) Fri Sep 6 10:10:54 EDT 1996</PRE></CODE></BLOCKQUOTE><P>如果这个时间戳记比你编译还早, 那你就是在用旧核心了. 你真的重开机过吗? 如果你 用 LILO, 是否忘记重装一次(一般执行/etc/lilo/install)? 用软碟开机的话, 做了一片新开机片, 并用它开机了吗?<P><H3>第二步: 确定需要的核心驱动程式有被编译进去</H3><P><P>你可藉由观察 /proc/devices 来看编译进了什麽驱动程式:<P><BLOCKQUOTE><CODE><PRE>% cat /proc/devicesCharacter devices: 1 mem 2 pty 3 ttyp 4 ttyS 5 cua 7 vcsBlock devices: 3 ide022 ide1</PRE></CODE></BLOCKQUOTE><P>首先看你的 CD-ROM 驱动程式. CD-ROM 都是区块设备. 在这里我们看到主编号 22 的idecd 驱动程式存在著.<P><BLOCKQUOTE><CODE><PRE>% cat /proc/filesystems        ext2        msdosnodev   proc        iso9660</PRE></CODE></BLOCKQUOTE><P>你也可以藉由看 /proc/ioports 档来看使用了那些 I/O port:<P><BLOCKQUOTE><CODE><PRE>howto % cat /proc/ioports ...0230-0233 : sbpcd ...</PRE></CODE></BLOCKQUOTE><P>如果有东西你记得有编译但却没显示, 那麽就是你设置核心时出了问题. 从再设置及重建核心开始, 再重复安装核心的步骤.<P><H3>第三步: 起动时, 核心有侦测你的机器吗?</H3><P><P>当核心起动时, 确定你的 CD-ROM 被侦测到了. 应该在开机讯息里可以看到. 如果讯息卷动太快, 看不到, 你可以用 dmesg 命令来叫回它:<P><BLOCKQUOTE><CODE><PRE>% dmesg</PRE></CODE></BLOCKQUOTE><P>或 者<P><BLOCKQUOTE><CODE><PRE>% tail /var/adm/messages</PRE></CODE></BLOCKQUOTE><P>如果开机没找到, 那一定某处有问题. 确定它开电源了, 并且连线也都接对了. 如果你的机器有位址的跳线(如 SCSI ID 或 562B 的 ID), 确定它设在正确位置上(例如, 若是只有一台则设 "drive 0") ATAPI CD-ROM 若是该 IDE 排线上唯一一台, 则必须设 "single" 或 "master", 不要设 "slave". 如果在 DOS 下很正常, 那你就可以相信硬体是正常的了.<P>有些驱动程式用自动侦测, 有些不用, 而且自动侦测也不是完全可信的. 使用你的驱动程式提供的核心命令列选项. 如果你不是很确定 I/O 位址或其它参数的话, 你可能要试好几遍. LILO 可以被设成允许你起动时手动输入参数.<P>另一个可能就是你用错驱动程式了. 有些文件将专属介面写成 IDE, 使人们误以为它是ATAPI 的机种.<P>还有一个可能是你的机器(或介面卡)是那种需要 DOS 驱动程式来驱动它的所谓 ``相容型''. 这样的话, 你要先用 DOS 开机, 载入这个驱动程式, 再按Control-Alt-Del 重起动 Linux.<P>如果本文件中没列出你的机器, 那可能在 Linux 下还没有驱动程式. 你可以看一下文後的参考资料表, 试著求一点帮助.<P><H3>第四步: 你 能 从 机 器 上 读 出 资 料 吗?</H3><P><P>试著从 CD-ROM 读资料. 打入以下命令後, 应该可以看到 CD-ROM 的灯亮起来(如果有灯的话), 而且也不会回报错误. 照你的驱动程式的设备档, 并确定放了一片 CD-ROM 片子;按下 Control-C 离开.<P><BLOCKQUOTE><CODE><PRE>dd if=/dev/cdrom of=/dev/null bs=2048^C124+0 records in124+0 records out</PRE></CODE></BLOCKQUOTE><P>如果成功, 那核心就能成功的和机器通讯, 你可以跳到下一步.<P>如果不能的话, 问题可能出在设备档. 确定在 /dev 下的设备档的主编号及次编号如前面写的一样. 也检查一下它是否允许读取及写入权. <P>也有一点点可能是硬体问题. 可能的话, 在 DOS 下试试看, 确认是不是这状况.<P><H3>第五步: 你 能 挂 上 片 子 吗?</H3><P><P>如果你能读取但不能挂上, 首先确定一下核心有没有支援 ISO-9660 档案系统. 如前所述, 看 /proc/filesystems 档.<P>注意一下, 请在挂上时用 ``-t iso9660'' 及 ``-r''选项. 还有在 CD-ROM 中放的是资料碟片, 不是唱片. 通常要以 root 身份执行挂上命令.<P>确定挂载点存在, 且是个空目录.<P>如果你想开机时自动挂载, 确定在 /etc/fstab 中有正确的一行.<P>如果你有跑 syslog, 那可能你看不见有些核心发出的讯息. 试试 dmesg 命令:<P><BLOCKQUOTE><CODE><PRE>% dmesgSBPCD: sbpcd_open: no disk in drive</PRE></CODE></BLOCKQUOTE><P>错误也可能记录在 /var/adm 目录下的档案中, 全看你的系统怎麽设的.<P><H3>消除听音乐时的问题</H3><P><P>如果你的机器读 CD-ROM 时没问题, 但听唱片就有问题, 这里提供些解决之道.<P>你需要些可放唱片的软体. 有些程式可能和你的机器不相容. 试试其它的或重新编译它.一个找软体的好地方在<A HREF="ftp://sunsite.unc.edu/pub/linux/apps/sound/cds/">ftp://sunsite.unc.edu/pub/linux/apps/sound/cds/</A><P>有些 CD-ROM 不支援放唱片. 检查 README 档或原始码看看是不是这情形.<P>检查一下声音是不是会从耳机孔出来. 如果可以, 那八成和你的音效卡有关. 使用混音程式设定输入频道及音量. 确定你从 CD-ROM 接了条音源线到音效卡上. 也确认一下核心的音效卡驱动程式存在及可用(请看<A HREF="http://sunsite.unc.edu/mdw/HOWTO/Sound-HOWTO.html">Sound HOWTO</A>).<P><H3>要是一切都没用呢?</H3><P><P>如果你还有问题, 这里有一些最後的建议, 你可以试试:<P><UL><LI>小心地重读这份 HOWTO 文件</LI><LI>读文後列出的参考文件, 特别是相关的核心原始码的 README 档.</LI><LI>在 comp.os.linux 或其它 USENET 新闻组贴帖子, 问问题.</LI><LI>送一个问题到 Linux 通信论坛</LI><LI>用最新版的 Linux 核心</LI><LI>向店家求救</LI><LI>找你的 CD-ROM 厂商</LI><LI>寄封信给相关驱动程式的作者</LI><LI>寄信给我(作者)</LI><LI>叫出 emacs, 打入``ESC-x'',``doctor'' (:-)</LI></UL><P><HR><A HREF="CDROM-HOWTO-5.html">Next</A><A HREF="CDROM-HOWTO-3.html">Previous</A><A HREF="CDROM-HOWTO.html#toc4">Contents</A></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -