日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

15 FreeBSD連載:文件的屬性( 三 )


chmod o=u-w a.out :設(shè)置其他用戶的權(quán)限為減去寫權(quán)限的屬主權(quán)限;
權(quán)限755是最常見(jiàn)的文件權(quán)限設(shè)置,這種屬性的文件允許其他用戶可以訪問(wèn)這個(gè)文件,但不可以更改,如果不打算讓其他用戶訪問(wèn)文件,文件的存取權(quán)限可以設(shè)置為700 。文件在創(chuàng)建的時(shí)候,系統(tǒng)使用掩碼來(lái)決定文件的權(quán)限,掩碼的二進(jìn)制對(duì)應(yīng)位為1的,文件屬性的對(duì)應(yīng)位就設(shè)置為0,例如當(dāng)掩碼的八進(jìn)制表示為022時(shí)(二進(jìn)制為000010010),創(chuàng)建的文件權(quán)限就為755(111101101) 。文件掩碼使用umask命令來(lái)設(shè)置,例如使用 “umask 027” 設(shè)置掩碼為027,則創(chuàng)建的文件權(quán)限為750,其他用戶將對(duì)這個(gè)文件沒(méi)有任何權(quán)限 ??梢栽趩?dòng)資源文件或者在登錄類別中設(shè)置中設(shè)置用戶的掩碼 。
目錄需要設(shè)置執(zhí)行位,以允許用戶能使用cd命令進(jìn)入這個(gè)目錄中
當(dāng)一個(gè)文件的權(quán)限設(shè)置完畢之后,在一個(gè)進(jìn)程試圖訪問(wèn)這個(gè)文件時(shí),系統(tǒng)就比較這個(gè)進(jìn)程的屬主和屬組與文件的屬主和屬組,判斷這個(gè)進(jìn)程是否具備訪問(wèn)權(quán)限 。由于每個(gè)進(jìn)程的屬主和屬組標(biāo)識(shí)是由啟動(dòng)這個(gè)進(jìn)程的用戶決定的,因此一個(gè)用戶啟動(dòng)的進(jìn)程就具備其本身對(duì)文件的訪問(wèn)權(quán)限 。
除了讀、寫和執(zhí)行權(quán)限以外,對(duì)于可執(zhí)行的程序還有另外兩個(gè)非常重要的屬性:設(shè)置屬主身份(setuid, Set User ID)權(quán)限和設(shè)置組身份(setgid, Set Group ID)權(quán)限,這兩個(gè)屬性允許某個(gè)程序可以更改自己的進(jìn)程標(biāo)識(shí)為程序文件屬主或組,因而就可以具備該程序文件屬主或?qū)俳M的訪問(wèn)權(quán)限,而不再僅僅是啟動(dòng)進(jìn)程的用戶的訪問(wèn)權(quán)限,這樣就能完成特定的任務(wù) 。很多系統(tǒng)程序,例如su,就是通過(guò)這個(gè)特性來(lái)完成從執(zhí)行進(jìn)程時(shí)的普通用戶身份到root用戶身份的轉(zhuǎn)化的,因此這兩個(gè)屬性對(duì)于系統(tǒng)安全至關(guān)重要 。不是必要的系統(tǒng)程序,不能具備這些屬性 。
可以使用 “chmods file” 或 “chmod g s file” 來(lái)設(shè)置這兩個(gè)屬性,或者使用 “chmod 4755 file” 、 “chmod 2755 file” 八進(jìn)制方式來(lái)設(shè)置setuid或setgid屬性 。
文件的連接和符號(hào)連接
Unix中使用i節(jié)點(diǎn)(i node)來(lái)記錄真實(shí)的物理文件及其位置,文件名只是指向i節(jié)點(diǎn)的一個(gè)連接 。因此每個(gè)文件可以有多個(gè)名字,每個(gè)名字就稱為文件的一個(gè)連接,而同一個(gè)文件的所有連接所指向的i節(jié)點(diǎn)件完全相同 。但在刪除時(shí)只有全部刪除這個(gè)i節(jié)點(diǎn)的全部連接,才能刪除i節(jié)點(diǎn)、即刪除這個(gè)文件本身 。
$ ln l1 l2
$ ls -l l*
-rwxr-xr-x2 userwheel53212 Dec4 12:36 l1
-rwxr-xr-x2 userwheel53212 Dec4 12:36 l2
$
上面的例子使用ln創(chuàng)建了一個(gè)連接,然后在ls的結(jié)果中可以看到第二列的數(shù)字為2,這表示這個(gè)文件有兩個(gè)連接 。這樣的連接可以建立在不同的目錄中,但所有連接所在的目錄必須在同一個(gè)文件系統(tǒng)中,才能使用同樣的i節(jié)點(diǎn) 。由于連接是直接指向標(biāo)識(shí)物理文件的i節(jié)點(diǎn),因此這種連接又稱為硬連接 。
另一種更靈活的連接方式是符號(hào)連接,它沒(méi)有指向物理文件的i節(jié)點(diǎn),而是直接指向目錄樹(shù)上的另一個(gè)入口,那么當(dāng)系統(tǒng)訪問(wèn)這個(gè)文件時(shí),就沿著它指向的目錄樹(shù)的位置去查找具體文件 。這樣就能對(duì)任何文件系統(tǒng)中的文件和目錄建立連接,因此稱為軟連接 。符號(hào)連接可以跨越文件系統(tǒng),靈活性很大,能夠突破物理文件系統(tǒng)的限制維護(hù)目錄樹(shù)的一致性,對(duì)于系統(tǒng)管理和維護(hù)很有用 。但是這種連接方式需要對(duì)目錄樹(shù)進(jìn)行多次查找,增加了文件操作的額外步驟,因此效率較低,因此不應(yīng)該使用多級(jí)連接,及某個(gè)符號(hào)連接指向的目錄還是一個(gè)符號(hào)連接,甚至發(fā)生符號(hào)連接的循環(huán) 。應(yīng)該盡量少用符號(hào)連接,并避免多級(jí)符號(hào)連接及符號(hào)連接的循環(huán) 。

推薦閱讀