LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 3338|回复: 11

古怪的/dev/dsp 问题 (无法建立dsp) ---alsa问题解决,更新做结尾----

[复制链接]
发表于 2005-1-1 21:04:14 | 显示全部楼层 |阅读模式
[问题状态如下]

xmms 可以正常    普通用户 加入 audio 组

VMware 找不到 /dev/dsp

alsa 是用apt 装的  apt-get install alsa-base alsa-source alsa-utils
alsamixer  正常运行  可调节音量
更新如下:
状态补充:  机器里还有 discover  和  hotplug
第一次发声的贴子 在此 http://www.linuxsir.cn/bbs/showthread.php?t=143113]

alsaconf  正常建立  正确的看到显卡型号  安装正常
然后root 运行    /usr/share/alsa-base/snddevices  显示建立 /dev/dsp 等等
接着  ls /dev/d*  显示相关东西都存在                               (之前是什么都没有)
接着reboot   启动后 发现  ls /dev/d*  为空  什么都没有了!



[尝试如下]

root 运行  ./MAKEDEV audio  没结果 没输出   稍停后 换行
普通用户 运行  ./MAKEDEV audio  输出如下
  1. mknod: ‘mixer-’: 权限不够
  2. makedev mixer c 14 0 root audio 0660: failed
  3. mknod: ‘mixer1-’: 权限不够
  4. makedev mixer1 c 14 16 root audio 0660: failed
  5. mknod: ‘mixer2-’: 权限不够
  6. makedev mixer2 c 14 32 root audio 0660: failed
  7. mknod: ‘mixer3-’: 权限不够
  8. makedev mixer3 c 14 48 root audio 0660: failed
  9. mknod: ‘sequencer-’: 权限不够
  10. makedev sequencer c 14 1 root audio 0660: failed
  11. mknod: ‘midi00-’: 权限不够
  12. makedev midi00 c 14 2 root audio 0660: failed
  13. mknod: ‘midi01-’: 权限不够
  14. makedev midi01 c 14 18 root audio 0660: failed
  15. mknod: ‘midi02-’: 权限不够
  16. makedev midi02 c 14 34 root audio 0660: failed
  17. mknod: ‘midi03-’: 权限不够
  18. makedev midi03 c 14 50 root audio 0660: failed
  19. mknod: ‘dsp-’: 权限不够
  20. makedev dsp c 14 3 root audio 0660: failed
  21. mknod: ‘dsp1-’: 权限不够
  22. makedev dsp1 c 14 19 root audio 0660: failed
  23. mknod: ‘dsp2-’: 权限不够
  24. makedev dsp2 c 14 35 root audio 0660: failed
  25. mknod: ‘dsp3-’: 权限不够
  26. makedev dsp3 c 14 51 root audio 0660: failed
  27. mknod: ‘audio-’: 权限不够
  28. makedev audio c 14 4 root audio 0660: failed
  29. mknod: ‘audio1-’: 权限不够
  30. makedev audio1 c 14 20 root audio 0660: failed
  31. mknod: ‘audio2-’: 权限不够
  32. makedev audio2 c 14 36 root audio 0660: failed
  33. mknod: ‘audio3-’: 权限不够
  34. makedev audio3 c 14 52 root audio 0660: failed
  35. mknod: ‘sndstat-’: 权限不够
  36. makedev sndstat c 14 6 root audio 0660: failed
  37. mknod: ‘audioctl-’: 权限不够
  38. makedev audioctl c 14 7 root audio 0660: failed
  39. mknod: ‘mpu401data-’: 权限不够
  40. makedev mpu401data c 31 0 root audio 0660: failed
  41. mknod: ‘mpu401stat-’: 权限不够
  42. makedev mpu401stat c 31 1 root audio 0660: failed
  43. mknod: ‘midi0-’: 权限不够
  44. makedev midi0 c 35 0 root audio 0660: failed
  45. mknod: ‘rmidi0-’: 权限不够
  46. makedev rmidi0 c 35 64 root audio 0660: failed
  47. mknod: ‘smpte0-’: 权限不够
  48. makedev smpte0 c 35 128 root audio 0660: failed
  49. mknod: ‘midi1-’: 权限不够
  50. makedev midi1 c 35 1 root audio 0660: failed
  51. mknod: ‘rmidi1-’: 权限不够
  52. makedev rmidi1 c 35 65 root audio 0660: failed
  53. mknod: ‘smpte1-’: 权限不够
  54. makedev smpte1 c 35 129 root audio 0660: failed
  55. mknod: ‘midi2-’: 权限不够
  56. makedev midi2 c 35 2 root audio 0660: failed
  57. mknod: ‘rmidi2-’: 权限不够
  58. makedev rmidi2 c 35 66 root audio 0660: failed
  59. mknod: ‘smpte2-’: 权限不够
  60. makedev smpte2 c 35 130 root audio 0660: failed
  61. mknod: ‘midi3-’: 权限不够
  62. makedev midi3 c 35 3 root audio 0660: failed
  63. mknod: ‘rmidi3-’: 权限不够
  64. makedev rmidi3 c 35 67 root audio 0660: failed
  65. mknod: ‘smpte3-’: 权限不够
  66. makedev smpte3 c 35 131 root audio 0660: failed
复制代码


btw: 个人感觉 alsa 运行没问题   似乎是那个小地方出错了   麻烦各位帮忙    先谢过 ~   修改后的补充:"不知是是那里冲突了? 大侠们指点一下 thanks"

最红总结 如果 /dev/dsp 无故消失 尝试删除 udev hotplug discover(注:可能会出现找不到网卡鼠标不能登录X的情况 请事先查看网卡鼠标等设备的详细信息 然后手动加载(推荐用手动毕竟以后编译内核需要这种知识)) 在安装alsa等等声卡驱动; 我是 删完然后alsaconf 安装 如果安装后reboot安装失效 请查看你声卡的相应模组名称 在 /etc/modules 里加入 相应的名称(我的是sna-cmipci snd-pcm-oss )
然后reboot 检测  我的检测通过 没问题了~~~        alsa 声音系统结束 ~
接下来是VMware tools  :comp
                                              Good lucky to all     :thank
发表于 2005-1-1 21:36:22 | 显示全部楼层
以root运行/usr/share/alsa-base/snddevices

其实这个新版本的alsa驱动都没必要的。。
 楼主| 发表于 2005-1-1 21:38:14 | 显示全部楼层
再次 感谢    哈哈鬼 兄      帮偶搞定了这个问题

解决方法   如楼上

哈哈  太高兴了  这下 VMware 可以老实的干活咯      感谢这里的兄弟们~~~
 楼主| 发表于 2005-1-2 19:44:47 | 显示全部楼层
问题发生变化 所以又顶上来了  真是不好意思

更新如下:
状态补充: 机器里还有 discover 和 hotplug
第一次发声的贴子 在此 http://www.linuxsir.cn/bbs/showthread.php?t=143113

alsaconf 正常建立 正确的看到显卡型号 安装正常
然后root 运行 /usr/share/alsa-base/snddevices 显示建立 /dev/dsp 等等
接着 ls /dev/d* 显示相关东西都存在 (之前是什么都没有)
接着reboot 启动后 发现 ls /dev/d* 为空 什么都没有了!


btw:  修改后的补充:"不知是是那里冲突了? 大侠们指点一下 thanks"
发表于 2005-1-2 21:30:21 | 显示全部楼层
Post by startX
问题发生变化 所以又顶上来了  真是不好意思

更新如下:
状态补充: 机器里还有 discover 和 hotplug
第一次发声的贴子 在此 http://www.linuxsir.cn/bbs/showthread.php?t=143113

alsaconf 正常建立 正确的看到显卡型号 安装正常
然后root 运行 /usr/share/alsa-base/snddevices 显示建立 /dev/dsp 等等
接着 ls /dev/d* 显示相关东西都存在 (之前是什么都没有)
接着reboot 启动后 发现 ls /dev/d* 为空 什么都没有了!


btw:  修改后的补充:"不知是是那里冲突了? 大侠们指点一下 thanks"


之前我也遇到过类似的问题,upgrade后发现/dev/dsp没有了。我在网上查了一番,老外好像是说这是udev、hotplug、discover1的问题,尤其是udev的问题,解决办法是加载snd_pcm_oss,即以root身份执行modprobe snd-pcm-oss。
发表于 2005-1-2 21:40:14 | 显示全部楼层
Post by z_york
之前我也遇到过类似的问题,upgrade后发现/dev/dsp没有了。我在网上查了一番,老外好像是说这是udev、hotplug、discover1的问题,尤其是udev的问题,解决办法是加载snd_pcm_oss,即以root身份执行modprobe snd-pcm-oss。


这个我好象提示让他加载了。。。
他说他有了。呵呵
 楼主| 发表于 2005-1-2 22:21:06 | 显示全部楼层
问题正在解决中  
  1.   root身份执行modprobe snd-pcm-oss。
复制代码
   ls /dev/d* 会立即出现单个dsp 文件  以前是很多 详细见上面的回复

提到的    udev、hotplug、discover1  都被删除    reboot   

但愿能好

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2005-1-3 10:15:32 | 显示全部楼层
Post by startX
问题正在解决中  
  1.   root身份执行modprobe snd-pcm-oss。
复制代码
   ls /dev/d* 会立即出现单个dsp 文件  以前是很多 详细见上面的回复

提到的    udev、hotplug、discover1  都被删除    reboot   

但愿能好


噢,这个就不清楚了,我好像一向都只有一个/dev/dsp,安装了udev后才会莫名其妙地消失。
 楼主| 发表于 2005-1-3 14:02:14 | 显示全部楼层
Post by z_york
噢,这个就不清楚了,我好像一向都只有一个/dev/dsp,安装了udev后才会莫名其妙地消失。

那些 udev、hotplug、discover1  已经都被删掉了

我的 /dev/dsp 出来了   但是VM 的声音还用不了   
xmms 可以用
vlc  声音 还是不能用

为什么 dsp 出现了          VM 还提示  找不到 /dev/dsp 呢 ?    权限我也改了
现在应该是 纯粹的声卡问题了吧?   大概    继续 search    :beat
发表于 2005-1-3 14:57:39 | 显示全部楼层
应该是udev的问题。
我在slackware里面安装alsa的时候,起初也遇到类似的问题,后来发现slackware自带的启动脚本能解决。
脚本内容如下:

  1. #!/bin/sh
  2. # Load the mixer settings and OSS compatibility for ALSA.
  3. # (the Advanced Linux Sound Architecture)

  4. # A function to load the ALSA mixer settings:
  5. load_alsa_mixer() {
  6.   if [ -r /etc/asound.state ]; then
  7.     echo "Loading ALSA mixer settings:  /usr/sbin/alsactl restore"
  8.     /usr/sbin/alsactl restore
  9.   else
  10.     echo "ALSA warning:  No mixer settings found in /etc/asound.state."
  11.     echo "  Sound may be muted.  Use 'alsamixer' to unmute your sound card,"
  12.     echo "  and then 'alsactl store' to save the default ALSA mixer settings"
  13.     echo "  to be loaded at boot."
  14.   fi
  15. }

  16. # A function to load the ALSA OSS compat modules:
  17. load_alsa_oss_modules() {
  18.   if ! cat /proc/modules | grep -w snd-pcm-oss 1> /dev/null 2> /dev/null ; then
  19.     echo "Loading OSS compatibility modules for ALSA."
  20.     modprobe snd-pcm-oss
  21.     modprobe snd-mixer-oss
  22.   fi
  23. }

  24. # If hotplug or something else has loaded the ALSA modules, then
  25. # simply load the mixer settings and make sure the OSS compat
  26. # modules are loaded:
  27. if [ -d /proc/asound ]; then
  28.   load_alsa_mixer
  29.   load_alsa_oss_modules
  30. else
  31.   # If there are ALSA modules defined in /etc/modules.conf, but
  32.   # ALSA is not yet loaded, then load the modules now:
  33.   DRIVERS=`modprobe -c | grep -E "^[[:space:]]*alias[[:space:]]+snd-card-[[:digit:]]" | awk '{ print $3 }'`
  34.   if [ ! "$DRIVERS" = "" ]; then
  35.     echo "Loading ALSA kernel modules."
  36.     for module in $DRIVERS; do
  37.       modprobe $module
  38.     done
  39.   fi
  40.   # If ALSA is now up, then load the mixer settings and OSS modules:
  41.   if [ -d /proc/asound ]; then
  42.     load_alsa_mixer
  43.     load_alsa_oss_modules
  44.   fi
  45. fi
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表