truenas scale 25.04.0 安装 dg1 显卡支持 frigate 配置

本人配置

  1. h12ssl + 7352 +dg1
  2. esxi 8.0 直通truenas
关于如何点亮,这里就不另说了。 之前的dg1驱动,即便是编译好了,安装上了,运行起来也会有很多问题(时不时就死了),正好,现在truenas scale 25.04内核大于6.8了,可以用xe驱动凑活着用了。

开始操作

  1. esxi直通dg1。有两个,一个显卡,一个音频。(音频的可要可不要,也就是可以不加入到虚拟机中)
  2. 配置虚拟机直通,添加dg1到虚拟机,如图所示:
  3. 配置虚拟机参数:
    svga.present=FALSE  #禁用esxi自带的显卡,一定要关,否则dg1驱动不了
    pciPassthru.use64bitMMIO=TRUE
    pciPassthru.64bitMMIOSizeGB=8
    hypervisor.cpuid.v0=FALSE
    
  4. 配置truenas scale (一次性的配置):
    # 修改引导参数,强制启用dg1。我这里的是蓝戟半高款,其他型号自行提换
    midclt call system.advanced.update '{"kernel_extra_options": "xe.force_probe=4908 i915.force_probe=!4908"}'
    
    4 配置truenas scale (每次更新系统都要重新配置):
    # 进到你的一个目录
    cd /mnt/your_path
    # 下载最新的固件
    git clone https://github.com/intel-gpu/intel-gpu-firmware.git
    systemd-sysext unmerge
    # 不同的版本换成不同的目录
    zfs set readonly=off boot-pool/ROOT/25.04.0/usr
    mount -o remount,rw /
    sudo cp firmware/*.bin /lib/firmware/i915/
    sudo update-initramfs -u -k all
    systemd-sysext merge
    # 操作完后重启
    reboot
    

浏览全部

双栈ip环境 梅林 dnsmasq 禁用指定域名的ipv6解析

背景

使用的ax86u,固件用的ks家的官改。梯子工具用的猫咪爬梯(Merlin Clash)。 开了ipv6,但是最近发现docker的ipv6代理有问题,链接经常被reset。于是需要强制它们走ipv4,但又不影响我的pt使用Ipv6。

方法

  1. 因为asus/梅林固件自带dnsmasq,因此直接从dnsmasq入手。
  2. 添加配置:
vi /jffs/configs/dnsmasq.conf.add

添加下面内容

address=/.docker.io/::
address=/.docker.com/::

解决超微 h12ssl SuperMicro 主板风扇反复高低转速问题

缘由

超微bmc里面的默认低ct的阈值有点高。如果你的静音风扇(例如猫扇),转速低了,就会强制触发全速,过会降下来,再依次反复。

操作-通过ipmitool更改风扇转速检测阈值

  1. 准备一台电脑,以我的macbook为例。
  2. 在你准备的电脑上安装ipmitool。brew install ipmitool
  3. 使用ipmi命令来降低转速:
#我bmc的ip地址为192.168.50.132为例。所有风扇都配置一遍。
ipmitool -H 192.168.50.132 -U ADMIN -P ADMINPASSWORD sensor thresh FAN1 lower 0 100 125
ipmitool -H 192.168.50.132 -U ADMIN -P ADMINPASSWORD sensor thresh FAN2 lower 0 100 125
ipmitool -H 192.168.50.132 -U ADMIN -P ADMINPASSWORD sensor thresh FAN3 lower 0 100 125
ipmitool -H 192.168.50.132 -U ADMIN -P ADMINPASSWORD sensor thresh FAN4 lower 0 100 125
ipmitool -H 192.168.50.132 -U ADMIN -P ADMINPASSWORD sensor thresh FAN5 lower 0 100 125
ipmitool -H 192.168.50.132 -U ADMIN -P ADMINPASSWORD sensor thresh FANA lower 0 100 125
ipmitool -H 192.168.50.132 -U ADMIN -P ADMINPASSWORD sensor thresh FANB lower 0 100 125

得到反馈:

Locating sensor record 'FAN1'...
Setting sensor "FAN1" Lower Non-Recoverable threshold to 0.000
Setting sensor "FAN1" Lower Critical threshold to 100.000
Setting sensor "FAN1" Lower Non-Critical threshold to 125.000

修改后,进入你的bmc控制台查看你的风扇“低CT”值,是不是降低了?降低了就是成功了。

通过selenium无头浏览器来定时重启光猫

前言

过年家里没人,光猫死了之后,直接断网。太难受了。电信给的光猫来垃圾,也是在没办法了。随之产生了定时重启它的想法。 网上找了一圈,都是要破解超管账号然后解锁telnet的。我这长期在外,只能远程操作,没办法断网断电折腾,也就没办法拿到超管密码了,用自带的用户账号进去看了下,有重启按钮。😁 简单抓了下api。。好吧还是带表单验证的,算了,不深入折腾。直接上无头浏览器吧。

实现原理

  • 使用golang来控制selenium操作网页,实现重启功能。

源码地址:

https://github.com/scjtqs2/hg8145c-reboot

说明:

做成了docker compose的方式便于运行。用普通账号就可以实现,不用破解路由器。 基本上网页样式差不多的都可以试试。实在不一样,就fork项目自己修改对应的html选择器吧(edge浏览器f12直接复制selector)

浏览全部

tailscale 旁路模式配置组网

环境说明

老家的路由器是ac68u,内存小,cpu性能也不太行,在上面跑一个小猫咪就内存耗尽了,没多余的内存跑tailscale了。因此我将tailscale装到了一个linux虚拟机系统上面(ubuntu 24.04)。
  1. 主路由ac68u,网段 192.168.0.0/24
  2. ubuntu虚拟机(也可以是树莓派等arm的开发版,甚至是n1),ip:192.168.0.128(需要固定,可以在主路由的dhcp分配静态ip)
  3. 对端组网的网段:192.168.50.0/24,192.168.200.0/24

浏览全部

ubuntu 22.04 上配置 postfix + cyrus sasl 实现smtp relay server。用来给其他服务器中转使用

目前很多云服务器都封死了25端口的out流量。无法发送邮件,如果要搭建邮局,就需要一个能发smtp的服务器做中转。

安装必备的包

sudo apt-get install postfix libsasl2-2 sasl2-bin libsasl2-modules db-util procmail libsasl2-modules-gssapi-heimdal

配置中转smtp用的端口

vim /etc/services
# 找到 `smtp  25/tcp mail`
# 在下面添加一行
smtp2           41067/tcp       mail

浏览全部

k8s 的 cert-manager 的acme-dns的方式使用Issuer 可用于原生不支持的所有dns解析商。

cert-manager本身支持的dns解析商数量有限

由于cert-manager官方支持的dns解析商数量有限,其余的dns解析商,就需要使用acme-dns的方式来实现证书签发了(例如腾讯云、dnspod、alidns等) 接下来我记录下该方式的折腾记录。

前提依赖

  • cert-manager已安装,这里就不说cert-manager的安装方式了,安装方式挺多的。
  • 具有一个或者多个域名权限。要求一级域名的权限。

浏览全部

k8s 1.23/1.24 从 docker迁移到 containerd on ubuntu

由于 k8s 1.24之后的版本不再支持docker,因此需要对其进行迁移。这里记录下迁移的一些步骤:

  1. 在master上修改node的信息
kubectl edit no <node-name>
这一命令会打开一个文本编辑器,供你在其中编辑 Node 对象。 要选择不同的文本编辑器,你可以设置 KUBE_EDITOR 环境变量。
  • 更改 kubeadm.alpha.kubernetes.io/cri-socket 值,将其从 /var/run/dockershim.sock 改为你所选择的 CRI 套接字路径 (例如:unix:///run/containerd/containerd.sock)。
  • 注意新的 CRI 套接字路径必须带有 unix:// 前缀。

  • 保存文本编辑器中所作的修改,这会更新 Node 对象。

  1. 停掉对应节点的服务
systemctl stop kubelet
systemctl disable docker.service --now
systemctl disable docker.socket --now

浏览全部

树莓派 pikvm (linux arch32位系统)中安装k3s 容器记录

关于 pikvm

  • 这是一个树莓派做ipkvm的系统,启动后系统目录是只读状态方便直接拔电源。
  • 需要一个供读写的设备。可以是usb存储设备,可以是iscsi挂载,也可以是其他网络存储。自己写到/etc/fstab自动挂载,并且具备Linux基本的权限能力。
  • 这里我已经挂载好了一个iscsi并格式化成了ext4系统。

流程

  1. 创建需要目录
# ssh用root用户登录你的pikvm
rw
# 开启msd目录的读写权限
kvmd-helper-otgmsd-remount rw
mkdir /var/lib/kvmd/msd/cm4-data
chmod 777 /var/lib/kvmd/msd/cm4-data
# 恢复只读
kvmd-helper-otgmsd-remount ro
# /etc/fstab 里面添加了iscsi的开机挂载
# UUID=0ff72a68-e67a-43ca-96d5-b8c55f69043d /var/lib/kvmd/msd/cm4-data ext4 defaults,_netdev 0 0
# 创建k3s需要的路径
cd  /var/lib/kvmd/msd/cm4-data
mkdir kube
mkdir /root/.kube
touch kube/config
mkdir -p etc/rancher
mkdir -p var/lib/rancher
mkdir -p var/lib/kubelet
mkdir -p var/lib/cni
mkdir /etc/k3s

浏览全部