在FreeBSD中自动配置声卡

    在FreeBSD中要使用声卡,首先要将声卡的驱动程序加载进系统,但是机器究竟需要使用什么样的声卡驱动程序却是一个问题,按照相关手册中的介绍,我们可以输入这样的命令:

  1. # kldload snd_driver &

    然后您会发现,声卡确实能够工作了,可一旦重启机器后,仍然得要输入这个命令才能让声卡继续工作,怎么才能够不用这么麻烦呢?如果您已经能够听到声卡发出的声音了,那么在终端下输入下面命令:

  1. # cat /dev/sndstat


    然后观察输出,也许您的输出格式和我的比较相似:

FreeBSD Audio Driver (newpcm: 32bit 2007061600/i386)
Installed devices:
pcm0: <Acer Labs M5451> at io 0x1800 irq 9 kld snd_t4dwave [GIANT]
(1p:1v/1r:1vchannels duplex default)

    上面信息中的kld snd_t4dwave向我们揭示了驱动的名称,在我这里是snd_t4dwave,好了,接下来我们要更改配置文件 /boot/loader.conf , 让系统启动能够自动加载这个驱动。首先我们在默认的启动配置文件(/boot/defaults/loader.conf )加载项中找到关于这个驱动的配置,因为这个配置文件内容比较多,我们可以用gawk来抽取我们需要的信息:

  1. # gawk '$0 ~ /snd_t4dwave/ {print $1}' /boot/defaults/loader.conf

    snd_t4dwave_load="NO"

    输出信息顾名思义,就是加载snd_t4dwave这个驱动程序的开关,将上面的这句改为

    snd_t4dwave_load="YES"

后,添加到/boot/loader.conf中,那么再次重启机器,声卡将会被自动加载进系统。

    上面说了这么多,其实步骤还是挺繁琐的,这里有一个script,能够自动帮助您完成上面所有的工序:

  1. #! /bin/sh
  2. ################################################################################
  3. #    Program: sndConfig
  4. #
  5. #          FreeBSD默认不加载声卡驱动,这个程序能够自动检测您的声卡类型,并修改
  6. #    这一默认行为
  7. #
  8. #    Author: hailongchang@163.com
  9. #
  10. #    Date: 2008/05/10
  11. ################################################################################
  12.  
  13. snd_pos=/dev/sndstat
  14.  
  15. if  [ ! -e $snd_pos ]; then
  16.     `kldload snd_driver &`
  17. fi
  18. snd_driver=`cat /dev/sndstat | gawk  '$0 ~ /kld/ {print}'  |
  19. gawk  'match($0,/snd_[a-zA-Z0-9]+/,dname) {print dname[0]}' `
  20.  
  21. snd_tag=`gawk  '$0 ~ /' "$snd_driver" '/ {print $1}'  /boot/defaults/loader.conf`
  22.  
  23. snd_change=`echo $snd_tag | sed  's/NO/YES/' `
  24.  
  25. echo  "I will write this sentence:  "  `echo $snd_change`   " to your /boot/loader.conf."
  26.  
  27. `echo $snd_change >> /boot/loader.conf`

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值