工具: hexedit、fdisk
下文內容操作皆在root環境下完成。
hexedit:
在linux上,常常會使用hexedit來修改程式的16進位程式碼。而fdisk這裡就不介紹了。
現在我們走進磁碟的世界,看看磁碟它對資料做點什麼吧。
首先,在終端機下使用root權限,來執行下指令:
Command: fdisk -l

/dev/sdb1是今天的主角,從圖片很清楚地看到一些相關數據,例如磁碟的size,、sector、I/O size等等。

磁碟格式為ext4,而非MS上的vfat32和NTFS格式,在文章的最後貼上FAT32的圖片。
***步驟:
執行fdisk,使用專家模式,來備份Partition table。

ext4的partition table非常簡單,一般備份partition table為ext4.img。備份是為了避免資料恢復中被破壞。
第二步:
首先在target sdb1上執行剪切的命令操作,把sdb1上的檔案移到電腦硬碟上,執行完成後,使用hexedit 來開啟sdb1。
剪下的檔名:usb.png
Command : hexedit -s /dev/sdb1

圖片中可以看到檔案名稱和它所在的sector, 是不是發現了圖片的裝置是sdc1?由於磁碟的自動掛載發生了dev的改變,而資料是不會隨著磁碟的dev變化而變化的。這裡已經找到了檔案名稱的所在,接下來,需要找到檔案header。
如何找到檔案頭呢?可以利用hexedit進行hex search,如果要著ASCII,可以按下TAB切換到ASCII區域。

檔案的大小決定了檔案在磁碟中所佔用的sector 數,1 sector==512 bytes。在圖中,顯示了檔案header offset和sector。
提取hex值,寫入檔案。

恢復後的圖片:

#上看著很簡單吧,它只是單一檔案的剪下操作與資料恢復。這裡提醒下各位:磁碟中保存的數據,不是刪除了可以恢復,被剪切掉的數據一樣可恢復。
下面我們來看看從磁碟刪除資料後,如何來操作呢?
在磁碟上執行delete指令來刪除一個名為1.gif的檔案,操作如下:



圖片可以看到檔案header到檔案end的sector 的變化,header sector: 264056 , end sector: 264057,檔案大小在1K, 圖片很小。
建立個新文件,然後再執行delete操作,看看磁碟資料變化。



#檔案header sector : 264056, end sector: 264061 , ***次執行刪除的檔案header sector: 264056 ,end sector : 264057, 這樣可以看到***次刪除的資料被覆掉,而保留了第二此刪除的資料。
這裡操作是對磁碟單一檔案進行資料復原和其磁碟中的資料變更進行論證。接下來我們來看看雙文件的操作。

磁碟中存在兩個不同類型的檔案。
檔名:partition.zip
檔名:cab.ico


***個檔案的header secotor:264056,end sector:264058

第二個檔案header sector:264064,end sector:264076。發現***個檔案的end sector與第二個檔案的header sector相差多個sector,那麼中間的差值是什麼呢?

可以看到中間的差值全部以00填充。到這裡我們來總結下這次在linux上的實作操作:
ext4 file system
執行剪貼
file name : usb.png sector 67120
#file header : sector 264064 file end: sector 264076
執行刪除
file name : 1.gif sector 67112 (覆蓋)
file header: start : sector 26405#file66 end: sector 264057 (覆蓋)
file name: 56.jpg sector 67112
file header:start: sector 264056 end: sector 264061
當單一檔案時,執行##當單一檔案時,執行#刪除時,覆蓋上一次被刪除的資料。
儲存檔案
(1) file name : partition.zip sector 67112
##(1) file name : partition.zip sector 67112
file header: start sector 264056 end sector 264058
(2) file name : cab.ico sector 67112
file header: start sector 264064 end sector: 264068
#ector


以上是linux系統資料復原的方法是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

記事本++7.3.1
好用且免費的程式碼編輯器

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),