鄭州好的網(wǎng)站設(shè)計(jì)公司營銷推廣活動策劃方案大全
前言
權(quán)限是什么?
本質(zhì):無非就是能做和不能做什么。
為什么要有權(quán)限呢?
目的:為了控制用戶行為,防止發(fā)生錯(cuò)誤。
1.權(quán)限的理解
在學(xué)習(xí)下面知識之前要先知道的一點(diǎn)是:linux下一切皆文件,對linux操作就是對文件進(jìn)行操作。
權(quán)限=角色+目標(biāo)權(quán)限屬性
角色:誰在操作(用戶身份)
目標(biāo)權(quán)限屬性:操作對象(文件/目錄)本身被設(shè)置了什么樣的訪問規(guī)則。
在linux中角色分為三種:
擁有者:誰創(chuàng)建的這個(gè)文件,也就是這個(gè)文件/目錄的所有者。
所屬組:類似于除擁有者之外還有一個(gè)小組的人共享這個(gè)文件。
other:除擁有者與所屬組之外的用戶。
當(dāng)用戶嘗試訪問一個(gè)文件/目錄時(shí),系統(tǒng)會首先判斷該用戶屬于哪個(gè)“角色”:
是文件的擁有者嗎? → 適用 u 權(quán)限
不是擁有者,但在文件的所屬組里?→ 適用 g?權(quán)限
既不是所有者,也不在所屬組里?→ 適用?
o
?權(quán)限
注意:在centos下,系統(tǒng)只會進(jìn)行一次角色判定,順序是:擁有者,所屬組,other。
目標(biāo)權(quán)限屬性:
在對文件進(jìn)行操作時(shí)最常用無非就是讀寫操作,但是有些是可執(zhí)行程序,還有個(gè)運(yùn)行操作對應(yīng)下面三種操作
r(read):讀內(nèi)容(對于普通文件)/列目錄(對應(yīng)目錄文件使用ls等列出該目錄下的內(nèi)容(文件))
w(write):修改內(nèi)容(普通文件)/在目錄增刪文件。
x(execute):運(yùn)行程序(普通文件)/進(jìn)入目錄(目錄文件)。
?- 代表沒有該權(quán)限
對應(yīng)下面code.c文件的權(quán)限信息為:
擁有者:有讀文件和寫文件的權(quán)限,沒有運(yùn)行該文件的權(quán)限
所屬組:只有讀文件的權(quán)限
other:只有讀文件的權(quán)限
2.如何使用命令修改權(quán)限
2.1 chmod
作用:修改角色對文件的訪問權(quán)限。
-:關(guān)閉權(quán)限
+:打開權(quán)限
chmod u-r code.c # 對擁有者讀該文件的權(quán)限關(guān)閉
格式:chmod + 【角色】+ 【+/-】+ 【訪問權(quán)限】+ 對應(yīng)文件名
了解了上面知識之后來理解下面幾個(gè)知識點(diǎn)。
1.我們能改任何人的權(quán)限嗎?
用戶只能修改自己的文件權(quán)限。
?
2.如果我們要對沒有對應(yīng)文件的權(quán)限的文件進(jìn)行操作會怎么樣?
系統(tǒng)會拒絕讓我們訪問。
?
3.root用戶可以無視權(quán)限對任何文件進(jìn)行操作。
?
4.所有普通文件都有x權(quán)限,是不是所以文件都可以運(yùn)行?
不是的,可執(zhí)行權(quán)限!=文件可以執(zhí)行
只有可運(yùn)行的文件才能執(zhí)行,比如被gcc/g++編譯過的.c/.cpp文件。
2.2 chown
作用:修改文件的擁有者。
在默認(rèn)情況下我們是不能將文件交給別人,想給別人,除非是root(超級用戶)/高權(quán)限,上圖展示是在是root用戶下的操作。
格式: chown + 目標(biāo)角色(用戶)+ 文件名?
3.理解linux多用戶下如何進(jìn)行“隔離”
因?yàn)橛脩糁g除自身可以進(jìn)入自己的目錄,其他角色都不能進(jìn)入(除root)。
問題:
如果root在cqy目錄內(nèi)創(chuàng)建了一個(gè)文件,并將文件的other的權(quán)限全部關(guān)閉,對應(yīng)cqy用戶能對該文件進(jìn)行刪除嗎?
?
可以的,一個(gè)文件能否被刪除與文件本身沒有關(guān)系,與文件所處目錄的 w 權(quán)限有關(guān)。因?yàn)槭窃赾qy目錄下創(chuàng)建的文件,而我們對該文件擁有的權(quán)限全都有。
4.粘滯位
問題:
如果需要兩個(gè)用戶之間要進(jìn)行文件級別的協(xié)作該怎么辦?
1)不能將文件放入個(gè)人賬戶,因?yàn)椴煌脩糁g是不能進(jìn)入對方的工作目錄的。
2)放入共享類文件,并且在該目錄下創(chuàng)建的文件其他用戶沒有權(quán)限進(jìn)行刪除。
在根目錄下有一個(gè)?tem?目錄,可以看到該目錄的下對 other 的權(quán)限是 rwt 這個(gè) t 就是粘滯位,添加了粘滯位的目錄,任何人都可以在共享目錄下創(chuàng)建文件,在該目錄下創(chuàng)建的文件除本人外其他用戶不能進(jìn)行刪除。
注意:
1)共享文件只能創(chuàng)建在根目錄下,根目錄下的文件只有root可以進(jìn)行訪問,其他用戶無法訪問。
2)只能給需要共享的文件添加粘滯位。
?