PC speaker (Русский)

From ArchWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Состояние перевода: На этой странице представлен перевод статьи PC speaker. Дата последней синхронизации: 21 ноября 2017. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Хотим мы этого или нет, компьютер часто издает звуковые сигналы и другие звуки. Они происходят из различных источников и, как правило, вы можете настроить условие или время для их срабатывания. Для случаев, когда нет звуковой карты или динамиков, и требуется простое аудио оповещение, смотрите раздел #Beep.

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

Примечание: Звуковые сигналы могут быть вызваны BIOS (базовая система ввода/вывода), OS (операционная система), DE (окружение рабочего стола), или различными приложениями. BIOS вызывает наибольшие проблемы из-за того, что он хранится на чипе EPROM, на материнской плате, и единственным непосредственным управлением, которое доступно пользователю, остается включение/выключение питания. Внести какие-либо изменения для него невозможно, если настройки BIOS не имеют опции, которые вы можете применить, или вы не хотите попробовать перепрограммировать этот чип с соответствующей прошивкой. Сгенерированые BIOS звуковые сигналы задаются не здесь, но вы можете вовсе отсоединить встроенный динамик для отключения всех системных звуков. (Делайте это на свой страх и риск.)

Отключение PC Speaker

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

Глобально

PC speaker может быть отключен выгрузкой модуля ядра pcspkr:

# rmmod pcspkr

Помещение в черный список модуля pcspkr предотвратит его загрузку udev при загрузке системы:

# echo "blacklist pcspkr" > /etc/modprobe.d/nobeep.conf

Размещение в черном списке в командной строке ядра - еще один способ добиться похожего эффекта. Просто добавьте modprobe.blacklist=pcspkr к вашей строке начальной загрузки ядра.

Xorg

$ xset -b

You can add this command to a startup file such as /etc/xprofile to make it permanent. See xprofile for more information.

Терминал

Вы можете добавить эту команду в /etc/profile или в отдельный файл вроде /etc/profile.d/disable-beep.sh:

setterm -blength 0

Другой способ - это раскомментировать или добавить строку в /etc/inputrc или ~/.inputrc:

set bell-style none

Постраничный вывод утилитой Less

Для отключения PC speaker при использовании утилиты less, вы можете запустить её с параметром less -q, чтобы заглушить PC speaker по достижении конца постраничного вывода, или less -Q чтобы отключить повсеместно. Для получения справки, выполните man -P "less -Q" или настройте переменные окружения $MANPAGER или $PAGER.

Также, вы можете добавить следующие строки в ваш .bashrc:

alias less='less -Q'
alias man 'man -P "less -Q"'

ALSA

Для большинства звуковых карт PC speaker отображается как канал ALSA, и может называться как PC Speaker, PC Beep, или Beep. Чтобы заглушить динамик, воспользуйтесь alsamixer или amixer.

$ amixer set channel 0% mute

Для включения звука обратитесь к странице руководства Advanced Linux Sound Architecture#Unmuting the channels.

Совет: Если вы используете PulseAudio и канал PC speaker не отображается в устройствах ALSA по умолчанию, попробуйте выбрать устройства соответствующей звуковой карты - прокси-контроль PulseAudio может не отображать PC speaker

GNOME

При использовании GSettings:

$ gsettings set org.gnome.desktop.wm.preferences audible-bell false

Cinnamon

В Cinnamon вероятно используется звук "падающей капли". Для его отключения, измените в dconf:

$ dconf write /org/cinnamon/desktop/wm/preferences/audible-bell false

GTK+

Добавьте следующую строку в ~/.gtkrc-2.0:

gtk-error-bell = 0

Добавьте такую же строку в секцию [Settings] файла $XDG_CONFIG_HOME/gtk-3.0/settings.ini:

[Settings]
gtk-error-bell = 0

Подробно это рассмотрено в Gnome Developer Handbook.

Beep

Beep - это улучшенная программа для подачи звукового сигнала посредством PC speaker. Она может оказаться востребована в ситуациях, когда звуковая карта отсутствует или нет доступных динамиков, но требуется простое звуковое уведомление.

Установка

Установите пакет beep.

Возможно, вам потребуется включить звук канала PC speaker в ALSA.

Доступ для обычных (non-root) пользователей

По умолчанию, beep не будет работать, если запущена не с правами суперпользователя. Другие пользователи могут использовать ее при помощи sudo. Для передачи группе users возможности вызывать sudo beep без пароля (например, для использования в скриптах), следует отредактировать /etc/sudoers:

%users ALL=(ALL) NOPASSWD: /usr/bin/beep

или выдать права только одному пользователю:

username ALL=(ALL) NOPASSWD: /usr/bin/beep

Также можно настроить бит закрепления в памяти /usr/bin/beep:

# chmod 4755 /usr/bin/beep

Обратите внимание, что при этом любой сможет выполнять /usr/bin/beep без прав суперпользователя. Изменение также создаст разность между локальной копией и пакетом, о чем будет сообщено в pacman -Qkk.

Полезные советы

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

# beep -f 5000 -l 50 -r 2

Смотрите также