我如何远程 (SSH) 使我的 Linux 计算机发出哔哔声(内置扬声器,因为没有外部扬声器)?我有 ubuntu 9.04,如果需要可以安装额外的包。如果您有不止一个站着并且忘记了哪个 IP 是哪个盒子,这将有助于找到某个盒子。
Joh*_*n T 25
尝试:
sudo sh -c "echo -e '\a' > /dev/console"
Run Code Online (Sandbox Code Playgroud)
您可能必须首先加载内置扬声器的内核模块(例如,如果该模块被自动加载列入黑名单):
sudo modprobe pcspkr
Run Code Online (Sandbox Code Playgroud)
小智 14
第一的:
modprobe pcspkr
Run Code Online (Sandbox Code Playgroud)
然后从主题解决方案,如
ssh user@host
beep
Run Code Online (Sandbox Code Playgroud)
小智 6
从我的 Ubuntu 机器上的beep手册页:
国际奥委会古怪
一些用户会遇到由于 ioctl() 的抱怨而使 beep 停止的情况。这样做的原因,正如 Peter Tirsek 很好地向我指出的那样,源于内核如何处理 beep 试图戳的(对于非程序员:ioctl 是一种包罗万象的函数,它可以让你戳没有其他预定义的戳机制)tty,这就是它发出哔哔声的方式。 简而言之,内核会检查:
你是超级用户
您拥有当前的 tty
这意味着 root 总是可以使 beep 工作(据我所知!),并且任何本地用户都可以使 beep 工作,但非 root 远程用户不能在其自然状态下使用 beep。
这很可能是 beep 拒绝远程工作的原因。您可以通过使用-t选项调用ssh来检查这是否是根本原因,这会强制伪 tty 分配。
一个不太理想的解决方案是创建一个执行 beep 的包装脚本,并授予此脚本 root 权限。如果通过ssh执行此脚本适当地产生蜂鸣声,您就会知道问题是缺少控制终端。