標題幾乎釘它,即時通訊將文件複製到閃存驅動器,然後做一些事情,這些文件。那麼我注意到,在運行dd命令後,閃存驅動器仍在閃爍,並且並非所有文件都在設備上。如何在繼續我的腳本之前等待dd命令完成複製?
有誰知道如何也許運行(腳本)一個簡單的循環,以等待dd進程來完成?我一直在搜尋大約2-3個小時,試圖找出它,如果它甚至有可能,我已經超越了我。
在此先感謝!
標題幾乎釘它,即時通訊將文件複製到閃存驅動器,然後做一些事情,這些文件。那麼我注意到,在運行dd命令後,閃存驅動器仍在閃爍,並且並非所有文件都在設備上。如何在繼續我的腳本之前等待dd命令完成複製?
有誰知道如何也許運行(腳本)一個簡單的循環,以等待dd進程來完成?我一直在搜尋大約2-3個小時,試圖找出它,如果它甚至有可能,我已經超越了我。
在此先感謝!
最有可能你所看到的操作系統緩存寫入。如果您確實想確保將所有內容寫入閃存驅動器以便安全移除,則需要卸載它。
嘗試sync
命令:
sync
寫入在存儲器到磁盤緩衝的任何數據。這可以 包括(但不限於)改性的超級塊,改性的inode, 和延遲讀取和寫入。這必須由內核來實現; 的sync
程序做什麼,但行使sync
系統調用。內核保存在內存中的數據,以避免做(相對較慢) 磁盤讀取和寫入。這可以提高性能,但是如果計算機 崩潰,則可能導致數據丟失或文件系統損壞。
sync
命令可確保內存中的所有內容都寫入磁盤。
那麼你是說umount命令會等待緩存寫入完成嗎? – 2012-02-21 19:39:12
是的,只有寫完所有內容後,umount命令纔會返回,包括所有元數據和日誌記錄信息。 – 2012-02-21 19:42:04
好的,謝謝!爲我正在嘗試做的事情完美工作! – 2012-02-21 19:49:09