journalctl是CentOS上查看systemd管理服務的標準工具,適用于通過包管理器(如dnf/yum)安裝的Jellyfin。常用命令:
sudo journalctl -u jellyfin
(替換為實際服務名,若不確定可通過systemctl list-units | grep jellyfin
確認);sudo journalctl -u jellyfin -f
(按Ctrl+C
停止);sudo journalctl -u jellyfin --since "2025-10-01" --until "2025-10-17"
(支持日期、時間范圍,如--since "1 hour ago"
);sudo journalctl -b -u jellyfin
(-b
表示當前啟動周期);sudo journalctl -u jellyfin -p err
(-p
指定優先級,err
為錯誤級別)。Jellyfin的應用程序日志默認存儲在/var/log/jellyfin/
目錄下(若未修改配置),主要文件為jellyfin.log
。常用命令:
sudo cat /var/log/jellyfin/jellyfin.log
(適合快速查看全部內容);sudo tail -f /var/log/jellyfin/jellyfin.log
(實時顯示新增日志,適合監控實時問題);sudo grep -i "error" /var/log/jellyfin/jellyfin.log
(-i
忽略大小寫,可替換為warning
、info
等關鍵詞);sudo awk '/error/ {count++} END {print "Total errors:", count}' /var/log/jellyfin/jellyfin.log
(快速統計錯誤日志數量)。若Jellyfin通過Docker容器運行,需使用Docker命令查看容器內日志:
docker logs <container_id_or_name>
(<container_id_or_name>
可通過docker ps
獲?。?;docker logs -f <container_id_or_name>
(持續跟蹤日志更新);docker exec -it <container_id_or_name> tail -f /logs/jellyfin.log
(需確認容器內日志路徑,通常為/logs/
)。Jellyfin的日志輪轉配置文件位于/etc/logrotate.d/jellyfin
,默認配置通常包含每日輪轉、保留7天、壓縮舊日志??赏ㄟ^編輯該文件調整策略:
/var/log/jellyfin/jellyfin.log {
daily # 每日輪轉
rotate 7 # 保留最近7個日志文件
compress # 壓縮舊日志(節省空間)
missingok # 若日志文件不存在也不報錯
notifempty # 若日志為空則不輪轉
}
sudo logrotate -vf /etc/logrotate.d/jellyfin
(-v
顯示詳細過程,-f
強制輪轉);sudo systemctl restart systemd-journald
(使配置生效)。sudo grep -i "error\|fail\|exception" /var/log/jellyfin/jellyfin.log
(同時過濾多個關鍵詞,如error
、fail
、exception
);sudo grep -i "playback\|stream" /var/log/jellyfin/jellyfin.log
(查看播放相關的日志,定位卡頓、無法播放等問題);sudo grep "2025-10-17" /var/log/jellyfin/jellyfin.log
(提取某一天的日志,便于針對性分析)。/etc/jellyfin/jellyfin.conf
)中的Log.File
設置(如<Log File>["是", "/logs/jellyfin.log", "/var/log/jellyfin/jellyfin.log"]</Log>
);sudo
),避免權限不足導致無法訪問;/var/log/jellyfin/
目錄),防止數據丟失。