Linux文件權限及ACL

文件權限

文件或目錄可存取的身份分為3類,owner/group/others (所屬者/所屬組/其他人) ,所以訪問一個文件或目錄的權限分為三種, 所有者權限,所屬組權限,其他人權限 (通過ll text.log查看)。 在linux系統中常用的權限分為3種 r(read) w(write) x(excute)。

對文件或目錄的權限進行修改時,要用到chmod命令

  • 模式法

    chmod WHO OPT[PER] FILE 修改文件權限  
        WHO:u  g  o  a      
        OPT:+  —  =     
        PER:r  w  x
    例:chomd suer1+w file1       
    
    特殊權限X   只對目錄加x
                對文件:無執行權限,不會增加x權限
                        任意3種人有執行權限,則都加
  • 數字法

    將rwx由二進制轉換為8進制:
    r:4  w:2  x:1
    chmod NUMBER FILE
        --reference a b     將b的權限設置為和a一樣
    例:chmod 762 file1
  • 權限對目錄的意義

    讀:只能查看目錄文件列表,不能訪問,也不能cd(查看,刪除)

    執行:可以cd,不能ls,可以訪問目錄中的文件。執行時基礎權限

    寫權?。号浜蟲權限才生效

新建文件和目錄的默認權限

umask值 可以用來保留在創建文件權限,非特權用戶umask的值為:002;特權用戶 (root)的umask的值為:022。

新建文件(file)的默認權限:666-unmask

新建目錄(dir)的默認權限:777-umask

文件權限(file)所得結果某位存在執行權限(奇數),結果+1

UMASK掩碼:將文件對應的權限位去除

umask       查看
umask #     設定umask值
    umask 022
umask -S    輸出方式顯示
umask -p    輸出可被調用
/etc/bashrc 全局設置
~/.bashrc   用戶設置

特殊權限

  1. 任何一個可執行程序文件能不能啟動為進程,取決發起者 對程序文件是否擁有執行權限
  2. 進程的屬主為發起者,進程的屬組為發起者所屬的組
  3. 進程訪問文件時的權限,取決于進程的發起者
  • SUID(4):作用于文件所屬者,只能放在二進制可執行文件才有意義。

    功能:繼承所有者權限運行該文件。

    chmod u+s file1
    chmod u-S file1
    chmod 4777 file1
  • SGID(2):作用于文件所屬組。放在二進制可執行程序才有意義

    功能:

    1. 任何用戶都將繼承所屬組權限運行該文件。
  • chmod g+s file1/dir1
    chmod g-s file1/dir1
    chmod 2777 file1/dir1
  • Sticky(1):作用于其他人。作用在目錄上才有意義。

    功能:只有自己才能刪除自己的文件。

    chmod o+s dir1
    chmod o-s dir1
    chmod 1777 dir1

    Access Control List

  1. 除了文件的所有者,所屬組和其它人,可以對更多的用戶設置權限

  2. CentOS7 默認創建的xfs和ext4文件系統具有ACL功能,之后的沒有

  3. ACL生效順序:所有者,自定義用戶,自定義組,其他人

  4. 添加ACL之后的文件或目錄的權限后會有“+”標記

  • 關于文件ACL的查看,設置和更改

    getfacl file        查看
    
    setfacl [options] [u/g]:[name]:[rwx] file   設置
                -m 
                -Rm
                -M
                -m 
                -x 
                -X
  • mask掩碼

mask只影響除所有者和other的之外的人和組的最大權限。Mask與用戶的權 限進行邏輯與運算后,變為有限的權限(Effective Permission)

  • mask更改 setfacl -m mask::rwx file

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

(2)
kstg5663294kstg5663294
上一篇 2017-06-01 09:32
下一篇 2017-06-01 13:56

相關推薦

  • Linux 2.6.39-rc3的一個插曲

    2011年4月12日,Linux 2.6.39-rc3發布了,Linus Torvalds寫了一個發布郵件,其中包含了一個長長的為這個版本做過貢獻的人員名單,這個名單中有很多看上去應該是中國人的名字,我挺為他們感到驕傲的(不知道你是否還記得以前本站的”Linux是由誰寫的“)。 不過,沒過一會,發現了一個bug,經過大家的調查(2.6.38版沒有發現這個問題…

    Linux干貨 2016-06-09
  • MBR&GPT分區基本原理

    1、磁盤系統為什么要分區?     ?     優化I/O性能     ?     實現磁盤空間配額限制       &…

    Linux干貨 2016-08-30
  • 題外:自制小linux

    自制小linux 系統 制作環境的概述 首先你的有VMware的虛擬機軟件,其次安裝了centos6/centos7的linux系統 而且你需要寫一個復制相關命令以及依賴庫文件的的腳本(主要是為了省時間,腳本寫法會在后面備注)準備好以上環境,便可以制作一個小linux系統了,具體步驟如下 1)  在虛擬機設置中,在原有基礎上在掛載一個20G大小的硬…

    2017-04-04
  • DNS服務器類型及查詢過程

    什么是DNS   DNS(Domain Name System,域名系統),因特網上作為域名和IP地址相互映射的一個分布式數據庫,能夠使用戶更方便的訪問互聯網,而不用去記住能夠被機器直接讀取的IP數串。通過主機名,最終得到該主機名對應的IP地址的過程叫做域名解析(或主機名解析)。 DNS域名稱   域名系統作為一個層次結構和分布式數據庫,包含各種類型的數據,…

    Linux干貨 2017-02-08
  • 網絡班23期學習宣言

    馬哥Linux運維學院 學習宣言 親愛的小伙伴:        歡迎大家報名馬哥Linux運維網絡學習班,跟隨馬哥學習Linux技術,成就Linux大牛之夢。在這里,我們不僅可以學習到最優秀的技術課程,還可以跟著追夢的小伙伴們一起學習、一起進步。 為了督促大家一直積極認真努力的學習,請各位同學在評論區寫出你的學習宣言?!?/p>

    2016-09-05
  • Linux基礎(四)——用戶管理&grep命令

    1、  復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 cp /etc/skel/ /home/tuser1 –r chmod -R 700 /home/tuser1/ 2、  編輯/etc/group文件,添加組hadoop。 echo "ha…

    Linux干貨 2016-11-08
欧美性久久久久