Мы — долго запрягаем, быстро ездим, и сильно тормозим.
www.lissyara.su —> статьи —> FreeBSD —> Шелезяки —> pc_speaker

PC Speaker

Автор: gonzo111.


Наверно у каждого в серверах есть некий девайс старины под названием pc speaker, если вы находитесь рядом с сервером, то можно его использовать в качестве оповещения о событиях в скриптах ну или просто будить вас по утрам :)
Загружаем драйвер
kldload speaker

ну или для постоянной загрузки
/boot/loader.conf
speaker_load="YES"

Приведу примеры
echo -e "ec" > /dev/speaker
echo -e "t255l8c.f.afc~c.f.afc~c.f.afc.f.a..f.~c.f.afc~c.f.afc~c.f.afc~c.f.."
 > /dev/speaker
echo -e "<cd<a#~<a#>f" > /dev/speaker
echo -e "t240<cfcfgagaa#b#>dc<a#a.~fg.gaa#.agagegc.~cfcfgagaa#b#>dc<a#a.
~fg.gga.agfgfgf.">/dev/speaker
echo -e "t255cf8f8edc<a>~cf8f8edd#e~ce8cdce8cd.<a>c8c8c#def8af8" >
 /dev/speaker
echo -e "olcega.a8f>cd2bgc.c8dee2" > /dev/speaker
echo -e "msl16oldcd4mll8pcb-agf+4.g4p4<msl16dcd4mll8pa.a+f+4p16g4" >
 /dev/speaker
echo -e "l2b.f+.p16a.c+.p l4mn<b.>e8a2mspg+e8c+f+8b2" > /dev/speaker

_________________________________________

Случайные звуки
/bin/dd if=/dev/random bs=128 count=1 | /bin/cat > /dev/speaker
jot -r -c 255 A G > /dev/speaker
head -n 1 /var/log/messages > /dev/speaker

_________________________________________

Звуки при поднятии/обрыве линка в ppp.
/etc/ppp/ppp.linkup
MYADDR:
 !bg sh -c "/bin/echo -e "l2b.f+.p16a.c+.p" > /dev/speaker"

/etc/ppp/ppp.linkdown
MYADDR:
 !bg sh -c "/bin/echo -e "gc.c8dee2" > /dev/speaker"

А потом выполнить
/etc/rc.d/ppp stop
/etc/rc.d/ppp start

_________________________________________

Звуки при успешной загрузке.
Если к серверу не подключен монитор, то можно услышать, что он загрузился, если в /etc/crontab добавить
@reboot   root   /bin/echo -e "P 1 F P 1 F P 1 F" > /dev/speaker

_________________________________________

Говорим морзянкой
В системе есть стандартная утилитка которая умеет болтать морзянкой (!).
morse -p -d /dev/speaker "SOS"
morse -p -d /dev/speaker "ppp"
morse -p -d /dev/speaker "FreeBSD forever"
morse -pe -f 800 -d /dev/speaker "help"
morse -pe -f 3900 -d /dev/speaker "help"

-e позволяет выводить пикаемый текст на экран
-f можно изменять частоту, по умолчанию 600
Ощути себя групенфюрером Штирлицем :)
Morse есть в 7-ке /usr/games/morse  в 6-ке вроде-как ее нету..возможная замена /usr/ports/textproc/cwtext.

_________________________________________________

В портах есть еще програмка /usr/ports/audio/beep которая позволяет выдавать звук разной частоты и длительности.

Стандартный Бип в консоле об ошибках можно выключить выполнив sysctl hw.syscons.bell=0

ps: Спасибо tty, andy за идеи.



размещено: 2010-09-06,
последнее обновление: 2010-09-29,
автор: gonzo111


me, 2010-09-09 в 6:47:16

Круто!!! Хочу звук модема сделать, на включение пппое, реально?

ail-man, 2010-10-15 в 11:16:49

Прикольно =)
Использую теперь это для оповещения при переключении на резервный канал ))

ail-man, 2010-10-15 в 11:16:50

Прикольно =)
Использую теперь это для оповещения при переключении на резервный канал ))

ttys, 2011-06-07 в 10:37:32

"ps: Спасибо tty, andy за идеи."
ttys а не tty

ttys, 2011-06-07 в 10:48:04

в 8.2

(pts/2)[root@adi:/usr/src/games/morse]# make
Warning: Object directory not changed from original /usr/src/games/morse
cc -O2 -pipe  -DSPEAKER=\"/dev/speaker\" -std=gnu99 -fstack-protector  -c morse.c
cc -O2 -pipe  -DSPEAKER=\"/dev/speaker\" -std=gnu99 -fstack-protector   -o morse morse.o
gzip -cn morse.6 > morse.6.gz
(pts/2)[root@adi:/usr/src/games/morse]# make install
install -s -o root -g wheel -m 555   morse /usr/games
install -o root -g wheel -m 444 morse.6.gz  /usr/share/man/man6
(pts/2)[root@adi:/usr/src/games/morse]# make clean
rm -f morse morse.o morse.6.gz morse.6.cat.gz

)))

salimk, 2011-09-06 в 7:56:12

Ради прикола надо мелодию "Вход виндовс" забабахать, тут есть музыканты?



 

  Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
  Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

© lissyara 2006-10-24 08:47 MSK

Время генерации страницы 0.0369 секунд
Из них PHP: 22%; SQL: 78%; Число SQL-запросов: 77 шт.
Исходный размер: 18971; Сжатая: 5325