前言

前段时间,使用samba看电影,每次跳到46分钟左右的时侯,视频就中断了。

尝试下载视频文件,却得到了这样的结果。

“访达”不能完成该操作,因为不能读取或写入“[NC-Raws] Fate/stay night [Heaven's Feel]Ⅲ.春樱之歌 - 01 [B-Global][WEB-DL][1080p][AVC AAC][CHS_CHT_ENG_TH_SRT][MKV].mkv”中的某些数据。
(错误代码-36)

问题分析

在服务器上对文件进行操作一切正常,可以排除文件系统出错的可能性。

那便是samba的问题了,查看日志得到以下错误信息。

[2021/04/11 19:05:00.218702,  0] ../source3/locking/posix.c:271(posix_fcntl_getlock)
  posix_fcntl_getlock: WARNING: lock request at offset 1733689344, length 131072 returned
  an Invalid argument error. This can happen when using 64 bit lock offsets
  on 32 bit NFS mounted file systems.

经过一番了解,发现这个问题会在XBoxmacOS复现,据日志内容猜测是历史遗留问题。

解决方案

修改配置文件,添加以下内容即可。

strict locking = no