Со страницы руководства по звуковым сигналам на моей машине с Ubuntu:
IOCTL WACKINESS
Некоторые пользователи сталкиваются с ситуацией, когда звуковой сигнал умирает с жалобой от ioctl (). Причина этого, поскольку Питер Тирсек был достаточно любезен, чтобы указать мне, связана с тем, как ядро обрабатывает попытку звукового сигнала, на которую можно попытаться нажать (для непрограммистов: ioctl - это своего рода универсальная функция, которая позволяет вам делать то, что нет другого предопределенного механизма нажатия на tty, то есть, как он подает звуковой сигнал. Коротко говоря, ядро проверяет, что либо:
ты суперпользователь
у вас есть текущий tty
Это означает, что root всегда может заставить работать звуковой сигнал (насколько мне известно!), И что любой локальный пользователь может заставить работать звуковой сигнал, НО удаленный пользователь без полномочий root не может использовать звуковой сигнал в своем естественном состоянии.
Это может быть причиной того, что звуковой сигнал отказывается работать удаленно. Вы можете проверить, является ли это основной причиной, вызвав ssh с опцией -t , которая вызывает псевдо-tty.
Менее желательным решением будет создание сценария-обертки, который выполняет звуковой сигнал, и предоставление корневым разрешениям для этого сценария . Если выполнение этого скрипта через ssh должным образом выдаст звуковой сигнал, вы будете знать, что проблема заключается в отсутствии управляющего терминала.