我的 Ubuntu Server 已经连接到我的 Server 2012 R2 DFS 命名空间大约 2 年了,没有出现任何问题。在最近几轮更新(Ubuntu 和 Windows)之后,我注意到每隔几个小时挂载就会掉线并且不会恢复。访问挂载点 /mnt/media 会完全冻结会话。
/var/samba/log 是空的,并且 Windows 日志中没有任何值得注意的内容。
来自 dmesg:
CIFS VFS: Error -104 sending data on socket to server
是我能找到的唯一错误!
挂载来自 FSTAB:
//dfsnamespace/media /mnt/media/ cifs credentials=/etc/samba/user,noserverino 0 0
我发现我的媒体都无法播放,我登录服务器并执行“sudo mount -a”,大约 50% 的时间它会恢复。其余 50% 的时间什么也没发生,我最终重新启动了服务器。
如果我使用 smbclient 手动挂载,就没有问题!
有谁知道为什么:
- 导致这个问题的原因是什么
- 为什么 /var/logs/samba 没有日志?
任何帮助是极大的赞赏!
答案1
看起来这是 4.4.0 内核的一个错误。每隔 15 分钟就会出现某种竞争条件,导致网络泛滥和断线。
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=856843
我升级到 4.9.30,似乎已经解决了这些问题。我遵循的步骤如下:
下载所有内核 deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-headers-4.9.0-040900_4.9.0-040900.201612111631_all.deb wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9.30/linux-headers-4.9.30-040930_4.9.30-040930.201705251131_all.deb wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-headers-4.9.0-040900-generic_4.9.0-040900.201612111631_amd64.deb
然后安装:
sudo dpkg -i *.deb
然后重新启动进入新内核。确认:
uname -r
显然,如果您的硬件或服务严重依赖某个内核,则要小心。我的服务器只运行 Plex,我能够进行更新而不会产生任何不良影响。
请原谅格式不佳,“代码”格式无法正常工作!