发新话题
打印

使用移动设备

使用移动设备

初始化和使用软盘设备

pc式的软盘工作方式和诸如硬盘的磁盘设备是差不多的。你得首先低级格式化他们,然后才能使用。
使用1440kB的软盘设备,首先:
    fdformat -f /dev/rfd0a
然后使用disklabel创建一个分区
    disklabel -rw /dev/rfd0a floppy3
然后创建文件系统
    newfs -m 0 -o space -i 16438 -c 80 /dev/rfd0a
现在这个软盘就可以向其他磁盘一样被装载了

如果你有一个ms-dos格式的软盘,在netbsd理使用它,可以这样做:
    mount -t msdos /dev/fd0a /mnt
另外,除了这种使用外。我们更方便的是以文件系统的方式直接解压文档到原始设备raw.比如:
tar cvfz /dev/rfd0a file1 file2 ...
另外的处理可以用在ms-dos的软盘中,即sysutils/mtools 。。。

怎样使用zip 盘

    1,看系统是否有zip
    dmesg|grep -i zip
sd0 at atapibus0 drive 1: <IOMEGA  ZIP 100       ATAPI, , 14.A> type 0 direct removabl
看起来有哦。并且别标志为sd0,就像其他scsi磁盘一样。
事实是:这里的zip是一个atapi设备,scsizip同样也会这样显示。ZIP被标志为可移动的,意思是说
你可以使用eject sd0 来卸载他。
    2,插入zip disk
    3,检查zip分区
    disklabel sd0
    type: ATAPI
...
8 partitions:
#        size   offset     fstype   [fsize bsize   cpg]
  d:   196608        0     unused        0     0         # (Cyl.    0 - 95)
  h:   196576       32      MSDOS                        # (Cyl.    0*- 95)
disklabel: boot block size 0
disklabel: super block size 0

d 是整个磁盘
h 是什么呢?看起来是msdos文件系统。
4,装载
    mount -t msdos /dev/sd0h /mnt
5,访问文件系统
    ls -la /mnt
    #

total 40809
drwxr-xr-x   1 root  wheel     16384 Dec 31  1979 .
drwxr-xr-x  28 root  wheel      1024 Aug  2 22:06 ..
-rwxr-xr-x   1 root  wheel   1474560 Feb 23  1999 boot1.fs
-rwxr-xr-x   1 root  wheel   1474560 Feb 23  1999 boot2.fs
-rwxr-xr-x   1 root  wheel    548864 Feb 23  1999 boot3.fs
-rwxr-xr-x   1 root  wheel  38271173 Feb 23  1999 netbsd19990223.tar.gz
6,卸载
    umount /mnt
7,弹出
    eject sd0


读取数据光盘

数据光盘可能含有程序,音频文件,电影,源代码,一般文件,等等。在访问这些文件前,这个光盘必须首先被装载
到一个目录,很像硬盘,而硬盘可能使用多种文件系统(ffs,lfs,ext2fs...),而数据光盘只有一种文件系统
cd9660,netbsd的cd9660文件系统可以处理不含有Rockridge and Joliet扩展的数据光盘。

数据光盘设备被命名为/dev/cd0a (scsi和ide)

1,看你的系统是否有cd设备:
    dmesg|grep ^cd
cd0 at atapibus0 drive 0: <CD-R/RW RW8040A, , 1.12> type 5 cdrom removable
     cd0: 32-bit data port
     cd0: drive supports PIO mode 4, DMA mode 0
     cd0(pciide0:1:0): using PIO mode 0, DMA mode 0 (using DMA data transfers)
这里我们有一个设备cd0,他是一个ide/atapi设备,在atapibus0上。当然,这个设备也是可移动的。你也可弹出(eject)它。

2,插入光盘
3,装载
    mount -t cd9660 /dev/cd0a /mnt
    这个命令不会提示任何信息。他命令系统装载/dev/cd0a到/mnt目录,使用cd9660文件系统。/mnt必须是存在的目录。
4,察看内容
    ls /mnt

NSTALL.html INSTALL.ps   TRANS.TBL    boot.catalog
     INSTALL.more INSTALL.txt  binary       installation
哦。看起来一切正常。当然是一个netbsd光盘
5,卸载
    umount /mnt
如果光盘正在被访问。这个命令不会有效。但如果你关闭系统,这个光盘将被自动卸载,不用任何担心。
6,为他添加/etc/fstab入口
# Device        mountpoint      filesystem  mount options
     /dev/cd0a       /cdrom          cd9660      ro,noauto   
    确定/cdrom目录存在,如果不存在
    mkdir /cdrom
现在你可以使用mount /cdrom来装在cd了。
noauto参数指定系统启动时不自动装载cd,因为通常系统启动时,光驱里可能没有cd.
7,弹出
    eject cd0
如果cd仍然被装载,那么这个命令将先卸载,然后弹出。

允许普通用户访问cds

netbsd默认只有root可以装载文件系统。如果想让普通用户访问,你可以这样做:
    赋予普通用户设备访问权限
    chmod go+rw /dev/cd0a
    通知netbsd允许普通用户装载系统
    sysctl -w vfs.generic.usermount=1
注意:用户必须有自己的装载点。比如在用户主目录:
    cd
    mkdir cdrom

装载iso 镜像文件

有时候,在你刻录时需要现装载一个iso9660的镜像文件;这样做,你可以检查文件或者将他们拷贝出来。如果你是一个linuxer,也许已经知道使用loop
文件系统。netbsd不一样,他使用vnode 伪设备
    1,设置vnode,指定iso文件
    vnconfig -c vnd0 ~/mycd.iso
    2,装载他
    mount -t cd9660 /dev/vnd0c /mnt
    3,好了,已经装到/mnt目录了
    4,使用完后,卸载
    umount /mnt
    5,最后取消伪设备
    vnconfig -u vnd0
注意,这种方法可以用于任何文件(如果这个文件包含一个文件系统,不仅仅是iso镜像)

视频光盘

播放mpeg视频流,很多dvd播放器可以在netbsd中播放他们。装载光盘,然后使用graphics/mtv,multimedia/xine-ui,multimedia/mplayer或者multimedia/gmplayer。


音频光盘(cd)

有两种方法:
    1,直接使用硬件播放。比如cdplay,audio/xmcd,kscd,混音程序mixerctl,audio/xmix,audio/xmmix
audio/cam,kmix等
    2,不使用数字模拟转换,直接通过binary form方式读取。
   
atapi scsi cd-roms
    audio/cdd
    cdd -t 2 `pwd`
    这样抓取track-02.cda到当前目录

scsi cd-roms
    audio/tosha
    tosha -d CD-ROM-device -t 2 -o track-02.cda
对大部分atapi,scsi和一些cdrom
    audio/cdparanoia,它可以将音轨抓取为wav,aiff,aiff-c 或者原是格式。
    cdparanoia -g /dev/rcd0d 2 track-02.wav
如果想抓取所有音轨;
    cdparanoia -g /dev/rcd0a -B


创建mp3(从cd音频)

1,通过上面的方法抓取音轨
2,转换到wav(cdd)
    audio/sox
    sox -s -w -c 2 -r 44100 -t cdr track-02.cda track-02.wav
3,编码
    audio/bladeenc
    bladeenc -128 -QUIT track-02.wav
    audio/lame
    lame -p -o -v -V 5 -h track-02.wav track-02.mp3
    可以根据硬件选择编码率

使用cd-r刻录数据光盘

    两个步骤:首先,生成image,然后,刻录到光盘
    1,读取预先存在的iso image
    dd if=/dev/rcd0a of=filename.iso bs=2k
    2,生成iso image
    放置所有刻录的文件到一个目录。生成iso image,使用iso9660 (filename=8+3)
    sysutils/cdrecord中的mkisofs命令
例子:假设所有文件/usr/tmp/data
    cd /usr/tmp
    mkisofs -o data.iso -r data
    3,刻录
    cdrecord -v dev=/dev/rcd0d data.iso
    4,测试


使用cd-r刻录音频-光盘

    1,抓取cd为wav
    2,刻录
    cdrecord -v dev=/dev/rcd0d -audio -pad *.wav


从mp3创建音频光盘cd

如果你已经转换cd到mp3,现在想刻录成音频cd,首先转换mp3到wav,然后刻录。
    1,从mp3转换到wav
    mpg123 -w foo.wav foo.mp3
    2,刻录(同上面的刻录一样)

复制音频cd

    cdrdao read-cd --device /dev/rcd0d data.toc
    cdrdao write --device /dev/rcd1d data.toc
复制数据光盘(两个光盘)

一个cd-r一个cdrom。你可以直接使用命令
    cdrecord dev=/dev/rcd1d /dev/rcd0d
    cd0 is cdrom ; cd1 is 空盘

使用cd-rw

    同cd-r的使用方法一样。
如果想擦出一个cd-rw光盘,可以使用:
    cdrecord dev=/dev/rcd0d blank=fast

dvd 支持

    现在,netbsd支持dvd媒体,通过iso9660.新的udf文件系统目前还不支持,但大部分dvd使用iso9660.dvd,divx 和其他avi文件可以使用
graphics/ogle 或者 graphics/gmplayer

TOP

发新话题