Linux系統(tǒng)在創(chuàng)建文件和目錄時,默認的權(quán)限設(shè)置是不同的:
①文件默認權(quán)限:文件默認權(quán)限為rw-rw-rw,即666
②目錄默認權(quán)限:目錄默認權(quán)限為rwx-rwx-rwx,即777
【2.umask】
umask 就是指定“目前使用者在建立文件或目錄時的默認權(quán)限”。umask命令的用法如下:





從上面的執(zhí)行結(jié)果我們可以看出默認的權(quán)限是文件所有者的權(quán)限為rwx,而用戶組和其它用戶只有rx權(quán)限,沒有w權(quán)限。那么上面的0022是什么意思呢?
請參考下面一段話:http://linux.vbird.org/linux_basic/0220filemanager.php#fileperm
umask 的分數(shù)指的是『該預設(shè)值需要減掉的權(quán)限!』因為 r、w、x 分別是 4、2、1 分,所以囉!也就是說,當要拿掉能寫的權(quán)限,就是輸入 2 分,而如果要拿掉能讀的權(quán)限,也就是 4 分,那麼要拿掉讀與寫的權(quán)限,也就是 6 分,而要拿掉執(zhí)行與寫入的權(quán)限,也就是 3 分,這樣瞭解嗎?請問你, 5 分是什麼?呵呵! 就是讀與執(zhí)行的權(quán)限啦!
如果以上面的例子來說明的話,因為 umask 為 022 ,所以 user 並沒有被拿掉任何權(quán)限,不過 group 與 others 的權(quán)限被拿掉了 2 (也就是 w 這個權(quán)限),那麼當使用者:
建立檔案時:(-rw-rw-rw-) - (-----w--w-) ==> -rw-r--r--
建立目錄時:(drwxrwxrwx) - (d----w--w-) ==> drwxr-xr-x
上面的例子生動的表明了在默認權(quán)限的基礎(chǔ)上“減去”指定權(quán)限(umask中的數(shù)字022),最終的權(quán)限是什么。因為默認的文件,目錄的權(quán)限都是固定的,所以不同的umask設(shè)置會導致當用戶創(chuàng)建文件,目錄后出現(xiàn)不同的訪問權(quán)限。
如果需要組內(nèi)協(xié)同合作,那么我們就必須讓umask命令不要“減去”組內(nèi)成員的w權(quán)限,就是必須設(shè)置為002權(quán)限。
【3.設(shè)置隱藏屬性】
Linux中除了我們看到的9個可見屬性(rwx,rwx,rwx)之外,還有一些屬性是隱藏的,這些屬性通常和系統(tǒng)的安全相關(guān),例如文件為只讀,壓縮文件等。那么如何設(shè)置這些隱藏屬性呢?通過普通的chmod是做不到的啦,所以我們使用chattr命令來設(shè)置默認屬性。
chattr命令最常使用的屬性是a和i,其中a屬性表示文件的內(nèi)容只能增加,不能修改或刪除。這一點對于一些系統(tǒng)日志文件相當有用(試想登陸日志文件怎能修改或刪除呢?),而i屬性則使到該文件為只讀文件。此時即使是文件擁有者具有w也不能修改或刪除該文件,這一點對于系統(tǒng)關(guān)鍵文件相當重要。
注意a屬性和i屬性,a是針對文件的內(nèi)容,而i屬性是針對文件本身。
例子1:為文件增加屬性a

其中+表示增加,如果是-則表示去除,=則表示賦予。這3個操作符的含義和chmod命令的+-=操作符命令相同。
我們發(fā)現(xiàn)當加上a隱藏屬性后,即便是文件創(chuàng)建者和擁有人root,也不能修改,刪除文件的原有內(nèi)容了,只能增加。
例子2:為文件增加屬性i



一旦加上i屬性,則即便是文件的創(chuàng)建者,甚至是root用戶,都無法刪除,那么使用強制刪除呢?
例子3:強制刪除帶有只讀屬性的文件


即便我們使用了強制刪除參數(shù)-f,也無法刪除該文件。所以-i屬性對于重要的系統(tǒng)文件非常有用,可以保護我們誤刪除。
【4.查看隱藏屬性】
既然可以設(shè)置隱藏屬性,那么同樣也可以查看我們設(shè)置的那些隱藏屬性。對應(yīng)的命令就是lsattr


【5.查看文件屬性】
file命令查看文件內(nèi)容的類型,是文本類型ASCII,是二進制文件binary file等。


-------------------------------------------------------------
生活就像打牌,不是要抓一手好牌,而是要盡力打好一手爛牌。