Linux中的文件和目錄的權限管理

Linux系統通過完善的權限管理來限制每一個用戶對于系統中文檔和目錄的訪問。在Linux系統中,文件和目錄的權限是有些差異的。
一、權限介紹:
如上所示,通過ll命令列出目錄下文件的時候同時也會列出文件的權限,從第二位開始,一直到第九位,即rw-r–r–就是文件的權限描述:其中3位為一組:
第一組:rw-:代表文件的屬主(user)對文件的權限;
第二組:r–:代表文件的屬組(group)對文件的權限:
第三組:r–:代表其他人(other)對文件的權限;
1.1權限分類:
文件的權限又分為三種:
r:讀權限
w:寫權限
x:執行權限
這三種權限對于文件和目錄來說意義也是不一樣的:
對文件:
r:可以通過cat等文檔查看命令查看該文件;
w:可以編輯該文件的內容;
x:可以執行該文件;
對目錄:
r:可以通過ls命令列出目錄下的文件;
w:可以在目錄下新建、刪除、移動文件;
x:可以通過cd命令切換到目錄下;
1.2 修改文件屬主、屬組和權限:
文件屬組,屬組和權限的更改:
chown 屬主:屬組 文件名
-R:遞歸修改文件屬主和屬組
chgrp 屬組 文件名
-R:遞歸修改文件屬組
修改文件的權限通過chmod命令:
其中有兩種修改方法:
1、字符修改法:
其中:
u:屬主
g:屬組
o:其他人
a:所有人
例子:
chmod u+x test:代表給test的屬主加上執行權限;
chmod u=rwx test:代表給test的屬主所有權限;
chmod a=rwx test:所有人對test文件都有讀、寫和執行的權限;
2、數字表示法:
通過八進制來表示讀、寫和執行權限:
r:4
w:2
x:1
例子:
chmod 777 test:代表所有人對test有讀寫和執行權限;
chmod 644 test:代表屬主有讀、執行權限,屬組有讀權限,其他人有讀權限;
二、umask介紹:
反掩碼umask的介紹
創建一個新文件的時候文件的默認權限就是通過去除umask來生成的:
root用戶的反掩碼為0022
普通用戶的反掩碼為0002
其中:
r=4
w=2
x=1
創建一個文件的時候其權限就是rw-rw-rw-去除—-w–w-,所得即為:rw-r–r–
創建一個目錄的時候其權限就是rwxrwxrwx去除—-w–w-,所得即為:rwxr-xr-x
通過umask+反掩碼即可修改反掩碼;
三、文件的特殊權限:
SUID:只作用于文件當用戶在執行一個具有SUID權限的文件的時候,該用戶會臨時取得該文件屬主的權限來執行此文件,常用于系統文件;
如passwd屬于root用戶和root組,但是普通用戶也可以使用該文件來修改自己的密碼,就是因為passwd具有SUID權限:
-rwsr-xr-x. 1 root root 27832 Jun 10 2014 /bin/passwd;其中屬主權限的s位表示passwd具有SUID權限;
SGID:作用于文件和目錄,對文件來說,如果其擁有SGID權限,那么其他用戶就可以用文件擁有者的身份來執行此文件;對目錄來說,主要用于團隊協作;
Sticky:只作用于目錄,在具有Sticy權限的目錄下所有用戶都可以創建文件,但是只有文件的屬主可以刪除自己的文件,其他人沒有刪除別人文件的權限,比如/tmp目錄:
drwxrwxrwt. 20 root root 4096 Apr 1 09:25 /tmp/ ;其中其他人權限的t位表示目錄具有Sticky權限;
修改特殊權限:
特殊權限區分如下:
SUID:4
SGID:2
Sticky:1
通過chmod修改特殊權限:
如:chmod u+s test:表示賦予test文件SUID的權限:其權限變為:-rwSr–r–. 1 root root 0 Apr 1 09:28 test
chmod g+s test:表示賦予testSGID權限:-rwSr-Sr–. 1 root root 0 Apr 1 09:28 test
chmod o+t /test:表示賦予test目錄Sticky權限:drwxr-xr-t. 2 root root 6 Apr 1 09:29 test
四、文件的隱藏權限:
-rw-r–r–. 1 root root 2949458 Mar 31 17:50 access_log
文件的第11位是隱藏權限位,隱藏權限為分為兩種:
i:表示不能刪除、改名、更改文件
a:表示只能追加文件內容
它的設置方法為:
Chattr +i|-i test
Chattr +a|-a test
查看方法lsattr test
五、文件訪問控制列表ACL
可以通過對文件添加ACL來控制不同用戶對文件的訪問,是否開啟通過SELinux來進行控制;
1、查看ACL:
[root@localhost ~]# getfacl access_log

file: access_log

owner: root

group: root

user::rw-
group::r–
other::r—
2、設置ACL,允許wzh對access_log文件具有rwx權限:
[root@localhost ~]# setfacl -m user:wzh:rwx access_log
[root@localhost ~]# getfacl access_log

file: access_log

owner: root

group: root

user::rw-
user:wzh:rwx
group::r–
mask::rwx
other::r–

原創文章,作者:王子豪,如若轉載,請注明出處:http://www.www58058.com/72269

(0)
王子豪王子豪
上一篇 2017-03-31
下一篇 2017-04-01

相關推薦

  • linux文件基本權限講解

    linux文件基本權限講解 Linux系統是一種典型的多用戶系統,不同的用戶處于不同的地位,擁有不同的權限。為了保護系統的安全性,Linux系統對不同的用戶訪問同一文件(包括目錄文件)的權限做了不同的規定。 Linux系統中一切都是文件,文件和目錄的所屬與權限——來分別規定所有者、所有組、其余人的讀,寫,執行權限。 在Linux中我們可以使用ll或者ls –…

    Linux干貨 2016-09-05
  • NET25-第7周作業

    1、創建一個10G分區,并格式為ext4文件系統; (1) 要求其block大小為2048, 預留空間百分比為2, 卷標為MYDATA, 默認掛載屬性包含acl; [root@node1 ~]# fdisk /dev/sdb Device contains neither a valid DOS partition table, nor Sun, SGI o…

    Linux干貨 2017-03-15
  • 圖解Linux終端類型

    個人淺見 歡迎指正

    Linux干貨 2016-10-16
  • ?iptables簡單介紹

    iptables簡單介紹 什么是防火墻? 防火墻是工作在主機或網絡邊緣,能夠對其所匹配到的報文根據事先定義好的規則作出相應處理的組件,可以是軟件,也可以是硬件,還能軟硬結合實現。 UNIX/Linux中對防火墻的實現 早期在openBSD中通過內核中的ipfw實現簡單的數據報過濾功能、后來在Linux 2.2內核中使用ipchains來取代,意為鏈、后來在L…

    Linux干貨 2016-03-31
  • Hadoop實戰實例

     Hadoop 是Google MapReduce的一個Java實現。MapReduce是一種簡化的分布式編程模式,讓程序自動分布到一個由普通機器組成的超大集群上并發執行。就如同java程序員可以不考慮內存泄露一樣, MapReduce的run-time系統會解決輸入數據的分布細節,跨越機器集群的程序執行調度,處理機器…

    Linux干貨 2015-04-13
  • YUM LNMP 安裝 wordpress

    1配置防火墻 Iptables -A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT #允許80端口通過防火墻 iptables-A&…

    Linux干貨 2016-06-22

評論列表(1條)

  • renjin
    renjin 2017-04-05 15:36

    主要總結了linux下的文件及目錄權限的管理,內容寫的很不錯,排版有待加強。

欧美性久久久久