Серверная (www.it-simple.ru)

Пищалка в линуксе: beep


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

В такие моменты иногда спасает команда "eject -T" и сервер определяется по высунутому языку лотка сиди-и-рви. Но и здесь может подстерегать чудный облом. Поскольку, как я уже говорил, на серверах стоит линукс, сидиромы им не нужны: только занимают место, собирают пыль и жрут энергию, которой и так в мире дефицит. Поэтому на половине серверов — сидиромов тупо нет.

Зато на каждом уважающем себя сервере должна быть установлена пищалка (унылые любители суржика ещё называют её "спикером", а скучные педанты — "системным динамиком"). Это мелкая хрень, которая раньше впаивалась в материнскую плату, потом стала подсоединяемой, а в последнее время её постоянно забывают положить в комплект; её задача — пищать. Один короткий писк при старте загрузки и целая азбука морзе (см. документацию к маме), если с железом что-то не в порядке.

Пищалка — единственная связь материнской платы с внешним миром, когда поломалось "железо". Поэтому, повторюсь, на любом сервере пищалка должна быть установлена в обязательном порядке. И ею можно пищать из системы!

1. Устанавливаем пакет beep

apt-get install beep

2. Загружаем модуль ядра pcspkr (можно snd_pcsp, но лучше pcspkr), если не загружен. Скорее всего — не загружен, а без него пищать не будет. Это драйвер пищалки.

modprobe pcspkr

Оба модуля не подгружаются автоматически, потому что находятся в ч0рном списке модулей (/etc/modprobe.d/blacklist.conf). snd_pcsp — за то, что он "низкокачественный", "тупо шумит при попытке проигрывания звука", да ещё и "подвисает при входе в графическую сессию". pcspkr — потому что "мерзкий громкий писк, нервирующий каждого" и "вместо него есть приятный пульсаудио". Первый раз читал — ржал в голос.

В общем, pcspkr можно смело из ч0рного списка удалять.

3. Пищим

beep

Если устанавливать программу beep и подгружать драйвер надо от рута, то пищать можно (и нужно) от обычного пользователя.

4. Проявляем изобретательность

beep -f 196 -l 400 -n -f 262 -l 800 -n -f 196 -l 600 -n -f 220 -l 200 -n -f 247 -l 800 -n -f 165 -l 400 -n -f 165 -l 400 -n -f 220 -l 800 -n -f 196 -l 600 -n -f 175 -l 200 -n -f 196 -l 800 -n -f 131 -l 400 -n -f 131 -l 400 -n -f 147 -l 800 -n -f 147 -l 400 -n -f 165 -l 400 -n -f 175 -l 800 -n -f 175 -l 400 -n -f 196 -l 400 -n -f 220 -l 800 -n -f 247 -l 400 -n -f 262 -l 400 -n -f 294 -l 1200 -n -f 196 -l 400 -n -f 330 -l 800 -n -f 294 -l 600 -n -f 262 -l 200 -n -f 294 -l 800 -n -f 247 -l 400 -n -f 196 -l 400 -n -f 262 -l 800 -n -f 247 -l 600 -n -f 220 -l 200 -n -f 247 -l 800 -n -f 165 -l 400 -n -f 165 -l 400 -n -f 220 -l 800 -n -f 196 -l 400 -n -f 175 -l 400 -n -f 196 -l 800 -n -f 131 -l 400 -n -f 131 -l 400 -n -f 262 -l 800 -n -f 247 -l 400 -n -f 220 -l 400 -n -f 196 -l 1600 -n -f 330 -l 1600 -n -f 294 -l 400 -n -f 262 -l 400 -n -f 247 -l 400 -n -f 262 -l 400 -n -f 294 -l 1200 -n -f 196 -l 400 -n -f 196 -l 1600 -n -f 262 -l 1600 -n -f 247 -l 400 -n -f 220 -l 400 -n -f 196 -l 400 -n -f 220 -l 400 -n -f 247 -l 1200 -n -f 165 -l 400 -n -f 165 -l 1600 -n -f 262 -l 800 -n -f 220 -l 600 -n -f 247 -l 200 -n -f 262 -l 800 -n -f 220 -l 600 -n -f 247 -l 200 -n -f 262 -l 800 -n -f 220 -l 400 -n -f 262 -l 400 -n -f 350 -l 1600 -n -f 350 -l 1600 -n -f 330 -l 400 -n -f 294 -l 400 -n -f 262 -l 400 -n -f 294 -l 400 -n -f 330 -l 1200 -n -f 262 -l 400 -n -f 262 -l 1600 -n -f 294 -l 1600 -n -f 262 -l 400 -n -f 247 -l 400 -n -f 220 -l 400 -n -f 247 -l 400 -n -f 262 -l 1200 -n -f 220 -l 400 -n -f 220 -l 1600 -n -f 262 -l 800 -n -f 247 -l 400 -n -f 220 -l 400 -n -f 196 -l 800 -n -f 131 -l 600 -n -f 131 -l 200 -n -f 196 -l 1600 -n -f 220 -l 800 -n -f 246 -l 800 -n -f 262 -l 3200

-f — частота, от 0 до 20 000 герц
-l — длительность, в миллисекундах
-n — новый писк

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

rmmod pcspkr

Способы применения: будильник (по крону, мерзкий звук — самое оно), идентификация серверов и рабочих станций (пользователь сам позвонит в панике, особенно если системник начнёт пищать, как таймер на бомбе из фильмов), сигнал об окончании работы фонового скрипта и т.д.