📄 cd-writing-howto-4.html
字号:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>4</title>
</head>
<body>
<table>
<tr>
<td bgColor="#FFFFFF" vAlign="top"><a href="CD-Writing-HOWTO-5.html"><img alt="Next" src="next.gif" width="16" height="16"></a>
<a href="CD-Writing-HOWTO-3.html"><img alt="Previous" src="prev.gif" width="16" height="16"></a> <a href="CD-Writing-HOWTO.html#toc4"><img alt="Contents" src="toc.gif" width="16" height="16"></a>
<hr>
<h2><a name="s4">4. 常問問題及答案</a></h2>
<p>
<h2><a name="ss4.1">4.1 "燒錄程序有多敏感"</a></h2>
<p>答案:這就要看你的燒錄器了。通常較新的型號都會有
1MB 或更多,這樣它便可以支持 1-2
秒沒有資料。如果你想得到更多的資料你可以問生產商或看看硬體手冊。
<p>不管那些資料緩衝器的大小如何你都需要保證一個長時間
300 kb/s 或 600 kb/s 的經常輸出。
<p>一些硬碟密集的工作例如更新 <i>locate</i>-資料庫。減低
maxium flow rate
就肯定會損壞你的光碟;你最好在燒錄光碟前用 <code>cron</code>,
<code>at</code> 或 <code>anacron</code>
來檢查一下你有否執行這些工作。
<p>另一方面,有些人說他們能一面編譯核心一面燒錄光碟都沒有任何問題。的確你要一部很快的機器才能做這個實驗。
<p>
<p>
<p>
<h2><a name="ss4.2">4.2 "fragmentation 會否影響輸出呢?"</a></h2>
<p>Fragmentation
通常都不會影響輸出。不過你可以很容易制造 pathological
cases of fragmentation 來減低你的硬碟輸出大約 100 kbyte/second。所以千萬不要這樣做。:-)
<p>是的,你的硬碟會 fragmented
經過經年的使用。如果越快fragmented,那檔案系統便越滿。經常保持
10% 或 20% 的空間,這樣燒錄光碟便沒有問題了。
<p>如果你不肯定的話你可以看看啟動時的訊息,你就可以看到你的檔案系統有幾多磁碟空間
fragmentation 的百份比。你可以用一個非常危險的指令
<p>
<blockquote>
<code>
<pre>shell> e2fsck -n /dev/sda5 # '-n' is important!
[stuff deleted - ignore any errors]
/dev/sda5: 73/12288 files (12.3% non-contiguous)
</pre>
</code>
</blockquote>
<p>在這個範例中磁碟空間似乎非常鬆散 ─ 不過這裏只有
73
個非常小的檔案在這個檔案系統中,所以這個只不過是一個很少的值。
<p>現在有一個實驗性的工具軟件叫做 e2defrag 它可以用來
defragment extended-2
檔案系統。不過現在的版本在私人環境中還是不夠穩定。如果你真想
defragment 你的檔案系統,請先備份 (最好:兩份),嘗試
restore 備份,然後建立一個新的檔案系統 (會破壞舊有的)
最後再 restore 備份。總之這是最安全的技巧。
<p>
<p>
<h2><a name="ss4.3">4.3 "是否可以將光碟影像檔儲存在
UMSDOS 檔案系統中呢? "</a></h2>
<p>可以。只有一個檔案系統是不能可靠和快速來燒錄光碟的,這就是
<i>network filesystem</i> (<i>NFS</i>)。
<p>我現在是在一部 (486/66) PC 中使用 UMSDOS 來讓Linux 和
DOS/Win 共享磁碟空間,而這部 486
是專門來燒錄光碟用的。
<p>
<p>
<h2><a name="ss4.4">4.4 "有無方法可以克服 iso9660
的限制?"</a></h2>
<p>可以。你可以用任何一個檔案系統來燒錄光碟。不過你不能在其他的操作系統中使用這隻光碟。
<p>用這個方法就行了:
<p>
<ul>
<li>建立一個 650 MB 的空檔案。
<blockquote>
<code>
<pre>dd if=/dev/zero of="empty_file" bs=1024k count=650
</pre>
</code>
</blockquote>
<li>然後建立一個extended-2 檔案系統在這個檔案之上
<blockquote>
<code>
<pre>bash> /sbin/mke2fs empty_file
empty_file is not a block special device.
Proceed anyway? (y,n) y
</pre>
</code>
</blockquote>
<li>用loopback-devices 來掛上這個檔案
<blockquote>
<code>
<pre>mount -t ext2 -o loop=/dev/loop1 empty_file /mnt
</pre>
</code>
</blockquote>
<li>抄寫一些檔案到 /mnt 然後卸除。
<li>用 <code>cdwrite</code> 或 <code>cdrecord</code>
來看看這個檔案 ( 它現在該不是空的 ) 是不是 iso9660-影像。</li>
</ul>
<p>如困你想在<code>/etc/fstab</code>
加一個出入口給那隻光碟的話,你便需要取消對那隻光碟的檢查,例如:
<p>
<blockquote>
<code>
<pre>/dev/cdrom /cdrom ext2 defaults,ro 0 0
</pre>
</code>
</blockquote>
<p>第一個零代表 "不要包含在 dumps"
,第二個零代表 "在啟動時不要檢錯誤" ( fsck
將不會檢查光碟內的錯處 ) 。
<p>
<p>
<h2><a name="ss4.5">4.5 "怎樣讀取及寫入音樂光碟?"</a></h2>
<p>現在有多個軟件。最新的叫作 "cdpranoia"
它可以在以下地方下載
<p>
<blockquote>
<a href="http://www.mit.edu/afs/sipb/user/xiphmont/cdparanoia/index.html">http://www.mit.edu/afs/sipb/user/xiphmont/cdparanoia/index.html</a>
<p> </p>
</blockquote>
<p>或者你可以嘗試 "cdda2wav" 和 "sox"
的組合,可以在 sunsite 和它的 mirror 中取得
<p>
<blockquote>
<a href="ftp://sunsite.unc.edu/pub/Linux/apps/sound/cdrom/cdda2wav0.71.src.tar.gz">ftp://sunsite.unc.edu/pub/Linux/apps/sound/cdrom/cdda2wav0.71.src.tar.gz</a>
<p><a href="ftp://sunsite.unc.edu/pub/Linux/apps/sound/convert/sox-11gamma-cb3.tar.gz">ftp://sunsite.unc.edu/pub/Linux/apps/sound/convert/sox-11gamma-cb3.tar.gz</a></p>
</blockquote>
<p><code>cdda2wav</code> 令你可以由光碟中抓取到一段特定的(或一整條)音軌然後可以將它轉為
.wav 檔案。 <code>sox</code> 可以將 wav 檔案轉回音樂光碟的cdda
格式,然後可以用 <code>cdwrite</code> 將它燒錄在光碟上。
如果你是使用最新版本的<code>cdrecord</code>
,你便不需要使用 <code>sox</code> 因為 <code>cdrecord</code>
已內置支援 .au 和 .wav 檔案。
<p>
<p>
<h2><a name="ss4.6">4.6 "啟動系統後怎樣找尋SCSI-devices?"</a></h2>
<p><code>drivers/scsi/scsi.c</code> 有所需要的資料。
<p>
<blockquote>
<code>
<pre>/*
* Usage: echo "scsi add-single-device 0 1 2 3" >/proc/scsi/scsi
* with "0 1 2 3" replaced by your "Host Channel Id Lun".
* Consider this feature BETA.
* CAUTION: This is not for hotplugging your peripherals. As
* SCSI was not designed for this you could damage your
* hardware !
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -