日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > linux >内容正文

linux

不是Linux文件系统的权限,Linux中文件系统的权限管理(普通权限,特殊权限,文件的扩展属性,FACL)...

發(fā)布時(shí)間:2025/3/21 linux 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 不是Linux文件系统的权限,Linux中文件系统的权限管理(普通权限,特殊权限,文件的扩展属性,FACL)... 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

文件系統(tǒng)的權(quán)限管理(DAC體系:自主訪問(wèn)控制體系):

普通權(quán)限

特殊權(quán)限

文件的擴(kuò)展屬性

FACL(文件系統(tǒng)訪問(wèn)控制列表)

安全上下文:

任何在計(jì)算機(jī)中執(zhí)行的任務(wù)都是由進(jìn)程來(lái)實(shí)現(xiàn)的,所以進(jìn)程就有必要訪問(wèn)和使用某些數(shù)據(jù)資源,進(jìn)程和其要操作文件之間的關(guān)系可以叫做安全上下文;

在DAC模型中,定義安全上下文的方式很簡(jiǎn)單:

所有權(quán):

任何啟動(dòng)進(jìn)程的用戶(hù)就是該進(jìn)程的所有者,進(jìn)程的所有者可以變更(需要特定的變更方式如su命令);

任何創(chuàng)建文件的用戶(hù)就是該文件的所有者,文件的所有者是可以變更的;

使用權(quán):

在文件上面定義的對(duì)該文件的特定使用過(guò)濾規(guī)則;

三個(gè)權(quán)限:所有者權(quán)限,所屬組權(quán)限,其他人權(quán)限;

安全上下文的匹配規(guī)則:

當(dāng)某個(gè)進(jìn)程試圖操作某個(gè)文件時(shí),整個(gè)DAC將做如下規(guī)則匹配:

1、判斷進(jìn)程的所有者和文件的所有者是否為同一用戶(hù),如果是,則直接應(yīng)用文件的所有者權(quán)限;

2、如果不是,則進(jìn)一步判斷進(jìn)程的所有者是否為文件的所屬組的成員,如果是,則直接應(yīng)用文件的所屬組的權(quán)限;

3、如果不是,直接應(yīng)用其他人權(quán)限;

文件權(quán)限的構(gòu)成:

使用權(quán):MODE,也可以叫做permission

默認(rèn)有三個(gè)基本權(quán)限:

r:readable,可讀;

w:writeable,可寫(xiě);

x:executable,可執(zhí)行;

文件系統(tǒng)中文件兩大類(lèi)(目錄文件和非目錄文件)

目錄文件:

r:可使用ls目錄獲取其中所包含的所有文件的文件名列表;

w:可在此目錄中進(jìn)行文件名修改(創(chuàng)建、刪除和修改);即可用創(chuàng)建文件名,刪除文件名及修改文件名;

x:可使用ls -l命令來(lái)查看各個(gè)文件的屬性信息,在路徑中引用該目錄(cd /DIR 命令如果有x可執(zhí)行權(quán)限,就可以切換到DIR中,反之不可以);

非目錄文件:

r:可利用cat類(lèi)命令獲取文件中存放的數(shù)據(jù)信息;

w:可修改(添加,修改和刪除)文件中存放的數(shù)據(jù)信息;

x:可以將文件發(fā)起為進(jìn)程;

獲取使用權(quán)和所有權(quán)的相關(guān)信息:

ls -l[d] /PATH/TO/SOMEFILW ? ? ? ? 用來(lái)查看目錄文件或非目錄文件的權(quán)限信息

路徑

rwxr-xr-x:三個(gè)權(quán)限位(屬主/所有者【左三】,屬組/所屬組【中三】,其他用戶(hù)【右三】)

屬主權(quán)限:rwx,此權(quán)限位標(biāo)識(shí)為user,簡(jiǎn)寫(xiě)為u;

屬組權(quán)限:r-x,此權(quán)限位標(biāo)識(shí)為ugroup,簡(jiǎn)寫(xiě)為g;

其他用戶(hù)權(quán)限:r-x,此權(quán)限位標(biāo)識(shí)為other,簡(jiǎn)寫(xiě)為o;

所有的權(quán)限位都可以用all來(lái)標(biāo)識(shí),簡(jiǎn)寫(xiě)為a;

注意:“-”表示在該權(quán)限位上不具備指定權(quán)限;

rwx組合稱(chēng)為“權(quán)限標(biāo)識(shí)三元組”;

數(shù)字權(quán)限標(biāo)識(shí):二進(jìn)制權(quán)限標(biāo)識(shí),在對(duì)應(yīng)的權(quán)限位上有權(quán)限則為1,無(wú)權(quán)限則為0;

--- ? 表示000 ? ? 0

--x ? 表示001 ? ? 1

-w- ? 表示010 ? ? 2

-wx ? 表示011 ? ? 3

r-- ? 表示100 ? ? 4

r-x ? 表示101 ? ? 5

rw- ? 表示110 ? ? 6

rwx ? 表示111 ? ? 7

使用符號(hào)標(biāo)識(shí)權(quán)限和數(shù)字表示權(quán)限的區(qū)別:

1.使用符號(hào)標(biāo)識(shí)法可以只標(biāo)識(shí)某個(gè)特定的權(quán)限位,也可以同時(shí)標(biāo)識(shí)所有的權(quán)限位;

示例:u=rx;ug=rwx;

2.使用數(shù)字標(biāo)識(shí)法只能同時(shí)標(biāo)識(shí)所有權(quán)限位;

示例:755;334; ?7 == 007 ; 75 == 075 ;

修改文件的使用權(quán):

chmod:修改使用權(quán)

作用:change file mode bits

格式:

chmod [OPTION]... MODE[,MODE]... FILE...

chmod [OPTION]... OCTAL-MODE FILE... ? ?八進(jìn)制模式

chmod [OPTION]... --reference=RFILE FILE...

MODE:符號(hào)權(quán)限標(biāo)識(shí)法;

u,g,o,a: 表示權(quán)限位;

+,-,=:表示授權(quán)方式;

+:表示在指定的權(quán)限位上增加指定權(quán)限,如果新增的權(quán)限是已經(jīng)存在的權(quán)限,則結(jié)果相比較授權(quán)之前無(wú)變化;

-:表示在指定的權(quán)限位上撤銷(xiāo)指定權(quán)限,如果被撤銷(xiāo)權(quán)限在原權(quán)限位并不存在,則結(jié)果相比較授權(quán)之前無(wú)變化;

=:表示在指定的權(quán)限位上精確授權(quán),此種授權(quán)方式不考慮該原權(quán)限位原有的權(quán)限設(shè)定;

r,w。x代表具體的權(quán)限;

示例:

# ?chmod u-x,g+rw,o+r txt.user3

命令 ? ? ? ? ? ? ? 文件名

# ?chmod u=r,g=r,o=rwx txt.user3

注意:

chmod ?+|- r|x FILE:在所有的權(quán)限位上增加或撤銷(xiāo)讀或執(zhí)行權(quán)限;

chmod ?+|- w FILE:僅在所有者u權(quán)限位上增加或撤銷(xiāo)讀或執(zhí)行權(quán)限;

注意:對(duì)于文件來(lái)說(shuō),執(zhí)行權(quán)限是非常重要的安全上下文標(biāo)識(shí);因此默認(rèn)情況下,所有的非目錄文件都不應(yīng)該有執(zhí)行權(quán)限;因?yàn)橐坏┓悄夸浘哂辛藞?zhí)行權(quán)限,則意味著該文件可以被執(zhí)行,發(fā)起為進(jìn)程,則可以按需要使用資源。

OCTAL-MODE:八進(jìn)制數(shù)字權(quán)限標(biāo)識(shí)法

示例:# chmod 640 root.txt

--- ? 表示000 ? ? 0

--x ? 表示001 ? ? 1

-w- ? 表示010 ? ? 2

-wx ? 表示011 ? ? 3

r-- ? 表示100 ? ? 4

r-x ? 表示101 ? ? 5

rw- ? 表示110 ? ? 6

rwx ? 表示111 ? ? 7

--reference=RFILE:

示例:# chmod --reference=/etc/shadow root.txt

//參考/etc/shadow文件的權(quán)限位root.txt設(shè)置相同權(quán)限;

常用選項(xiàng):-R,--recursive:遞歸的設(shè)置目標(biāo)文件或目錄的權(quán)限(包括子目錄子文件);

修改文件的所有權(quán)(chown和chgrp):

chown:change file owner and group,修改文件的屬組和屬主

格式:chown [OPTION]... [OWNER][:[GROUP]] FILE...

chown [OPTION]... --reference=RFILE FILE...

示例:

chown user3 test1 ?//代表修改了test1的所有者u;

chown user3: test2 ?//代表修改了test2的所有者u,而且所屬組g也變成了user3的主要組(基本組);

chown :user3 test3 //代表修改了test3的所有組g;

chown user3:myuser test4 //代表修改了test4的所有者u為user3同時(shí)修改所屬組g為myuser;

注意:在使用chown時(shí),特別的,可以使用“.”代替“:”;

常用選項(xiàng):

-R,--reference:遞歸的設(shè)置目標(biāo)文件或目錄的所有權(quán);

注意:對(duì)于文件來(lái)說(shuō),普通用戶(hù)可以修改所有者為自己的文件的使用權(quán),但無(wú)法修改文件的所有權(quán);修改文件所有權(quán)的操作只有root可以完成;

chgrp(不常用):僅僅只能修改所屬組,change group ownership

格式:chgrp [OPTION]... GROUP FILE...

chgrp [OPTION]... --reference=RFILE FILE...

注意:chown和chgrp命令所指定的用戶(hù)和組,既可以是用戶(hù)名和組名,也可以是UID和GID;

mkdir:

-m MODE:在創(chuàng)建目錄時(shí)為其指定權(quán)限;

install命令:

copy files and set attributes,復(fù)制文件并且設(shè)置屬性;

格式:

install [OPTION]... [-T] SOURCE DEST ?:單源復(fù)制,給復(fù)制后的文件增加執(zhí)行權(quán)限;

install [OPTION]... SOURCE... DIRECTORY :多源復(fù)制,給復(fù)制后的文件增加執(zhí)行權(quán)限;

install [OPTION]... -d DIRECTORY... ? :相當(dāng)于mkdir的功能,創(chuàng)建目錄;

常用選項(xiàng):

-g, --group=GROUP

set group ownership, instead of process‘ current group

:設(shè)定目標(biāo)文件的所屬組為指定組,而不是進(jìn)程所有者的主要組;

-m, --mode=MODE

set permission mode (as in chmod), instead of rwxr-xr-x

:設(shè)定目標(biāo)文件的權(quán)限,而不是rwxr-xr-x;

-o, --owner=OWNER

set ownership (super-user only)

:設(shè)定目標(biāo)文件的所有者,僅root可用;

注意:install命令,不能復(fù)制目錄,既不能以目錄為源文件;如果其源文件是一個(gè)目錄,則install命令會(huì)進(jìn)入該目錄,依次復(fù)制其中的所有非目錄文件到目標(biāo)位置。

特殊權(quán)限:

SUID,SGID,STICKY

SUID:SUID僅設(shè)置在可執(zhí)行的文件上。

默認(rèn)情況下,當(dāng)用戶(hù)執(zhí)行此類(lèi)可執(zhí)行文件時(shí),被發(fā)起的進(jìn)程的所有者不是進(jìn)程的發(fā)起者,而是可執(zhí)行文件的所有者,換句話說(shuō):進(jìn)程以文件所有者的身份運(yùn)行;

SUID權(quán)限所顯示的位置:文件的屬主的權(quán)限位中的執(zhí)行權(quán)限位上;如果屬主原本就具有執(zhí)行權(quán)限,則顯示為“s”;如果屬主本來(lái)沒(méi)有執(zhí)行權(quán)限,則顯示為“S(大寫(xiě))”;

管理SUID權(quán)限:

1.符號(hào)標(biāo)識(shí)法:chmod u+s FILE

2.數(shù)字標(biāo)識(shí)法:chmod 4755 DIR ? ("4"表示SUID)

SGID:SGID可設(shè)置在可執(zhí)行文件或目錄的屬組權(quán)限位的執(zhí)行權(quán)限位上。

如果某個(gè)目錄設(shè)置了SGID權(quán)限,而且對(duì)于某些用戶(hù)有寫(xiě)權(quán)限,則所有在此目錄中創(chuàng)建的新文件和目錄的所屬組均為其父目錄的所屬組,而并非進(jìn)程發(fā)起者的主要組。

SGID權(quán)限的顯示位置:文件的屬組權(quán)限位上的執(zhí)行權(quán)限上;如果屬組本來(lái)就有執(zhí)行權(quán)限,則顯示為“s”,否則,就顯示為"S";

管理SGID權(quán)限:

1.符號(hào)標(biāo)識(shí)法:chmod g+s DIR

2.數(shù)字標(biāo)識(shí)法:chmod 2770 DIR(“2”代表SGID)

STICKY:僅設(shè)置在目錄的其他用戶(hù)權(quán)限位的執(zhí)行權(quán)限上。(粘滯位)

如果在某個(gè)目錄上的權(quán)限設(shè)置為多個(gè)用戶(hù)都擁有寫(xiě)權(quán)限,那就意味著凡是擁有寫(xiě)權(quán)限的用戶(hù)都能直接管理該目錄中的所有文件名,包括改名文件及刪除文件名等操作;因此要在這樣的目錄上設(shè)置STICKY特殊權(quán)限;如果此類(lèi)目錄設(shè)置了STICKY,則所有用戶(hù)即便擁有寫(xiě)權(quán)限,也僅能刪除或改名所有者為其自身的文件;

STICKY權(quán)限的顯示位置:在目錄的其他用戶(hù)的權(quán)限位的執(zhí)行權(quán)限上;如果該權(quán)限位本來(lái)有執(zhí)行權(quán)限,則顯示為“t”,否則,顯示為“T”;

管理STICKY權(quán)限:

1.符號(hào)標(biāo)識(shí)法:chmod o+t DIR

2.數(shù)字標(biāo)識(shí)法:chmod 1777 DIR

權(quán)限的遮罩碼:umask

作用:在創(chuàng)建目錄或文件時(shí),被創(chuàng)建出來(lái)的目錄或文件的默認(rèn)權(quán)限上刪除遮罩碼所對(duì)應(yīng)的權(quán)限;

注意:在創(chuàng)建目錄或文件時(shí),默認(rèn)不設(shè)置特殊權(quán)限;

對(duì)于目錄來(lái)說(shuō):默認(rèn)的權(quán)限為:0777-umask

對(duì)于非目錄文件:默認(rèn)的權(quán)限為:0666-umask

umask [OCTAL-MODE] ?查看當(dāng)前用戶(hù)的遮罩碼;加上后面的[OCTAL-MODE]代表設(shè)置用戶(hù)的遮罩碼;(這種修改遮罩碼的方法不是永久的,如果重新登錄則會(huì)恢復(fù)默認(rèn)值,想要永久保存遮罩碼的值除非修改文件)

默認(rèn)設(shè)置遮罩碼的文件:/etc/bashrc

規(guī)則:如果用戶(hù)的UID大于199并且用戶(hù)的用戶(hù)名和主要組的組名相同,則遮罩碼為002,否則遮罩碼為022。

文件的擴(kuò)展屬性:

lsattr:list file attributes on a Linux second extended file system,顯示文件的擴(kuò)展屬性;

格式:lsattr [ -RVadv ] [ files... ?]

chattr:修改文件的擴(kuò)展屬性;

格式:chattr [ -RVf ] [ -v version ] [ mode ] files...

mode可以是:+-=[aAcCdDeEijsStTu]

a:在向文件寫(xiě)數(shù)據(jù)時(shí),只能以附加的方式進(jìn)行寫(xiě)操作;文件的內(nèi)容不能被更改和刪除;一般會(huì)為日志文件設(shè)置此屬性;

A:atime,文件的訪問(wèn)時(shí)間戳控制屬性;對(duì)于并發(fā)訪問(wèn)量較大或者并發(fā)訪問(wèn)頻率較高的文件,應(yīng)該設(shè)置此屬性以降低IO成本;防止IO瓶頸;

c:設(shè)置是否自動(dòng)壓縮之后再存儲(chǔ);

C:是否開(kāi)啟“寫(xiě)時(shí)復(fù)制”;

d:使用dump備份文件系統(tǒng)時(shí),跳過(guò)屬性設(shè)置為d的文件;

D:設(shè)置文件在文件系統(tǒng)中的異步寫(xiě)操作;

i:設(shè)置文件不能被刪除,改名及設(shè)定鏈接關(guān)系;

s:設(shè)置文件的保密性刪除;

u:與s屬性相反,如果此類(lèi)文件被刪除,則在存儲(chǔ)器中會(huì)繼續(xù)保存其內(nèi)容;

FACL:Filesystem Access Control List,文件系統(tǒng)訪問(wèn)控制列表;

想要應(yīng)用此功能,必須要讓文件系統(tǒng)支持

FACL為文件系統(tǒng)的額外賦權(quán)機(jī)制;在原有的u,g,o權(quán)限位之外,讓普通用戶(hù)能夠控制權(quán)限賦予另外的用戶(hù)或組的一種賦權(quán)機(jī)制;

這種機(jī)制在centos或者RHEL7之后的發(fā)行版本中才逐漸成熟;

與FACL相關(guān)的命令:

getfacl:get file access control lists ?獲取查看額外權(quán)限控制列表

格式: getfacl [-aceEsRLPtpndvh] file ...

getfacl [-aceEsRLPtpndvh] -

setfacl:set file access control lists ? 設(shè)置額外權(quán)限控制列表

格式:setfacl [-bkndRLPvh] [{-m|-x} acl_spec] [{-M|-X} acl_file] file ...

setfacl --restore=file

常用選項(xiàng):

-m acl_spec:為指定文件設(shè)置acl_spec;

-x acl_spec:將acl_spec從指定文件上移除;

acl_spec:acl_specification,acl規(guī)格,訪問(wèn)控制列表;

u:USERNAME:MODE

g:USERNAME:MODE

MODE一般是使用符號(hào)權(quán)限標(biāo)識(shí)法標(biāo)識(shí)的權(quán)限;

示例:為文件賦予指定用戶(hù)的額外訪問(wèn)權(quán)限:

setfacl -m u:link:rwx /tmp/temp

撤銷(xiāo)指定文件的額外訪問(wèn)權(quán)限:

setfacl -x u:link /tmp/temp

注意:如果設(shè)置了FACL之后,再修改目標(biāo)文件的使用權(quán)限,你們FACL中設(shè)置的權(quán)限條目可能受到影響而導(dǎo)致授權(quán)失敗;因此,為了保證沒(méi)有干擾,應(yīng)該先調(diào)整目標(biāo)文件或目錄的權(quán)限,再設(shè)置FACL;

本文出自 “陳梁的博客” 博客,謝絕轉(zhuǎn)載!

原文:http://chenliangdeeper.blog.51cto.com/13279176/1980126

總結(jié)

以上是生活随笔為你收集整理的不是Linux文件系统的权限,Linux中文件系统的权限管理(普通权限,特殊权限,文件的扩展属性,FACL)...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。