本文为《PVE安装Kodi》系列文章的一部分。
本文同步发表在我的个人博客https://evine.win。
- PVE 直接安装最新版 Kodi
- 为Kodi适配遥控器
- 修改Kodi字幕字体
- 修改Kodi皮肤字体
- 屏蔽Kodi的关机、重启按钮
- 设置Kodi启动的前置条件
- 像使用盒子/LibreELEC一样使用PVE直装的Kodi,实现遥控器启停
- kodi-send使用相关说明
- 转换遥控器的退出键为返回键
如果Kodi依赖其他服务,比如需要访问smb共享等等,可以在前文设置的/etc/systemd/system/kodi.service
中ExecStart
这一行前面添加一行:
ExecStartPre = /usr/local/bin/kodi-pre.sh
/usr/local/bin/kodi-pre.sh
需要可执行权限,内容提供一个参考(下面的示例是先判断和Kodi处于同一主机下的Jellyfin容器是否已经处于running
状态、健康状态是否是healthy
,并且远端10.0.0.13的名为multimedia的samba共享是否已经可以挂载了),请根据你所需要的前置条件进行修改(请直接在Linux环境中创建nano /usr/local/bin/kodi-pre.sh
,不要在Windows环境中创建):
#!/usr/bin/env bash
while :; do
jellyfin_state=$(/usr/bin/docker inspect jellyfin | /usr/bin/jq .[].State)
jellyfin_status=$(echo "$jellyfin_state" | /usr/bin/jq -r .Status)
jellyfin_health=$(echo "$jellyfin_state" | /usr/bin/jq -r .Health.Status)
smb_status=$(/usr/bin/smbclient -N -L //10.0.0.13 | /usr/bin/grep 'multimedia')
if [[ $jellyfin_status == running && $jellyfin_health == healthy && -n $smb_status ]]; then
echo "Jellyfin is ready, samba is ready."
break
else
echo "Jellyfin or samba is not ready, wait 30 second."
/usr/bin/sleep 30
fi
done