fulinsky 发表于 2023-2-28 20:00

将你的黑苹果接入Homekit,呼唤Siri开关机

最近闲来无事折腾homeassistant,家里小屁孩上网课需要电脑,但是课程结束后总要找理由不关机,且不让人进书房,美其名曰打扰他学习。所以有了用homekit控制PC关机的想法,顺手帮我的黑苹果也让homekit控制开关,本帖之谈黑苹果如何让手机家庭app以及siri控制开关。一、打开mac启动台->其他->终端,输入:
sudo visudo

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

a

移动方向键到文件底部,插入以下文字,格式:

(用户名) ALL=NOPASSWD: (路径)。

括号内改成你的内容,用户名不清楚可使用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关机大抵是不成问题了,可能你的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选项中,添加网卡选项并填写好各项参数:(主要添加mausi-force-wol=1,PCILists地址等参数可在Hackintool的PCIe选项中获取)。
关机后你会发现原本漆黑一片的网口,有了光芒在闪烁,ok可以用你的HA开机了! 同时在HA中的通知栏会出现homekit二维码,用iphone的家庭app扫描添加,就可以呼唤siri控制mac开关了。我的图文版帖子见: https://www.bilibili.com/read/cv22100603?spm_id_from=333.999.list.card_opus.click

CLCK 发表于 2023-2-28 20:02

好帖 mark一下

小风2014 发表于 2023-2-28 20:03


好帖 mark一下

yj070 发表于 2023-2-28 20:30

感谢楼主分享技术经验!

AVMLOVER 发表于 2023-2-28 20:35

感谢分享

show1001 发表于 2023-2-28 21:07

INTEL网卡WOL成功。
杀手网卡E2200关机后网口灯不亮,看驱动说支持WOL,但不起作用。

lwx1901 发表于 2023-2-28 21:21

好贴,顶顶顶顶

张敬轩吖 发表于 2023-2-28 23:32

好帖,可惜我的是螃蟹的2.5G网卡

周梦玏 发表于 2023-3-1 08:42

还能这样玩?感谢分享

gameboyforever 发表于 2023-3-1 09:52

好帖 mark一下

卡卡罗特吃米饭 发表于 2023-3-1 09:55

白果卡94360cs2能用吗

shanky1993 发表于 2023-3-1 11:33

好贴,留名备用。

yizhimei 发表于 2023-3-1 18:32

咋看我居然看不懂。。。

harryboy6537 发表于 2023-3-2 13:34

不错的教程,感谢楼主分享

aiyayatoof 发表于 2023-3-2 15:17

MARK留名,以后或许用得着。

1170430429 发表于 2023-3-2 15:59

回去试试,,,,,

Jason_r 发表于 2023-3-4 23:10

好贴啊,果断收藏下

Jason_r 发表于 2023-3-5 01:28

nvalid config for : is an invalid option for . Check: switch.wake_on_lan->mac_address. (See ?, line ?).
出错了?

wxz8506 发表于 2023-3-5 08:30

好贴,支持一下、

teniubi250 发表于 2023-3-5 18:14

MARK一下把
页: [1] 2
查看完整版本: 将你的黑苹果接入Homekit,呼唤Siri开关机