发信人: jdqbin(HOT狐) 
整理人: zhcharles(2002-01-30 15:40:11), 站内信件
 | 
 
 
你可以看看 /usr/share/example/worm/ 目录下的说明,内有制造 ISO Image 的方法,以及烧 CD 的 script。 
 
 步骤∶ 
 1. add "device worm0" into kernel config file 
 2. install mkisofs and team from freebsd packages 
 3. use "makecdfs.sh" to make an ISO image from a directory source, or "dd if=/dev/rcd0c of=/tmp/cd.iso bs=2048" if making image from CDROM 
 4. use "burncd.sh" shell script to burn CD ISO Image 
 
 *新的烧录软体* 
 这个新的 cdrecord 程式号称支援大多数的 CDR,有兴趣的可以试试看。 
 ftp://freebsd.csie.nctu.edu.tw/pub/jdli/collect/cd-recorder/ 
 
 --------------------- 
 
 SUPPORT DRIVE 
 ============= 
 
 HP∶HP4020, HP6020 
 PHILIPS∶CDD522, CDD2000, CDD2600 
 PLASMON∶RF4100 
 
 FreeBSD Version 2.2 or newer 
 
 CONFIG DEVICE 
 ============= 
 
 1. kernel config 
 
 在 kernel config 里加上下面几行∶ 
 
 controller ncr0 ; depend on which SCSI card you use 
 controller scbus0 ; MUST HAVE 
 device worm0 at scbus? ; MUST HAVE 
 
 後重新 compile kernel。 
 
 2. device node 
 
 到 /dev 下执行 ./MAKEDEV worm0 
   
 
 USAGE 
 ===== 
 
 1. 烧 raw image 
 
 /usr/share/examples/worm/burncd.sh 
 
 这是个用来将 raw image 烧入 CD-R 里的 shell script。使用前需先安装team 这个 package,如果用的是 Philips CDD2000 or CDD2600,还要修改 35 行,把 HP 4020i 改为 PHILIPS CDD2000。然後直接用∶ 
 
 burncd.sh [raw image file name] 
 
 来烧录。raw image 的来源可以是用 mkisofs 做出来的,也可以是用 Easy CDPro、WinOnCD 等软体制作出来之 image。 
 
 2. 制作 ISO9660 / Rock Ridge 之 raw image 
 
 /usr/share/examples/worm/makecdfs.sh 
 
 使用这个 shell script 来将一个目录结构转成 ISO9660 或 Rock Ridge 格式的 raw image。使用前需安装 mkisofs 这个 package。使用方法为∶ 
 
 makecdfs.sh [-b] {cd-title} {input-tree} {output-file} {ID} 
 
 -b∶加上这个参数可以做出可开机光碟。内定的 boot image 是 floppies/boot.flp (相对於 input-tree) boot.flp 可以直接拿 FreeBSD 的安装片来用。 
 
 cd-title∶这片 CD 的 volume name。 
 
 input-tree∶要制作 raw image 的目录顶点。 
 
 output-file∶做出来的 raw image 之档名。 
 
 ID∶这片 CD 是谁做的。 
 
 这样子做出来的光碟片在 DOS 上面还是 8.3 档名档式,不能有长档名。 使用 Rock Ridge 格式,在 UNIX 下面有长档名,但不支援中文长档名。 如果不喜欢这样做出来的光碟每个目录都有个 TRANS.TBL,把 script 里 mkisofs 的 -T 参数去掉。如果不需要 Rock Ridge 格式,把 -R 参数去掉。 
 
 3. On the Fly 
 
 by [email protected]∶ 
 
 #!/bin/sh 
 if [ $# -lt 3 ]; then 
 echo "usage: $0 input-tree \"cd-title\" \"copyright\" [dummy]" 
 elif [ ! -d $1 ]; then 
 echo "$0: $1 is not a directory tree." 
 elif [ "`id -u`" != "0" ]; then 
 echo "Sorry, this must be done as root." 
 else 
 tree=$1; shift 
 title="$1"; shift 
 copyright="$1"; shift 
 echo -n "Place CD in the worm drive now and press return: " 
 read junk 
 scsi -f /dev/rworm0.ctl -c "0 0 0 0 0 0" >/dev/null 2>&1 
 wormcontrol select HP 4020i 
 wormcontrol prepdisk double $* 
 wormcontrol track data 
 # 若需使用 Rock Ridge 再加上 -R 参数 
 mkisofs -a -d -N -D -V "$title" -P "$copyright" $tree \ 
 | rtprio 5 team -v 1m 5 | rtprio 5 dd of=/dev/rworm0 obs=20k 
 wormcontrol fixate 1 onp 
 
 4. CD Copy 
 
 by [email protected] 
 
 #!/bin/sh 
 if [ "`id -u`" != "0" ]; then 
 echo "Sorry, this must be done as root." 
 else 
 echo -n "Place CD in the worm drive now and press return: " 
 read junk 
 scsi -f /dev/rworm0.ctl -c "0 0 0 0 0 0" >/dev/null 2>&1 
 wormcontrol select PHILIPS CDD2000 
 wormcontrol prepdisk double $* 
 wormcontrol track data 
 rtprio 5 dd if=/dev/wcd0c bs=2048 | rtprio 5 team -v 1m 5 \ 
 | rtprio 5 dd of=/dev/rworm0 obs=20k 
 wormcontrol fixate 1 
 fi 
 
 另外提一下 SCSI cdrom on-the-fly cd-copy 
 5. cd-write 
 
 ftp://freebsd.csie.nctu.edu.tw/pub/FreeBSD-current/ports/sysutils/cd-write 
 
 图形介面的 CD 烧录软体。除了可以烧资料光碟外,也可以拿来抓 CD 音轨、烧录 Audio CD。在 FreeBSD 下面似乎不支援 Disk At Once 烧录。目前有 ports 可以直接安装。 
 
 6. cd-record 
 
 ftp://freebsd.csie.nctu.edu.tw/pub/jdli/collect/cd-recorder/cdrecord/ \ 
 cdrecord-1.5a5.tar.gz 
 
 支援不少 CD-R,可烧录 multi-seesion、Audio CD,支援 mode 1、mode 2 CD-ROM XA mode 1、CD-ROM XA mode 2、CDI 等格式 (看来好像可以烧 Video-CD?) 功能看起来很强,不过在 FreeBSD 下面还没看到比较多的使用心得。在 FreeBSD 下面使用需要先做∶ 
 
 cd /dev; ln -s rworm0.ctl scgx 
 
 的动作 (Report by [email protected]) 
 
 Reported by [email protected]∶ 
 
 Freebsd2.2.5 
 CDR: YAMAHA 400tx 
 烧录软体: cdrecord1.5 
 (抓自freebsd.csie.nctu.edu.tw /pub/packages-stable/All/cdrecord-1.5.tgz) 
 
 简单说明: 
 1. cdrecord可以支援多种CDR(包括YAMAHA CDR这是为何要用这个软体的原因. :) 
 2. 不必用到 worm 
 3. kernel部份只要有SCSI光碟机相关设定就可以.( 如 device cd0 ) 因为我们本来的光碟机是IDE的,所以加上CDR後修改kernel设定加上 scsi cdrom 的 device, 然後重做kernel. 
 4. pkg_add 之後到 /dev/ 下 
 ln -s cd0c scgx (cd0c: 请依自己的连接做修正) 
 (此部份与freebsd.csie.nctu.edu.tw内文件有点出入, 该文件说明是 ln -s rworm0.ctl scgx) 
 5. cdrecord -scanbus 可以测试看看CDR是否抓到cdrecord 列出相关参数 
 6. 基本操作 
 cdrecord -v -dummy speed=4 dev=6,0 cdrom1.iso 
 -dummy表示测试..除了lazer不起动外, 其它动作会跑一次。speed=2 or speed=4 (就是两倍或四倍速写入) 
 dev=6,0 (请看 CDR 是设成"几号" ) 建议用dummy先测一下再烧.. 
 
 ps.1 image file 用 mkisofs 做, mkisofs 有 packages 可以用。 
 ps.2 个人用四倍速烧woju
 
 7. tosha 
 
 ftp://freebsd.csie.nctu.edu.tw/pub/FreeBSD-current/ports/audio/tosha 
 
 FreeBSD 下面用来抓音轨的程式,目前只适用於 SCSI CD-ROM 上面。 
 
 
  ----  
  伪装甚於一切的对手? 
 
 
           QQ:505005 | 
 
 
 |