找回密码
 立即注册

微信扫码登录

搜索
查看: 14963|回复: 14

[技术探讨] 如何阻止Supervisor自动升级

[复制链接]

23

主题

646

回帖

5008

积分

版主

积分
5008
金钱
4324
HASS币
40
发表于 2021-7-27 00:40:17 | 显示全部楼层 |阅读模式
请教诸位,

HA环境为:树莓派+HassOS最新版本。
诉求为:已将设备接入、并实现了完整的配制,一段时间内不想再折腾了,希望将supervisor的自动升级功能屏蔽掉。

请问有哪些解决方案?

有如下思路,请看下是否可行:
1,确定supervisor的升级地址
2,以root权限修改HassOS的hosts文件,屏蔽该地址

以上,请看下是否可行?如可行,该具体如何操作?
谢谢
回复

使用道具 举报

23

主题

646

回帖

5008

积分

版主

积分
5008
金钱
4324
HASS币
40
 楼主| 发表于 2021-7-28 09:34:50 | 显示全部楼层
neroxps 发表于 2021-7-27 15:13
emmm 你没看完我贴内的东西~ 有些人的 tls://1.1.1.1 是通的,屏蔽是无效的。懂?如果你理解 hassio 的dns ...

N大,我目前使用的HassOS,supervisor版本是2021.06.8。如果想pull一个指定版本比如2021.06.6,具体的命令是什么?
我root到OS,pull了旧版本的image,stop了supervisor后,supervisor会以lastest版本自动重启
回复

使用道具 举报

40

主题

3016

回帖

1万

积分

超级版主

Nero

积分
11152
金钱
8046
HASS币
182
发表于 2021-7-27 15:13:12 | 显示全部楼层
本帖最后由 neroxps 于 2021-7-27 15:15 编辑
pikaq 发表于 2021-7-27 15:00
何必这么麻烦,直接在dns里把version.home-assistant.io屏蔽掉就行了(大概是这个域名) ...

emmm 你没看完我贴内的东西~ 有些人的 tls://1.1.1.1 是通的,屏蔽是无效的。懂?如果你理解 hassio 的dns 工作原理的话~
Nero
回复

使用道具 举报

16

主题

152

回帖

1409

积分

金牌会员

积分
1409
金钱
1241
HASS币
0
发表于 2021-7-27 15:00:31 | 显示全部楼层
neroxps 发表于 2021-7-27 10:31
只改宿主的 hosts 是不行的,hassio 有自己的dns 服务器,不依赖系统内部的 hosts,在 hassio_dns 容器内, ...

何必这么麻烦,直接在dns里把version.home-assistant.io屏蔽掉就行了(大概是这个域名)
回复

使用道具 举报

3

主题

220

回帖

3063

积分

元老级技术达人

积分
3063
金钱
2835
HASS币
10
发表于 2021-7-27 14:59:04 | 显示全部楼层
neroxps 发表于 2021-7-27 10:31
只改宿主的 hosts 是不行的,hassio 有自己的dns 服务器,不依赖系统内部的 hosts,在 hassio_dns 容器内, ...

这个真是把我给笑到了
回复

使用道具 举报

23

主题

646

回帖

5008

积分

版主

积分
5008
金钱
4324
HASS币
40
 楼主| 发表于 2021-7-27 11:01:56 | 显示全部楼层
neroxps 发表于 2021-7-27 10:31
只改宿主的 hosts 是不行的,hassio 有自己的dns 服务器,不依赖系统内部的 hosts,在 hassio_dns 容器内, ...

好的,我学习下。刚才没看到N大的这条回复。谢谢
回复

使用道具 举报

23

主题

646

回帖

5008

积分

版主

积分
5008
金钱
4324
HASS币
40
 楼主| 发表于 2021-7-27 10:50:40 | 显示全部楼层
neroxps 发表于 2021-7-27 10:33
supervisor 和 core_dns 这些容器都是受 supervisor 自动升级的,除了 homeassistant 容器不会自动升级, ...

N大有办法屏蔽掉supervisor的升级嘛?
回复

使用道具 举报

40

主题

3016

回帖

1万

积分

超级版主

Nero

积分
11152
金钱
8046
HASS币
182
发表于 2021-7-27 10:33:01 | 显示全部楼层
XCray 发表于 2021-7-27 07:45
哪来的自动升级?你不点它就不会升级啊!

supervisor 和 core_dns 这些容器都是受 supervisor 自动升级的,除了 homeassistant 容器不会自动升级,其他都会自动升级。

例如 0.76.0 版本你不升级到 0.77,supervisor 升级了,因为 supervisor 接口方式改变了,homeassistant 不升级 hassio 的前端文件,就会导致 supervisor 空白的情况。
Nero
回复

使用道具 举报

40

主题

3016

回帖

1万

积分

超级版主

Nero

积分
11152
金钱
8046
HASS币
182
发表于 2021-7-27 10:31:18 | 显示全部楼层
本帖最后由 neroxps 于 2021-7-27 11:10 编辑

只改宿主的 hosts 是不行的,hassio 有自己的dns 服务器,不依赖系统内部的 hosts,在 hassio_dns 容器内,hassos 应该会在 /mnt/data/supervisor/dns 文件夹内

把 version.home-assistant.io 在 core_dns 里的 hosts 文件屏蔽了就完了,不过 core_dns 重启了会覆盖 hosts。hassio 最讨厌的地方。
另一个方案是在 supervisor 页面里面,修改 DNS 地址为路由地址,然后在路由下挟持上述域名,让其不可以获得新版本。

修改位置在这里。 QQ截图20210727110914.jpg

可以通过如下命令在宿主中执行查看 ha dns 设置

neroxps@n3150:~/hassio$ ha dns info
host: 172.30.32.3
locals:
- dns://10.89.0.1
servers:
- dns://10.89.0.1
update_available: false
version: 2021.06.0
version_latest: 2021.06.0


但还有有个问题,因为 coredns 配置如下
bash-5.1# cat /etc/corefile 
.:53 {
    log {
        class error
    }
    errors
    loop
    
    hosts /config/hosts {
        fallthrough
    }
    template ANY AAAA local.hass.io hassio {
        rcode NOERROR
    }
    mdns
    forward . dns://10.89.0.1 dns://10.89.0.1 dns://127.0.0.1:5553 {
        except local.hass.io
        policy sequential
        health_check 1m
    }
    fallback REFUSED,SERVFAIL,NXDOMAIN . dns://127.0.0.1:5553
    cache 600
}

.:5553 {
    log {
        class error
    }
    errors
    
    forward . tls://1.1.1.1 tls://1.0.0.1 {
        tls_servername cloudflare-dns.com
        except local.hass.io
        health_check 5m
    }
    cache 600
}


可以看到
forward . dns://10.89.0.1 dns://10.89.0.1 dns://127.0.0.1:5553 {
里面还有一个 127.0.0.1:5553,而这个其实是 tls://1.1.1.1 tls://1.0.0.1,所以你还应该要把 1.1.1.1 和 1.0.0.1 屏蔽掉,这样才能正确的挟持掉域名。
这东西太恶心,搞不懂 hassio 为何要多此一举,我也烦透这家伙。

评分

参与人数 1金钱 +20 HASS币 +20 收起 理由
+ 20 + 20 厉害了word楼主!

查看全部评分

Nero
回复

使用道具 举报

23

主题

646

回帖

5008

积分

版主

积分
5008
金钱
4324
HASS币
40
 楼主| 发表于 2021-7-27 09:11:19 | 显示全部楼层
ghostist 发表于 2021-7-27 09:07
这个自动升级是被动的  你控制不了
改host估计supervisor本身也会受影响

我现在就是想把OS、Core、Supervisor封存在某一版本。如果改hosts后Supervisor会受影响,那要看具体是由哪些影响,反正反正我不会再拉取其他add-on、安装custom compnents了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian ( 晋ICP备17001384号-1 )

GMT+8, 2025-8-11 11:59 , Processed in 0.056701 second(s), 8 queries , MemCached On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表