Linux samba服务器:cifs_mount失败w /返回码= -12
服务器:RHEL 5.9 / smbd 3.0.33
– 客户端:各种各样,但都使用当前的mount.cifs(5.2) 我已经解决了这个问题,但追捕这些错误代码真的是一场噩梦,我觉得它需要通用文档. 症状:从一个特定的cifs客户端到Linux samba服务器的不可预测的,间歇性的挂载失败.我的所有Linux客户端都在登录时pam_mount用户家园.随机地,偶尔地,家用dir坐骑在一台机器上开始失败.登录和挂载继续在所有其他客户端上完美运行.最初我认为破碎的客户端上的一个不寻常的活动导致smbd发飙,但即使在使用中断后,间歇性故障仍然存在. 尝试手动安装失败并报告: Errors from underlying mount program mount error(12): Cannot allocate memory Refer to the mount.cifs(8) manual page (e.g. man mount.cifs) 设置< debug enable =“1”/>在/etc/security/pam_mount.conf.xml中从pam_mount获取更多信息: command: 'mount' '-t' 'cifs' '//my_server/watdo' '/home/watdo' '-o' 'user=watdo,uid=666,gid=666' pam_mount(misc.c:38): set_myuid<pre>: (ruid/rgid=0/0,e=0/0) pam_mount(misc.c:38): set_myuid<post>: (ruid/rgid=0/0,e=0/0) pam_mount(mount.c:64): Errors from underlying mount program: pam_mount(mount.c:68): mount error(12): Cannot allocate memory pam_mount(mount.c:68): Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)` /var/log/kern.log也报道了这个事件: kernel: [4316790.256149] CIFS VFS: cifs_mount failed w/return code = -12 ‘echo 1> / proc / fs / cifs / cifsFYI’启动mount.cifs debug(写入/ var / log / debug).这是好的部分(看起来很熟悉?): CIFS Session Established successfully For smb_command 117 Sending smb: total_len 88 cifs_sync_mid_result: cmd=117 mid=54307 state=4 Mapping smb error code 0xc0000205 to POSIX err -12 此时,客户端实际上没有其他可用信息. cifs挂载请求消失,客户端几乎立即死亡. mount.cifs错误(12)是非常无意义的(手册页没有帮助,thx家伙).广泛的互联网搜索显示这是一个常见的错误代码,也证实它没有信息. 是时候检查服务器了!在/etc/samba/smb.conf中为smbd设置日志级别= 3(来自使用Samba书:“3级以上的级别供开发人员使用,并转储大量的神秘信息.”lol!).这是相关的一行: [2013/02/08 10:18:03,3] smbd / error.c:error_packet_set(106) 差不多……从smb mailing list archive开始,我发现有人报告了一个类似的问题,被确定为个人smb连接的固定份额限制.列出服务器上的开放共享: smbstatus -S | grep< serverIP> | wc -l返回2048.非常显眼. 实际上检查smbstatus -S的输出显示了’IPC $’的数千个条目. Samba docs on IPC$显示它涉及匿名共享浏览和访问“其他一些资源”.我在/etc/samba/smb.conf中的服务器上设置了主机拒绝: [IPC$] hosts deny = 0.0.0.0/0 现在很棒.好的,希望这里的某些东西可以在将来的某个时间帮助一些可怜的灵魂 我想在网站的精神中我会问一个问题:为什么smbd不会清理IPC $股票?为什么为每个用户建立一个IPC $连接而不是每个客户端连接一个?您可以从客户端禁用IPC $共享创建吗?有没有办法增加每股最大连接数(这不是说在这种情况下会有所帮助)?我没有在文档中看到它. 解决方法
这是一个老人,但考虑到它没有答案,我正在研究IPC $和Samba,我会为了文档而试一试.
如上面对您的问题的评论中所述,该服务用于服务器之间的远程管理和通信,特别是在Samba中,它用于某些浏览和tcp / ip目的.除非您出于某种原因需要它或某些东西不起作用,否则禁用它是安全的. [1]
因为用户可以拥有多个客户端连接.
是的,不是.它并没有真正禁用IPC $共享的创建,但您可以禁止从Windows客户端访问它.[2] 对于Windows Vista,Windows 7,Windows 8和Windows 10,您可以执行以下注册表编辑: >单击“开始”,在“搜索”框中键入“regedit”,然后单击搜索结果中的“regedit.exe”.将出现“用户帐户控制”对话框.
是[3].刚刚输入的份额下方: [share] max connections = ## 其中XX是连接数. 资料来源: > [1] https://www.samba.org/samba/docs/old/Samba3-HOWTO/securing-samba.html (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |