|
|
我的系统是Arch Linux 0.7,最近因为将主板换成了ASUS A7N8X,所以重装了系统,在装驱动时遇到了一点问题,费了点周折,写下来,让兄弟们参考参考:
安装时我是自己编译内核,2.6.10加入了对NForce网卡(forcedeth)的支持,直接选上就OK了。
摄像头驱动也很简单,编译内核时选上video for linux,在 http://qce-ga.sourceforge.net/ 上下载驱动,qc-usb,现在的版本是0.6.2。解压后,有一个quickcam.sh安装脚本,向导式的。中间需要输入几次root密码。安装完成后,我又装了xawtv,然后在/dev下建立符号连接ln -s /dev/v4l/video0 /dev/vide0。如果没有/dev/v4l/video0,可以建立一个:mknod /dev/video0 c 81 0,这样符号连接都不要建了,然后改变权限,chmod a+rw /dev/video0(或chmod a+rw /dev/v4l/video0)。启动xawtv:xawtv -c /dev/video0,就可以看到影像了。
官方的声卡驱动是基于OSS的,我没装,直接用ALSA──看了文档知道可以用i810的驱动。下载alsa-driver-1.0.8.tar.bz2、lib-1.0.8.tar.bz2e及alsa-utils-1.0.8.tar.bz2。分别解包,进入driver目录,./configure --with-cards=intel8x0 --with-sequencer=yes;make,su,make install。然后./snddevices(文档提示说devfs用户可以略过这一步,我用的是udev,没管,运行了再说(因为我的/dev目录下没有声卡设备)),再修改权限,chmod a+rw /dev/dsp /dev/mixer /dev/sequencer /dev/midi(其实,Arch用户不用这么麻烦,只要将普通用户加入audio组就行了)。lib及utils就只要./configure;make,su,make install就行了。接下来就是alsamixer,开启声音。在/etc/modprobe.conf中加入模块:
#ALSA portion
alias char-major-116 snd
alias snd-card-0 snd-intel8x0
#OSS/Free portion
alias char-major-14 soundcore
alias sound-slot-0 snd-card-0
#card #1
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
在home目录下建立.asoundrc文件,内容如下:
pcm.nforce-hw {
type hw
card 0
}
pcm.!default {
type plug
slave.pcm "nforce"
}
pcm.nforce {
type dmix
ipc_key 1234
slave {
pcm "hw:0,0"
period_time 0
period_size 1024
buffer_size 4096
rate 44100
periods 518
}
bindings {
0 0
1 1
}
}
ctl.nforce-hw {
type hw
card 0
}
至此已基本搞定。但还有点尾工:
编辑/etc/esd.conf
[esd]
auto_spawn=1
spawn_options=-terminate -nobeeps -as 2 -d default
spawn_wait_ms=100
第三行中,去掉-d default。
进入KDE,在控制中心,将声卡硬件选择为Enlightement sound daemon。Kmix中不要选Restore volumes on logon。
运行alsactl store
建立/etc/rc.d/alsamixer
#!/bin/bash
. /etc/rc.conf
. /etc/rc.d/functions
case "$1" in
start)
stat_busy "Restoring Alsa mixer volumes"
alsactl restore
if [ $? -gt 0 ]; then
stat_fail
else
add_daemon alsamixer
stat_done
fi
;;
stop)
stat_busy "Storing Alsa mixer volumes"
alsactl store
if [ $? -gt 0 ]; then
stat_fail
else
rm_daemon alsamixer
stat_done
fi
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
echo "Usage $0 {start|stop|restart}"
;;
esac
运行chmod 755 /etc/rc.d/alsamixer,并将/etc/rc.d/alsamixer加入启动daemons,这样每次启动后都不用再调整音量了。
看过ArchWiki的兄弟应该比较熟悉上面的方法
至此,一切搞定。 |
|