Linux-文件基本權限及特殊權限詳解

Linux文件基本權限及特殊權限詳解

背景

Linux文件基本權限和特殊權限對于初學者很少煩惱,各種無法理解,所以在學到這一節時,將自己學到的以及自己的理解寫出來以檢查自己對這個部分的掌握情況。

什么是權限

在Linux里一切皆文件,所謂的權限就是用戶對文件(目錄也是以個文件)的操作范圍,對文件的操作包括讀、寫和執行,用戶對文件有不同的權限就能做相應的操作。

目標

熟悉Linux文件的基本權限和特殊權限,明白文件權限后面對應的意義。

用戶組

一個文件有對應三種用戶:文件所有者、文件所屬組、其他用戶。每一種用戶都對應著三種基本權限,包括讀、寫和執行。

所有者:誰創建這個文件就天然是這個文件的所有者,只有uid為0的用戶(默認是root)可以使用chown命令來改變文件所有者。

Linux-文件基本權限及特殊權限詳解

Linux-文件基本權限及特殊權限詳解

所屬組:一般情況下一個新建的文件的所屬組就是創建者的主組。可以通過chgrp命令來改變文件的所屬組。所屬組中的成員會自動繼承組的權限,即所屬組有什么權限,成員就有什么權限,當然acl的用戶除外。

Linux-文件基本權限及特殊權限詳解

其他用戶:包括除了所有者和所屬組成員以外的其他用戶。

文件基礎權限

可以使用 ll 命令來查看文件的詳細信息

Linux-文件基本權限及特殊權限詳解

其中d:表示目錄

      – :表示普通文件

      r:表示讀權限

      w:表示寫權限

      x:表示執行權限

  也可以用數字表示 r=4;w=2;x=1

  第一個rwx位:表示所有者權限

  第二個rwx位:表示所屬組權限

  第三個rwx位:表示其他用戶權限

文件權限的意義

對于不同的文件類型,文件的權限對應不同的意義。

普通文件的r權限表示擁有r權限的用戶可以打開這個文件,w權限表示表示用戶可以修改這個文件的內容,x表示用戶可以執行這個文件。

而目錄文件的rwx權限意義不同于普通文件。

1、目錄文件的r權限表示用戶可以列出目錄里的文件但如果用戶僅有r權限即400,則用戶不可以cd到這個目錄里不可用cat文件,不可以創建文件;能列出目錄里的文件,但文件名字是亂碼。

Linux-文件基本權限及特殊權限詳解

2、w權限表示用戶可以創建文件,但如果用戶只有w權限即200,則用戶不能cd到目錄里,不能cat文件,不能創建文件,不能列出目錄里的文件

Linux-文件基本權限及特殊權限詳解

3、x權限表示用戶可以進入到目錄里,但如果只有x權限即100,目錄里的文件不能列出,不能創建文件,可以cd進入目錄,可cat有權限的文件。

Linux-文件基本權限及特殊權限詳解

4、如果目錄文件有r+x權限  即500,用戶可以進入目錄,列出文件,cat有權限的文件,但不能創建新文件

Linux-文件基本權限及特殊權限詳解

5、如果目錄權限為w+x即300,用戶不能列出目錄里的文件,可以進入目錄,可創建文件,可cat有權限的文件

Linux-文件基本權限及特殊權限詳解

6、如果目錄文件的權限為r+w即600,則用戶可以列出目錄里的文件但是亂碼,不能cd進目錄,不能創建文件,不能cat文件

Linux-文件基本權限及特殊權限詳解

當然這里只是列出了一中用戶類型權限的使用,其他用戶權限的也是一樣的使用方式。

文件特殊權限

文件的特殊權限有三種包括suid(4)、sgid(2)、sticky(1);

suid 4    只能作用于二進制可執行程序上,當執行這個程序時會臨時切換身份為文件所有者身份,典型的就是用戶修改密碼。

Linux-文件基本權限及特殊權限詳解

可見這個文件所有權限都沒有,但是我們可以使用passwd命令來修改這個文件。這是為什么呢?

那是因為/usr/bin/passwd文件有特殊權限s

Linux-文件基本權限及特殊權限詳解

所有者有了s權限后,當用戶執行這個程序時會臨時將用戶身份切換到root身份,而root用戶是不受權限控制的,所以雖然沒有任何權限,用戶也可以修改密碼。

這個權限很危險,比如如果cat有suid權限,則所有用戶可以查看和修改所有文件。

sgid 2    作用于二進制可執行程序上,繼承了此程序所屬組的權限

Linux-文件基本權限及特殊權限詳解

            作用于目錄上,在該目錄下新建文件所屬組繼承目錄的所屬組

Linux-文件基本權限及特殊權限詳解

sticky 1 粘滯位     作用于目錄,該目錄下的文件只能被所有者和root刪除,代表是/tmp目錄

Linux-文件基本權限及特殊權限詳解

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

(0)
657188918657188918
上一篇 2017-07-22 21:01
下一篇 2017-07-22 21:40

相關推薦

  • 第六周

      第6周   1 復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以至少一個空白字符開頭的行的行首加#; cp /etc/rc.d/rc.sysinit ; sed -i 's@^[[:space:]]\+@#@g&#03…

    Linux干貨 2017-02-13
  • DNS and BIND

    DNS and BIND 名稱解析:把一種代號轉換成為另一種代號的功能是應用程序基于某個搜索鍵在指定的數據庫查詢,查詢到對應的鍵以后,對應鍵被找出來的過程!passwd —《nsswith》/etc/nsswith.conf 注意:查詢的時候用到的是UDP的53,主從復制走的是tcp(但是也用到udp) DNS: Domain Name Serv…

    Linux干貨 2016-10-21
  • Linux的哲學思想

    一切皆文件:所有設備在linux都表現為一個文件,比如目錄文件、塊文件、字符文件、設備文件; 用小型,單一用途的程序完成復雜功能:復雜的任務可以通過連接多個簡單的程序實現復雜的功能;配置服務器,只要修改配置文件即可實現;

    Linux干貨 2018-03-04
  • 馬哥教育網絡班20期+第6周課程練習

    1、復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以至少一個空白字符開頭的行的行首加#; cp /etc/rc.d/rc.sysinit /tmp sed 's/^[[:space:]]/#&/' /tmp/rc.sysinit 2、…

    Linux干貨 2016-08-15
  • DNS以及bind使用

    DNS以及域名分發布式數據庫相關知識      一、 DNS相關介紹           1. DNS(Domain Name Service):域名解析服務協議         &nbsp…

    2015-03-17
  • Raspberry pi設置自動撥號,搭建無線路由環境

    Raspberry pi設置自動撥號,搭建無線路由環境 前言  raspberry pi(樹莓派), 是一款針對電腦業余愛好者、教師、小學生以及小型企業等用戶的迷你電腦,由于可以燒錄Linux操作系統,因此可以衍生出各種各樣的使用途徑,諸如控制版,爬蟲機器,個人vps,門禁系統…..本文主要介紹如何在raspberry pi上面完成pppoe撥號上…

    2017-03-28
欧美性久久久久