來源 | Pinterest今天,我們來說一說,如果不小心誤刪掉了檔案該怎麼辦。不過首先呢,要想找回我們指尖字字珠璣的文字,我們就得先要了解下,電腦檔案在我們點選刪除後它到底跑哪兒去了?1我們的檔案被存到哪裡去了?在這之前,我們需要先了解幾個概念。電腦包括作業系統在內的所有檔案都儲存在硬碟上。而一般來說,無論哪種機械硬碟,都是由碟片、磁頭、碟片主軸、控制電機、磁頭控制器、資料轉換器、介面、快取等幾個部分組成。但今天我們並不探討相關硬體,在此只介紹有關的幾個邏輯概念。
來源 | International Council of Design磁軌:磁碟在格式化時被劃分成許多同心圓,這些同心圓軌跡叫做磁軌(Track)。柱面:所有盤面上的同一磁軌構成一個圓柱,通常稱做柱面(Cylinder),每個圓柱上的磁頭由上而下從“0”開始編號。扇區:作業系統以扇區(Sector)的形式將資訊儲存在硬碟上,每個扇區包括512個位元組的資料和一些其他資訊。一個扇區主要有兩個部分,儲存資料地點的識別符號和儲存資料的資料段。
來源 | DBMS Internals瞭解了上述的概念,我們簡單描述下檔案讀寫的過程。首先作業系統將檔案儲存到磁碟上時,按柱面、磁頭、扇區的方式進行,即最先是第1磁軌的第一磁頭下的所有扇區,然後,是同一柱面的下一磁頭。以此類推,一個柱面儲存滿後就推進到下一個柱面,直到把檔案內容全部寫入磁碟。2檔案的刪除過程是怎樣的呢?現在我們知道了檔案讀寫的大致原理,接下來就開始說說今天的正題——檔案刪除。檔案儲存的物理形式就是一堆二進位制資料儲存在磁碟上,如果我們要刪除某個檔案,就像我們寫作業用橡皮擦或者塗改液擦抹掉已有的文字一樣。
shift+delete有風險,使用需謹慎來源 | 4meahc.com但是要知道,電腦檔案的讀寫首先是高速和頻繁的,複製一部電影,一般至少都要十幾秒起,反過來想想,假如要刪掉硬盤裡的某部電影,如果按照塗改液修改作業的原理,我們得用新的資料進行覆蓋它,那這樣,豈不是刪個電影都要幾秒鐘起,這樣無論是對計算機本身還是電腦使用者而言都是不合理的。所以,計算機的作業系統(如大家常用的windows10)一般刪除檔案只是刪除對檔案的引用,把檔案曾經所佔的磁碟物理空間在邏輯上釋放出來。後面如果有新的資料儲存,直接在此基礎上進行覆蓋就好了。所以到這裡,我們應該清楚了一點,如果你的檔案意外刪除或者損壞等,請立馬停止任何的寫入操作。在硬碟上,都儲存著這樣一張表(檔案分配表FAT),該表記錄每個檔案儲存在磁碟的具體地點,我們可以理解成新華字典的目錄一樣,寫明瞭每個字對應所在的頁碼,FAT表的作用也大致如此。我們在刪除檔案時,作業系統只是修改了這個檔案的檔名的前兩個程式碼,同時與之對應的表中檔名稱做上了刪除標記。對於這一點,我們可以理解成硬碟上這個檔案區域被打上了“拆遷”標記。它在地圖上抹掉了存在的座標,但實際其實還在那。在我們需要新的空間進行儲存時,任何被打上“拆遷”標記的區域都可以用於儲存新的資料,即被新資料覆蓋。那麼自然地,只要儲存原來檔案資訊的扇區沒有寫入任何新的資料,所有的原檔案內容依然存在。所以,至此我們清楚了第二點:電腦中刪除掉的檔案,在沒有被新的資料覆蓋之前,它依舊存在於你的硬碟上。3檔案可以被恢復嗎?到這裡我們已經差不多瞭解了檔案刪除的大致情況,是否可以稍稍拓展下,逆推下檔案恢復的原理呢?不錯,你腦海裡蹦出來的想法是對的。檔案恢復的思路就是查詢分析磁碟上的檔案頭,找出其中做過刪除標記的檔案並嘗試重寫其被改寫的兩個程式碼,進而進行資料恢復。
來源 | Linux公社目前市面上檔案恢復軟體的原理大致一樣,區別是它們對檔案頭的掃描以及恢復分散存放的檔案資料之能力不同。現在,看文章的你有沒有對電腦中的檔案多了些親切感呢。最後,我們可以思考下,如果想要真正刪除掉某個檔案,應該怎麼做呢?你可以透過專業工具軟體在刪除的檔案區域全部寫入二進位制中的0,又或者可以手動用其他垃圾檔案進行覆蓋硬碟操作。好啦,以上就是我們今天所要介紹的檔案刪除大致原理,大家覺得收穫如何呢?來源:數字北京科學中心稽核專家:鄭遠攀 鄭州輕工業大學教授