Linux文件的權限與解析

一,文件的基本權限:

通常,你使用ls -l 命令,就會看到這樣的行:

 Linux文件的權限與解析

讓我們解析一下這些字段代表的意思:

-rw-r–r–. 1 root root 1018 Nov 6 2016 usb_modeswitch.conf

文件類型權限  硬鏈接數 文件所有者 文件所屬組 文件容量  文件最后被修改時間  文件名

既然是要講權限,自然只講文件類型權限了^_^

-rw-r–r–

1)其中,權限組成為:

– : 代表文件類型

-rw: 文件擁有者的權限

r–:文件所屬群組的權限

r–:  其它人的權限

(2)每個權限組又由rwx組成

其中:

r : 代表可讀的權限,代表數字為4

w: 代表可寫的權限,代表數字為2

x : 代表可執行的權限,代表數字為1

舉例:

 Linux文件的權限與解析

補充,上例中代表文件類型,文件類型分為

d :目錄文件

l :符號鏈接(指向另一個文件,類似于window系統中的快捷方式)

s :套接字文件

b :塊設備文件,二進制文件

c :字符設備文件

p :命名管道文件

:普通文件,不屬于以上幾種類型的文件

舉例:

 Linux文件的權限與解析

文件的權限也可以用chmod修改,以下是實例:

 Linux文件的權限與解析

注:文件或目錄的權限不是越大越好,一般按需配給,默認的目錄權限為755,文件權限為644root用戶是644,普通用戶是664,777是最大的權限值,但權限值越大越意味著不安全,至于為什么,慢慢看吧!^_^

二,文件與目錄的默認權限:

前面已經說了默認的目錄權限為755,文件權限為644,那么怎么知道這些默認權限,又怎么改變默認權限呢?

umask是查看文件與目錄默認權限的命令,例如:

 Linux文件的權限與解析

那么什么是默認權限呢?通過例子你就會明白了。

 Linux文件的權限與解析

再切換到root用戶:

 Linux文件的權限與解析

解釋:我們知道文件的默認權限普通用戶文件是664,root用戶是644,即是這樣。那么它們是怎么來的呢?如下所示:

root666-022=644

普通用戶:666-002=664

  我們知道,root用戶的權限很大,所以給文件644的權限就可以了,而普通用戶沒有那么大的權限,所以給了664。644可以寫為-rw-r–r–,664可以寫為-rw-rw-r–。當然如果一個普通用戶創建了一個文件,664代表不僅他自己可以讀寫該文件,與用戶同組的人也可以讀寫,這就方便了實際工作中的需求。假如像root用戶一樣設置成了644,同組的人就不能了哦!

注:你一定很疑惑,默認權限為什么會是四位呢,我們先別急,答案在下面。^_^

現在討論一下怎么修改默認值:

用實例來解釋吧:

Linux文件的權限與解析 

 Linux文件的權限與解析

由上圖可知,將umask改為002,用666-002=664,是正確的。但是,將umask改為003,時,只以為666-003=663是不對的,因為結果是644。這是為什么呢?這是因為相減的并不能簡單的理解為數字,而是應該這樣理解:

666      002 等于 664

rw-rw-rw-      ——-w- 等于   rw-rw-r–

 

     666 003 等于 664

  rw-rw-rw-      ——-wx 等于   rw-rw-r–

那么到底能不能用666相減呢,還是能的。當umask值是偶數時,正常用666減去umask值;當umask值是奇數時,在用666相減的情況下,在相減的奇數位加一,如:

666 – 003 = 663+1= 664

三,文件隱藏屬性

是的,部件還有隱藏屬性哦!^_^

 Linux文件的權限與解析

這便是文件的特殊權限:SUID,SGID,SBIT

下面我將逐一介紹這三者的特征

(1)SUID

當文件擁有者的x權限上出現s時,例如-rwsr-xr-x,此時就被稱為Set UID,簡稱為SUID的特殊權限。SUID的限制與功能:

SUID權限僅對二進位程序有效;

運行者對于該程序需要具有x的可運行權限;

本權限僅在運行該程序的過程中有效;

運行者將具有該程序擁有者的權限。

實例:

 Linux文件的權限與解析

(2)SGID

s標志在文件擁有者的x項目為SUID,那s在群組的x時則稱為Set GID

SUID不同的是,SGID可以針對文件或目錄來配置!如果是對文件來說,SGID有以下功能:

SGID對二進位程序有用;

程序運行者對于該程序來說,需要具備x的權限;

運行者在運行的過程中將會獲得該程序群組的支持。

對目錄的功能:

使用者對于此目錄具有rx的權限時,該使用者能夠進入此目錄;

使用者在此目錄下的有效群組將會變成該目錄的群組;

用途:若使用者在此目錄下具有w的權限(可以創建文件),則使用者所創建的新文件,該新文件的群組與此目錄的群組相同

實例:

Linux文件的權限與解析

(3)SBIT:

SBITSticky Bit目前只針對目錄有效,對于文件已經沒有效果了,其作用有:

當使用者對于此目錄具有w,x權限,亦即具有寫入的權限時;

當使用者在該目錄下創建文件或目錄時,僅有自己與root才有權力刪除該文件。

 Linux文件的權限與解析

(4)用戶權限配置:

前面看到文件權限是四位,我們只講了后三位。那么第一位是什么意思了?其實這就與剛才講的隱藏權限有關。

通常:4代表SUID

    2代表SGID

  1代表SBIT

例如:

 Linux文件的權限與解析

補充 :當我們配置文件隱藏權限時,st都是取代x這個權限的,但是當user, group以及others都沒有x這個可運行的權限時,再賦予st的權限,就會變成大寫的ST

 Linux文件的權限與解析

 

 

 

 

 

 

 


原創文章,作者:xxcj,如若轉載,請注明出處:http://www.www58058.com/83309

(0)
xxcjxxcj
上一篇 2017-07-30 16:36
下一篇 2017-07-30 16:56

相關推薦

  • Http協議三次握手過程

    Http協議三次握手過程   TCP是主機對主機層的傳輸控制協議,提供可靠的連接服務,采用三次握手確認建立一個連接: 位碼即tcp標志位,有6種標示:SYN(synchronous建立聯機) ACK(acknowledgement 確認) PSH(push傳送) FIN(finish結束) RST(reset重置) URG(urgent緊…

    Linux干貨 2016-06-22
  • 基于rsyslog的iptables.log配置

                                                      …

    Linux干貨 2016-01-15
  • Linux上常用文件管理命令

    1、目錄管理類的命令: mkdir, rmdir,tree,cd,pwd,ls mkdir:make directories mkdir [OPTION]… DIRECTORY… -p: 自動按需創建父目錄; -v: verbose,顯示詳細過程; -m MODE:直接給定權限; [root@centos7 ~]# mkdir -pv…

    Linux干貨 2016-11-06
  • 學以致用

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 cp – copy files and directories 復制文件或目錄 使用格式: 單文件復制 cp [OPTION]… [-T] SOURCE DEST 如果DEST不存在,即創建文件并復制源文件數據流; 如果DEST存在,且為非目錄文件時,將覆蓋…

    Linux干貨 2016-10-13
  • 干貨 | 20 行 Python 代碼創建可視化地圖

    當我開始建造Vincent時, 我的一個目的就是使得地圖的建造盡可能合理化. 有一些很棒的python地圖庫-參見Basemap?和?Kartograph能讓地圖更有意思. 我強烈推薦這兩個工具, 因為他們都很好用而且很強大. 我想有更簡單一些的工具,能依靠Vega的力量并且允許簡單的語法點到geoJSON文件,詳細描述一個投影和大小/比列,最后輸出地圖. …

    2017-09-08
  • N22+張zhangzhang+第5周練習作業

    1、顯示當前系統上root、fedora或user1用戶的默認shell; [root@zxn ~]# cat /etc/passwd | grep -E "^root\>" | cut -d: -f7 /bin/bash …

    Linux干貨 2016-09-15
欧美性久久久久