有没有一种很好的方法可以通过Java检测特定磁盘在Linux上的服务器上是否脱机?
我有一个应用程序,由于性能原因,直接写入所有磁盘(中间没有任何RAID)。
我需要检测Linux是否会因运行时磁盘崩溃而卸载任何磁盘,所以我会停止使用它。问题是每个挂载都有一个根目录,因此如果没有正确检测,应用程序将只填充根分区。
对此有任何建议。
答案 0 :(得分:1)
在Linux中,一切都可以通过文本文件访问。我并不真正了解您需要的确切信息,但请检查/proc/diskstat
,/proc/mounts
,/proc/mdstat
(对于突袭)等等...
答案 1 :(得分:1)
任何拥有系统管理员经验的人都可以告诉你,磁盘崩溃或以其他方式消失有一个令人讨厌的习惯,就是让任何接触挂载点下任何东西的进程等待不间断的睡眠。另外,根据我的经验,这可能包括尝试读取/ proc / mounts或运行'df'命令。
我的建议是使用RAID,如有必要,可以自行解决问题。比方说,如果性能受到小型随机写入的限制,带有电池备份写入缓存的RAID卡可以创造奇迹。