產(chǎn)品型號:Thinkpad E15
系統(tǒng)版本:centos8
linux文件權(quán)限詳解
[root@xuegod63 ~]# ll /etc/passwd
-rw-r--r--. 1 root root 2053 9月 19 2017 /etc/passwd
文件權(quán)限基本解釋:
- rw- r-- r--. 1 root root 2053 9月 19 2017 /etc/passwd
其中:文件類型,可以為p、d、l、s、c、b和 –
p表示命名管道文件
d表示目錄文件
l表示符號連接文件
-表示普通文件
s表示socket套接口文件,比如我們啟用mysql時,會產(chǎn)生一個mysql.sock文件
c表示字符設(shè)備文件,例: 虛擬控制臺 或tty0
b表示塊設(shè)備文件 例: sda, cdrom
例:
[root@xuegod63 ~]# ll /dev/sda /dev/cdrom /etc/passwd /dev/tty0
lrwxrwxrwx 1 root root 3 9月 19 2017 /dev/cdrom -> sr0
brw-rw---- 1 root disk 8, 0 9月 19 2017 /dev/sda
crw--w---- 1 root tty 4, 0 9月 19 2017 /dev/tty0
-rw-r--r--. 1 root root 2053 9月 19 2017 /etc/passwd 如下效果圖:
權(quán)限說明
對于文件來說:
r:讀 cat
w:寫 vim echo
x:執(zhí)行 運(yùn)行命名或者腳本
對于目錄來說:
r:讀(看到目錄里面有什么) ls
w:在目錄里面建文件,刪除,移動 touch mkdir rm mv cp
x:進(jìn)入 cd
文件擁有者
UGO:所有者--用戶組--其它用戶
所有者: 就是創(chuàng)建文件的用戶,這個用戶擁有對它所創(chuàng)建的文件的一切權(quán)限,所有者可以允許其所在的用戶組可以訪問所有者的文件。
用戶組: 用戶組是具有相同特征用戶的邏輯集合,有時我們需要讓多個用戶具有相同的權(quán)限,比如查看、修改某一個文件的權(quán)限,一種方法是分別對多個用戶進(jìn)行文件訪問授權(quán),如果有10個用戶的話,就需要授權(quán)10次,顯然這種方法不太合理;另一種方法是建立一個組,讓這個組具有查看、修改此文件的權(quán)限,然后將所有需要訪問此文件的用戶放入這個組中,那么所有用戶就具有了和組一樣的權(quán)限。這就是用戶組。
其它用戶:系統(tǒng)內(nèi)的其他所有者用戶就是other用戶類
常見幾種文件權(quán)限組成
- rwx --- ---:文件所有者對文件具有讀取、寫入和執(zhí)行的權(quán)限。
- rwx r-- r--: 文件所有者具有讀、寫與執(zhí)行的權(quán)限,用戶組里用戶及其他用戶則具有讀取的權(quán)限
- rw- rw- r-x:文件所有者與同組用戶對文件具有讀寫的權(quán)限,而其他用戶僅具有讀取和執(zhí)行的權(quán)限。
drwx--x—x: 目錄所有者具有讀寫與進(jìn)入目錄的權(quán)限,其他用戶近能進(jìn)入該目錄,卻無法讀取任何數(shù)據(jù)。
drwx------: 除了目錄所有者具有完整的權(quán)限之外,其他用戶對該目錄完全沒有任何權(quán)限。
舉例如下:
每個用戶都擁有自己的專屬目錄,通常放置/home下
[root@xuegod63 home]# ll /home/
總用量 0
drwx------. 3 user1 user1 78 9月 19 2017 user1
注: [rwx------]表示目錄所有者本身擁有的權(quán)限,其它用戶是無法進(jìn)入的。 root可以。
例2: 你以什么用戶身份登錄,那么你創(chuàng)建的文件或目錄,自動成為該文件的所屬主和組
[root@xuegod63 home]# su -user1
上一次登錄:二 9月 19 12:57:21 CST 2017:0 上
[user1@xuegod63 ~]$
[user1@xuegod63 ~]$ touch a.txt
[user1@xuegod63 ~]$ ll a.txt
-rw-rw-r-- 1 user1 user1 0 5月 8 20:58 a.txt
總結(jié):
文件權(quán)限基本解釋:
- rw- r-- r--. 1 root root 2053 9月 19 2017 /etc/passwd
其中:文件類型,可以為p、d、l、s、c、b和 –
p表示命名管道文件
d表示目錄文件
l表示符號連接文件
-表示普通文件
s表示socket套接口文件,比如我們啟用mysql時,會產(chǎn)生一個mysql.sock文件
c表示字符設(shè)備文件,例: 虛擬控制臺 或tty0
b表示塊設(shè)備文件 例: sda, cdrom