2010-10-25 57 views
2

就像在的主要問題,是有辦法做到這一點? (除了誘導高io負載)也許一些設施內核深深控制着這個?有沒有辦法在linux上編程控制硬盤活動指示燈?

我正在尋找一個小腳本來識別我的軟件raid陣列中發生故障的驅動器。 (以某種重複模式閃爍活動燈,等等)

我在這裏讀到了所有好主意:https://serverfault.com/questions/64239/physically-identify-the-failed-hard-drive不幸的是我沒有標記我的任何驅動器,它們都被夾在一起,所以看着序列號出去了。

+0

寫入一個文件磁盤上? (我假設的物理電壓權力的光,但我不知道在這方面的任何東西) – new123456 2010-10-25 10:50:23

+0

我只是想知道 - 你有過任何成功了嗎?我有同樣的問題我自己,這將是甜的,只是能夠閃爍個別活動LED ... – ToVine 2015-05-19 21:42:41

回答

2

活動指示燈通常硬連線到主板的磁盤控制器。沒有OS設施直接控制它們。但是,如果您知道哪個驅動器在軟件中存在問題,並且未安裝(爲了安全起見),那麼您可能可以使用dd(或者可能不是整個驅動器都不好)光。例如:

#!/bin/bash 

badDrive=$1 
while true ; do 
    dd -if "$badDrive" -of "/dev/null" -bs 512 -count 204800 conv=noerror >/dev/null 2>&1 
    sleep 2 
done 

這將從驅動器讀取100MiB忽略讀取錯誤,睡眠兩秒鐘,然後重新執行。傳入硬盤設備路徑,如/dev/sda

不過,在插入新驅動器之前,您需要找出殺死腳本的方法。否則,你的表現會非常糟糕,並可能導致其他問題。

+0

正如我上面,這樣做的目的是通過識別熱插拔托架陣列發生故障的驅動器活動作爲標識符引導。 – rnavarro 2010-10-26 02:23:23

1

你可以在你的程序,叫他

baddrive(Checkdrivestatus)

,並限制到10個週期。

這種方式你可以運行flashbaddrive,它反過來會checkdrivestatus並通過它壞驅動器閃爍故障驅動器10秒左右,並切出。

我會想象你將不得不看看mdadm,看看接口是什麼樣的編程,但它會做的伎倆從命令行。

在硬盤磁盤盒上,它們通常從sata/scsi/ide接口運行,或者脫離控制器卡上的插頭。

你知道光起源?您可以搜索模型信息,直接查詢有問題的磁盤。如果驅動器經常發生故障,您仍然可以將其從電路板上拔下。

另一種策略是按順序訪問磁盤/ dev/sda,sdb,sdc,sde,sdf等... 您可以看到指示燈是否熄滅,或者指示燈是否亮起。 完全死驅動器可以根據控制器的設置訪問它殺死的光。

相關問題