我目前正在開發一個項目,我需要將數據批量導入Hadoop集羣。需要導入到Hadoop的數據駐留在SATA磁盤上。需要導入的數據是Encase取證磁盤映像(E01)。我創建了一個應用程序,從這些圖像中提取文件並將這些文件導入到Hadoop中,但這很好,但我需要手動啓動該過程。如何在Linux下使用Java插入新的SATA驅動器?
我想通過熱插拔SATA驅動器並自動啓動提取過程來自動執行此過程。我用Java寫了我的程序,並且由於我用來分析圖像的一些外部庫,它需要這樣。我在互聯網上搜索了一個解決方案,使用Java來檢測新插入的驅動器,但是我發現哪些庫可以檢測USB驅動器或使用udev規則來啓動一個進程(我可以使用它但更喜歡Java解決方案)
有沒有人知道我所描述的東西是否存在?或者是否有人可以將我指向正確的方向?這將非常感謝!
差點忘了......我用ubuntu 12.04 Server Edition作爲我的操作系統。
我不是任何Java專家,但是這種機制的存在似乎對我非常懷疑。你實際上需要一個Java API來udev,或者內核本身。當然,我想你也可以用JNI來做... –
我會記住:輪詢掛載點,JNotify,或者我認爲新的Java7文件IO可能會有所幫助。 – PeterMmm
整個服務器是否受您控制,還是您需要能夠將此應用程序安裝在別人的機器上? – chrylis