根据 jellyfin 的安全需要,在新版本(>=10.11.7)以后,将不再支持指向本地文件的 strm 文件。
详情请参考这个 issue
jellyfin 的开发者推荐使用符号链接替代 strm 文件。
由于 openlist 本身不支持生成符号链接,而且作为一个网盘聚合器,提供生成符号链接这样的功能本拉就很奇怪。
为此,我开发了这个轻量级文件监控工具,根据 .strm 文件内容(本地绝对路径)自动生成符号链接。
- 递归监控
STRM_SOURCE_DIR下所有.strm文件。 - 当
.strm文件被 创建、修改 时:- 读取文件内容(目标媒体文件的绝对路径)。
- 在
STRM_LINK_DIR下创建相同相对目录结构,生成指向该绝对路径的符号链接,链接名为目标文件的文件名。
- 当
.strm文件被 删除 时:- 删除对应的符号链接。
- 启动时会立即开始监听事件,同时执行一次全量扫描,处理所有已存在的
.strm文件。
| 变量名 | 默认值 | 说明 |
|---|---|---|
STRM_SOURCE_DIR |
/strm |
存放 .strm 文件的根目录 |
STRM_LINK_DIR |
/link |
输出符号链接的根目录 |
.strm文件内容必须是绝对路径(如/data/media/movie.mp4或C:\data\media\movie.mp4)。- 生成的符号链接指向的目标文件路径必须在读取该链接的容器或系统中存在,否则链接断裂。
- 运行用户:容器内使用
nobody用户(uid=65534),如需特定 uid/gid 可在运行命令中使用--user覆盖。