iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 17
0
自我挑戰組

linux 能力upup系列 第 17

Day17 預設權限以及隱藏權限I

  • 分享至 

  • xImage
  •  

我們前面幾期都在討論的部分是檔案與目錄的管理以及操作,但是,權限部分的指令我們一直沒有討論到,上一期我們結束了操作與管理部分的討論,今天我們就來介紹權限的部分。

那我們先來介紹檔案的預設權限,當我們在建立一個新的檔案或目錄的時候,基本上都會有一個預設權限,那要如何得知有關預設權限的資訊呢?就跟 umask 這隻指令有關,這隻指令就是目前使用這在建立檔案或目錄時候的權限預設值,那要如何查閱或設定預設umask,那就是以以下方式來指定

umask <--以數字型態顯示權限分數

umask -S <--以符號型態顯示權限

那用第一指令得出的結果不是有4個數字嗎?別懷疑,不是電腦故障或是鬧鬼,第一組數字是特殊權限用的,我們只需要看剩下的3組數字。

在預設權限的屬性上,目錄與檔案是不一樣的,檔案的預設權限最大的分數就是666,因為執行的權限被拿掉了,只剩下r(read)跟w(write)。但是,如果使用者建立的是目錄的時候,由於x(eXecute)權限是有關能不能進入目錄的權限,所以,所有的權限都會開放,因此預設權限分數是777。

那要注意的點就是我接下來要提到的,umask分數指的是該預設值需要減去的權限。(r=4分、w=2分、x=1分),那就是要調整的是要被拿掉的權限。

那介紹完預設權限跟相關指令umask之後,那就要介紹檔案的隱藏屬性,這個部分其實蠻重要的,而且對系統的幫助超大,尤其在系統安全這一塊。那相關指令就是chattr跟lsattr這兩隻指令

chattr
(1)設定檔案的隱藏屬性
(2)只能在Ext2/Ext3/Ext4的Linux傳統檔案系統上面完整生效
(3)指令格式 chattr (+-=) (ASacdisu) 檔案或目錄名稱

+:增加某一個特殊參數,其他原本存在的參數則不動
-:減少某一個特殊參數,其他原本存在的參數則不動
=:設定一定,且僅有後面接的參數

A:當設定了A這個屬性,存取此檔案的存取時間不會被修改
S:當設定了S這個屬性,進行任何檔案的修改時,該更動會同步寫入磁碟
a:當設定了a這個屬性,這個檔案只能增加資料,不能刪除或修改檔案內的資料,只有root才能設定這個屬性
c:當設定了c這個屬性,儲存檔案的時候會自動壓縮,讀取檔案的時候會自動解壓縮
d:當設定了d這個屬性,當dump程序執行時,這個檔案不會被dump備份
i:當設定了i這個屬性,讓該檔案無法被刪除、編輯資料、更改檔案名稱、設定連結、無法寫入或新增資料
s:當設定了s這個屬性,如果這個檔案被刪除,將會被完全的移出磁碟空間
u:當設定了u這個屬性,如果這個檔案被刪除,檔案還會被保留在磁碟空間,可以用來救援該檔案

lsattr
(1)顯示隱藏檔案屬性
(2)指令格式 lsattr (-adR)

-a:機隱藏檔案的屬性也顯示出來
-d:如果是目錄,僅列出目錄本身的屬性而非目錄內的檔案名稱
-R:連同子目錄的資料也一併列出來

以上就是本人介紹預設權限以及隱藏權限的部分,如果有缺漏的部分,也麻煩大家多指教


上一篇
Day16 目錄的相關操作V (檔案內容查閱)
下一篇
Day18 SUID, SGID, SBIT
系列文
linux 能力upup30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言