如何在Linux下使用Java插入新的SATA驱动器?

时间:2013-09-30 12:37:18

标签: java linux sata

我目前正在开展一个项目,我需要将数据批量导入Hadoop集群。需要导入Hadoop的数据驻留在SATA磁盘上。需要导入的数据是Encase取证磁盘映像(E01)。我创建了一个从这些图像中提取文件并将这些文件导入Hadoop的应用程序,这种方法很好但我需要手动启动该过程。

我希望通过热插拔SATA驱动器自动执行该过程并自动启动提取过程。我用Java编写了我的程序,由于我用来分析图像的一些外部库,它需要这样。我在互联网上搜索了一个解决方案,其中Java用于检测新插入的驱动器,但我找到了所有可以检测到usb驱动器或使用udev规则来启动进程的库(我可以使用它但更喜欢Java解决方案)

有人知道我所描述的内容是否存在?或者有人能指出我正确的方向吗?非常感谢!

几乎忘了......我使用ubuntu 12.04 Server Edition作为我的操作系统。

1 个答案:

答案 0 :(得分:5)

udisks是一个D-Bus API,提供有关媒体插入和删除的信息(包括通知),您可以使用dbus-java订阅通知。

或者,您可以让Java应用程序在localhost套接字上侦听并编写一个udev规则,通过套接字发送相应的事件信息。