成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何在Linux系統(tǒng)中防止文件和目錄被意外的刪除或修改

系統(tǒng) Linux 系統(tǒng)運(yùn)維
有時(shí),我會(huì)不小心的按下 SHIFT+DELETE來(lái)刪除我的文件數(shù)據(jù)。在這篇簡(jiǎn)短的教程中,我們一起來(lái)看看怎么在實(shí)際應(yīng)用中使用 chattr 命令,來(lái)防止文件和目錄被意外刪除。

[[227422]]

有時(shí),我會(huì)不小心的按下 SHIFT+DELETE來(lái)刪除我的文件數(shù)據(jù)。是的,我是個(gè)笨蛋,沒有再次確認(rèn)下我實(shí)際準(zhǔn)備要?jiǎng)h除的東西。而且我太笨或者說太懶,沒有備份我的文件數(shù)據(jù)。結(jié)果呢?數(shù)據(jù)丟失了!在一瞬間就丟失了。

這種事時(shí)不時(shí)就會(huì)發(fā)生在我身上。如果你和我一樣,有個(gè)好消息告訴你。有個(gè)簡(jiǎn)單又有用的命令行工具叫chattrChange Attribute 的縮寫),在類 Unix 等發(fā)行版中,能夠用來(lái)防止文件和目錄被意外的刪除或修改。

通過給文件或目錄添加或刪除某些屬性,來(lái)保證用戶不能刪除或修改這些文件和目錄,不管是有意的還是無(wú)意的,甚至 root 用戶也不行。聽起來(lái)很有用,是不是?

在這篇簡(jiǎn)短的教程中,我們一起來(lái)看看怎么在實(shí)際應(yīng)用中使用 chattr 命令,來(lái)防止文件和目錄被意外刪除。 

Linux中防止文件和目錄被意外刪除和修改

默認(rèn),chattr 命令在大多數(shù)現(xiàn)代 Linux 操作系統(tǒng)中是可用的。

默認(rèn)語(yǔ)法是:

  1. chattr [operator] [switch] [file]

chattr 具有如下操作符:

  • 操作符 +,追加指定屬性到文件已存在屬性中
  • 操作符 -,刪除指定屬性
  • 操作符 =,直接設(shè)置文件屬性為指定屬性

chattr 提供不同的屬性,也就是 aAcCdDeijsStTu。每個(gè)字符代表一個(gè)特定文件屬性。

  • a – 只能向文件中添加數(shù)據(jù)
  • A – 不更新文件或目錄的***訪問時(shí)間
  • c – 將文件或目錄壓縮后存放
  • C – 不適用寫入時(shí)復(fù)制機(jī)制(CoW)
  • d – 設(shè)定文件不能成為 dump 程序的備份目標(biāo)
  • D – 同步目錄更新
  • e – extend 格式存儲(chǔ)
  • i – 文件或目錄不可改變
  • j – 設(shè)定此參數(shù)使得當(dāng)通過 mount 參數(shù):data=ordered 或者 data=writeback 掛載的文件系統(tǒng),文件在寫入時(shí)會(huì)先被記錄在日志中
  • P – project 層次結(jié)構(gòu)
  • s – 安全刪除文件或目錄
  • S – 即時(shí)更新文件或目錄
  • t – 不進(jìn)行尾部合并
  • T – 頂層目錄層次結(jié)構(gòu)
  • u – 不可刪除

在本教程中,我們將討論兩個(gè)屬性的使用,即 ai ,這個(gè)兩個(gè)屬性可以用于防止文件和目錄的被刪除。這是我們今天的主題,對(duì)吧?來(lái)開始吧! 

防止文件被意外刪除和修改

我先在我的當(dāng)前目錄創(chuàng)建一個(gè)file.txt文件。

  1. $ touch file.txt

現(xiàn)在,我將給文件應(yīng)用 i 屬性,讓文件不可改變。就是說你不能刪除或修改這個(gè)文件,就算你是文件的擁有者和 root 用戶也不行。

  1. $ sudo chattr +i file.txt

使用lsattr命令檢查文件已有屬性:

  1. $ lsattr file.txt

輸出:

  1. ----i---------e---- file.txt

現(xiàn)在,試著用普通用戶去刪除文件:

  1. $ rm file.txt

輸出:

  1. # 不能刪除文件,非法操作
  2. rm: cannot remove 'file.txt': Operation not permitted

我來(lái)試試 sudo 特權(quán):

  1. $ sudo rm file.txt

輸出:

  1. # 不能刪除文件,非法操作
  2. rm: cannot remove 'file.txt': Operation not permitted

我們?cè)囋囎芳訉憙?nèi)容到這個(gè)文本文件:

  1. $ echo 'Hello World!' >> file.txt

輸出:

  1. # 非法操作
  2. bash: file.txt: Operation not permitted

試試 sudo 特權(quán):

  1. $ sudo echo 'Hello World!' >> file.txt

輸出:

  1. # 非法操作
  2. bash: file.txt: Operation not permitted

你應(yīng)該注意到了,我們不能刪除或修改這個(gè)文件,甚至 root 用戶或者文件所有者也不行。

要撤銷屬性,使用 -i 即可。

  1. $ sudo chattr -i file.txt

現(xiàn)在,這不可改變屬性已經(jīng)被刪除掉了。你現(xiàn)在可以刪除或修改這個(gè)文件了。

  1. $ rm file.txt

類似的,你能夠限制目錄被意外刪除或修改,如下一節(jié)所述。

 

防止目錄被意外刪除和修改

創(chuàng)建一個(gè) dir1 目錄,放入文件 file.txt

  1. $ mkdir dir1 && touch dir1/file.txt

現(xiàn)在,讓目錄及其內(nèi)容(file.txt 文件)不可改變:

  1. $ sudo chattr -R +i dir1

命令中,

  • -R – 遞歸使 dir1 目錄及其內(nèi)容不可修改
  • +i – 使目錄不可修改

現(xiàn)在,來(lái)試試刪除這個(gè)目錄,要么用普通用戶,要么用 sudo 特權(quán)。

  1. $ rm -fr dir1
  2. $ sudo rm -fr dir1

你會(huì)看到如下輸出:

  1. # 不可刪除'dir1/file.txt':非法操作
  2. rm: cannot remove 'dir1/file.txt': Operation not permitted

嘗試用 echo 命令追加內(nèi)容到文件,你成功了嗎?當(dāng)然,你做不到。

撤銷此屬性,輸入:

  1. $ sudo chattr -R -i dir1

現(xiàn)在你就能想平常一樣刪除或修改這個(gè)目錄內(nèi)容了。

 

防止文件和目錄被意外刪除,但允許追加操作

我們現(xiàn)已知道如何防止文件和目錄被意外刪除和修改了。接下來(lái),我們將防止文件被刪除但僅僅允許文件被追加內(nèi)容。意思是你不可以編輯修改文件已存在的數(shù)據(jù),或者重命名這個(gè)文件或者刪除這個(gè)文件,你僅可以使用追加模式打開這個(gè)文件。

為了設(shè)置追加屬性到文件或目錄,我們像下面這么操作:

針對(duì)文件:

  1. $ sudo chattr +a file.txt

針對(duì)目錄:

  1. $ sudo chattr -R +a dir1

一個(gè)文件或目錄被設(shè)置了 a 這個(gè)屬性就僅僅能夠以追加模式打開進(jìn)行寫入。

添加些內(nèi)容到這個(gè)文件以測(cè)試是否有效果。

  1. $ echo 'Hello World!' >> file.txt
  2. $ echo 'Hello World!' >> dir1/file.txt

查看文件內(nèi)容使用cat命令

  1. $ cat file.txt
  2. $ cat dir1/file.txt

輸出:

  1. Hello World!

你將看到你現(xiàn)在可以追加內(nèi)容。就表示我們可以修改這個(gè)文件或目錄。

現(xiàn)在讓我們?cè)囋噭h除這個(gè)文件或目錄。

  1. $ rm file.txt

輸出:

  1. # 不能刪除文件'file.txt':非法操作
  2. rm: cannot remove 'file.txt': Operation not permitted

讓我們?cè)囋噭h除這個(gè)目錄:

  1. $ rm -fr dir1/

輸出:

  1. # 不能刪除文件'dir1/file.txt':非法操作
  2. rm: cannot remove 'dir1/file.txt': Operation not permitted

刪除這個(gè)屬性,執(zhí)行下面這個(gè)命令:

針對(duì)文件:

  1. $ sudo chattr -R -a file.txt

針對(duì)目錄:

  1. $ sudo chattr -R -a dir1/

現(xiàn)在,你可以想平常一樣刪除或修改這個(gè)文件和目錄了。

更多詳情,查看 man 頁(yè)面。

  1. man chattr

 

總結(jié)

保護(hù)數(shù)據(jù)是系統(tǒng)管理人員的主要工作之一。市場(chǎng)上有眾多可用的免費(fèi)和收費(fèi)的數(shù)據(jù)保護(hù)軟件。幸好,我們已經(jīng)擁有這個(gè)內(nèi)置命令可以幫助我們?nèi)ケWo(hù)數(shù)據(jù)被意外的刪除和修改。在你的 Linux 系統(tǒng)中,chattr 可作為保護(hù)重要系統(tǒng)文件和數(shù)據(jù)的附加工具。 

責(zé)任編輯:龐桂玉 來(lái)源: Linux中國(guó)
相關(guān)推薦

2017-01-06 22:08:32

LinuxShell命令

2020-09-30 06:00:00

Linux誤刪除恢復(fù)文件

2022-08-09 15:30:41

Linux

2022-03-28 19:53:24

Linux恢復(fù)文件意外刪除文件

2009-11-28 20:21:14

2016-12-20 09:47:17

Linux命令復(fù)制文件到多個(gè)目錄

2019-04-10 10:15:52

Linux邏輯卷文件系統(tǒng)

2022-04-20 10:25:27

Linux用戶密碼命令

2019-12-02 08:00:00

Linux管理員意外關(guān)機(jī)或重啟

2021-04-30 13:19:20

Linux刪除分區(qū)

2017-07-21 13:25:33

LinuxMD5哈希恢復(fù)文件

2014-12-03 08:53:59

eCryptFS加密文件

2018-06-01 10:37:26

Linux歸檔文件壓縮文件

2019-09-26 06:50:16

Linux命令回車字符

2020-01-08 10:15:48

Windows 10鍵盤布局Windows

2017-03-14 09:45:24

2016-11-22 19:37:54

Linux恢復(fù)文件

2017-05-25 12:04:48

Linux刪除超大文件

2009-08-17 07:58:00

C#刪除文件目錄

2017-02-05 17:18:08

Linuxfind 命令文件數(shù)量
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 亚洲一区欧美 | 久久免费精品视频 | 久久99视频免费观看 | 亚洲综合在线一区 | 伊人免费在线观看高清 | 国产一级片免费在线观看 | 国产情侣啪啪 | 91精品免费视频 | 曰批视频在线观看 | 亚洲视频欧美视频 | 亚洲免费三区 | 欧美精品一区三区 | 91在线视频免费观看 | 亚洲精品欧美一区二区三区 | 国产激情三区 | 国产一区二区精品自拍 | 国产精品亚洲一区二区三区在线 | 一区二区三区免费观看 | www.天天操| 99亚洲精品| 91高清视频在线 | 自拍视频在线观看 | 久久精品一 | 欧美一区二区免费 | 久久精品一区二区 | 亚洲一区二区中文字幕 | 在线国产一区 | 成人激情视频免费观看 | 99免费在线 | 色天堂影院| 91高清视频在线观看 | 欧美亚洲国产日韩 | 久久久久久91 | av手机免费在线观看 | 91久久久久 | 日本国产精品视频 | 久久噜噜噜精品国产亚洲综合 | 精品亚洲一区二区三区 | 亚洲一区不卡 | 亚洲免费在线 | 国产在线播 |