Categories: Linux

Linux 使用 shred 銷毀機密資料教學與範例

介紹如何在 Linux 中使用 shred 徹底銷毀機密性資料,避免救援軟體回覆。

銷毀機密資料

shred 指令可以用來銷毀機密性的資料,執行時在參數中指定要進行銷毀的檔案即可:

# 銷毀 file.txt 檔案內容(以亂數資料覆蓋 3 次)
shred file.txt

在預設的情況下,shred 會以亂數資料覆蓋要進行銷毀的檔案內容,覆蓋的動作會重複 3 次,確保資料完全無法復原,若要改變重複覆蓋的次數,可以使用 -n 參數來指定:

# 以亂數資料覆蓋 5 次
shred -n 5 file.txt

銷毀機密資料並刪除檔案

shred 指令預設只會進行檔案內容的覆蓋,如果要讓它覆蓋內容之後,自動將檔案刪除,可以加上 -u 參數:

# 以亂數資料覆蓋後,刪除檔案
shred -u file.txt

覆蓋指定長度的資料

如果只要覆蓋掉檔案中指定長度的資料,可以使用 -s 參數指定覆蓋資料的長度:

# 以覆蓋 file.txt 檔案的前 128 位元組資料
shred -s 128 file.txt

強制覆蓋檔案

若要讓 shred 強制覆蓋檔案(必要時自動變更檔案權限),可以加上 -f 參數:

# 強制覆蓋檔案
shred -f file.txt

顯示詳細處理資訊

若要讓 shred 顯示詳細的資料處理資訊,可以加上 -v 參數:

# 顯示詳細處理資訊
shred -v file.txt
shred: file.txt: pass 1/3 (random)...
shred: file.txt: pass 2/3 (random)...
shred: file.txt: pass 3/3 (random)...

填入 0

在經過 shred 覆蓋處理之後,檔案內容會呈現亂數的資料,如果希望消除這些亂數資料,可以加上 -z 參數,再覆蓋完亂數之後,再填入 0 值:

# 填入 0 值
shred -v -z file.txt
shred: file.txt: pass 1/4 (random)...
shred: file.txt: pass 2/4 (random)...
shred: file.txt: pass 3/4 (random)...
shred: file.txt: pass 4/4 (000000)...

銷毀整個磁碟資料

shred 除了銷毀指定的檔案資料之外,也可以對整顆磁碟的所有資料進行銷毀:

# 銷毀 /dev/sdc 磁碟中所有資料
shred -vzf /dev/sdc

參考資料

Share
Published by
Office Guide

Recent Posts

Python 使用 PyAutoGUI 自動操作滑鼠與鍵盤

本篇介紹如何在 Python ...

1 年 ago

Ubuntu Linux 以 WireGuard 架設 VPN 伺服器教學與範例

本篇介紹如何在 Ubuntu ...

1 年 ago

Linux 網路設定 ip 指令用法教學與範例

本篇介紹如何在 Linux 系...

1 年 ago

Linux 以 Cryptsetup、LUKS 加密 USB 隨身碟教學與範例

介紹如何在 Linux 系統中...

1 年 ago