Linux入門真經 022檔案的隱藏屬性與預設許可權

2021-08-25 19:23:32 字數 2654 閱讀 1254

除了我們上一節介紹的基本許可權之外,linux檔案還具備一些隱藏屬性。當你覺得當前檔案的許可權沒有問題但是檔案訪問依然異常的時候,就可以來查一下這個檔案的隱藏屬性。隱藏屬性對系統安全提供了一定程度的保障,今天給大家介紹如何修改和檢視檔案的隱藏屬性。

[root@

localhost

~]# chattr [+-=][asacdistu] 

檔案或目錄名稱

選項與引數:

+ :增加某乙個特殊引數,其他原本存在引數則不動。

- :移除某乙個特殊引數,其他原本存在引數則不動。

= :設定一定,且僅有後面接的引數

a :訪問此檔案(或目錄)時,他的訪問時間

atime 

將不會被修改。

a :檔案將只能增加資料,而不能刪除也不能修改資料,只有

root 

才能設定這屬性

c :自動的將此檔案「壓縮

」。在讀取的時候將會自動解壓縮,在儲存的時候,將會先進行壓縮後再儲存

d :當

dump 

備份時忽略本檔案/目錄

i root

也不能),如果設定此屬性的是目錄,只能修改目錄內檔案的內容,而不能增刪檔案。只有

root

才能設定此屬性

s:檔案內容變更之後,立即同步到硬碟

s :刪除時用

0填充該檔案,無法恢復

u :如果該檔案被刪除時,其資料內容其實還存在磁碟中,方便日後恢復

對於ext

系列的文佳系統,支援上述所有選項,

xfs檔案系統則只支援

aadis

。(什麼是檔案系統我們以後會專門討論)

[root@localhost ~]# lsattr [-adr] 

檔案或目錄

選項與引數:

-a :將隱藏檔案的屬性也秀出來;

-d :如果接的是目錄,僅列出目錄本身的屬性而非目錄內的檔名;

-r :連同子目錄的資料也一並列出來

舉例:建立檔案並設定

i屬性,發現

root

使用者也無法刪除該檔案:

[root@localhost ~]# touch testattr

[root@localhost ~]# chattr +i testattr

[root@localhost ~]# lsattr testattr

----i----------- testattr

[root@localhost ~]# rm testattr

rm: remove regular empty file 『testattr』? y

rm: cannot remove 『testattr』: operation not permitted

[root@localhost ~]#

當我們建立乙個檔案的時候,檔案是會有乙個預設許可權的,那麼檔案的預設許可權是什麼呢?

這取決於使用者的遮罩碼(

umask

)。使用

umask

命令可以檢視當前的遮罩碼

[root@localhost ~]# umask

0022

這是一串八進位制數,有些朋友可能會一頭霧水,使用者許可權如果用八進位制表示應該是三位呀,問什麼此處只有四位數字呢。

其實,umask

的正確使用姿勢是這樣的:

第一位數字是介紹特殊許可權的,是下一節的內容,我們先不看。這樣一來就只剩下三位,此處是

022,但是這不是使用者許可權的最終結果

對於非目錄檔案,用

666去減去

umask

,此處我們得到的是

644,也就是預設檔案許可權是

rw-r--r--

。此處要注意的是,如果減去的結果中有奇數(執行許可權),則該位加

1.比如,如果

umask

後三位是

023,666-023=643

,第三位出現了執行許可權,則這位數字加

1,最終許可權任然是

644。

對於目錄檔案,使用

777去減,如末三位為

022的

umask

,預設的目錄許可權是

755預設

root

使用者的umask

是0022

,普通使用者是

0002

可以通過

umask 

數字來更改當前使用者的

umask

(一般提供後三位即可)

[root@localhost ~]# umask 023

[root@localhost ~]# umask

0023

我們之前說過

umask

第一位是描述特殊許可權的,那麼

Linux入門(三)檔案許可權

linux系統中的每個檔案和目錄都有訪問許可許可權,用它來確定使用者對檔案和目錄進行訪問和操作的許可權。檔案或目錄的訪問許可權分為唯讀r,只寫w和可執行x三種。有三種不同型別的使用者可對檔案或目錄進行訪問 檔案所有者,同組使用者 其他使用者。所有者一般是檔案的建立者。用ls l命令顯示檔案或目錄的周...

Linux入門篇(二) 檔案

這一系列的linux入門都是本人在 鳥哥的linux私房菜 的基礎上總結的基本內容,主要是記錄下自己的學習過程,也方便大家簡要的了解 linux distribution是ubuntu而不是書本上推薦的centos,建議裝雙系統,不要使用虛擬機器。在github上 linuxpractice 其他內...

Linux快速入門(2) 》檔案的打包壓縮

與我們平時所說的打包不一樣。我們平時說的打包是打包後壓縮。而在linux下,打包的意思是指只打包不進行檔案壓縮。壓縮的意思是把檔案進行壓縮。tar命令,檔案的打包,解包 只是單純的打包,並不做壓縮,相當於把檔案歸檔,歸檔檔案釋放。打包 tar cvf filename.tar dirname解包 t...