欢迎光临散文网 会员登陆 & 注册

Homeassistant 控制电脑开关Mac(黑苹果)篇

2023-02-28 12:13 作者:phonigh  | 我要投稿

一、打开mac启动台->其他->终端,输入:

sudo visudo

输入你的登陆密码后,在英文输入法下敲

a

移动方向键到文件底部,插入红框内的文字(不要照抄,仔细看我的图片注释)格式:

(用户名) ALL=NOPASSWD: (路径)。括号内改成你的内容,下图是我的,供参考:

“fxz”改成你的mac名称,不清楚可使用whoami查询。/sbin/shutdown是shutdown的通常路径,不确定可使用which shutdown查询。

核对无误后按esc键,再敲

:wq

保存并退出。测试一下,执行下面代码,不出意外不用输入密码,你的mac就自动重启了。

sudo shutdown -r now

二、登入Home Assistant web界面点选配置->加载项,右下角加载项商店搜索SSH,下载第一个就行,如图:

安装并启动,后点击右下角打开WEB UI,

1、新建文件夹:

mkdir /config/.ssh

2、创建 key

ssh-keygen -t rsa

3、储存位置输入(提示输入密码时,直接回车,不要输入密码)

/config/.ssh/id_rsa

4、在Mac的终端输入下面内容,来创建存储密钥的文件夹:

mkdir -p .ssh

5、在Mac的系统设置->通用->共享,打开远程登录并点击后面的i,在选择用户一栏选择所有用户,点完成。


6、在Home Assistant的SSH界面执行下面的命令,将密钥传输到Mac(注意将连同括号在内的内容修改成你的):

cat /config/.ssh/id_rsa | ssh (用户名)@(IP地址) 'cat >> .ssh/authorized_keys'

7、测试你的Home Assistants是否可以免密登陆Mac:

ssh -i /config/.ssh/id_rsa (用户名)@(IP地址)

如果不行,试着将第5步的命令换成下面这条:

 cat /config/.ssh/id_rsa.pub | ssh (用户名)@(IP地址) 'cat >> .ssh/authorized_keys'

三、修改Home Assistant 的configuration.yaml文件(推荐在win下用WinSCP登陆到/usr/share/hassio/homeassistant/找到该文件打开修改,注意mac地址一栏保留引号)

switch:  

 - platform: wake_on_lan

    mac_address: "你Mac的网卡mac地址" 

    host: 你的IP地址

    name: "Mac" 

    turn_off:      

      service: shell_command.unix_off

shell_command:

  unix_off: 'ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i /config/.ssh/id_rsa (用户名)@(IP地址) sudo /sbin/shutdown -h now'

修改保存,重启Home Assistant。

右边卧室经过自定义修改就有了Mac Mini的开关

四、经过以上设置Mac关机大抵是不成问题了,可能你的Mac和我一样,不能用HA开机。这是因为除了需要在主板BIOS设置中打开WOL(网络唤醒)功能外,Mac下的网卡驱动要支持WOL。我的网卡是Intel l219LM,如果你也是intel网卡,可以按一下步骤解决此问题。

1、在github网站下载集成wol的intel网卡驱动:https://github.com/acidanthera/IntelMausi

2、将下载好的kext,拷贝到EFI->EFI->OC->Kexts目录下替换原有kext驱动(注意备份),重启测试网卡驱动是否可用。

3、在ocat的DP选项中,添加如图的选项并填写好各项参数:

PCILists地址等参数可在Hackintool的PCIe选项中获取

关机后你会发现原本漆黑一片的网口,有了光芒在闪烁,ok用你的HA开机吧!

Homeassistant 控制电脑开关Mac(黑苹果)篇的评论 (共 条)

分享到微博请遵守国家法律