Linux 檔案屬性與許可權

2021-10-25 07:43:23 字數 4696 閱讀 3190

本文主要介紹linux檔案許可權,包括檔案許可權所有者角色、群組、檔案許可權概念以及目錄配置。

linux檔案許可權所有者的角色有三種:檔案所有者(ower)、檔案所屬群組(group)、其他人(other)。linux之所以會有這麼多種角色,和它多工、多人協作的使命息息相關的,不同的使用者角色,會有對應不同的檔案許可權。

檔案所有者和其他人如字面意思一樣,重點解釋下檔案所屬群組。檔案所屬群組其實是指檔案所有者所在的群組(即使用者組),使用者組最重要的作用是進行團隊協作開發,同乙個團隊內的不同開發成員之間可以共享檔案資源,不同的團隊之間設定不同的檔案許可權,這樣既能保證資訊保安,又能在有限的範圍內高效便捷的共享資訊資源。需要強調的是,這其中可能存在乙個人同時在幾個群組的情況。

以centos7中的根目錄說明檔案屬性,使用命令ls檢視根目錄下的檔案屬性

[hack@localhost /]$ ls -al	# -a表示顯示隱藏檔案,-l表示長格式顯示,包括檔案的屬性、修改時間等資訊

總用量 40

dr-xr-xr-x. 17 root root 4096 10月 25 09:54 .

dr-xr-xr-x. 17 root root 4096 10月 25 09:54 ..

lrwxrwxrwx. 1 root root 7 10月 25 09:47 bin -> usr/bin

dr-xr-xr-x. 4 root root 4096 10月 25 22:17 boot

drwxr-xr-x. 20 root root 3280 10月 27 20:16 dev

drwxr-xr-x. 139 root root 8192 10月 27 20:35 etc

drwxr-xr-x. 3 root root 17 10月 25 09:54 home

lrwxrwxrwx. 1 root root 7 10月 25 09:47 lib -> usr/lib

lrwxrwxrwx. 1 root root 9 10月 25 09:47 lib64 -> usr/lib64

drwxr-xr-x. 2 root root 6 8月 12 2015 media

drwxr-xr-x. 2 root root 6 8月 12 2015 mnt

drwxr-xr-x. 3 root root 15 10月 25 09:52 opt

dr-xr-xr-x. 454 root root 0 10月 27 20:14 proc

dr-xr-x---. 4 root root 4096 10月 27 20:35 root

drwxr-xr-x. 38 root root 1120 10月 27 20:35 run

lrwxrwxrwx. 1 root root 8 10月 25 09:47 sbin -> usr/sbin

drwxr-xr-x. 2 root root 6 8月 12 2015 srv

dr-xr-xr-x. 13 root root 0 10月 27 20:14 sys

drwxrwxrwt. 24 root root 4096 10月 27 21:21 tmp

drwxr-xr-x. 13 root root 4096 10月 25 09:47 usr

drwxr-xr-x. 21 root root 4096 10月 27 20:14 var

取其中某一行記錄分析

將檔案許可權型別拆解如下圖

檔案許可權型別共有13個符號表示,第乙個表示檔案型別,linux中的檔案型別主要有如下

1)d:表示目錄

2)-:表示檔案

3)l:表示鏈結

4)b:表示可供儲存的介面裝置,比如行動硬碟等

5)c:串列埠檔案,比如鍵盤、滑鼠

其中檔案型別b和c需要解釋一下,這與通常windows中的習慣不符,在windows中,硬體裝置是可以在裝置管理器中直接檢視。而在linux中,一切皆檔案,無論軟硬。

檔案所有者、檔案群組、其他人許可權可以統一說明

1)r:表示讀許可權

2)w:表示寫許可權

3)x:表示可執行許可權

4)-:表示沒有許可權

這裡需要強調下目錄的許可權,如果具有讀(r)的許可權,說明你可以通過ls命令列舉出該目錄下的檔名資料;如果有可執行許可權(x),說明你可以進入該目錄使得該目錄成為工作目錄;最後,寫(w)的許可權就比較神通廣大,通過此許可權,我們可以新建檔案或者目錄、刪除已有檔案或者目錄、對檔案或者目錄重新命名、轉移檔案或者目錄等。

1、修改檔案的許可權

linux的基本許可權有9個,分別為ower、group和other的read、write和execute許可權。修改這9種許可權主要有兩種方式,按照數字和符號型別修改,這裡主要介紹按照數字修改許可權。

read、write和execute對應的權值為4、2和1,可通過chmod命令修改,具體格式如下

chmod

[-r] 權值 檔案或者目錄 # -r表示遞迴修改目錄下的所有子檔案

舉例說明,在/home/hack/study資料夾下的c_program資料夾的許可權為rwxrwxr-x,

[hack@localhost study]$ ls -al /home/hack/study

總用量 8

drwxrwxr-x. 3 hack hack 40 10月 28 20:38 .

drwx------. 15 hack hack 4096 10月 28 20:38 ..

drwxrwxr-x. 2 hack hack 6 10月 27 21:21 c_program

將c_program資料夾的other檔案許可權修改為rwxrwx—,即去掉other的r、w、x許可權,other的檔案權值為 0+0+0=0,則對應此檔案目錄的權值為770,即有

[hack@localhost study]$ chmod 770 c_program/ 

[hack@localhost study]$ ls -al .

總用量 8

drwxrwxr-x. 3 hack hack 40 10月 28 20:38 .

drwx------. 15 hack hack 4096 10月 28 20:38 ..

drwxrwx---. 2 hack hack 6 10月 27 21:21 c_program

2、修改檔案的所有者

修改檔案所有者通過chown(change ower)命令,具體格式如下

chown

[-r] 使用者名稱 檔案或目錄 # -r表示遞迴修改目錄下的所有子檔案

舉例說明,先登入root使用者,在/home/hack/study目錄下新建檔案hello.c,檢視其檔案所有者發現為root,現將其修改為hack,則有如下

[root@localhost study]

# ls -al .

總用量 8

drwxrwxr-x. 3 hack hack 36 10月 28 21:00 .

drwx------. 15 hack hack 4096 10月 28 20:59 ..

-rw-r--r--. 1 root root 6 10月 28 21:00 hello.c

root@localhost study]

# chown hack hello.c

[root@localhost study]

# ls -al .

總用量 8

drwxrwxr-x. 3 hack hack 36 10月 28 21:00 .

drwx------. 15 hack hack 4096 10月 28 20:59 ..

-rw-r--r--. 1 hack root 6 10月 28 21:00 hello.c

3、修改檔案所在群組

修改檔案所在群組通過chgrp(change group)命令,具體格式如下

chgrp

[-r] 使用者組名稱 檔案或者目錄 # -r表示遞迴修改目錄下的所有子檔案

舉例說明,將上述hello.c所屬使用者組修改為hack,則有如下

[root@localhost study]

# chgrp hack hello.c

[root@localhost study]

# ls -al .

總用量 8

drwxrwxr-x. 3 hack hack 36 10月 28 21:00 .

drwx------. 15 hack hack 4096 10月 28 20:59 ..

drwxrwx---. 2 hack hack 6 10月 27 21:21 c_program

-rw-r--r--. 1 hack hack 6 10月 28 21:00 hello.c

Linux檔案屬性與檔案許可權

我們在 linux 中,存在檔案的目錄中執行 ls al 命令,就會獲得該目錄下檔案及其檔案屬性的資訊。例如 ls al rw r r 1 root root 120 jan 6 2019 bashrc 省略其他檔案 這些字串代表了檔案及檔案屬性。那麼,這些檔案屬性具體的含義是什麼?如何修改檔案屬性...

Linux改變檔案屬性與許可權

在學習檔案屬性與許可權前,先用ls al 命令顯示檔案的詳細資訊 如上圖,第一欄代表這個檔案的型別與許可權,一共有十個字元。當為 d 則是目錄。當為 則是檔案 若是 l 則是鏈結檔案 若是 b 則表示為裝置檔案裡面的可供儲存的介面裝置 若是 c 則表示為裝置檔案裡面的串列埠裝置,例如鍵盤,滑鼠 一次...

Linux之檔案屬性與許可權

chown chown r 帳號名字 檔案目錄 修改檔案擁有者 chmod 改變使用者許可權 chgrp r group1 usr share 改變share這個目錄的所屬組 r就是指share下的所有子檔案都改變所屬組grouadd 使用者組的新增 groupdel 刪除使用者組 goupmod ...