[Help] Plex 无法识别挂载的 Alist 的文件, 提示 i/o error

2023-09-10 14:26:25 +08:00
 flowdesign

在宿主 PVE 上用 rclone 了 alist 挂载阿里云盘, 然后 mount 到我的各个虚拟机和容器里面, 权限都是给足了 0777/0755 这样的 Plex 跑在一个 Debian 的 LXC 容器里面,本意是做个 music server, 文件来源都是阿里云盘 安装配置啥的都很正常,一切都是按照默认设置来,但是资料库里面选择了阿里云盘的文件夹,就一直识别失败

Plex Media Scanner Matcher.log 里面的错误基本都是这样的

Sep 10, 2023 06:11:21.925 [140458106444608] DEBUG - [MI] Opening input file: "/mnt/Music/2020 Grammy Nominees/01 - Billie Eilish - Bad Guy.flac"
Sep 10, 2023 06:11:21.929 [140458106444608] DEBUG - [FFMPEG] - Opening '/mnt/Music/2020 Grammy Nominees/01 - Billie Eilish - Bad Guy.flac' for reading
Sep 10, 2023 06:11:21.929 [140458106444608] DEBUG - [FFMPEG] - Setting default whitelist 'file,crypto,data'
Sep 10, 2023 06:11:22.163 [140458106444608] ERROR - Match: Caught exception opening file: Could not parse /mnt/Music/2020 Grammy Nominees/01 - Billie Eilish - Bad Guy.flac (error=-5): I/O error
Sep 10, 2023 06:11:22.164 [140458106444608] DEBUG - Match: Filename match didn't work, trying text match.
Sep 10, 2023 06:11:22.164 [140458106444608] DEBUG - [MI] Opening input file: "/mnt/Music/2020 Grammy Nominees/01 - Billie Eilish - Bad Guy.flac"
Sep 10, 2023 06:11:22.164 [140458106444608] DEBUG - [FFMPEG] - Opening '/mnt/Music/2020 Grammy Nominees/01 - Billie Eilish - Bad Guy.flac' for reading
Sep 10, 2023 06:11:22.164 [140458106444608] DEBUG - [FFMPEG] - Setting default whitelist 'file,crypto,data'
Sep 10, 2023 06:11:22.231 [140458106444608] ERROR - Match: Caught exception opening file: Could not parse /mnt/Music/2020 Grammy Nominees/01 - Billie Eilish - Bad Guy.flac (error=-5): I/O error

试着通过挂载 SMB 的内网其他文件夹, 都是可以正常识别刮削的, 搜了一下貌似没啥人提到过 plex+alist 会有什么麻烦, 怎么到我这里就如此的坑爹了...

1300 次点击
所在节点    Linux
7 条回复
ltkun
2023-09-10 18:53:07 +08:00
阿里云盘一直在修改策略 避免白嫖 我用 xiaoya 也要一直更新 不然三天两头会出问题
flowdesign
2023-09-10 20:13:26 +08:00
@ltkun 算不上白嫖, 用的是官方的 webdav api 连接的, 刚刚又仔细检查了一下, 不是 Plex 的锅, 换了 Emby 也是同样的 I/O error, 于是在跑 rclone mount 的宿主机上看了一下, 也是一样的, 可以 ls 文件也可以新建文件, 但是不能 read/write, 就很神奇

rclone 挂载的命令我是这么写的
rclone mount Alist:/ /mnt/xxx/xxx --copy-links --no-gzip-encoding --no-check-certificate --allow-other --allow-non-empty --umask 000 --use-mmap --daemon
按理说 umask 都给了 000 了,没道理还有权限问题, 然而事实就是狠狠的打了我的脸...
flowdesign
2023-09-10 20:39:03 +08:00
现在的症结似乎就在 rclone 这里了, 在 alist 的网页端上传下载文件没问题, 直接查看修改都可以, 但是在宿主 PVE 上 rclone mount 出来以后就不对, 还请各位专家给把把脉~
vyronlee
2023-09-11 00:26:00 +08:00
rclone mount 加上—header “Referer:” 试一下
flowdesign
2023-09-11 09:52:49 +08:00
@vyronlee
貌似没啥用...
```
○ rclone.service - rclone
Loaded: loaded (/etc/systemd/system/rclone.service; enabled; preset: enabled)
Active: inactive (dead) since Mon 2023-09-11 09:47:42 CST; 1min 40s ago
Duration: 194ms
Process: 2084938 ExecStart=/usr/bin/rclone mount Alist:/ /mnt/webdav/ALI --copy-links --no-gzip-encoding --no-check-certificate --allow-other --allow-non-empty --umask 000 --use-mmap --header Referer: --daemon (code=exited, status=0/SUCCESS)
Main PID: 2084938 (code=exited, status=0/SUCCESS)
CPU: 230ms

Sep 11 09:47:42 pve systemd[1]: Started rclone.service - rclone.
Sep 11 09:47:42 pve systemd[1]: rclone.service: Deactivated successfully.
```
Otakism
2023-09-11 11:56:00 +08:00
没配缓存,Plex 需要流式传输。你现在的配置 Plex 请求媒体文件时,要等待文件完整加载才能播放。

另外,Plex 官方客户端对高码率视频兼容性奇差,Apple 生态 Infuse 是首选,且原生支持阿里网盘连接。
flowdesign
2023-09-12 15:42:25 +08:00
解决了, 最后还是从 Alist 的 Github issue list 里面找到了同样的错误, 需要把 Aliyun 在 Alist 里面的 webdav 策略设置成本地代理而非默认的 302

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/972455

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX