Linux文件和目录权限:chmod、更改所有者和所属组:chown,umask命令,隐藏权限:lsattr/chattr...
文件和目錄權(quán)限chmod:
?我們使用ls -l可以看到文件的詳細(xì)信息,也知道第一列的第一個(gè)符號(hào)(字母)表示文件的類型,在表示文件的類型符號(hào)的后面的九個(gè)符號(hào)則表示的是文件的權(quán)限,這些權(quán)限和文件的所有者和所屬組都有關(guān)系:
文件權(quán)限有三個(gè)屬性:是否可讀用r表示、是否可寫用w表示、是否可執(zhí)行用x表示。
權(quán)限可以用數(shù)字表示,r=4,w=2,x=1,-=0。rwx=(r+w+x)=7,rw-=(r+w+-)=6。
所以一個(gè)權(quán)限可以用數(shù)字這么表示:
chmod命令:
???chmod是change mode的縮寫,mode就是權(quán)限的意思,此命令可以修改權(quán)限,下面我們將a.txt的權(quán)限改為rwx,用數(shù)字表示就是700:
我們會(huì)發(fā)現(xiàn)文件的第一列除了表示文件類型符號(hào),和表示權(quán)限符號(hào)之外還有一個(gè)?.?字符,這個(gè)點(diǎn)?.?表示的意義是此文件受制于selinux防火墻,只有修改配置文件永久關(guān)閉selinux防火墻之后,新創(chuàng)建的文件就不會(huì)帶有這個(gè)?.?了:
? 使用chmod?命令更改目錄權(quán)限的時(shí)候,只會(huì)更改目標(biāo)目錄本身,目標(biāo)目錄下的子目錄權(quán)限不會(huì)隨著更改。chmod -R命令則是可以批量更改目標(biāo)目錄和下目標(biāo)目錄的子目錄權(quán)限,這就是-R選項(xiàng)的作用:
chmod還有更直觀的用法,可以不用數(shù)字表示,可以直接用權(quán)限字符表示,u表示所有者,g表示所屬組,o表示其他用戶:
chmod還有一種用法,chmod a+x?這個(gè)a表示全部,x則是權(quán)限符號(hào),使用此命令能讓此目錄的所有者、所屬組和其他用戶都擁有x權(quán)限:
chmod a-x則效果相反,可以把x命令全部去掉:
? 除此之外還可以使用chmod u-x,chmod g-x,chmod o-x或chmod u+x,chmod +x,chmod o+x。
更改所有者和所屬組chown:
? chown是change owner的縮寫,此命令可以更改文件的所有者和所屬組,passwd文件里可以查看系統(tǒng)有哪些用戶:
更改某個(gè)文件的所有者:
? chown命令同時(shí)更改用戶和所屬組的用法:chown?用戶:組 文件,需要在中間用冒隔開(kāi):
chown命令更改所屬組的用法:chown ?:組 文件,用戶名不寫即可:
chown命令加了-R選項(xiàng)后,目標(biāo)目錄的子目錄和文件的用戶和所屬組都會(huì)隨著目標(biāo)目錄更改:
chgrp是change group的縮寫,此命令可以更改某個(gè)文件所屬組:
umask命令:
? 在創(chuàng)建了文件和目錄后,會(huì)發(fā)現(xiàn)文件的默認(rèn)權(quán)限是644,而目錄默認(rèn)權(quán)限是755,系統(tǒng)有個(gè)概念叫umask,運(yùn)行這個(gè)umask命令能看到用戶的umask值,通過(guò)這個(gè)值就可以確定文件和目錄的默認(rèn)權(quán)限是什么:
? 更改umask值就可以更改文件和目錄的默認(rèn)權(quán)限,更改了umask值就能發(fā)現(xiàn)文件和目錄的默認(rèn)權(quán)限和之前不一樣了:
更改了umask值為0002后(一般看作002),文件的默認(rèn)權(quán)限變成了664,目錄默認(rèn)權(quán)限變成了775。因?yàn)槟夸浭潜仨氂袡?quán)限的,不然無(wú)法進(jìn)入、打開(kāi)目錄,這其中是有規(guī)律可循的。
umask值為偶數(shù)的計(jì)算公式:
777 - umask值?=?目錄的默認(rèn)權(quán)限
666 - umask值?=?文件的默認(rèn)權(quán)限
例如:
umask值為奇數(shù)的計(jì)算公式:
umask值為奇數(shù)的情況要一位一位的減,-?的值為0,不能使用偶數(shù)的計(jì)算方式計(jì)算:
隱藏權(quán)限lsattr/chattr:
? chattr是設(shè)置隱藏權(quán)限的命令,例如把123.txt修改一下:
? 修改完后編輯一下這個(gè)文件,會(huì)發(fā)現(xiàn)有個(gè)紅字提示說(shuō)你正在更改只讀文件。即便是編寫了內(nèi)容想要保存退出或者強(qiáng)制保存退出也是不能成功的:
這時(shí)候查看這個(gè)文件的詳情也會(huì)發(fā)現(xiàn)沒(méi)有寫入權(quán)限:
lsattr命令就是用來(lái)查看這種文件的權(quán)限的:
這個(gè)i權(quán)限不僅不能編輯這個(gè)文件,而且刪除和重命名還有創(chuàng)建也不可以。
減掉i權(quán)限要使用chattr -i命令:
? 除了i權(quán)限之外還有一個(gè)常用的權(quán)限是a權(quán)限,這個(gè)權(quán)限只能追加和創(chuàng)建,不能刪除、重命名還有不能更改文件內(nèi)容:
同樣的-a可以減掉a權(quán)限:
lsattr只能查看目標(biāo)目錄的子目錄,要加-d選項(xiàng)才能查看目標(biāo)目錄本身:
? 使用chattr?命令給一個(gè)目錄加上i權(quán)限的話,那么此目錄下的子目錄和文件都不能刪除和重命名,當(dāng)然創(chuàng)建文件或目錄也不可以,但是里面的文件內(nèi)容可以編輯、追加:
使用chattr?命令給一個(gè)目錄加上a權(quán)限的話,此目錄下的子目錄和文件都不能刪除和重命名,但是創(chuàng)建目錄和文件是可以的,同樣的里面的文件內(nèi)容可以編輯、追加:
lsattr加-R選項(xiàng)可以查看到所有的目錄下的多層子目錄:
lsattr加-a可以看到隱藏文件:
本文轉(zhuǎn)自 ZeroOne01 51CTO博客,原文鏈接:http://blog.51cto.com/zero01/1972123,如需轉(zhuǎn)載請(qǐng)自行聯(lián)系原作者
總結(jié)
以上是生活随笔為你收集整理的Linux文件和目录权限:chmod、更改所有者和所属组:chown,umask命令,隐藏权限:lsattr/chattr...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 向DataGridView中添加新的一行
- 下一篇: linux打印机无法识别usb,ubun