第七章 Centos7-文件權限管理
本節所講內容:
7.1文件的基本權限:r w x (UGO)
7.1.1對於文件與文件夾r w x的不一樣含義
[root@node-1 ~]# ll /etc/passwd
-rw-r--r-- 1 root root 1076 Jan 19 19:40 passwdnode
例:列舉一些文件說明
#ll /dev/sda /bin /etc/passwd /dev/tty0
lrwxrwxrwx. 1 root root 7 May 19 2018 /bin -> usr/bin
brw-rw---- 1 root disk 8, 0 Feb 5 2020 /dev/sda
crw--w---- 1 root tty 4, 0 Feb 5 2020 /dev/tty0
-rw-r--r-- 1 root root 1076 May 19 2018 /etc/passwdsocket
1)對文件來說:
r:讀取內容
w:寫入內容
x:執行
2)對文件夾來說:
r:查看目錄裏有什麼
w:在目錄中刪除、新建、重命名、移動等操做
x:能夠進入目錄ide
7.1.2文件擁有者
UGO:全部者(owner)--用戶組(group)--其它用戶(other)
全部者: 文件全部及建立者
用戶組: 是具備相同權限用戶的邏輯集合,爲了管理方便
其它用戶:除了owner與group外的用戶都包含在內
7.1.3分解認識權限與用戶ui
例2: 你以什麼用戶身份登陸,那麼你建立的文件或目錄,自動成爲該文件的所屬主和組
#su - wangtao
$ pwd
/home/wangtao
$ touch aa.txt
$ ll
-rw-rw-r-- 1 wangtao wangtao 0 Feb 4 16:12 aa.txt繼承
7.1.4 更改文件的屬主和屬組
改變文件的所屬關係用到命令:
chown:能夠用來改變文件(或目錄)的屬主
-R:能夠修改目錄擁有者及屬組,包括目錄下的文件
主要格式以下:
chown :wangtao /opt/password --將/opt/password所屬組修改成wangtao這個組
chown wangtao :wangtao /opt/password --將/opt/password修改成wangtao用戶爲擁有者,所屬組修改成wangtao這個組
chown -R :wangtao /opt --將/opt文件夾所屬組修改成wangtao這個組接口
文件全部者必定能夠寫文件。 就像root能夠對shadow強制寫。 因shadow的擁有者是rootget
7.1.5修改權限
7.1.5.1 使用字符設定
修改權限用的命令:chmod
做用:修改文件,目錄的權限
語法:chmod [對誰操做] [操做符] [賦於什麼權限] 文件名
對誰操做:
u----> 用戶user,表示文件或目錄的全部者
g---->用戶組group,表示文件或目錄所屬的用戶組
o---->其它用戶others
a---->全部用戶all
操做符:
操做符 + #添加某個權限 ;
操做符 - # 減小某個權限 ;
操做符 = #直接給定一個具體權限
權限:r w x
此法是添加或減小權限,也可用數值表示
使用八進制(0-7)數字表示權限法it
7.1.6有三種權限能夠應用:讀取,寫入與執行,這些權限對訪問文件和目錄的影響以下:
權限 對文件的影響 對目錄的影響
r(讀取) 能夠讀取文件的內容 能夠列出目錄的內容(文件名)
w(寫入) 能夠更改文件的內容 能夠建立或刪除目錄中的任意文件
x(執行) 能夠做爲命令執行文件 能夠訪問目錄的內容(取決於目錄中文件的權限)class
7.1.7umask值對權限的影響
文件的默認最大權限:666
文件夾的默認最大權限:777
根據設置的umask值去掉相關的權限,對於umask值爲奇數時,相應位上減1後再用默認最大權限減去相應的值便可
umask值爲偶數用默認最大權限減去相應的值便可
如:umask=033 則算默認文件的權限是:666-(033-011)=666-022就能夠了
umask=044 則算默認文件的權限是:666-(044)=622就能夠了
7.2文件的特殊權限:suid sgid sticky和文件擴展權限ACL
7.2.1 文件的特殊權限:suid sgid sticky
一、SUID(set uid設置用戶ID):限定:只能設置在二進制可執行程序上面。對目錄設置無效
功能:程序運行時的權限從執行者變動成程序全部者的權限
說明:/usr/bin/passwd 具體此權限,這樣普通用戶也能夠修改密碼
二、SGID:限定:既能夠給二進制可執行程序設置,也能夠對目錄設置
功能:在設置了SGID權限的目錄下創建文件時,新建立的文件的所屬組會,繼承上級目錄的所屬組
說明:若是想目錄下新建文件繼承上級目錄權限,設置此權限位
三、Stickybit:粘滯位權限是針對目錄的,對文件無效,也叫防刪除位
限定:只做用於目錄
功能:目錄下建立的文件只有root、文件建立者、目錄全部者才能刪除。
說明:/tmp目錄有此權限位,其目錄下的文件也只有root與owner能夠刪除test
7.2.2 文件擴展權限ACL
擴展ACL :access control list
目的是解決用rwx權限沒法解決的權限需求
查看擴展權限:getfacl 文件名
#getfacl /home/wangtao/aa.txt
getfacl: Removing leading '/' from absolute path names
[root@node-1 ~]# file: home/wangtao/aa.txt
[root@node-1 ~]# owner: wangtao
[root@node-1 ~]# group: wangtao
user::rw-
group::rw-
other::r--
設置擴展權限:setfacl 【參數】 文件名
-d:增長個默認的擴展訪問權限
-m:新建擴展權限
-R:必定要在-m前面,表示目錄下全部文件
-x:去掉單個權限
例1:
[root@node-1 ~]# setfacl -R -m u:lee:rw- testdirectory/ #-R必定要在-m前面,表示目錄下全部文件
[root@node-1 ~]# setfacl -x u:mk /tmp/a.txt # 去掉單個權限
[root@node-1 ~]# setfacl -b /tmp/a.txt # 去掉全部acl權限
例2:
[root@node-1 ~]# mkdir /opt/test
[root@node-1 ~]# setfacl -m d:u:wangtao:rwx /opt/test
[root@node-1 ~]# getfacl /opt/test
getfacl: Removing leading '/' from absolute path names
[root@node-1 ~]# file: opt/test
[root@node-1 ~]# owner: root
[root@node-1 ~]# group: root
user::rwx
group::r-x
other::r-x
default:user::rwx
default:user:wangtao:rwx
default:group::r-x
default:mask::rwx
default:other::r-x
[root@node-1 ~]# touch /opt/test/aa.txt
[root@node-1 ~]# getfacl /opt/test/aa.txt
getfacl: Removing leading '/' from absolute path names
[root@node-1 ~]# file: opt/test/aa.txt
owner: root
group: root
user::rw-
user:wangtao:rwx #effective:rw-
group::r-x #effective:r--
mask::rw-
other::r--
7.3沒法‘刪除’文件之謎--擴展屬性命令:chattr 設置文件屬性參數: a 只能追加內容 ; i 不能被修改若是增長屬性則用:+若是去掉屬性則用:-例:[root@node-1 ~]# chattr +i /opt/passwd 增長不能修改屬性[root@node-1 ~]#chattr -i /opt/passwd 去掉不能修改屬性命令:lsattr 設置文件屬性例:[root@node-1 ~]#lsattr /opt/passwd ----i----------- /opt/passwd