1

有没有一种好方法可以通过 Java 在 Linux 上的服务器上检测到特定磁盘脱机?

我有一个应用程序,由于性能原因,它直接写入所有磁盘(中间没有任何 RAID)。

我需要检测 Linux 在运行时是否会因磁盘崩溃而卸载任何磁盘,因此我将停止使用它。问题是每个挂载都有一个根目录,因此如果没有适当的检测,应用程序只会填满根分区。

将不胜感激任何建议。

4

2 回答 2

1

在 Linux 中,一切都可以通过文本文件访问。我不太了解您需要的确切信息是什么,但请检查/proc/diskstat, /proc/mounts, /proc/mdstat(用于突袭)等...

于 2010-10-26T14:26:23.230 回答
1

正如任何有系统管理员经验的人都会告诉你的那样,磁盘崩溃或以其他方式消失有一个令人讨厌的习惯,即让任何触及挂载点下任何东西的进程都处于不间断睡眠状态。此外,根据我的经验,这可能包括尝试读取 /proc/mounts 或运行“df”命令等内容。

我的建议是使用 RAID,如有必要,投资解决问题。比如说,如果性能受到小型随机写入的限制,那么带有电池支持的写入缓存的 RAID 卡可以创造奇迹。

于 2010-10-26T14:49:31.193 回答