之前我們知道如何針對(duì)用戶和用戶組來設(shè)置文件權(quán)限。通常是用三個(gè)八進(jìn)制來設(shè)置權(quán)限的,這里我要說的是,其實(shí)是由四個(gè)八進(jìn)制表示的。其中第一個(gè)八進(jìn)制我們通常是忽略的。第二個(gè)到第四個(gè)是對(duì)應(yīng)于SUID,SGID,sticky-bit。
SUID:設(shè)置了SUID 位的文件被執(zhí)行時(shí),該文件將以所有者的身份運(yùn)行,也就是說無論誰來執(zhí)行這個(gè)文件,他都有文件所有者的特權(quán)。如果所有者是 root 的話,那么執(zhí)行人就有超級(jí)用戶的特權(quán)了
SGID: 設(shè)置了SUID 位的文件被執(zhí)行時(shí),該文件將以具有所屬組的特權(quán)
sticky-bit: sticky 位要求操作系統(tǒng)既是在可執(zhí)行程序退出后,仍要在內(nèi)存中保留該程序的映象。這樣做是為了節(jié)省大型程序的啟動(dòng)時(shí)間。但是會(huì)占用系統(tǒng)資源。該位可以理解為防刪除位. 設(shè)置sticky bit位后,就算用戶對(duì)目錄具有寫權(quán)限,但也只能添加文件而不能刪除文件。
SUID和SGID可以對(duì)文件的權(quán)限進(jìn)行設(shè)置,比如rwx(可讀可寫可執(zhí)行)
我們引入了chmod來修改文件權(quán)限,舉例如下:

當(dāng)我們要修改成user為可寫,group為可寫時(shí),命令如下:
chmod u+w,g+w myfife
那么操作這些標(biāo)志的權(quán)限是什么呢。和文件權(quán)限是一樣的,都是用chmod來修改權(quán)限的。

chmod u+s myfife:為用戶設(shè)置s權(quán)限,具有文件所有者的權(quán)限
chmod g+s Code:為用戶組設(shè)置s權(quán)限,具有用戶組的權(quán)限,可以對(duì)該目錄下的文件執(zhí)行權(quán)利,Code為目錄
chmod o+t myfife:為其他用戶設(shè)置t權(quán)限,說明其他用戶不能對(duì)其進(jìn)行刪除操作

大家有沒有看到myfife文件中的T呢,這是因?yàn)槲覀兘osticky位設(shè)置了權(quán)限,這個(gè)有什么作用呢?就是為了防止刪除。我們有時(shí)候會(huì)遇到A用戶對(duì)其有寫權(quán)限,寫了之后,B用戶覺得那個(gè)文件沒用,就把文件給刪了。這樣的結(jié)果可想而知。
為了避免上述的事情發(fā)生,所以就有粘滯位的引入。就是為了防止other用戶對(duì)其刪除。只有用戶自己可以對(duì)其添加、修改、刪除等操作。
使用chmod 1777 myfife 即可。