當磁碟已滿時dd會停止嗎?

當磁碟已滿時dd會停止嗎?

如果我發出以下命令來完全擦除磁碟,當磁碟已滿時它會自動停止,還是需要指定選項count

sudo dd if=/dev/zero of=/dev/disk7 bs=64m

我應該要提到這個作業系統 OS X 10.9。

答案1

完全擦除磁碟

如果您的目標是製作機械磁碟(HDD)安全地已刪除,因此即使在原則上,某人也不可能獲得它並恢復數據,因此您不應該將其用作/dev/zero來源,並且應該多次重寫它。看維基百科about.com

如果您不關心安全性,/dev/zero那很好,但是,在設備上放置一個新的分區表也是如​​此。

我真的看不到寫入/dev/zero實體媒體的有效用例,因為:

  1. 如果你關心安全,那就太不安全了;
  2. 如果不這樣做,它會花費太長的時間並且浪費時間和寫入周期(因為您可以簡單地用新資料結構覆蓋磁碟上的任何資料結構,這意味著只有資料復原程式才有希望恢復舊數據的碎片,這很好,因為您剛剛說過您不關心安全性,或者如果您關心,您就不應該閱讀本文)。

自動停止

當然。你認為它會做什麼,繼續寫入下一個檔案?

您專門指定該of選項,這意味著“輸出檔案”。它將打開該區塊裝置並寫入,直到到達區塊裝置的末尾,然後退出。這是 的正常行為dd

我需要指定該count選項嗎?

只有當您希望它在到達區塊裝置末尾之前的某個時刻停止寫入,或者您正在寫入常規檔案(即不是區塊裝置)並且您希望它停止時,您才需要這樣做在它填滿檔案所在的檔案系統之前。

一些結束語:

  • 此行為並非特定於 OS X(任何特定版本),甚至不是 OS X。
  • 您可以透過製作一個小(2 MB)映像檔並dd在將其安裝到環回裝置上後使用它來回答您自己的問題,然後dd在其上執行。
  • 需要注意的是,如果沒有count指定,dd將會停止首先發生以下情況之一:(if輸入檔案)拋出EOF(檔案結尾),或作業系統拋出訊號,指示of已到達(輸出檔案)的最後一個區塊。

答案2

磁碟滿了就會停止

相關內容