linux權(quán)限設(shè)置命令用ls命令所得到的表示法的格式是類似這樣的:-rwxr-xr-x 。下面解析一下格式所表示的意思。這種表示方法一共有十位: 9 8 7 6 5 4 3 2 1 0 - r w x r - x r - x 第9位表示文件類型,可以為p、d、l、s、c、b和-: p表示命名管道文件 d表示目錄文件 l表示符號(hào)連接文件 -表示普通文件 s表示socket文件 c表示字符設(shè)備文件 b表示塊設(shè)備文件 第8-6位、5-3位、2-0位分別表示文件所有者的權(quán)限,同組用戶的權(quán)限,其他用戶的權(quán)限,其形式為rwx。linux下用chmod(change file modebit)改變一個(gè)文件的權(quán)限一般有兩種方式:1、chmod [ugoa][+-=][rwx] filename這種方法很直觀,u代表?yè)碛姓撸╱ser),g代表組(group),o代表其它用戶(other),a代表所有用戶(all)。+-=代表增加、去除、設(shè)置為相應(yīng)的權(quán)限。rwx分別代表讀(read)、寫(write)、執(zhí)行(exe)。比如chmod a+x filname 表示對(duì)所有用戶增加對(duì)filename的執(zhí)行權(quán)限。2.setUid,setGid如果一個(gè)命令被設(shè)置了SUID,那么這個(gè)命令在執(zhí)行期間,執(zhí)行這個(gè)命令的用戶就具有了這個(gè)命令的屬主的權(quán)限;如果一個(gè)命令被設(shè)置了SGID,那么這個(gè)命令在執(zhí)行期間,執(zhí)行這個(gè)命令的用戶就具有了這個(gè)命令的屬組的權(quán)限.設(shè)置SetUid權(quán)限: chmod 4xxx filename取消SetUid權(quán)限: chmod xxx filename設(shè)置SetGid權(quán)限: chmod 2xxx filename取消SetGid權(quán)限: chmod xxx filename如果執(zhí)行chmod 6xxx filename命令即可同時(shí)為指定文件設(shè)置SetUid和SetGid,執(zhí)行命令chmod 0xxx filename,即可同時(shí)取消指定文件的SetUid和SetGid權(quán)限。
創(chuàng)新互聯(lián)擁有網(wǎng)站維護(hù)技術(shù)和項(xiàng)目管理團(tuán)隊(duì),建立的售前、實(shí)施和售后服務(wù)體系,為客戶提供定制化的網(wǎng)站設(shè)計(jì)制作、網(wǎng)站建設(shè)、網(wǎng)站維護(hù)、德陽(yáng)服務(wù)器托管解決方案。為客戶網(wǎng)站安全和日常運(yùn)維提供整體管家式外包優(yōu)質(zhì)服務(wù)。我們的網(wǎng)站維護(hù)服務(wù)覆蓋集團(tuán)企業(yè)、上市公司、外企網(wǎng)站、商城建設(shè)、政府網(wǎng)站等各類型客戶群體,為全球上1000+企業(yè)提供全方位網(wǎng)站維護(hù)、服務(wù)器維護(hù)解決方案。
例子:
對(duì)于上面的語(yǔ)法 chmod 【{ugoa}{+-=}{rwx}】【文件或目錄】,我們要知道ugoa分別是:u:表示所有者,g:表示所屬組,o:表示其他人,a:表示所有人。而rwx表示的意思如下:
對(duì)于【mode=421】【文件或目錄】,這是我們將權(quán)限用數(shù)字表示,其中 r 表示4,w表示2,x表示1,分別是2的0次方,1次方,2次方。那么我們可以這樣理解:具有 rwx 權(quán)限的數(shù)字就是 7,具有 rw- 權(quán)限的數(shù)字是 6,具有 r-- 權(quán)限的數(shù)字是 4。
示例1:我們賦予 tmp 目錄下的 tmp.log 所有者 x 的權(quán)限;賦予 所屬組 w 權(quán)限,其他人 w 權(quán)限。
將上面例子改為用 數(shù)字來(lái)操作,也就是說(shuō)我們要給 tmp.log賦予的文件權(quán)限是 rwxrw-rw-,用數(shù)字表示是766。
我們還可以遞歸賦予權(quán)限,也就是加上 -R 參數(shù)給指定目錄下的所有文件或目錄賦予指定權(quán)限。
示例2:給 tmp 目錄下所有文件和目錄賦予 776 的權(quán)限
這里我們通過(guò)useradd【用戶名】命令創(chuàng)建用戶,然后通過(guò)passwd【用戶名】輸入密碼,這兩個(gè)命令后面會(huì)將。我們通過(guò)這兩個(gè)命令創(chuàng)建 vae 用戶
然后我們將tmp.log的所有者更改為 vae 用戶:chown vae tmp.log
其中umask 執(zhí)行顯示結(jié)果是 0022,第一個(gè)0表示特殊權(quán)限,后面我們會(huì)單獨(dú)進(jìn)行講解有哪幾種特殊權(quán)限。022表示權(quán)限的掩碼值,我們用7 7 7 減去 0 2 2得到755(是每一位相減),表示的就是下面通過(guò)加上-S輸出的rwxr-xr-x,這個(gè)值用數(shù)字表示就是755.
這個(gè)意思說(shuō)明創(chuàng)建一個(gè)文件的默認(rèn)權(quán)限所有者為rwx,所屬組為rx,其他人為rx。也就是說(shuō)創(chuàng)建一個(gè)新文件默認(rèn)權(quán)限為 rwxr-xr-x,我們創(chuàng)建一個(gè)文件來(lái)驗(yàn)證一下:
我們發(fā)現(xiàn)使用touch命令創(chuàng)建了一個(gè)文件a.txt,然后發(fā)現(xiàn)權(quán)限并不是rwxr-xr-x,而是rw-r--r--。對(duì)比發(fā)現(xiàn)少了三個(gè)x,也就是少了可執(zhí)行權(quán)限。這是為什么呢?
這是因?yàn)樵贚inux系統(tǒng)中,所有新創(chuàng)建的文件都是沒(méi)有可執(zhí)行權(quán)限的。這是出于Linux系統(tǒng)的一種自我保護(hù),因?yàn)轭愃频牟《灸抉R程序都是具有可執(zhí)行權(quán)限的。所以在Linux系統(tǒng)中,新創(chuàng)建的文件是沒(méi)有可執(zhí)行權(quán)限的。
那么我們?nèi)绾卧O(shè)置默認(rèn)權(quán)限呢?比如我們想將新創(chuàng)建的文件權(quán)限設(shè)置為rwxr-xr--,也就是754。我們用777減去754得到023。也就是通過(guò)執(zhí)行 umask 023 來(lái)完成默認(rèn)權(quán)限設(shè)置。
Linux系統(tǒng)中的用戶是分角色的,用戶的角色是由UID和GID來(lái)識(shí)別的(也就是說(shuō)系統(tǒng)是識(shí)別的是用戶的UID、GID,而非用戶用戶名),一個(gè)UID是唯一(系統(tǒng)中唯一如同身份證一樣)用來(lái)標(biāo)識(shí)系統(tǒng)的用戶賬號(hào)(用戶名)。
文件的用戶與用戶組分為超級(jí)管理員,普通用戶和系統(tǒng)用戶。
1)超級(jí)管理員的UID=0,GID=0,也可以這么說(shuō)系統(tǒng)只要是識(shí)別出某個(gè)用戶的UID\GID都為0時(shí),那么這個(gè)用戶系統(tǒng)就認(rèn)為是超級(jí)管理員。
2)普通用戶(管理員添加的),默認(rèn)它的UID\GID是從500-65535,權(quán)限很小,只能操作自己的家目錄中文件及子目錄(注:nobody它的UID\GID是65534)。
3)系統(tǒng)用戶,也稱虛擬用戶,也就是安裝系統(tǒng)時(shí)就默認(rèn)存在的且不可登陸系統(tǒng),它們的UID\GID是1-499。
我們可以通過(guò)cat /etc/passwd命令來(lái)查看所有的用戶信息,例如下圖,第三列是UID,第四列是GID:
創(chuàng)建用戶
useradd user1 創(chuàng)建用戶user1
useradd -e 12/30/2021 user2 創(chuàng)建用戶user2,有效期到2021-12-30
設(shè)置用戶密碼
passwd user1 設(shè)置密碼,有設(shè)置密碼的用戶不能用
這里設(shè)置密碼時(shí)可能會(huì)碰到密碼保護(hù)機(jī)制問(wèn)題,這里需要注釋掉保護(hù)機(jī)制的問(wèn)題
這個(gè)時(shí)候需要在編輯/etc/pam.d/system-auth文件,將其中的password requisite
和password sufficient兩行注釋掉,如下圖:
創(chuàng)建用戶組
groupadd –g 888 users 創(chuàng)建一個(gè)組users,其GID為888
groupadd users 不用g參數(shù),使用默認(rèn)的組ID
命令 gpasswd為組添加用戶
只有root和組管理員能夠改變組的成員:
gpasswd –a user1 users 把 user1加入users組
gpasswd –d user1 users 把 user1退出users組
命令groupmod修改組
groupmod –n user2 user1 修改組名user1為user2
groupdel刪除組
groupdel users 刪除組users
真正從安全性角度上來(lái)考慮的話,是要控制用戶一定執(zhí)行命令的權(quán)限,也就是哪些用戶可以執(zhí)行哪些命令,不可以執(zhí)行哪些命令,因此也就有了sudo這個(gè)應(yīng)用,對(duì)于sudo提權(quán),也就是修改/etc/sudoers的配置文件。
命令名稱:chmod
命令英文原意:change the permissions mode of a file
有兩種角色可以執(zhí)行該命令,一種是 root 用戶,另一種就是文件的所有者。
語(yǔ)法:
大括號(hào)里的內(nèi)容表示只能選一個(gè),其中 u 表示該文件的所有者,g 表示所屬組,o 表示其他人,a 表示所有角色。
比如,給 abc.txt 文件的所屬組加一個(gè)寫的權(quán)限:
也可以同時(shí)做多個(gè)授權(quán),比如給文件所有者加上執(zhí)行權(quán)限,給其他人去掉寫權(quán)限:
還可以用數(shù)字表示權(quán)限。權(quán)限的數(shù)字表示:
如果一個(gè)文件的權(quán)限是 rw-r--r--,那么翻譯成數(shù)字就是 644,反過(guò)來(lái),如果要更改文件的權(quán)限,可以這樣寫:
這樣文件的權(quán)限就改成 rw-r----- 了。
還有一個(gè)選項(xiàng) -R 是遞歸修改權(quán)限,該選項(xiàng)的功能是更改某個(gè)目錄的權(quán)限的同時(shí)更改該目錄下所有的子目錄和文件的權(quán)限。
命令名稱: chown
英文原意:change owner
語(yǔ)法:chown 用戶名 文件
只有管理員賬戶可以更改文件的所屬用戶。
例如:
命令名稱:chgrp
英文原意:change group
語(yǔ)法:chgrp 組名 文件
例如:
命令名稱:umask
使用命令 umask -S 可以查看新建文件或目錄的默認(rèn)權(quán)限。
現(xiàn)在顯示的是新建目錄的默認(rèn)權(quán)限,該目錄的所有者的默認(rèn)權(quán)限是 rwx,所屬組的默認(rèn)權(quán)限是 rx,其他人的默認(rèn)權(quán)限是 rx。為什么說(shuō)這是新建目錄的默認(rèn)權(quán)限而不是新建文件的默認(rèn)權(quán)限,如果你查看新建文件的權(quán)限,會(huì)發(fā)現(xiàn)是 rw-r--r-- ,與新建目錄的權(quán)限 rwxr-xr-x 相比,每種角色的權(quán)限都少了 x。所以說(shuō),只要知道了新建目錄的默認(rèn)權(quán)限,再去掉 x 權(quán)限,就是新建文件的默認(rèn)權(quán)限。
如果直接執(zhí)行 umask 命令,會(huì)顯示一個(gè)數(shù)字。
這個(gè)數(shù)字叫做權(quán)限掩碼,用 777 減去其后三位 022 就得到了每種角色的權(quán)限,即 755。翻譯成字母就是 rwxr-xr-x 。
若想更改新建目錄或文件的默認(rèn)權(quán)限,只需執(zhí)行 umask 權(quán)限掩碼 即可。
例如,我想把新建目錄的默認(rèn)權(quán)限改成 rwxr-r-- ,翻譯成數(shù)字就是 744,再用 777 減去 744 就得到了權(quán)限掩碼 033。
雖然 Linux 系統(tǒng)的目錄或文件的默認(rèn)權(quán)限可以修改,但是 Linux 這樣分配權(quán)限是有一定道理的,最好不要輕易修改。
在 Linux 系統(tǒng)中,賦與一個(gè)(或者是多個(gè))文件的命令是 chmod。如下所示:
$chmod 754 *.c
其中:7代表文件所有者本人的權(quán)限為:可讀(4)、可寫(2)、可執(zhí)行(1); 5 代表同組用戶的權(quán)限為:可讀(4)、可執(zhí)行(1);4 代表其它用戶的權(quán)限為可讀。
在linux中給文件夾賦權(quán)限的步驟如下:
1.首先,咱們用客戶端工具(工具很多,我用的是xshell),用需要建立的文件夾的賬戶登錄系統(tǒng),例如我現(xiàn)在是用的Root用戶。紅色框框內(nèi),寫著root證明,登錄的用戶沒(méi)有問(wèn)題。
2.此時(shí)進(jìn)入到需要新建文件夾的目錄下,例如我們現(xiàn)在要去/u1下面去建立文件夾,則使用命令cd u1即可。如果其他的文件夾:cd u1/out。
3.進(jìn)入需要建立新文件的目錄后完成,直接錄入新建文件命令:mkdir ?fanfan建立后,可以“l(fā)s”下,可以看到建立的目錄存在了。
4.此時(shí)可以查看文件夾的權(quán)限,可以使用ls -la此命令可以看到下屬相關(guān)文件夾的權(quán)限。這樣就解決了在linux中給文件夾賦權(quán)限的問(wèn)題了。
本文題目:linux給命令權(quán)限 linux權(quán)限設(shè)置命令
標(biāo)題網(wǎng)址:http://vcdvsql.cn/article18/hepodp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、全網(wǎng)營(yíng)銷推廣、用戶體驗(yàn)、網(wǎng)站策劃、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)