UNRAID 篇四:UNRAID 电源按钮启动虚拟机插件
最近折腾自己捡垃圾来的小主机,想把它做成一个AIO的系统。系统和软件折腾的都差不多了,但是使用上还是很不方便。
系统平常都是当文件服务器,24小时运行,想要启动里面的LibreELEC来播放影片的时候还需要进系统后台打开虚拟机,感觉很不方便。
为了方便控制机顶盒,我在网上买了个无线遥控器,USB接收器直接插在主机上直通给虚拟机就能用了。遥控器上有个电源按钮,在没启动虚拟机时,按电源按钮就会导致这个服务器关机,我就想能不能把这个按钮的功能改成启动LibreELEC虚拟机。
经过一番探索,我找到了UNRAID系统里控制电源按钮的脚本,脚本位于/etc/acpi/acpi_handler.sh 。
经过简单测试,可以直接修改这个脚本来自定义电源按钮的功能,于是我就把这个功能加入到了我之前做的界面加载速度的插件里了。
插件的基本功能就是可以设定一个虚拟机,让开机按钮的功能变成直接开机这个虚拟机。设置界面如下:
有了这个插件以后,如果不需要维护服务器,基本就不需要进服务后台了。要使用机顶盒功能的时候直接用遥控器开机就行,用完以后再用遥控器关机,关掉电视。
插件的安装地址
火染轩辕
校验提示文案
朝天在活
校验提示文案
willzhuce
校验提示文案
错过
校验提示文案
什么值得那天早上买
校验提示文案
查-无此人
校验提示文案
朝天在活
校验提示文案
值友1766358556
校验提示文案
Coffey_W
校验提示文案
Vocalist
校验提示文案
值友8234413203
校验提示文案
Techeek
# 获取虚拟机的名称
vm_name=Win11
# 检查虚拟机是否存在
if [ -z "$(virsh list --all | grep $vm_name)" ]; then
echo "虚拟机 $vm_name 不存在"
exit 1
fi
# 检查虚拟机是否关机
if [ -z "$(virsh list --state-shutoff | grep $vm_name)" ]; then
echo "虚拟机 $vm_name 没有关机"
exit 0
fi
# 如果虚拟机关机,执行nvidia-smi --persistence-mode=1
echo "虚拟机 $vm_name 已经关机,执行nvidia-smi --persistence-mode=1"
nvidia-smi --persistence-mode=1
用我这个命令,vm_name=Win11 这行替换为你需要关机的虚拟机,然后设置定时循环运行就行。
校验提示文案
值友1786883887
校验提示文案
值友1786883887
校验提示文案
Techeek
# 获取虚拟机的名称
vm_name=Win11
# 检查虚拟机是否存在
if [ -z "$(virsh list --all | grep $vm_name)" ]; then
echo "虚拟机 $vm_name 不存在"
exit 1
fi
# 检查虚拟机是否关机
if [ -z "$(virsh list --state-shutoff | grep $vm_name)" ]; then
echo "虚拟机 $vm_name 没有关机"
exit 0
fi
# 如果虚拟机关机,执行nvidia-smi --persistence-mode=1
echo "虚拟机 $vm_name 已经关机,执行nvidia-smi --persistence-mode=1"
nvidia-smi --persistence-mode=1
用我这个命令,vm_name=Win11 这行替换为你需要关机的虚拟机,然后设置定时循环运行就行。
校验提示文案
什么值得那天早上买
校验提示文案
错过
校验提示文案
值友8234413203
校验提示文案
Vocalist
校验提示文案
Coffey_W
校验提示文案
willzhuce
校验提示文案
朝天在活
校验提示文案
值友1766358556
校验提示文案
朝天在活
校验提示文案
火染轩辕
校验提示文案
查-无此人
校验提示文案