Jump to content
From ArchWiki

Ссылки по теме

- Kernel modules (Русский)
- Advanced Linux Sound Architecture (Русский)

Состояние перевода: На этой странице представлен перевод статьи 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

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

- xset(1), setterm(1), readline(3)

Category:

- Sound (Русский)