Linux mini-HOWTO

         

Известные проблемы


К сожалению, SCO работает с именами машин не длиннее восьми букв. Если название вашей машины состоит из более, чем восьми букв, или должно быть полным (FQDN), то вам придется указать это имя в строке NODename файла /usr/adsm/dsm.sys.

Если вы используете переменную DISPLAY, то вам придется указать в ней полное имя машины (т.е. DISPLAY=host.full.do.main:0 вместо DISPLAY=host:0).



Linux ADSM Mini-Howto


Thomas Koenig
Thomas.Koenig@ciw.uni-karlsruhe.de


Перевод: Станислав Рогин, ASPLinux

В этом документе описывается установка и использование в Linux/i386 клиента коммерческой системы резервного копирования ADSM.



Установка клиента ADSM


SCO-вариант клиента поставляется в виде трех tar-файлов или дисков. Перейдите в корневой каталог, установите необходимый umask, в соответствии с вашими требованиями и, будучи root-ом, распакуйте их там. В каталоге /tmp вы найдете инсталляционный скрипт - запустите его.

Затем вам придется вручную исправить файлы /usr/adsm/dsm.sys и /usr/adsm/dsm.opt. В файле dsm.sys не забудьте исправить следующие строки:

Servername

Имя сервера

TCPServeraddress

Полное имя машины сервера (Fully qualified host name FQDN)

NODename

Название вашей машины

В файле dsm.opt вам надо указать следующее:

Server

То же, что и выше

Followsymbolic

Следовать ли символьным ссылкам (вообще-то, не очень хорошая идея)

SUbdir

Создавать ли резервные копии подкаталогов (обычно это необходимо)

domain

Файловые системы, которые необходимо копировать

Затем необходимо создать совместимый со SCO файл /etc/mnttab, на основе вашего /etc/fstab. Вы можете использовать для этого приведенный ниже Perl-скрипт fstab2mnttab:



#!/usr/bin/perl

$mnttab_struct = "a32 a32 I L";

open(MTAB, "/etc/mtab") die "Не могу открыть /etc/mtab: $!\n"; open(MNTTAB, ">/etc/mnttab") die "Не могу открыть /etc/mnttab: $!\n";

while() { next if /pid/; chop; /^(\S*)\s(\S*)\s(\S*)\s.*$/; $device = $1; $mountpt = $2; $fstype = $3; if($fstype ne "nfs" && $fstype ne "proc") { $mnttab_rec = pack($mnttab_struct, $device, $mountpt, 0x9d2f, time()); syswrite(MNTTAB, $mnttab_rec, 72); print "Создано: $device $mountpt $fstype\n"; } }

close(MNTTAB); exit 0;

Для этого клиента не требуется устанавливать каких-либо библиотек; все собрано статически.



Установка модуля iBCS


Модуль iBCS2 можно найти по адресу ftp://tsx-11.mit.edu/pub/linux/BETA/ibcs2. Если у вас ядро версии 1.2.13, возьмите файл ibcs-1.2-950721.tar.gz, разархивируйте его и используйте патчи ibcs-1.2-950808.patch1 и ibcs-1.2-950828.patch2. Затем наберите "make" и установите модуль iBCS командой "insmod".

Если у Вас ядро версии 2.0, возьмите файл ibcs-2.0-960610.tar.gz, распакуйте его в любой каталог, перейдите в этот каталог и внесите следующие изменения:

--- iBCSemul/ipc.c.orig Wed Jan 15 21:32:15 1997 +++ iBCSemul/ipc.c Wed Jan 15 21:32:31 1997 @@ -212,7 +212,7 @@ switch (command) { case U_SEMCTL: cmd = ibcs_sem_trans(arg3); - arg4 = (union semun *)get_syscall_parameter (regs, 4); + arg4 = (union semun *)(((unsigned long *) regs->esp) + (5)); is_p = (struct ibcs_semid_ds *)get_fs_long(arg4->buf); #ifdef IBCS_TRACE if ((ibcs_trace & TRACE_API) ibcs_func_p->trace)

Затем скопируйте CONFIG.i386 в CONFIG и запустите make.

Создайте необходимые файлы устройств (если у вас еще их нет) при помощи команд

# cd /dev # ln -s null XOR # ln -s null X0R # mknod socksys c 30 0 # mknod spx c 30 1



это сетевая система резервного копирования,


ADSM - это сетевая система резервного копирования, продаваемая фирмой IBM и используемая многими организациями. Существует большой набор клиентских программ ADSM для различных систем (UNIX-системы, Windows, Novell, Mac, Windows NT). К сожалению, в настоящее время специальной Linux-версии не существует.
Вам придется использовать клиентскую программу для SCO и установить iBCS2-эмулятор для запуска ADSM. В этом документе описывается ADSM v2r1.
На текущий момент была испытана только версия, работающая в Linux для i386.

Запуск клиента ADSM


Существуют два клиента: dsm (с интерфейсом X11) и dsmc (с обычным текстовым интерфейсом). Системный администратор вашего сервера объяснит, как его запускать. Скорее всего, Вам будет необходимо внести в загрузочный скрипт строку типа: dsmc schedule -quiet 2>&1 >/dev/null &;



Благодарности


Огромное спасибо всем, кто мне помогал в создании этого документа, а именно:

Kendall G. Clark Wendell Cochran Bruno H. Collovini Allan "Norm" Crain Jon "maddog" Hall Greg Hankins Eric Ladner Chie Nakatani Daniel P. Kionka Nat Makarevitch Martin Michlmayr Rafael Caetano dos Santos Idan Shoham Adam Spiers C. J. Suire Juhapekka Tolvanen Lars Wirzenius Sean Woolcock



Copyright Information


This mini-HOWTO is Copyright 96-2000 by Paul L. Rogers. All rights reserved.

A verbatim copy may be reproduced or distributed in any medium physical or electronic without permission of the author. Translations are similarly permitted without express permission if it includes a notice on who translated it.

Short quotes may be used without prior consent by the author. Derivative work and partial distributions of the Advocacy mini-HOWTO must be accompanied with either a verbatim copy of this file or a pointer to the verbatim copy.

Commercial redistribution is allowed and encouraged; however, the author would like to be notified of any such distributions.

In short, we wish to promote dissemination of this information through as many channels as possible. However, we do wish to retain copyright on the HOWTO documents, and would like to be notified of any plans to redistribute the HOWTOs.

We further want that all information provided in the HOWTOs is disseminated. If you have questions, please contact Tim Bynum, the Linux HOWTO coordinator, at linux-howto@sunsite.unc.edu>.



Дополнительная информация


Lars Wirzenius, comp.os.linux.announce

- один из старейших пользователей изложил несколько мыслей

по защите прав пользователей Linux.

Eric S. Raymond предлагает вам анализ

модели успешного развития, используемой сообществом пользователей Linux.

Сообщество бесплатного программного обеспечения (free software community) напоминает, что понятия "free software" и "freely available software" (свободно распространяемое программное обеспечение) имеют огромную разницу. Для получения более подробной информации по понятию "open-source software" (программное обеспечение с общедоступными исходными файлами), обратитесь на сайт Open Source

Если вы хотите пересмотреть свои методы продаж Linux, то обратитесь на страничку Linuxmanship

поддерживаемую Donald B. Marti, Jr.

На сайте Linux PR

объясняется польза от пресс-релизов для сообщества пользователей Linux. Есть и другой способ приобретения опыта в этой области - организовать у себя NetDay, используя рекомендации, содержащиеся на NetDay How-To Guide.

Целью Linux International's

является популяризация развития и использования Linux.

Проект Linux Documentation Project

является неоценимым источником информации для защитников прав пользования Linux.

Проект Linux Center Project

предоставляет возможность тематического поиска по источникам, посвященным Linux, и бесплатному программному обеспечению (free software).

Сайт Linux Business Applications

- это форум для организаций, основная деятельность которых связана с Linux. Там можно приобрести и поделиться опытом.

Сайты Linux Enterprise Computing

и Freely Redistributable Software in Business

помогут вам ответить на вопросы, связанные с использованием Linux в бизнесе и на предприятиях.

Целью проекта Linux Advocacy Project's

является поощрение и вдохновление разработчиков коммерческих приложений на создание новых приложений для Linux, а так же защита их прав.

Программа Linux CD and Support Giveaway

помогает сделать Linux еще более доступным, поощряя многократное использование Linux CD-ROM.

Specialized Systems Consultants, Inc. (SSC)


поддерживает сайт Linux Resources

и публикует Linux Journal.

Список адресов linux-biz

тоже является форумом, призванным обсуждать использование Linux в бизнесе.

Linux Mission Critical Systems предоставляет список

серверов, успешно работающих 24 часа в сутки с высокой загрузкой.

Далее следуют списки статей, посвященные Linux:



LinuxFocus



Linuxove noviny



Linux Gazette



PLUTO Journal.



Дополнительные ссылки на публикации можно найти на: Linux Documentation Project

и Linux Center Project.


Группы пользователей


Участвуйте в мероприятиях местной группы пользователей. Список

групп пользователей (Linux User Group) является частью Linux Documentation Project. Если у вас таковой нет - зарегистрируйтесь первым в своем городе.

Документ Linux User Group HOWTO

рассказывает о многих проблемах, связанных с созданием группы пользователей, и разъясняет важность продвижения Linux, как одну из целей создания группы.

Старайтесь отвечать на все вопросы местной организации, заинтересовавшейся Linux.

Публикуйте прес-релизы

о вашей деятельности в местной прессе.

Соглашайтесь бесплатно устанавливать Linux в организациях, которым это требуется. Разумеется, кроме установки, вы, по возможности, должны обучить персонал работе с системой и снабдить их документацией, необходимой для поддержки системы в рабочем состоянии.

При личных встречах с местными пользователями обсудите Linux Advocacy mini-HOWTO. Устройте мозговой штурм и выдвиньте новые идеи.



Как стать активным сторонником распространения Linux


Поделитесь своим личным опытом (хорошим и плохим) работы с Linux. Каждый знает, что программы имеют ошибки и ограничения. Мы не будем справедливы, если будем только превозносить Linux. Я, например, люблю говорить, что я перезагружал систему за три года четыре раза, три из которых были запланированы.

Если у кого-то возникли проблемы, которые может решить Linux, предложите сделать ссылки на соответствующую информацию (странички в сети, журнальные статьи, книги, и т.п....). Если вы не использовали предложенное решение, то скажите об этом.

Если вы можете сделать презентацию, посвященную Linux, зарегистрируйтесь на Linux Speakers Bureau.

Помогите другим начать использовать Linux. Убедитесь в том, что они могут эффективно пользоваться Linux.

Некоторые до сих пор убеждены, что Linux и похожие системы, могут работать только в текстовом режиме. Расскажите им о возможности использования графических приложений, таких как Gimp.

Попробуйте хотя бы раз в неделю отвечать на вопросы новичков по почте. Ищите трудные вопросы, на которые, возможно, только вы способны ответить, и в процессе вы можете узнать что-то новое. В другом случае, если вы не уверены, что правильно можете ответить на вопрос, найдите того, кто сможет.

Найдите небольшую фирму, занимающуюся разработкой программного обеспечения и покажите им Linux.

Если появится возможность, то сделайте презентацию у себя на работе для работников других отделов.

Активно участвуйте в мероприятиях, проводимых сообществом, таких как NetDay. Важнейшей задачей должно быть способствование удачному проведению мероприятия, используйте любую возможность для объяснения другим, что может сделать для них Linux.

Всегда учитывайте точку зрения человека, которому вы "рекламируете" Linux. Поддержка, надежность, совместимость и цена - вот те основные факторы, на которые смотрят потенциальные пользователи. При этом цена может быть наименее значащим фактором из вышеперечисленных.

Возможность поддержки является основным фактором при выборе Linux. Такие компании, как Caldera, Cygnus Solutions, Red Hat, и S.u.S.E.


предлагают поддержку для некоторых частей или для всего дистрибутива в целом. Можно добавить, что

Linux Consultants HOWTO

может предоставить список компаний, которые обеспечивают поддержку Linux на коммерческой основе. Разумеется, одной из самых профессиональных поддержек можно воспользоваться, заглянув на comp.os.linux и группу новостей linux



Подчеркните, что разработка open-source software

(программное обеспечение с общедоступными исходными файлами) проводится в атмосфере тесного сотрудничества между всеми участниками этого процесса от системного программиста до конечного пользователя, и, в результате, получаются хорошие продукты с полной документацией, такие как Apache, GNU Emacs, Perl

и Linux kernel.



Установите систему и зарегистрируйтесь! Регистрация проводится Linux Counter.



Расскажите об успешном продвижении Linux на Linux International

(li@li.org) и подобным организациям.



Если вам больше не нужны ваши книги и Linux CD-ROM, то отдайте их тому, кто в них нуждается, пусть это будет публичная библиотека или компьютерный клуб при школе. Но, делая эту информацию общедоступной, убедитесь, что это не нарушает авторских прав и лицензионного договора. Так же уведомите работников библиотеки, что информация на CD-ROM подлежит свободному распространению. Убедитесь, что это не попало в запасник.



Приобретая книги по приложениям к Linux, отдайте предпочтение книгам, написанным авторами этих программ, так как денежное вознаграждение за труды авторам таких программ, возможно только с продажи книг.



Предложите сайтам, работающим под Linux, обратиться к страничке Powered by Linux

и разместить у себя баннеры, рекламирующие Linux, Apache, GNU, Perl



Главное - участие! Если вы воспользовались open-source software, (программное обеспечение с общедоступными исходными файлами), пожалуйста, помогите сообществу следующими способами:



отсылка подробной информации об ошибках;



написание документации;



своей творческой работой;



предложение своих менеджерских возможностей;



предложение о доработках;



оказание технической поддержки;



пожертвование программ в пользу общественности;



пожертвование техники;



финансовая помощь.



Сайт Linux Documentation Project

публикует list

проектов Linux, а также проектов, связанных с Linux.

И, в заключении, хотелось бы напомнить, что все мы имеем гораздо более важные задачи, чем просто выбор системы для компьютера.


Linux Advocacy mini-HOWTO


Paul L. Rogers
Paul.L.Rogers@li.org


Перевод: Михаил Корепанов, ASPLinux

Этот документ содержит предложения по тому, как сообщество пользователей Linux может расширять область распространения и использования Linux.



В настоящее время появляется все


В настоящее время появляется все больше и больше прикладных пакетов к Linux, потому что это стабильная, надежная, многофункциональная (но все же не совершенная) система. К сожалению, есть еще очень много людей, включая тех, кто принимает стратегические решения, ничего не знающих о существовании и возможностях Linux.
Если Linux и другие составляющие полного дистрибутива Linux достигнут своего полного потенциала, то было бы немаловажным помогать пользователям (не будем обещать много), путем создания новых приложений. В сложившейся ситуации, можно сказать, что продукты некоторых компаний хорошо продаются не из-за их превосходных качеств, а благодаря маркетинговым возможностям компании.
Если вам нравится использовать Linux, и вы хотите послужить сообществу пользователей Linux, пожалуйста, примите участие в одной или нескольких акциях, описанных в этом mini-HOWTO, и помогите другим, как можно больше узнать о Linux.

Взаимоотношения с прессой


Linux International собирает выдержки из прессы

в которых идет речь о Linux, GNU и других свободно распространяемых программах. Если вы увидите подобную статью - пошлите по адресу clippings@li.orgследующую информацию:

Название издания

Контактный адрес издания

Имя автора

Контактный адрес автора

Название статьи

Номер страницы, где начинается статья

URL издания

Краткое описание статьи и ваше мнение

Если вы уверены, что Linux был необъективно оценен, отошлите подробности, включая вышеописанную информацию по адресу li@li.org

Если вы сами напрямую связываетесь с изданием - будьте профессиональны и уверены в своих аргументах.

Если вы участвуете в проекте, связанном с Linux, то регулярно отсылайте пресс-релизы

в соответствующие агентства новостей.



Взаимоотношения с продавцами


При выборе оборудования осведомитесь у продавца о том, поддерживается ли оно в Linux, и есть ли у него свои особенности при использовании в Linux.

Поддерживайте продавца, специализирующегося на продаже продуктов для Linux. Посоветуйте им войти в Linux Commercial HOWTOсо своим списком товаров.

Поддерживайте продавцов, которые перечисляют часть своей прибыли в такие организации, как Free Software Foundation, Linux Development Grant Fund, XFree86 Project

или Software in the Public Interest. Если это возможно, сделайте личный материальный вклад в организации поддерживающие open-source software(программное обеспечение с общедоступными исходными файлами). Не забывайте, что некоторые компании проводят акции и дарят сопутствующие программы.

Если вам потребовалось приложение, которое не поддерживается Linux, обратитесь к продавцу и попросите версию с поддержкой Linux.



Законы общения


Как представитель сообщества пользователей Linux, участвуйте в конференциях. При этом воздержитесь от перехода на личности и употребления вульгарных выражений. Считайте себя сотрудником виртуальной корпорации во главе с господином Torvalds. Ваши слова могут как негативно, так и позитивно повлиять на имидж сообщества, сложившийся у читателя.

Не используйте преувеличений и нападок. Это непрофессионально, и может привести к дискуссии на тему "ни о чем".

Продуманные и аргументированные ответы на вопросы по почте не только помогут вашим читателям, но и поднимут ваш авторитет.

Не реагируйте на оскорбления и нападки. Многие такие послания сводятся к ``Моя ОС лучше твоей''. Аккуратно опишите возможности Linux и не вступайте в дальнейшую полемику.

Всегда помните, что если вы будете излишне вспыльчивы или неуважительны к кому-либо, то ваши собеседники могут поделиться своим отрицательным опытом. Если вы обидели кого-то, то постарайтесь загладить свою вину.

Сосредоточьтесь на том, что может предложить Linux. Нет никакой надобности в проведении сравнений. Linux - это хороший готовый продукт, отличающийся от других.

Уважайте использование других ОС. Хоть Linux и является превосходной платформой, он не может соответствовать всем требованиям.

Ссылайтесь на другие продукты, употребляя их полное собственное имя. Вы ничего не достигните, искажая названия компаний и их продуктов путем "вольного написания". Если мы хотим, чтобы Linux был уважаем, мы должны уважать и другие продукты.

Подождите немного, ведь Linux - это пока всего лишь основа. Без усилий людей, участвующих в GNU project, MIT, Berkeley и многих других, эта основа была бы неудобна в использовании для большинства людей.

Не настаивайте на том, что Linux - это единственное решение. Применение исключительно Linux может лишить новых пользователей возможности выбора.

В вашей жизни еще будут случаи, когда Linux не сможет решить все вопросы. Помните об этом и первым попытайтесь найти иное решение.



Alsa-sound-mini-HOWTO


Valentijn Sessink
valentyn@alsa-project.org
Перевод: Михаил Корепанов, ASPLinux

Этот документ описывает установку драйверов ALSA под Linux. Они полностью совместимы с обычными драйверами и являются их полноценной заменой.



Что вам потребуется


работающая система Linux (например дистрибутив Slackware), с установленными приложениями: gcc, make и т.д.

некоторые практические знания о Linux (подразумевается ваше знание "ls", "cd", "tar" и т.д.)

доступ с паролем root

Если у вас нет звуковой карты, то в ALSA есть драйвер, который ее эмулирует! (Он абсолютно ничего не делает, но программы, которые требовали карту, будут работать).

Если у вас есть карта PnP, тогда вам так же потребуется:

пакет программ isapnptools.

В каталоге драйвера есть файл INSTALL, в котором говорится, что для некоторых карт поддержка PnP не требуется, так как она уже установлена.

Надо отметить, что у вас не должно быть никаких активных звуковых драйверов, когда вы используете драйверы ALSA. Если у вас встроенный драйвер, то вам придется перекомпилировать ядро. Если у вас стоит старый модуль "sound.o", то вы должны его сделать нерабочим. При использовании kerneld это означает, что вам надо удалить sound.o из каталога /lib/modules//misc . Новейшие системы RedHat могут использовать несколько активных звуковых модулей. Вам потребуется удалить их все.

При использовании ядер серии 2.2 вы должны включить в них поддержку звука, но не драйвер карты. Затем скомпилируйте и установите ядро, и после этого скомпилируйте драйверы ALSA.



Дополнительная информация


В файле INSTALL упомянуты настройки, которые должен использовать драйвер ALSA. Но их использование зависит от того, какой программой вы пользуетесь при воспроизведении звука. Обычные программы типа: mpg123, sox или программы X11 типа RealPlayer, будут прекрасно работать и без них.


/proc/asound/#/pcm#0

"Playback erase" - удалить всю дополнительную информацию о приложениях OSS "Playback []" "Record erase" - удалить всю дополнительную информацию о приложениях OSS "Record []"

- имя приложения с/без указания пути

- количество фрагментов или ноль, если авто

- размер фрагментов или ноль, если авто

- дополнительные параметры

WR_ONLY - если вы хотите, чтобы приложение только выводило на устройство pcm (это хорошо, например, для Quake)

Примеры:

echo "Playback x11amp 128 16384" > /proc/asound/0/pcm0o echo "Playback squake 0 0 WR_ONLY" > /proc/asound/0/pcm0o


/proc/asound/#card#/sb16

"Playback 8" -> драйвер будет всегда для воспроизведения использовать только 8-битный DMA-канал. "Playback 16" -> драйвер будет всегда для воспроизведения использовать только 16-битный DMA-канал. "Playback auto" (по умолчанию) -> драйвер будет находиться в автоматическом режиме "Record 8" -> драйвер будет всегда для записи использовать только 8-битный DMA-канал. "Record 16" -> драйвер будет всегда для записи использовать только 16-битный DMA-канал. "Record auto" (по умолчанию) -> драйвер будет находиться в автоматическом режиме

Пример: echo "Record 16" > /proc/asound/0/sb16

Для разъяснения обратитесь к файлу INSTALL.



Другие HOWTO


Документ ALSA-sound-mini-HOWTO небольшой, но он быстро пополняется. Другие HOWTO помогут вам, если этот документ покажется вам неполным. HOWTO можно найти на зеркалах Metalab (Sunsite). Поэтому загляните на http://metalab.unc.edu/LDP/mirrors.html

и выберите ближайшее зеркало. Так же вы можете найти HOWTO в каталоге LDP/HOWTO/. Заметка: все ссылки в этом документе взяты из /LDP/HOWTO/mini.

Небольшое замечание для пользователей ядра версий 2.2.x. Поддержка звука в этих ядрах сделана также, как и все остальное: она работает, но по-другому, не совсем так, как это было раньше. Начиная с настоящей версии этот документ скоцентрирует свое внимание на ядрах серии 2.2, однако я буду пытаться указать на его отличия.


Звуковые карты

Итак, вы купили звуковую карту, или, может быть, она у вас уже стояла, и теперь вы собираетесь ее использовать! Внимательно изучите Sound-HOWTO.


Карты Plug and Play

Большинство новых карт для платформы Intel - это ISA PnP карты ("Plug and Play"). Это означает, что карты настраиваются операционной системой. Это делается во время загрузки. Вам понадобится настроить карту с помощью набора утилит для PnP (PnP-utils-package). Все последние дистрибутивы Linux включают в себя такие наборы. Перед тем, как их использовать, рекомендую ознакомиться с Plug-and-Play-HOWTO

Драйверы ALSA имеют встроенную поддержку ISA-PnP для некоторых карт. К сожалению, я не смог найти документацию на эту тему и поэтому не могу описать как это работает. Пожалуйста, напишите мне, если вы попробовали использовать драйверы ALSA без утилит ISA-PnP-tools.


Загружаемые модули

Драйверы ALSA построены в виде модулей. Более подробную информацию по модулям можно найти в Kernel-HOWTO. Так же существует module-HOWTO, но сейчас он не поддерживается и не дорабатывается, это можно выяснить в howto-HOWTO. В случаях затруднения можно обратиться к Modules-mini-HOWTO, может быть, там вы найдете нужную информацию.


Kerneld

Некоторым может понадобиться другое HOWTO, под названием Kerneld-mini-HOWTO. Kerneld - это демон, который устанавливает и убирает модули ядра по мере их необходимости. (У меня нет опыта работы с ним, поэтому прочту все советы по этому поводу. Документация драйверов ALSA содержит информацию по конфигурации kerneld, которая включена в это мини-HOWTO.)

С тех пор, как загрузчик модулей был встроен в ядро 2.2.x, все изменилось. Но я один из тех, кто предпочитает использовать modprobe вместо того, чтобы доверять демону. У меня нет информации по поводу работы с этим демоном.



Если драйвер загружается..... но звука нет



Настройки "mute"

У драйверов ALSA, как и у большинства карт, есть настройки типа "mutе". Если вы правильно установили драйверы, но карта все равно не работает, то, возможно, вы забыли про настройки "mute" . Для этого вам потребуется "amixer" или "alsamixer", которые находятся в утилитах драйверов АLSA. Теперь наберите:



Если вы не можете загрузить драйвер


Пожалуйста, проверьте следующие шаги.


Звуковые устройства

Драйверы ALSA используют различные устройства из /dev-tree. Удостоверьтесь в том, что вы запустили скрипт ./snddevices в каталоге исходных текстов драйверов ALSA.


Проблемы с совместимостью карт

Вы точно уверены, что ваша карта СОВМЕСТИМА с ALSA? Проверьте это еще раз. Иногда X123 - не обязательно X123b. С другой стороны, даже совместимая карта может доставить вам множество неудобств, я, например, очень долго возился при установке CS4237B, потому что к нему была очень туманная документация.


если вы получаете сообщения типа``Device busy'' или ``unresolved symbols''

Возможно, у вас собрана поддержка звука в ядре 2.0.x, или загружается драйвер OSS/Lite (ядро) (проверьте это при помощи cat /proc/modules). Уберите драйвер или пересоберите ядро (взгляните на Kernel-HOWTO).

Звуковой модуль в ядрах 2.0 называется ``sound.o'', и не должен загружаться. (Есть еще драйвер ALSA ``snd.o'').

Если у вас ядро 2.2.x, и в нем не собран звуковой драйвер, то драйверы АLSA также не будут работать.

Ядра 2.0

Я знаю, это звучит глупо, но позвольте вам напомнить еще раз. Если у вас ядро 2.0.x (команда ``uname -a'' выдает вам следующую информацию ``Linux penguin 2.0.35 #6 Wed Sep 23 10:19:16 CEST 1998 i686 unknown''), то вы должны убрать драйверы из ядра. Версии ALSA 0.4.x и более поздние не работают с ядрами 2.0

Ядра 2.2

Если у вас ядро 2.2.x то вам не нужны звуковые драйверы. Ядра 2.2 должны быть собраны с поддержкой звука, но без каких-либо драйверов карт.


Устранение ссылок на другой драйвер

Другой причиной, того, что драйвер ссылается на занятость устройства может быть файл /etc/conf.modules, который до сих пор ссылается на драйвер карты. Вы должны удалить ссылки на драйвер карты и вставить ссылки на драйверы ALSA.


Если у вас все еще появляется сообщение "Unresolved symbols"

Другим источником ошибки "unresolved symbols" может являться новое ядро со старыми драйверами. Перекомпилируйте драйверы ALSA после того, как перекомпилируете новое ядро.


Проверка установок PnP

Вы уверены, что ваша карта работет? Посмотрите еще раз PnP-HOWTO и удостоверьтесь, что вы инициализировали ее правильно.


Правильно ли вы указали параметры карты ?

Проверьте и перепроверьте параметры вашей карты. Напоминаю: 534 это не 543, как и 0x534 это не 534.

Некоторые карты могут иметь модули с другим названием. Еще раз просмотрите команду ``modprobe''. Например, драйвер к Crystal 4232 должен загружаться как modprobe snd-card-cs4232, а не "snd-cs4231", или SoundBlaster PCI 64 загружается как "snd-card-audiopci", а не snd-es1370.



Файловая система /proc


Вы можете узнать много интересной информации о своей системе в подкаталоге /proc. Подкаталог /proc - это виртуальная файловая система, то есть, не существующая в действительности, но управляющая некоторыми процессами и задачами в вашем компьютере. Для того, чтобы ее запустить, вам нужно скомпилировать в ядре поддержку этой системы. У большинства дистрибутивов Linux это делается по умолчанию, но если вы специально пропустили поддержку /proc при компиляции, то разумеется в каталоге /proc ничего не будет.

В каталоге /proc/modules есть информация по загруженным модулям. Когда у вас загружены драйверы ALSA, напишите cat /proc/modules, и увидите примерно следующее:



Где и как взять драйверы


Драйверы ALSA можно скачать с ftp://ftp.alsa-project.org/pub/

, зеркала которого находятся на

США: ftp://ftp.silug.org/pub/alsa

США: ftp://ftp.eecs.umich.edu/pub/linux/alsa

Голландия: ftp://linux.a2000.nl/alsa

Польша: ftp://ftp.task.gda.pl/pub/linux/misc/alsa

Германия: ftp://ftp.tu-clausthal.de/pub/linux/alsa

Словакия: ftp://ftp.phacka.sk/pub/alsa

Австралия: ftp://ftp.suburbia.com.au/pub/alsa

Для установки драйверов ALSA вам понадобятся драйверы, библиотеки и утилиты; например, вы выбрали зеркало A2000, вы берете там ftp://linux.a2000.nl/alsa/driver/alsa-driver-0.4.1e.tar.gz, ftp://linux.a2000.nl/alsa/lib/alsa-lib-0.4.1d.tar.gz и ftp://linux.a2000.nl/alsa/utils/alsa-utils-0.4.1.tar.gz



Использование kerneld


kerneld - это демон, загружающий модули по мере необходимости, и убирающий их, если они более не используются. Так как я не имею практического опыта работы с kerneld, я не могу подтвердить, что нижеприведенная информация верна. Эта информация взята из файла INSTALL, находящегося в в пакете с драйверами ALSA. Информация по kerneld находится в kerneld-mini-HOWTO.

Следуйте нижеприведенным указаниям:

Отредактируйте свой /etc/conf.modules (примеры смотрите ниже)

Запустите 'modprobe snd-card', где "card" это название вашей карты [Хотя мне это кажется очень странным, так как kerneld предполагает их загрузку VS]

Пример файла /etc/conf.modules для карты Gravis UltraSound PnP:



Какой модуль для какой карты?


Не забудьте, что в версиях ALSA до 0.4.x иногда употребляют названия моделей карт. Это отмечено звездочкой (*).


Gravis UltraSound Extreme Разд. ForteMedia FM801

modprobe snd-card-gusextreme


Gravis UltraSound MAX Разд. ForteMedia FM801

modprobe snd-card-gusmax


ESS AudioDrive Разд. ForteMedia FM801

Карты ESS AudioDrive ES-1688 и ES-688

modprobe snd-card-audiodrive1688


ESS AudioDrive 18xx Разд. ForteMedia FM801

Карты на основе ESS AudioDrive ES-18xx

modprobe snd-card-audiodrive18xx


Gravis UltraSound PnP Разд. ForteMedia FM801

Gravis UltraSound PnP, Dynasonic 3-D/Pro, STB Sound Rage 32, ExpertColor MED3201 и другие карты, основанные на чипе AMD InterWave™.

modprobe snd-card-interwave


UltraSound 32-Pro Разд. ForteMedia FM801

UltraSound 32-Pro (карты STB используемые Compaq) и другие карты, основанные на чипе AMD InterWave (tm), с улучшенной схемой управления низкими частотами TEA6330T, управлением высоких частот и громкостью

modprobe snd-card-interwave-stb


Soundblaster Разд. ForteMedia FM801

Карты 8-bit Soundblaster (SoundBlaster 1.0, SoundBlaster 2.0, SoundBlaster Pro)

modprobe snd-card-sb8


Soundblaster 16 Разд. ForteMedia FM801

Карты 16-bit SoundBlaster (SoundBlaster 16 (PnP), SoundBlaster AWE 32 (PnP), SoundBlaster AWE 64 (PnP). Замечание: этот модуль не поддерживает карту SoundBlaster VibraX16.

modprobe snd-card-sb16


OAK Mozart Разд. ForteMedia FM801

modprobe snd-mozart


OPTi 82C9xx Разд. ForteMedia FM801

Группа карт, использующих чипсет OPTi 82C9xx, такие как Audio 16 Pro EPC-SOUN9301 (основанная на 82C930), ExpertColor MED-3931 v2.0 (основанная на 82C931), ExpertMedia Sound 16 MED-1600 ( AD1848, основанная на 82C928 ), Mozart S601206-G ( CS4231, основанная на OPTI601) и Sound Player S-928

modprobe snd-card-opti9xx


AD1847/48 and CS4248

modprobe snd-card-ad1848


Yamaha OPL3-SA2/SA3 soundcards Разд. ForteMedia FM801

Команда "modprobe snd-opl3sa" не будет работать, так как этот драйвер не проводит автоматического определения. Смотрите далее.


S3 SonicVibes Разд. ForteMedia FM801


Карты S3 SonicVibes PCI . (PINE Schubert 32 PCI)

modprobe snd-card-sonicvibes

Ensoniq/Soundblaster PCI64 Разд. ForteMedia FM801

Карты Ensoniq AudioPCI ES1370/1371 PCI . (SoundBlaster PCI 64)

modprobe snd-card-audiopci

CS4231

Команда ``modprobe snd-card-cs4231'' не будет работать, так как не проводится автоматического определения. Смотрите далее.

CS4232/4232A

Для всех карт, основанных на чипе CS4232/CS4232A команда "modprobe snd-card-cs4232" не будет работать, так как не проводится автоматического определения. Смотрите далее.

4235 и выше

Для всех карт основанных на чипе CS4235/CS4236/CS4236B/CS4237B/CS4238B/CS4239, команда "modprobe snd-card-cs4236" не будет работать, так как не проводится автоматического определения. Смотрите далее.

4610/4612/4615 и 4680

modprobe snd-card-cs461x

ESS Solo 1 Разд. ForteMedia FM801

Карты ESS Solo-1, 128iPCI (es1938, ESS-SOLO-1). Jonas Lofwander послал мне ссылку на http://dice.shopcenter.nu/alsa/

, где описывается установка этой карты, хотя, в этом случае, проблем не возникает. Просто команда modprobe snd-card-esssolo1 ... . Если у вас IBM Thinkpad 1412, то можете заглянуть на ссылку, присланную Kumar Sankaran http://www.geocities.com/SiliconValley/Peaks/3649/1412.html .

Trident 4DWave DX/NX Разд. ForteMedia FM801

Best Union Miss Melody 4DWave PCI, HIS 4DWave PCI, Warpspeed ONSpeed 4DWave PCI, AzTech PCI 64-Q3D, Addonics SV 750, CHIC True Sound 4Dwave, Shark Predator4D-PCI, Jaton SonicWave 4D.

modprobe snd-card-trident

ForteMedia FM801

Это карты PCI, основанные на чипе FM801.

modprobe snd-card-fm801

(*)

Для версии ALSA 0.3.0-pre4, вы должны пропустить "card-" (не для всех!) в названиях драйверов. Строка ``snd-card-sb16'' превращается в ``snd-sb16'', а ``snd-cs4232'' остается ``snd-card-cs4232'' (modprobe snd-cs4232 начнет что-то выполнять, но не будет воспроизводить звук!)

(**)

В более старых версиях ALSA драйвер называется ``snd-card-trid4wave'' и ``snd-trid4wave''.


Компиляция драйвера



Linux ".h" файлы ядра

Если драйверы ALSA не компилируются правильно, и вы получаете сообщения типа ``version.h'', и/или заголовки некоторых файлов не могут быть найдены, то это означает, что у вас отсутствуют ".h" файлы ядра. Просмотрите kernel-HOWTO, разархивируйте ядро в каталог /usr/src и выполните make config.


Если вы не можете создать исполняемые файлы

Эти утилиты содержат программы написанные на c++. У большинства стоят компиляторы c++ из gcc или egcs, но следует проверить и наличие установленного libstdc++-devel, иначе ваша система при запуске скриптов настройки этих утилит выдаст сообщение об ошибке типа ``c++ compiler cannot create executables'' (ваш компилятор С++ не может создавать запускаемые файлы).



Микшер


Наконец-то, драйверы для вашей карты установлены и файловая система /proc подтверждает это, теперь вы можете пользоваться картой. Для этого нужно настроить микшера на нужные значения громкости. Для этого вам понадобится "amixer" из пакета alsa-utils. Сначала установите пакет или, хотя бы, "amixer" в какое-нибудь доступное место, например /usr/local/bin.

Версия 0.3.2 или более поздняя имеют интерфейс, отличающийся от аналогов в драйверах OSS. Если вы наберете "amixer", увидите составляющие и их значения. Одной из этих составляющих будет "Master volume". Это будет выглядеть примерно так:



Modprobe для драйверов без автоматического определения карты


Если у вас драйвер без автоматического определения, то для его работы вам потребуется внести больше информации при его загрузке. Более подробно это описано в файле INSTALL каталога драйвера.


OPL3-SA2 и OPL3-SA3

По инструкции, приведенной в файле INSTALL, вы должны внести дополнительную информацию для драйвера. Если вы инициализировали карту при помощи isapnp-tools, вы можете получить следующую информацию из файла /etc/isapnp.conf :



NOWTO - инструкция по быстрой установке


Если вам нужен звук и нужен именно СЕЙЧАС! и не после прочтения этого HOWTO, то этот краткий экскурс по правилам установки драйверов ALSA именно для вас. Замечание: есть небольшая разница между версиями ALSA, которые поддерживают ядра 2.0, и теми, которые поддерживают ядра 2.2.



Обратная совместимость


Если вы хотите сохранить совместимость OSS/Free или OSS/Linux, то вам придется установить еще один драйвер snd-pcm1-oss для совместимости с OSS. Наберите:

modprobe snd-pcm1-oss

Это даст вам поддержку устройств /dev/audio и /dev/dsp так же, как это делают драйверы OSS/Free (находятся в ядре) и OSS/Linux (стоят $25). Замечу, что это всего лишь эмуляция.



Общая информация о драйверах ALSA


Драйверы ALSA были изначально разработаны как замена драйверов карт Gravis UltraSound (GUS). Когда проект с GUS оказался удачным, автор начал проект ALSA, который бы снабдил рынок драйверами для различных карт. В основу проекта легла идея создать модульный вариант драйверов.

Они совместимы со звуковыми драйверами OSS/Free и OSS/Linux (эти драйверы встроены в ядро), но имеют собственный интерфейс, который лучше, чем у драйверов OSS. Некоторые особенности можно выяснить, посетив http://www.alsa-project.org/intro.html

Но имейте в виду, что драйверы ALSA все еще находятся в стадии разработки. Все меняется, и некоторые программы, рассчитанные на ALSA работают только с некоторыми конкретными версиями драйвера. Однако, я думаю что эти драйверы великолепны. Я использую ALSA уже 10 месяцев, и никогда не вернусь в темные времена драйверов с закрытыми исходными текстами - подсказка ;-)

Домашняя страничка этого проекта находится на http://www.alsa-project.org/



Общие рекомендации



Попробуйте использовать"insmod"

Лучше начинать с "insmod", а не с kerneld. Может быть, вам поступит сообщение об ошибке.


Прочтите файл INSTALL

Очень много информации можно почерпнуть из файла INSTALL находящегося в каталоге драйверов. Если ваш драйвер не работает, то я бы посоветовал заглянуть туда и посмотреть дополнительную информацию по нему.


Сообщения об ошибках

В крайнем случае, можно пересобрать драйвер, а сообщения об ошибках переправить в /var/log/messages. Зайдите в каталог драйверов, используя cd /usr/src/alsa-driver-...., и дайте следующую команду:



Поддерживаемое оборудование


Драйверы ALSA поддерживают только описанные здесь карты. На время написания этого документа поддерживались следующие карты:

Карты с чипсетом Trident 4D Wave DX/NX, спасибо компании Trident Microsystems, которая позволила ALSA "заглянуть" в их GPL-драйверы (только устройства MIXER и PCM) и документацию к их чипсету 4D Wave PCI . Для приобретения более подробной информации загляните на http://www.tridentmicro.com/HTML/products folder/audio.htm

Карты, использующие этот чипсет: Best Union Miss Melody 4DWave PCI, HIS 4DWave PCI, Warpspeed ONSpeed 4DWave PCI, AzTech PCI 64-Q3D, Addonics SV 750, CHIC True Sound 4Dwave, Shark Predator4D-PCI и Jaton SonicWave 4D.

Gravis Ultrasound (GUS): ``PnP'',treme, Classic/ACE, MAX

Карты с чипсетом GUS: Dynasonic 3-D, STB Sound Rage 32, UltraSound 32-Pro (STB), ExpertColor MED3201 и другие с чипом AMD InterWaveT , например, некоторые карты STB, выпускаемые Compaq

Soundblaster: 1.0, 2.0, Pro, 16, AWE32/64, PCI64

ESS AudioDrive ESx688

Карты на основе ESS ES968 (только PnP).

ESS ES18xx (чипсеты). Но я лично испытал много проблем с ESS1888.

ESS Solo-1 ES1938 и ES1946. Работает только один из двух каналов, поэтому запись невозможна. Автор этого драйвера в настоящее время занимается этой проблемой.

Yamaha: OPL3-SA2, OPL3-SA3 (чипсеты)

OAK Mozart

Schubert 32 PCI (PINE, S3 SonicVibes PCI чипсет)

Звуковые карты Ensoniq AudioPCI ES1370/1371 PCI (Soundblaster PCI64)

Звуковые карты SonicVibes PCI (PINE Schubert 32 PCI)

Карты, основанные на ForteMedia FM801 (версия 0.3.2)

Карты на основе OPTi 82C9xx

Карты на основе AD1847, AD1848 и CS4248

Карты на основе AZT2320 (только PnP).

Карты на основе Avance Logic ALS100/ALS120

Карты на основе C-Media CMI8330

Далее следует множество карт, основанных на Crystal Semiconductors. Эти чипы употребляются достаточно часто, включая отдельные карты (некоторые серии Philips PCA) и материнские платы (например IBM Aptiva, Dell computers). Поддерживаются карты на основе следующих чипсетов:

4231

4232

4232A

4235

4236B

4237B

4238B

4239

4280

4610

4612

4614

4615

4680

Одним из достижений ALSA можно считать то, что они позволяют компьютеру без звуковой карты воспроизводить видео! Это делается за счет "пустого" драйвера, который заставляет "думать" такие программы, как Realplayer, что в вашем компьютере есть аудио карта.

Новейший список можно найти в каталоге драйверов doc/SOUNDCARDS



Приготовление к работе устройств


В каталоге драйвера есть скрипт, который установит звуковые устройства ALSA в ваш каталог /dev . Наберите

./snddevices

в каталоге драйвера. Теперь там должен появиться подкаталог /dev/snd (проверьте это. Если вы при помощи команды "ls" не нашли соответствующего каталога, то вам придется прочесть другой HOWTO. У вас должны быть кое-какие навыки работы с Linux для того, чтобы установить эти драйверы).

Теперь вы можете установить драйвер. Это описано в следующей главе.



Разархивирование


Вы можете разархивировать драйверы командой типа tar -zxf . Было бы сподручнее если бы вы сделали это в каталоге /usr/src, но для этого вы должны зайти как пользователь root. Наберите "su" и пароль root для того, чтобы получить права одноименного пользователя. Но лучше не пользоваться этими правами без лишней необходимости. Итак:



Сборка


До того, как вы начнете использовать библиотеки, у вас должен быть драйвер, а до использования утилит у вас должны быть библиотеки:



Сообщите нам о замеченных ошибках


Если вы обнаружите ошибку, то разработчики драйверов ALSA были бы вам очень признательны за следующую информацию о ней

Название драйвера + версия ядра: 'cat /proc/asound/version'

Информация по карте:

название карты (данное производителем)

список используемых картой микросхем

содержание 'cat /proc/asound/cards'

Все сообщения из /var/log/messages, относящиеся к драйверу ALSA

Описание ошибки



используйте устройства ALSA


Если у вас скомпилирована поддержка звука в ядре, то все приложения будут работать с /dev/pcm0, /dev/audio и /dev/mixer. Это нормально, если вы используете совместимость с OSS при помощи модуля snd-pcm1-oss. Но было бы лучше, если бы вы использовали устройства ALSA, находящиеся в /dev/snd/.



новое ядро? Новые модули!


После того как вы замените ядро, вам следует пересобрать драйверы ALSA. Если вы в каталоге /usr/src, не забудьте скомандовать make clean до того, как выполните ./configure, make, make install.

Да, еще есть ошибка с ядром ``2.2.0ac1'' о котором скрипт настройки говорит ``not a number'' (использовано не числовое выражение). Я думаю, что это все же поправили в новых скриптах, иначе вам придется изменить версию ядра в исходниках.



Совет по использованию KDE и драйверов ALSA


Предположим, что у вас стоит работающая KDE, но не работают системные звуки: например звук при открытии окна или программы. При этом у вас работает проигрыватель CD, mp3 и микшер, то, возможно, у вас не запущено "kwmsound".

Поэтому удостоверьтесь, что "kwmsound" запускается вашим загрузочным скриптом ($KDEDIR/bin/startkde)



Совет по применению CD


При использовании kmod/kerneld и драйверов ALSA для проигрывания CD, программы kmod/kerneld не используют драйверы. Это случается потому, что команда, поступающая на проигрыватель CD, приказывает, только ему воспроизводить звук, и не посылает сообщение kmod/kerneld о том, что есть звук. Пожалуй, единственным решением может быть использование modprobe.



Совет по установке драйвера MIDI


Обычно IO порт последовательного устройства управляется стандартным драйвером устройства. До команды ``modprobe snd-serial'' мы должны предупредить драйвер, чтобы он освободил устройство.

Здесь описана процедура.



Совет по выгрузке из памяти всех модулей


Удаление из памяти более десяти модулей занятие довольно скучное. К счастью, все модули имеют приставку "snd-" , поэтому можно исхитриться и написать программу в одну командную строку. Вы можете удалить их, используя строку:

cat /proc/modules|gawk '/^snd-/{print $1}'|xargs -i rmmod {}

Juergen Kahrs написал мне: "У меня есть скрипт, который выгружает из памяти модули soundcore, soundlow и sound, если они не используются". Этот скрипт обращается к /proc/modules трижды, поэтому там не должно оставаться модулей после запуска скрипта''. Его скрипт представлен ниже

awk '/^snd//^sound/&&($3==0){system("rmmod " $1)}' /proc/modules /proc/modules /proc/modules

Замечание: если один модуль зависит от другого модуля (главного) вы не можете просто удалить главный модуль. Вам придется удалить сначала зависимый, а потом уже главный. (Я не сталкивался с такой ситуацией, но, вероятно, можно выгружать модули ALSA в том порядке в каком они стоят в /proc/modules).



Советы по устранению неисправностей


Пожалуйста, сначала прочтите файл FAQ в каталоге драйвера. Эта глава еще дорабатывается.



Тестирование и использование


Теперь вам предстоит удостовериться, что драйвер правильно установлен и попробовать его в действии.



Установка ALSA для ядер 2.0.x


В драйверах ALSA версий 0.3.0, 0.3.1 и 0.3.2 были проблемы с интерфейсом микшера. Более поздние версии не поддерживают ядра 2.0.x, поэтому вам придется использовать версию драйверов 0.3.0-pre4 если у вас стоит ядро 2.0.

Выполните следующие команды ``./configure - make - make install'' для драйверов, библиотеки и утилит. Вам понадобится сделать это всех трех, потому, что утилиты участвуют в процессе инициализации вашей карты. Ядра 2.0.x должны иметь общую систему поддержки звука отключеной в установках ядра.

Драйверы ALSA, разумеется, поддерживают родные карты, которые можно инициализировать запустив скрипт ./snddevices.

Вы должны загрузить модуль для своей карты (или использовать kmod), а если вы хотите достичь обратной совместимости с драйверами ядра Linux, то вы должны догрузить еще модуль snd-pcm1-oss. Просмотрите главу Разд. Какой модуль для какой карты? для того чтобы выбрать нужный вам модуль. После этого вы можете получить дополнительную информацию о драйверах ALSA в каталоге /proc/asound.



Установка ALSA для ядер 2.2.x


Если вы устанавливаете ALSA 0.4.1e (или более поздние версии), то версия вашего ядра должна быть 2.2.x. Если же версия вашего ядра более старая, то рекомендуется использовать 0.3.0-pre4.

Выполните следующие команды ``./configure - make - make install'' для драйверов, библиотеки и утилит. Вам понадобится сделать это всех трех частей, потому что утилиты участвуют в процессе инициализации вашей карты. Ядра 2.2.x должны иметь общую систему поддержки звука (без указания какой-либо конкретной карты).

Драйверы ALSA, разумеется, поддерживают родные карты, которые можно инициализировать, запустив скрипт ./snddevices .

Вы должны загрузить модуль для своей карты (или использовать kmod), а если вы хотите достичь обратной совместимости с драйверами ядра Linux, то вы должны догрузить еще два модуля: snd-pcm1-oss и snd-mixer-oss. Просмотрите главу Разд. Какой модуль для какой карты? для того чтобы выбрать нужный вам модуль. После этого вы можете получить дополнительную информацию о драйверах ALSA в каталоге /proc/asound.



Установка modprobe


Замечание: если у вас карта PnP, то вам надо сначала правильно ее настроить на IO/IRQ/DMA. Для этого прочтите Plug-and-Play-HOWTO. Теперь вам следует запустить "modprobe snd-card-". Замечу, что не все дистрибутивы включают в путь /sbin. Если вы получили сообщение "bash: modprobe: command not found", это означает, что modprobe не включен в путь. Попробуйте найти утилиту modprobe в ``/sbin/modprobe snd-card-sb16'' или где-либо еще.

Самые большие проблемы могут возникнуть с чипсетами Crystal -для них у драйверов ALSA нет автоматического определения. Более подробную информацию можно прочитать в файле INSTALL, который находится в каталоге драйвера. Вот два примера: первый для Gravis UltraSound (GUS) и аналогов:



Устройства /dev/snd/


В каталоге /dev/snd/ находятся звуковые устройства драйверов. Если у вас стоит одна карта, вам надо просмотреть следующие устройства:



Версии ALSA


Драйверы ALSA далеко не новы. Их разработка началась еще для ядер 2.0, затем и для ядер 2.2 (у которых есть собственное звуковое ядро).

У меня замечательно работает версия 0.4 , я думаю, что и версии 0.4.1e (или более новые) будут не хуже. Если у вас ядро 2.0.x, вам понадобятся версии 0.3.0 или более старые. Я бы посоветовал использовать alsa-driver-0.3.0-pre4, alsa-lib-0.3.0-pre4 и alsa-utils-0.3.0-pre3.

Более старые версии, такие как 0.2.0-pre10p3 или старше, работают под ядром 2.0.x, но я не смог их запустить под 2.2.x .



Воспроизведение и запись


Несколько замечаний. У ALSA есть несколько устройств в /dev/snd, например /dev/snd/pcmC0D1 относится к Карте 0, Устройству 1 (Card 0, Device 1). Вы можете использовать старые устройства /dev/pcmXY, если загрузили snd-pcm1-oss для обратной совместимости. Вам, наверняка, пригодится /dev/mixer, поэтому для его работы загрузите snd-mixer-oss. До того, как вы начнете использовать свою карту, вы должны будете ее инициализировать при помощи ``amixer''. Наберите ``amixer groups'', затем

amixer set PCM 100 unmute

Или что-то похожее.

В принципе, вы можете использовать опции ``mute'' или ``unmute'', ``capture'' или ``nocapture'' и числа.

Ну, теперь, если у вас заработала карта, все нормально, иначе вам придется прочесть все HOWTO...


Несколько замечаний. У ALSA есть список устройств в /dev/snd, например /dev/snd/pcmC0D1 означает Карта 0, Устройство 1 (Card 0, Device 1). Вы можете использовать старые устройства /dev/pcmXY если загрузили snd-pcm1-oss для обратной совместимости. До того как вы начнете использовать свою карту вы должны будете ее инициализировать при помощи ``amixer''. Наберите ``amixer groups'', затем

amixer pcm 100 unmute

В принципе вы можете использовать опции ``mute'' или ``unmute'', ``rec'' или ``norec'' и числа или левый:правый.

Ну теперь если у вас заработала карта, то все нормально, иначе вам придется прочесть все HOWTO...



Этот документ поможет вам при


Этот документ поможет вам при установке и использовании драйверов ALSA, если вы используете Linux. Базовые тесты были проведены на дистрибутиве Slackware 4.0 Linux на компьютере AMD/K6, но это все должно работать и с другими дистрибутивами. Я не испытывал драйверы при работе на других платформах. У меня есть данные только о x86-компьютерах, поэтому, если вы протестировали драйвер на других системах, пожалуйста, напишите мне.
Было бы не лишним, если бы вы прочли "HOWTO: Звук в Linux" (смотрите главу Другие HOWTO), так как этот документ HOWTO описывает только драйверы, встроенные в ядро.

Загрузка драйвера


Существует два способа использования звуковых модулей ALSA. Я предпочитаю делать это, как описано в инструкции, этот метод подразумевает, что во время запуска системы модуль подгружается. Драйверы ALSA были спроектированы как двоякие, то есть существует возможность их применения как догружаемых модулей, так и не подгружаемых (установленных). После загрузки они не сбивают настроек микшера, поэтому вы можете воспользоваться другим способом их эксплуатации - при помощи kerneld.

Если у вас старое ядро, то для обеспечения поддержки звука прочтите главу Разд. Обратная совместимость.