如何知道Linux中後台任務的執行時間

如何知道Linux中後台任務的執行時間

我正在 Linux 中使用軟體 raid。當我在磁碟故障後開始復原 raid 陣列時,此任務在背景發生。/proc/mdstat應該顯示預計的恢復時間,但它不正確。在我的例子中/proc/mdstat,顯示預計需要 15 小時,但恢復在大約 10 小時內完成。有沒有辦法知道恢復守護程式的確切執行時間?

答案1

您可以在背景執行一個簡單的腳本來檢查「重建狀態」並轉儲它等待的時間:

tick=$(date +%s)
while [ -n "$(cat /proc/mdstat | grep 'rebuilding')" ]; do
    sleep 10
done
tock=$(date +%s)
echo $(($tock-$tick))

mdadm還有一個--monitor選項可以在事件發生時發送郵件。我從未使用過它,但它可能值得研究,因為完成的重建可能有資格作為一個值得注意的事件。

相關內容