Как ПОЛНОСТЬЮ отключить системные звуковые сигналы навсегда для хорошего по-настоящему

58

Я использую Наутилус, чтобы исследовать мои файлы. Я использую ОС на основе Debian с KDE Plasma 5.

Я часто пользуюсь клавиатурой. Когда я нажимаю клавишу вверх при навигации по файлам, если я уже на краю списка файлов, Nautilus отправит большой системный сигнал, который я услышу на 100% громкости через мои наушники. Моя реакция сравнима с электрификацией.

Я поместил следующие строки ~/.bashrcдля пользователя sudo (root) и для моего обычного пользователя:

# Turn off system beep in console:
xset b off
xset b 0 0 0

Однако, несмотря на звуковой сигнал, исходящий из некоторых мест в ОС (например, удаление пустой строки в терминале gnome), он все еще находится в Наутилусе. Я полагаю, что это потому, что Наутилус не является источником .bashrcили потому что он игнорирует xsetкоманды.

Как я могу это исправить?

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

Гийом Шевалье
источник
3
Это системный гудок (такой громкий звук) или звук (лай / капель / донг и т. Д. Для гнома)? Если это первый, то, вероятно, системный уровень (в этом случае попробуйте отключить pcspkrмодуль или использовать другую звуковую карту - если последний, вам придется отключить звук в настройках системы (включая Gnome, как в ответе Стивена)
Уилф
10
Просто чтобы сделать это явным для тех, кто этого не осознавал: ~/.bashrcэто пользовательский конфигурационный файл bashоболочки, стандартная оболочка терминала Debian. Если вы понимаете это, то становится очевидным, почему настройки bash не влияют на другие приложения, такие как Nautilus.
MSalters
3
Некоторые звуковые карты имеют системный звуковой сигнал как отдельный канал, который можно отключить.
Саймон Рихтер
3
Попробуйте использовать ~/.profileвместо ~/.bashrc. Как отметил @MSalters, ~/.bashrc. Запускается при открытии нового терминала, а не тогда , когда вы войти ~/.profile. Запускается , когда вы войти (засмеялись хорошо на вашей реакции, я испытал это сам!)
Teodor
15
Кусачки; просто
вырежь

Ответы:

34

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

Наутилус использует настройки GNOME. Если у вас есть центр управления GNOME, вы можете отключить там звуковые эффекты - зайдите в настройки звука и отключите звуковые эффекты. Или запустите dconf-editor, перейдите в «org / gnome / desktop / sound» и отключите «звуки событий» и «звуки входной обратной связи». Вы также можете сделать это из командной строки, см. Как отключить звуки оповещения / звуковые эффекты на Gnome из терминала? для деталей.

Стивен Китт
источник
Я не думаю, что это правда. Если он использует динамик ПК, вы можете отключить это глобально.
лес
7
@ В этом вопросе говорится: «Наутилус отправит большой системный сигнал, который я услышу на 100% громкости через наушники». Это нельзя отключить, отключив динамик ПК.
Стивен Китт
Плохо, но есть параметр конфигурации ядра, который отправляет запросы на запуск динамика ПК через драйвер ALSA, но я не знаю, действительно ли какой-либо дистрибутив делает это по умолчанию. Но это, вероятно, не тот случай, так что хороший момент.
лес
7
@forest действительно вопрос терминологии в вопросе - Наутилус не использует системный гудок.
Стивен Китт
25

Я не знаю, что делает звук KDE, но если вы имеете в виду системный гудок, просто отключите загрузку pcspkrмодуля. Как root сделать:

rmmod pcspkr ; echo "blacklist pcspkr" >>/etc/modprobe.d/blacklist.conf

Edheldil
источник
1
Это отключает только динамик ПК, который Наутилус не использует. Вы решаете не ту проблему.
Жиль "ТАК - перестань быть злым"
1
Я был удивлен, но раздражен, узнав, что у моего нового ноутбука Lenovo есть динамик. Каждый раз, когда я нажимаю клавишу «Backspace» слишком много раз, мне не удается выполнить поиск с помощью Ctrl + F в Firefox, не удается завершить вкладку ... всегда этот громкий, неприятный звуковой сигнал. Вместо того чтобы настраивать каждую часть программного обеспечения, удалялся мод pcspkr! (Между /sbin/rmmodпрочим, мне нужно было использовать PATH для root.)
Luc
1

Используемая xsetвами команда работает с X-сервером / X-сессией, а не с терминалом, и т. Д. .bashrcИли подобным не является подходящим местом для ее размещения. Если Nautilus действительно подает звуковой сигнал через функцию звонка X-сервера, я ожидаю, что xsetон остановит его, если вы уже открыли терминал (и тем самым запустили команду) заранее.

Если это работает, вам нужно запустить команду как часть запуска / входа в систему под X. Традиционный способ сделать это - через файл .xsessionили .xinitrc; тем не менее, эти файлы (сценарии) традиционно должны были запускать программу сеанса оконного менеджера / среды рабочего стола в качестве последней строки exec, и если вы просто добавите сценарий, не содержащий ничего, кроме xsetвас, вы можете оказаться не в состоянии войти в систему под X ( скорее сразу выйдет из системы, когда вы это сделаете). Выяснение того, что нужно сделать здесь, будет в некоторой степени зависеть от настроек ОС и дистрибутива X и среды рабочего стола, поэтому я чувствую, что оставляю этот ответ несколько неполным, но в качестве источника направления для поиска.

Р..
источник