在 Mac(OS 10.13)上,在我的 LAN 中,有没有办法判断另一台类似的 Mac 是否有人登录,或者它已经运行了多长时间?我有一台无头 Mac,有时会自动重启,我希望能够从另一台机器上监控这种情况。如果发生这种情况,它会停留在登录屏幕上,我可以通过没有人登录这一事实来检测。或者有另一种方法来检测这一点?也许是由于缺少一些轻量级的网络服务,这些服务只有在用户登录后才应该存在?我可以让它在登录序列中运行什么,这些序列在外部可见(在端口上监听的东西)?
答案1
第一部分,查看您可以使用的状态ssh
(在 mac 语言中称为“远程登录”),运行uptime
以查看它已经运行了多长时间,以及who
查看谁登录了。
myuser@machine: ssh fredrik@viggen
Last login: Sat Feb 6 10:55:10 2021 from 10.1.66.37
fredrik@viggen:~$ who
fredrik console Feb 3 07:56
fredrik ttys000 Feb 3 08:05
fredrik ttys008 Feb 6 10:55 (10.1.66.37)
fredrik@viggen:~$ uptime
10:58 up 3 days, 3:03, 7 users, load averages: 2.68 2.33 2.29
fredrik@viggen:~$
“console”是图形登录,“ttys000”是本地终端,“ttys008”是通过IP地址显示的远程登录。
如果系统重新启动,通知会更加先进,并且有多种方法可以实现。您可以使用一个简单的脚本通过 Messenger(电报或其他方式)、IFTTT、推送通知、发送电子邮件等向您发送警报。
我个人会使用一个简单的脚本通过 Telegram 通知我的手机。首先,下载电报 bash然后我会把它放在 crontab 中(crontab -e),像这样@rebooot /path/to/telegram -t 123456:AbcDefGhi-JklMnoPrw -c 12345 "Hello, World."