檔案刪除原理

2021-05-12 23:21:16 字數 840 閱讀 4575

今天上午operatingsystem課上老師提了下檔案刪除的事,我就在想:磁碟上的檔案全部是一些二進位制**而已,到底怎樣才是刪除呢?並且刪除後磁碟容量也確實增大了!(哎、、很是慚愧,都到大三了,之前竟然沒想過這件事)。於是乎便上網查了一下windows下檔案刪除的原理:儲存在硬碟中的每個檔案都可分為兩部分:檔案頭和儲存資料的資料區。檔案頭用來記錄檔名、檔案屬性、占用簇號等資訊,檔案頭儲存在乙個簇並對映在fat表(檔案分配表)中。而真實的資料則是儲存在資料區當中的。平常所做的刪除,其實是修改檔案頭的前2個**,這種修改對映在fat表中,就為檔案作了刪除標記,並將檔案所佔簇號在fat表中的登記項清零,表示釋放空間,這也就是平常刪除檔案後,硬碟空間增大的原因。而真正的檔案內容仍儲存在資料區中,並未得以刪除。要等到以後的資料寫入,把此資料區覆蓋掉,這樣才算是徹底把原來的資料刪除。如果不被後來儲存的資料覆蓋,它就不會從磁碟上抹掉。用fdisk分割槽和format格式化和檔案的刪除類似,前者只是改變了分割槽表,後者只是修改了fat表,都沒有將資料從資料區直接刪除。

由檔案刪除的原理可知,要徹底刪除資料,只有把刪除檔案所在的資料區完全覆蓋掉。絕大部分徹底刪除工具所使用的就是這個道理:把無用的資料反覆寫入刪除檔案的資料區,並進行多次地覆蓋,從而達到完全刪除檔案的目的。

windows的這種偽刪除,雖然給我們帶來了好處,讓我們有後悔藥可吃。但對於很機密的檔案就有了麻煩,存在著被重新恢復的可能性。所以,刪除機密檔案,一定要借助徹底刪除工具,讓機密檔案徹底「粉身碎骨」,這樣你就可以高枕無憂了。

也許到這裡大家也肯定理解為什麼銀行不用的或者已經毀壞的硬碟都是用重量級壓路機來處理的原因了 ,windows也自帶了乙個檔案粉碎機,不過那只是軟粉碎,而銀行的可是實實在在的物理粉碎,我們可以稱為絕對粉碎......哈哈!~~

Linux檔案刪除原理

linux檔案刪除原理 linux是通過link的數量來控制檔案刪除的,只有當乙個檔案不存在任何link的時候,這個檔案才會被刪除。一般來說,每個檔案都有2個link計數器 i count 和 i nlink。i count的意義是當前檔案使用者 或被呼叫 的數量,i nlink 的意義是介質連線的...

Linux檔案刪除原理

linux是通過link的數量來控制檔案刪除的,只有當乙個檔案不存在任何link的時候,這個檔案才會被刪除。一般來說,每個檔案都有2個link計數器 i count 和 i nlink。i count的意義是當前檔案使用者 或被呼叫 的數量,i nlink 的意義是介質連線的數量 硬鏈結的數量 可以...

linux檔案刪除原理

i link 硬鏈結數量 為0,檔案就被刪除 i count 程序引用計數 為0,檔案就被刪除 檔案刪除的條件i link 0並且i count 0,此時檔案就被刪除 在工作中偶爾會遇到一種情況是,當磁碟空間滿了,刪除一些覺得沒必要的檔案,但是刪除之後磁碟空間未沒有減少,還是處於滿的狀態,這種情況的...