什么是最好的(最快)的方法来确定是否一个Samba挂载点是死在Linux上? 我需要一个陈旧的所谓安装时做的一样的statfs(C.系统调用),statvfs()块30-40秒,他们甚至没有在这种情况下返回一个错误。 STAT()似乎无法快于其他人(约10秒),并返回一个错误。因为其他主机下楼或Samba进程有被打死的安装点可能会过时。 任何意见理解..

有帮助吗?

解决方案 3

我回答我的问题。我们的目标是尽量减少由几个进程试图访问过期的挂载点所花费的时间。通常情况下,系统调用将完成在一秒时间。阻塞陈旧股10秒,或者甚至说,因为这些调用在几个地方,多次和延迟时间积聚做3秒是不能接受的。 所以,我最后写一个监控进程,检查每n秒和卸载他们的坐骑,如果他们无法访问。我也从我的CONFIGS说这些文件系统应该是远程(安装),并检查mtab中文件中读取信息 - 如果它们不存在,这是一个错误。代码检查在一秒内完成mtab中。 花了两天来实现,但工作正常,我。

其他提示

您可以设置一个报警(参见alarm()setitimer()),该超时几秒钟后。

好了,我不知道如何做一个更快的检查,但我可以建议你检查所有的同时挂载点,并行,所以你将永远有相同的总时间,甚至有许多桑巴舞坐骑

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top