redhat7 文件的權(quán)限-筆記

發(fā)布時(shí)間:2025-02-08
系統(tǒng)運(yùn)維
文件權(quán)限
在linux中一切都是文件,但是每個(gè)文件的類型不盡相同,linux系統(tǒng)使用不同的字符來(lái)加以區(qū)分,常見(jiàn)的字符如下:
字符含義–
普通文件
d
目錄文件
l
鏈接文件
b
塊設(shè)備文件
c
字符設(shè)備文件
p
管道文件
每個(gè)文件都有所有者和所有組,并且有各自的權(quán)限,讀(r)寫(xiě)(w)執(zhí)行(x),對(duì)于文件和目錄rwx含義是不用的
文件:
r 讀取文件內(nèi)容的權(quán)限
w 修改文件內(nèi)容的權(quán)限
x 執(zhí)行文件內(nèi)容的權(quán)限
目錄:
r 查看目錄下文件的權(quán)限
w 穿件、刪除、修改目錄下文件的權(quán)限
r 進(jìn)入目錄的權(quán)限
示例如下:
lrwxrwxrwx. 1 root root 7 feb 7 19:53 bin -> usr/bindr-xr-xr-x. 3 root root 4096 feb 7 12:08 boot文件的特殊權(quán)限
suid
suid是一種對(duì)二進(jìn)制程序進(jìn)行設(shè)置的特殊權(quán)限,可以上二進(jìn)制程序的執(zhí)行者臨時(shí)擁有屬主的權(quán)限(僅對(duì)擁有執(zhí)行權(quán)限的二進(jìn)制程序有效)
命令是chmod u s 文件名,將所有者的權(quán)限由rwx變成rws,其中x變成s表示擁有了suid權(quán)限,如果原本所有者的權(quán)限是rw-就會(huì)變成rws,其中-會(huì)變成大寫(xiě)的s
例如passwd命令:
[root@localhost /]# ll /bin/passwd -rwsr-xr-x. 1 root root 27832 jan 30 2014 /bin/passwdsgid
sgid主要實(shí)現(xiàn)兩種功能:
讓執(zhí)行者臨時(shí)擁有屬組的權(quán)限(對(duì)擁有執(zhí)行權(quán)限的二進(jìn)制程序進(jìn)行設(shè)置)
在某個(gè)目錄中創(chuàng)建的文件自動(dòng)繼承改目錄的用戶組
命令是chmod g s 文件名,將所有組的權(quán)限由rwx變成rws,其中x變成s表示擁有了sgid權(quán)限,如果原本所有組的權(quán)限是rw-就會(huì)變成rws,其中-會(huì)變成大寫(xiě)的s
示例:
創(chuàng)建一個(gè)目錄test,屬主和屬組是test,將目錄的權(quán)限設(shè)置為777,其他用戶都可以在test目錄下創(chuàng)建自己的文件,屬主和屬組都是用戶自己
設(shè)置sgid后,其他用戶在test目錄下創(chuàng)建的文件,屬組將會(huì)變成test
[root@localhost /]# chmod 777 /test[root@localhost /]# ls -l /testdrwxrwxrwx. 2 test test 6 feb 7 20:36 test[root@localhost /]# su -l developer -c touch /test/a.txt[root@localhost /]# chmod g s /test[root@localhost /]# ls -l /testdrwxrwsrwx. 2 test test 6 feb 7 20:36 test[root@localhost /]# su -l developer -c touch /test/b.txt[root@localhost /]# ls -l test/-rw-r--r--. 1 developer developer 0 feb 7 20:37 a.txt-rw-r--r--. 1 developer test 0 feb 7 20:37 b.txtsbit
對(duì)一個(gè)目錄設(shè)置了sbit權(quán)限后,改目錄中的文件只能被其所有者執(zhí)行刪除操作,其他用戶沒(méi)有刪除權(quán)限。
命令是 chmod o t 目錄名 ,文件的其他人權(quán)限部分的x執(zhí)行權(quán)限會(huì)被替換成t或者t,原本有x執(zhí)行權(quán)限則會(huì)寫(xiě)成r,原本沒(méi)有x執(zhí)行權(quán)限則會(huì)被寫(xiě)成t。
例如系統(tǒng)中的/tmp目錄,所有用戶都可以在/tmp目錄下創(chuàng)建文件,但是不能刪除其他用戶創(chuàng)建的文件。
文件的隱藏屬性
chattr命令
chattr命令用于設(shè)置文件的隱藏權(quán)限,格式為“chattr [參數(shù)] 文件名” 。如果想要把某個(gè)隱藏功能添加到文件上,則需要在命令后面追加 " 參數(shù)" ,如果想要把某個(gè)功能移除文件,則需要追加 "-參數(shù)"。命令參數(shù)如下表:
示例:
對(duì)一個(gè)普通文件進(jìn)行操作,創(chuàng)建、覆蓋、追加、刪除都是可以的:
[root@localhost ~]# touch aa.txt[root@localhost ~]# echo hello >aa.txt [root@localhost ~]# echo hello >>aa.txt [root@localhost ~]# rm -f aa.txt對(duì)一個(gè)文件加上隱藏權(quán)限a,只能追加文件,不能覆蓋和刪除文件
[root@localhost ~]# touch bb.txt[root@localhost ~]# chattr a bb.txt [root@localhost ~]# echo hello >bb.txt -bash: bb.txt: operation not permitted[root@localhost ~]# echo hello >>bb.txt [root@localhost ~]# rm -f bb.txt rm: cannot remove ‘bb.txt’: operation not permittedlsattr 命令
lsattr命令用于顯示文件的隱藏權(quán)限,格式為"lsattr [參數(shù)] 文件"。在linux系統(tǒng)中,文件的隱藏權(quán)限必須使用lsattr命令來(lái)查看
[root@localhost ~]# lsattr bb.txt -----a---------- bb.txt[root@localhost ~]# ls -l bb.txt -rw-r--r--. 1 root root 6 feb 10 11:00 bb.txt文件訪問(wèn)控制列表
上面講的一般權(quán)限、特殊權(quán)限、隱藏權(quán)限的一個(gè)共性—權(quán)限是針對(duì)某一類用戶設(shè)置的,如果想對(duì)一個(gè)指定的用戶進(jìn)行單獨(dú)的權(quán)限控制,就需要用到文件的訪問(wèn)控制列表(acl)。給予普通文件或者目錄設(shè)置acl其實(shí)就是針對(duì)指定的用戶或者用戶組設(shè)置文件或者目錄的操作權(quán)限。如果針對(duì)某個(gè)目錄設(shè)置了acl,則目錄中的文件會(huì)繼承其acl;如果對(duì)文件這事了acl,則文件不再繼承其所在目錄的acl。
例如:
使用普通用戶linuxprobe進(jìn)入root用戶的家目錄中,會(huì)提示沒(méi)有權(quán)限
[linuxprobe@localhost ~]$ cd /root-bash: cd: /root: permission denied[linuxprobe@localhost ~]$ setfacl 命令
setfacl 命令用戶管理文件的acl規(guī)則,格式為"setfacl [參數(shù)] 文件名"。文件的acl提供的是在所有者、所有組、其他人的讀、寫(xiě)、執(zhí)行權(quán)限之外的特殊權(quán)限控制,使用setfacl命令可以針對(duì)單一用戶或用戶組、單一文件或目錄來(lái)進(jìn)行讀、寫(xiě)、執(zhí)行權(quán)限的控制。針對(duì)目錄需要使用 -r 參數(shù);針對(duì)文件使用 -m 參數(shù);如果要?jiǎng)h除某一個(gè)文件的acl,則使用 -b 參數(shù)。
示例:
設(shè)置用戶在/root目錄上的權(quán)限,使普通用戶linuxprobe可以進(jìn)入/root目錄:
[root@localhost ~]# setfacl -rm u:linuxprobe:rwx /root[root@localhost ~]# su - linuxprobelast login: mon feb 10 11:10:08 cst 2020 on pts/2[linuxprobe@localhost ~]$ cd /root/[linuxprobe@localhost root]$ lsanaconda-ks.cfg bb.txt initial-setup-ks.cfg刪除acl權(quán)限:
setfacl -b /rootgetfacl 命令
getfacl命令用戶顯示文件上設(shè)置的acl信息,格式為"getfacl 文件名"。
[root@localhost ~]# getfacl /root/getfacl: removing leading \\\'/\\\' from absolute path names# file: root/# owner: root# group: rootuser::r-xuser:linuxprobe:rwxgroup::r-xmask::rwxother::---
上一個(gè):螺旋輸送機(jī)速度控制的幾種方法 了解一下
下一個(gè):65×75×40維卡儀圓模產(chǎn)品簡(jiǎn)介

物流分揀是什么意思,國(guó)際快遞分揀后多久能到
跨境賣(mài)家該如何應(yīng)對(duì)歐盟新稅法以及亞馬遜的最新政策?
地源熱泵的工作原理
青海省承裝修試承試五級(jí)資質(zhì)配置表都有哪些
茶園遮陰樹(shù)
1650顯卡用什么主板(1650顯卡配什么樣的顯示器)
EPI elisa酶聯(lián)免疫試劑盒的保溫方法
Noon.com在沙特和阿聯(lián)酋重點(diǎn)開(kāi)展無(wú)現(xiàn)金支付
美國(guó)港口:霍普韋爾(hopewell)港介紹、霍普韋爾(hopewell)港代碼
意大利6月份有什么節(jié)日(出口意大利的外貿(mào)人請(qǐng)注意)
十八禁 网站在线观看免费视频_2020av天堂网_一 级 黄 色 片免费网站_绝顶高潮合集Videos