为确保系统安全,建议为Jellyfin创建一个专用系统用户(无登录权限),避免使用root或其他高权限账户运行服务。
sudo adduser jellyfin --system --group --disabled-login --no-create-home
此命令会创建jellyfin用户及同名组,且禁用登录功能。
Jellyfin需要访问以下关键目录,需将所有权赋予jellyfin用户/组,并设置合理权限(755允许所有者读写执行,其他用户仅读执行):
sudo chown -R jellyfin:jellyfin /var/lib/jellyfin
sudo chmod -R 755 /var/lib/jellyfin
sudo chown -R jellyfin:jellyfin /var/log/jellyfin
sudo chmod -R 755 /var/log/jellyfin
sudo chown -R jellyfin:jellyfin /etc/jellyfin
sudo chmod -R 755 /etc/jellyfin
若需单独调整配置文件权限(如config.xml),可执行:sudo chown jellyfin:jellyfin /etc/jellyfin/config.xml
sudo chmod 644 /etc/jellyfin/config.xml
若Jellyfin需要访问媒体文件(如电影、音乐),需将媒体目录的所有权赋予jellyfin用户/组,确保服务可读取文件:
sudo chown -R jellyfin:jellyfin /path/to/media/directory # 替换为实际媒体目录路径
sudo chmod -R 755 /path/to/media/directory
确保Jellyfin服务以jellyfin用户身份运行,避免权限冲突。编辑服务文件:
sudo nano /etc/systemd/system/jellyfin.service
找到[Service]部分,确认以下两行设置(若不存在则添加):
User=jellyfin
Group=jellyfin
保存退出后,重新加载systemd配置并重启服务:
sudo systemctl daemon-reload
sudo systemctl restart jellyfin
通过以下命令检查服务状态,确认无权限相关错误:
sudo systemctl status jellyfin
若服务正常运行(显示“active (running)”),则权限设置生效。如需进一步验证,可查看Jellyfin日志:
sudo tail -n 50 /var/log/jellyfin/jellyfin.log
检查是否有“permission denied”等错误提示。
sudo chmod -R 775 /var/lib/jellyfin /var/log/jellyfin /etc/jellyfin /path/to/media/directory
调试完成后建议恢复755权限,避免安全隐患。通过以上步骤,可解决Ubuntu环境下Jellyfin的常见权限问题,确保服务稳定运行。