萬盛學電腦網

 萬盛學電腦網 >> Linux教程 >> Linux操作系統下文件保護與徹底刪除技巧

Linux操作系統下文件保護與徹底刪除技巧

class="21107">

在網上經常看到使用chmod修改文件權限的介紹文章,但是介紹linux裡面的另外兩個經典的文件操作命令chattr和lsattr,shred的文章確很少,這是我的學習筆記,希望對新學linux的朋友有所幫助。

chattr命令有很多用處,可以防止重要文件被錯誤的修改,誤刪。或把一些不在用機密的文件徹底刪除,使其無法恢復。

好了下面看看chattr命令的具體用法。

chattr的作用是修改文件屬性,需要超級用戶的權限。

我們可以用下面的命令看看chattr命令的具體用法

$chattr --help

usage: chattr [-RV] [-+=AacDdijsSu] [-v version] files...

lsattr的作用是查看文件屬性。

可以用下面的命令看看lsattr命令的具體用法

$lsattr --help

Usage: lsattr [-RVadlv] [files...]

先用vi建立一個叫test1的目錄,內容隨便。

$vi test1

用lsattr先看一下test1文件的屬性

$ lsattr test1

------------- test1

發現屬性項都為空

好了我們為test1文件加一個屬性看看。

$chattr +s test1

再用lsattr看一下test1文件的屬性

$ lsattr test1

------------ test1

會發現test1多了一個s屬性

s屬性:意思是當刪除test1這個文件時,相應的磁盤空間會被清零。就像我們常在windows用的一種徹底刪除文件的軟件。刪除的文件不能被恢復

好了我們再看一個例子

$chattr +a test1

a屬性:意思就是使文件只可以追加數據,不能修改或覆蓋。這時我們再用vi編輯文件會發現只能追加數據,但不能修改以前的數據。

想刪除已經添加的文件屬性也很容易,只要用-減去就可以了,和chmod的操作一樣。

$chattr -a test1

這樣就去掉了test1只能追加數據的限制,可以自由修改了。

chattr還有很多參數可以選擇,除了上面介紹的兩個,常用的還有

i屬性:不允許對這個文件進行修改,刪除或重命名

c屬性:保存文件時,壓縮該文件。

其他還有很多參數,大家可以參考chattr的使用幫助。然後說說shred,使用 shred /dev/hda 就可以讓你的硬盤數據立刻消失,永不超升。當然要使用你的硬盤的正確的設備文件。

默認情況下使用各種垃圾數據反復重寫25遍,加上 -v 參數就可以看到。

$ shred -v /dev/hda

shred: /dev/hda: pass 1/25 (random)...

shred: /dev/hda: pass 2/25 (492492)...

shred: /dev/hda: pass 3/25 (000000)...

shred: /dev/hda: pass 4/25 (aaaaaa)...

shred: /dev/hda: pass 5/25 (555555)...

shred: /dev/hda: pass 6/25 (cccccc)...

shred: /dev/hda: pass 7/25 (b6db6d)...

shred: /dev/hda: pass 8/25 (333333)...

shred: /dev/hda: pass 9/25 (6db6db)...

shred: /dev/hda: pass 10/25 (dddddd)...

shred: /dev/hda: pass 11/25 (222222)...

shred: /dev/hda: pass 12/25 (ffffff)...

shred: /dev/hda: pass 13/25 (random)...

shred: /dev/hda: pass 14/25 (eeeeee)...

shred: /dev/hda: pass 15/25 (924924)...

shred: /dev/hda: pass 16/25 (777777)...

shred: /dev/hda: pass 17/25 (999999)...

shred: /dev/hda: pass 18/25 ()...

shred: /dev/hda: pass 19/25 (888888)...

shred: /dev/hda: pass 20/25 (bbbbbb)...

shred: /dev/hda: pass 21/25 (db6db6)...

shred: /dev/hda: pass 22/25 (444444)...

shred: /dev/hda: pass 23/25 (666666)...

shred: /dev/hda: pass 24/25 (249249)...

shred: /dev/hda: pass 25/25 (random)...
copyright © 萬盛學電腦網 all rights reserved