Уважаемые посетители портала Kamensk.NET! Напоминаем вам, что будучи зарегистрированным пользователем вы получаете возможность оставлять комментарии к новостям на сайте и к топикам на форуме, иметь доступ к скрытым разделам и много других благ и привелегий. Пожалуйста заполните регистрационную форму, это отнимет у вас всего лишь несколько минут вашего времени.
[Решено] Debian "squeeze" и ALSA: проблемы с определением звуковых карточек.
Обновился на днях с Lenny на Squeeze. В целом обновление прошло гладко, если не считать того что пришлось принудительно конфигурировать пакеты libc6, libgcc1 и ещё что-то. Буквально на следующий день после обновления обнаружил, что нет звука. Ну я конечно по-старинке решил всё исправить командой alsaconf и был предельно удивлён, когда её не обнаружил 
"Где наша не пропадала, подумал я и ломанулся на debian.org качать исходные тексты alsa-utils и всю сопутствующую атрибутику (патч и файл описаний .dsc). Распаковал dpkg-source с опцией -x, залез в руль rules и что я вижу: белым по синиму написано, что alsaconf со всеми потрохами майнтейнером пакета выпилен! Я такой, весь в непонятках комментирую данный участок и собираю пакадж сам. Собрал, заменил запускаю alsaconf. Опа, не нашёл ни одной карточки, хотя в системе ясно видна как минимум одна - встроенная в видеокарту. Я давай гуглить по-быстрому и выяснил, что карточки ныне должны автоматом определятся алсой при загрузке системы и, мол, если она у вас не определись, то либо обновите алсу, либо вы плохо перезагрузились. Ну я не будь дураком, скачал из unstable версию 1.0.23 в сорцах (в сквизи 1.0.22), собрал, установил. Хрен. Ещё один Кулибин с этого вашего интернета предложил мне перетнуть звуковую карточку в другой PCI-порт. Я переткнул и, о чудо, - заработало. Правда радовался я не долго, - до вчерашнего дня, когда я решил перезагрузить комп. Карточка опять отпала и больше алсой не определялась. Через lspci её видно, модуль соответствующий подгружается, а вот ни один миксер её не видит ни одним глазом. Что делать в этой ситуации кроме перетыкивания карточки из порта в порт мало понятно. 
Сегодня буду копать процесс загрузки с граба до ввода пароля, может что найду...
Кстати, карточка внешняя Audigy4. Может ей прерывания в биосе жестко прописать?

Решил проблему не совсем ординарным методом. Но раз помогло, то так уж и быть отпишусь как это сделал
Возможно эта инструкция поможет кому-то ещё.
0. Карточки не перетыкивал, оставил как есть.
1. Ещё раз убедился, что карточка определяется системой введя команду
lspci2. В файл /etc/modprobe.d/alsa-base-blacklist.conf прописал модули для встроенной в видеокарту звуковухи. То есть модули, которые не будут грузится при запуске системы:
Посмотреть что ненужное загружено в память можно командой
lsmodГлавное помнить, что несмотря на то, что в выводе команды все модули имеют подчёркивания в файл /etc/modprobe.d/alsa-base-blacklist.conf их нужно прописывать с тире!
3. Перезагрузил тачку, несколько раз. Пока звук работает без сбоев.
Для тех, кому нужно иметь в системе несколько звуковых карт одновременно данный метод, наверное, не подойдёт. Здесь надо глубже копать систему инициализации, возможно может помочь 3-5 секундная задержка в alsa-utils.
Так же работает следующий хак: выгрузка модуля неопределившейся звуковой карты командой
rmmodи последующая загрузка его командой
insmodВ моём случае это было:
rmmod snd_ca0106и
insmod lib/modules/2.6.32-3-686/kernel/sound/pci/ca0106/snd-ca0106.koПосле этого карта стала видна во всех микшерах, правда пришлось её перевыбрать в настройках audacious.
Чтобы не вводить это каждый раз после перезагрузки системы, можно прописать эти команды в скрипте /etc/init.d/rc.local, например, так:
#! /bin/sh ### BEGIN INIT INFO # Provides: rc.local # Required-Start: $remote_fs $syslog $all # Required-Stop: # Default-Start: 2 3 4 5 # Default-Stop: # Short-Description: Run /etc/rc.local if it exist ### END INIT INFO PATH=/sbin:/usr/sbin:/bin:/usr/bin . /lib/init/vars.sh . /lib/lsb/init-functions do_start() { if [ -x /etc/rc.local ]; then [ "$VERBOSE" != no ] && log_begin_msg "Running local boot scripts (/etc/rc.local)" /etc/rc.local ES=$? [ "$VERBOSE" != no ] && log_end_msg $ES return $ES fi } case "$1" in start) do_start rmmod snd_ca0106 insmod lib/modules/2.6.32-3-686/kernel/sound/pci/ca0106/snd-ca0106.ko ;; restart|reload|force-reload) echo "Error: argument '$1' not supported" >&2 exit 3 ;; stop) ;; *) echo "Usage: $0 start|stop" >&2 exit 3 ;; esacНо ещё раз повторю, что это хак, как настроить в Debian Squeeze работу с несколькими звуковыми картами одновременно и "по-правильному" я не знаю.
Можно вообще отключить запуск /etc/init.d/alsa-utils и грузить модули для нужных звуковых карт в нужном порядке в
/etc/init.d/rc.local, но опять же мне это не нужно.Протянув руку помощи, не забудь разжать кулак.