歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux基礎知識

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

 在網上經常看到使用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 (111111)...

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 © Linux教程網 All Rights Reserved