- 相關(guān)推薦
Linux權限管理基本知識大全
Linux系統有什么基本權限,權限管理命令是什么?下面跟yjbys小編一起來(lái)看看吧!
一、基本權限
linux權限機制采用UGO模式。其中 u(user)表示所屬用戶(hù)、g(group)表示所屬組、o(other)表示除了所屬用戶(hù)、所屬組之外的情況。
u、g、o 都有讀(read)、寫(xiě)(write)、執行(excute) 三個(gè)權限,所以UGO模式是三類(lèi)九種基本權限。
用命令 ls -l 可列出文件的權限,第一列輸出明確了后面的輸出(后面一列代表 ugo權限)。第一個(gè)字母對應的關(guān)系:
“-” 普通文件
“d” 目錄
”l“ 符號鏈接
”c“ 字符設備
"b" 塊設備
"s" 套接字
"p" 管道
修改文件或目錄的所屬用戶(hù): chown 文件名 | 目錄名 用戶(hù)
-R 該參數以遞歸的方式修改目錄下所有文件的所屬用戶(hù),參數可以敲 chown --help 查看。
修改文件或目錄的所屬組: chgrp 文件名 | 目錄名 組名
-R 該參數以遞歸的方式修改目錄下的所有文件的所屬組。
命令chmod 用來(lái)修改文件或目錄的權限: chmod -參數 模式 文件 | 目錄
例子: 修改目錄 log下所有文件的權限為700
chmod -R 700 log
注:700的來(lái)歷是 u g o
rwx rwx rwx
111 000 000
關(guān)于 chmod 命令的權限模式除了數字表示,還可以是 u、g、o 、a 加 +、- 來(lái)表示。格式如下:u、g、o分別代表用戶(hù)、屬組和其他,a 就是
all ,可以代替ugo。 +、- 代表增加或刪除對應的權限,r、w、x 代表三種權限,分別是讀、寫(xiě)、執行。
例子:對于目錄 log下的所有文件(已有權限是700)增加所屬組(g)的讀(r)、執行(x)權限。
chmod -R g+rx log
類(lèi)似的命令可能還有很多,這里只是舉幾個(gè)最基本且常用的例子。很多命令用到時(shí),再去查也可以。還可參考《鳥(niǎo)哥的Linux私房菜》。
二、特殊權限
Linux的3個(gè)特殊的權限,分別是setuid、setgid和stick bit。
setuid權限(S):只有用戶(hù)可擁有,出現在執行權限(x)的位置。
setuid權限允許用戶(hù)以其擁有者的權限來(lái)執行可執行文件,即使這個(gè)可執行文件是由其他用戶(hù)運行的。
setgid權限(S):對應于用戶(hù)組,出現在執行權限(x)的位置。
setgid權限允許以同該目錄擁有者所在組相同的有效組權限來(lái)允許可執行文件。但是這個(gè)組和實(shí)際發(fā)起命令的用戶(hù)組不一定相同。
stick bit (t /T):又名粘滯位,只有目錄才有的權限,出現在其他用戶(hù)權限(o)中的執行位置(x)。當一個(gè)目錄設置了粘滯位,只有創(chuàng )建了該目錄的用戶(hù)才能刪除目錄中的文件,但是其他用戶(hù)組和其他用戶(hù)也有寫(xiě)權限。使用 t 或 T來(lái)表示。若沒(méi)有設置執行權限,但是設置了粘滯位,使用 t;若同時(shí)設置了執行權限和粘滯位使用 T。典型的粘滯位使用是 /tmp 目錄,粘滯位屬于一種寫(xiě)保護。
設置特殊權限:
setuid: chmod u+s filename
setgid: chmod g+s directoryname
stick bit: chmod o+t directoryname
用數字表示特殊權限,是在基本權限之上的。濁嘴笨腮說(shuō)不清楚,看例子:
例子:將上面例子中的log日志目錄(已有權限 700)權限設置為755。特殊權限是類(lèi)似 /tmp目錄的 stick bit有效。
特殊權限 基本權限
setuid setgid stick bit user group other
0 0 1 rwx rwx rwx
111 000 000
所以,設置特殊權限(stick bit)的命令應該是:chmod 1755 log
設置特殊權限后,ls -dl 查看該目錄:drwxr-xr-t 2 gg gg 4096 5月 11 19:05 log ( 注意 other 的 x 位是代表特殊權限的字母 t )
取消該特殊權限的命令:chmod 755 log 。如此 stick bit的權限就沒(méi)有了。
再次 ls -dl 查看該目錄: drwxr-xr-x 2 gg gg 4096 5月 11 19:15 log ( 注意最后一位已經(jīng)變?yōu)榇砥胀嘞薜淖帜竫 )
需要注意的是,最前面一位 ”1“ 就是特殊權限位。其他兩個(gè)特殊權限的設置也類(lèi)似。setuid使用不是無(wú)限制的。出于安全目的,只能應用在Linux ELF格式二進(jìn)制文件上,而不能用于腳本文件。
三、高級權限
ACL(Access Control List),訪(fǎng)問(wèn)控制列表是Linux下的的高級權限機制,可實(shí)現對文件、目錄的靈活權限控制。ACL 允許針對不同用戶(hù)、
不同組對同一個(gè)目標文件、目錄進(jìn)行權限設置,而不受UGO限制。
在一個(gè)文件系統上使用ACL需要在掛載文件系統的時(shí)候打開(kāi)ACL功能。而根分區(ROOT)默認掛載的時(shí)候支持ACL。
命令:mount -o acl /掛載路徑
例子:mount -o acl /dev/sdb1 /mnt
查看一個(gè)文件的ACL設置的命令: getfacl file
(針對一個(gè)用戶(hù))為一個(gè)文件設置指定用戶(hù)的權限的命令: setfacl -m u:username:rwx filename
(針對一個(gè)組)為一個(gè)文件設置指定組的權限的命令: setfacl -m g:groupname:r-x filename
刪除一個(gè)ACL設置的命令: setfacl -x u:username filename
【Linux權限管理基本知識】相關(guān)文章:
Linux權限管理基本方法03-04
Linux系統下ftp的管理03-05
企業(yè)與管理基本知識01-22
Linux btrfs文件系統及管理02-26
生產(chǎn)管理的基本知識05-13
酒店管理基本知識培訓02-28
企業(yè)管理基本知識04-04
企業(yè)與管理易懂的基本知識03-10