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,可以訪問目錄中的文件。執行時基礎權限

    寫權取:配合x權限才生效

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

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
下一篇 2017-06-01

相關推薦

  • iptables練習

    iptables實戰 1.開啟防火墻 systemctl start firewalld 2.清空所有的默認規則,定義自己的規則 iptables -F 查看此時的iptables iptables -nL Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD…

    2017-06-24
  • Linux 第九天: 練習和作業

    Linux 第九天: 練習和作業       編寫腳本/root/bin/systeminfo.sh 顯示當前主機系統信息 包括主機名 ipv4地址 操作系統版本 內核版本 CPU信號 內存大小 硬盤大小 server_ip=`ifconfig|grep'inet\b'|grep -v '…

    Linux干貨 2016-08-15
  • 十個讓你變成糟糕的程序員的行為

    之前本站發表過《優秀程序員的十個習慣》以及《程序員需要具備的基本技能》,那是我們需要去學習和培養的。這里,我們主要討論十個糟糕程序員的特征,主要是需要讓我們去避免和小心的。 1) 情緒化的思維 如果你開始使用不同顏色的眼光來看待這個世界的話,那么你可能會成為一個很糟糕的程序員。情緒化的思維或態度很有可能會把自己變成一個怪物。相信你經??梢钥吹胶芏嗪茉愀獾某绦颉?/p>

    Linux資訊 2015-04-03
  • 持續交付的Mesos與Docker導入篇

    變革這個詞在當今的數字化時代司空見慣,IT技術每過一段時間就會有一起革新,從WEB2.0、虛擬化、云計算、大數據、微架構、DevOps再到今天的容器Docker與Mesos。 Docker的出現方便了應用的測試、部署、與升級,其將各種應用程序和它們所依賴的運行環境打包成標準的Container/Image,進而發布到不同的平臺上運行。Docker的輕量級、快…

    Linux干貨 2016-07-10
  • 第二周-博客

    本文大綱 文件系統層級結構標準 Linux上常見的文件類型 bash的基礎特性 用戶、組和普通權限 一些零散命令的使用 文件系統層級結構標準 FHS是Filesystem Hierarchy Standard(文件系統層次化標準)的縮寫,多數Linux版本采用這種文件組織形式,類似于Windows操作系統中c盤的文件目錄,FHS采用樹形結構組織文件。FHS定…

    Linux干貨 2016-12-07
  • linux用戶與組管理

    一、linux用戶與組管理的基本介紹 1、任何一個用戶想要使用Linux系統都要向管理員申請一個賬號,對這些賬號的管理即是對用戶的管理,所謂組,就是多個賬號的集合。用戶和組管理可以提高用戶的管理效率、工作效率以及系統的安全性,比如將同一個部門的成員放在一個組里并設置權限,這樣可有效的對資源共享,同時可以避免其他部門的人惡意破壞。 2、用戶和組的管理內容一般有…

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