Вопрос или проблема
Как отключить системный сигнал на консоли в FreeBSD 10.1?
Рекомендуемые команды не работают.
Настройка sysctl
:
# sysctl hw.syscons.bell=0
hw.syscons.bell: 1 -> 0
# sysctl -a | grep bell
hw.syscons.bell: 0
Backspace все еще вызывает оглушительный сигнал.
Нашел другое предложение, использовать kbdcontrol
:
# kbdcontrol -b off
#
Нет, все еще сигналит.
Описание моей системы:
Старый ноутбук Gateway MD-78 серии (с набором микросхем Intel GM45 Express), без аппаратной ручки регулировки громкости, с весьма громким звуком динамика ПК.
Я использую FreeBSD 10.1.
# uname -a
FreeBSD raktop 10.1-RELEASE FreeBSD 10.1-RELEASE #0 r274401: Tue Nov 11 21:02:49 UTC 2014 [email protected]:/usr/obj/usr/src/sys/GENERIC amd64
Обновление:
Я использую vt
иначе newcons
, и в итоге выяснил, что могу отключить звук с помощью:
kbdcontrol -b quiet.off
что можно записать в /etc/rc.conf
, чтобы изменения стали постоянными, как:
allscreens_kbdflags="-b quiet.off"
Если вы используете vt
иначе newcons
, попробуйте:
kbdcontrol -b quiet.off
Если это сработает, вы можете сделать это постоянным в вашем /etc/rc.conf
:
allscreens_kbdflags="-b quiet.off"
Предыстория:
После запуска kbdcontrol
из Xterm и просмотра его вывода в виде escape-последовательности, я понял, что он пытается отправить команду в форме escape-последовательности на эмуляцию терминала в драйвере консоли, и, возможно, нужно отправить что-то другое, потому что я не использую драйвер консоли по умолчанию; затем я искал и нашел ответ, связанный с newcons
: http://lists.freebsd.org/pipermail/freebsd-current/2014-April/049463.html
Используйте sysctl -a | grep bell
, чтобы посмотреть, какие у вас есть настройки. Возможно, сейчас используется vt.
sudo sysctl kern.vt.enable_bell=0
работает в моем случае.
Взято с форума freebsd пост:
Вы можете отключить сигнал, если установить значение MIB hw.syscons.bell в 0. Просто напишите
sysctl hw.syscons.bell=0
Чтобы сохранить изменения навсегда после перезагрузки вашего устройства
# echo "hw.syscons.bell=0" >> /etc/sysctl.conf
🙂
Единственное, что сработало в FreeBSD 10.3, было:
kern.vt.enable_bell=0
Я только что “отключил” системный сигнал в китайском мини-ПК, используя очень простой и эффективный метод, как показано здесь. Серьезно 🙂
На самом деле это был не системный сигнал, а сигнал BIOS, и не было никакой опции, чтобы его отключить. Но всегда есть какой-то выход. 🙂 Теперь я наслаждаюсь абсолютной тишиной. 🙂
Я просто разобрал зуммер и убрал вибрирующую мембрану. Это был единственный способ заставить его замолчать. В BIOS не было опции отключения звука самопроверки, и это было очень громко и раздражающе. В конце концов, тишина более ценна, чем ПК за 200 долларов.
Кажется, это зависит от системы. У меня FreeBSD установлен на внешнем жестком диске, и я могу подтвердить, что на ноутбуке Acer sysctl hw.syscons.bell=0
сработал, в то время как на системе Lenovo мне пришлось использовать kern.vt.enable_bell=0
.
Это несмотря на то, что на обоих устройствах используется vt.
Ответ или решение
Отключение системного звука в FreeBSD 10.1 может представлять собой сложную задачу, особенно если стандартные команды не работают. Давайте рассмотрим несколько способов решения этой проблемы, опираясь на данные, предоставленные в описании.
Шаги по отключению системного звука в FreeBSD 10.1
-
Использование
sysctl
для отключения звука:
Исходной командой является использованиеsysctl
для изменения параметраhw.syscons.bell
. Вы можете выполнить:# sysctl hw.syscons.bell=0
Также добавьте эту настройку в файл
/etc/sysctl.conf
, чтобы изменения сохранялись после перезагрузки:# echo "hw.syscons.bell=0" >> /etc/sysctl.conf
-
Использование
kbdcontrol
для настройкиvt
(илиnewcons
):
Если вы используетеvt
, попробуйте следующую команду:# kbdcontrol -b quiet.off
Чтобы сделать это изменение постоянным, добавьте в файл
/etc/rc.conf
строку:allscreens_kbdflags="-b quiet.off"
-
Изменение системной конфигурации
kern.vt.enable_bell
:
Если проблема остается, попробуйте команду:# sysctl kern.vt.enable_bell=0
Это изменение также следует внести в
/etc/sysctl.conf
для сохранения в будущем:# echo "kern.vt.enable_bell=0" >> /etc/sysctl.conf
Особенности и рекомендации
-
Зависимость от оборудования: Как показано в заботливых примерах, успешность применения вышеуказанных методов может зависеть от конкретной аппаратной конфигурации. На некоторых устройствах лучше работают одни команды, на других — другие.
-
Устранение аппаратного звука: Если программные методы не помогают, возможно, стоит рассмотреть физическое отключение динамика, как это было предложено в одном из решений. Хотя это радикальный шаг, но иногда он оказывается наиболее действенным, если громкость динамика причиняет дискомфорт.
-
Проверка связанных настроек: Убедитесь, что ваше устройство не имеет включенной BIOS-настройки для системного звука, и в случае ее наличия — отключите её.
Заключение
Отключение системного звука в FreeBSD 10.1 требует внимательного подхода к настройке как системных параметров, так и аппаратных характеристик. Применение предложенных методов и рекомендаций должно помочь добиться желаемого результата даже с учетом индивидуальных особенностей вашего устройства.