Linux中的Chmod命令用于更改或分配文件和目錄的權(quán)限。在Linux/Unix系統(tǒng)中,文件和目錄的可訪問性是由文件所有權(quán)和權(quán)限決定的。在本教程中,我們將介紹chmod命令。
chmod命令(change mode的縮寫)用于管理文件和目錄權(quán)限,并確定誰可以訪問它們?,F(xiàn)在讓我們深入了解文件和目錄權(quán)限的本質(zhì),以及如何修改它們。
Linux權(quán)限
為了更好地理解chmod命令是如何工作的,我們該謹(jǐn)慎地研究Linux文件權(quán)限模型。 在Linux中,我們具有3種類型的文件權(quán)限:讀(r),寫(w)和執(zhí)行(x)權(quán)限。這些權(quán)限確定哪些用戶可以讀取,寫入或執(zhí)行文件。您可以使用文本或八進(jìn)制(數(shù)字)表示法來分配這些權(quán)限,我們將在本教程后面討論。 文件和目錄可以屬于文件(u),組(g)或其他(o)的所有者
u - 所有人的權(quán)限
g - 所有組的權(quán)限
o- 其他人的權(quán)限
使用ls -l命令以長格式的形式查看當(dāng)前目錄下所有可見文件的詳細(xì)屬性。該-l標(biāo)志列出文件的權(quán)限。權(quán)限分為三組:用戶(user)組(group)和其他(others)。 為了更好地理解文件權(quán)限,我們將列出目錄的內(nèi)容,如下所示:
linuxmi@linuxmi:~/www.linuxmi.com$ ls -l
從最左端開始,第一個字符/符號表示文件類型。一個連字符( - ),表示該文件是一個普通文件。符號d表示它是目錄。符號l表示它是符號鏈接。 其余的9個字符分成3個三元組,每個三元組帶有三個符號r(read),w(write)和x(execute)。如前所述,第一部分指向所有者權(quán)限,第二部分指示組權(quán)限,最后一部分指定其他用戶對該文件或目錄具有的權(quán)限。 從輸出中,我們可以看到我們有4個文件和2個目錄。 讓我們查看下第一個文件-rw-rw-r-- 1 linuxmi linuxmi 1087 10月 3 20:23 linuxmi.com.cpp 對于第一個文件,-rw-rw-r–權(quán)限表示該文件的所有者具有讀取和寫入權(quán)限,該組還具有讀取和寫入權(quán)限,而其他用戶僅具有讀取權(quán)限。 再看看目錄的權(quán)限:drwxrwxr-x 3 linuxmi linuxmi 4096 10月 12 13:31 Linux迷 我們可以看到目錄和組的所有者擁有所有權(quán)限(讀取,寫入和執(zhí)行),而其他用戶僅具有讀取和執(zhí)行權(quán)限。 在三重連字符符號-表示沒有權(quán)限已被授予該文件,小組或其他用戶的所有者。
使用chmod命令設(shè)置文件和目錄權(quán)限
在查看了文件權(quán)限以及如何查看它們之后,我們不再關(guān)注如何修改這些權(quán)限。 Linux中的chmod命令用于使用文本(符號)或數(shù)字(八進(jìn)制)表示法更改文件和目錄權(quán)限。它采用以下語法:
$ chmod [選項]模式文件名
只有root用戶或具有sudo特權(quán)的普通用戶才能更改文件或目錄權(quán)限。您可以在命令語法中傳遞多個文件或目錄,并用空格分隔。 現(xiàn)在讓我們深入研究并查看chmod命令的不同示例。
示例1)使用數(shù)字符號分配權(quán)限
使用數(shù)字樣式/符號設(shè)置權(quán)限時,請使用以下語法:
$ sudo chmod [選項]數(shù)字值文件名 數(shù)值可以為3或4個數(shù)字。但是,在大多數(shù)情況下,使用3個數(shù)字。讀取,寫入和執(zhí)行權(quán)限采用以下值:
讀取權(quán)限=> 4
寫權(quán)限=> 2
執(zhí)行權(quán)限=> 1
權(quán)限值的總和,即在三個段中的每一個中的讀取,寫入和執(zhí)行,都占給定文件或目錄的完整權(quán)限。這是什么意思?假設(shè)所有者具有讀取,寫入和執(zhí)行權(quán)限,該組具有讀取和執(zhí)行權(quán)限,而其他用戶僅具有讀取權(quán)限,可以將其細(xì)分如下:
u:rwx = 7 g:rx = 5 o:r– = 4 因此,我們得到的值為754,作為給定文件的文件權(quán)限的數(shù)值。 要將讀取,寫入和執(zhí)行權(quán)限分配給所有者,而僅將讀取權(quán)限分配給組和其他用戶,請運行以下命令:$ chmod 744 www.linuxmi.com.txt 要將所有權(quán)限分配給文件的所有者,請對該組讀取和執(zhí)行權(quán)限,而對其他用戶則完全沒有權(quán)限,請執(zhí)行:$ chmod 750 www.linuxmi.com.txt 要將所有權(quán)限分配給文件的所有者,請對該組具有讀寫權(quán)限,其他用戶請運行以下命令:$ chmod 755 linuxmi.txt
示例2)遞歸分配目錄權(quán)限
為目錄分配權(quán)限時,請使用-R標(biāo)志以遞歸方式為其目錄和子文件夾分配權(quán)限。例如: $ chmod 755 -R 目錄名
$ chmod 755 -R /home/linuxmi/linux
示例3)使用文本表示法指定權(quán)限
分配權(quán)限的另一種方法是使用文本表示法。在此方法中,chmod命令采用標(biāo)志或符號,這些標(biāo)志或符號代表語法中的所有者,組,其他或所有用戶(u,g和o)。 該方法不像以前的方法那樣簡單明了,應(yīng)注意避免分配錯誤的權(quán)限。 這是語法的樣子
$ chmod [選項] [ugoa] [– + =] [r,w,x]文件 讓我們分解一下。 第一組參數(shù)[ugoa]指定權(quán)限將更改的用戶類別
u:用戶
g:組
o:其他
a:全部(包括以上所有內(nèi)容)
如果省略了這個集合,那么默認(rèn)選項是a選項。 第二組選項–操作員選項[– + =]–確定是要添加權(quán)限還是要從用戶類別中刪除權(quán)限。選項刪除
– :該標(biāo)志從指定的用戶中刪除文件權(quán)限。
+ :將權(quán)限添加/添加到指定用戶。
= :為指定的用戶分配不同的權(quán)限,并刪除該用戶段的先前權(quán)限。
示例4)為文件分配讀取權(quán)限
$ chmod o = r 文件名 上面的命令僅將用符號“ o”表示的其他用戶分配給該文件的讀取權(quán)限,并刪除先前分配給' others '段的權(quán)限。取得具有以下權(quán)限的linuxmi.txt
linuxmi@linuxmi:~/www.linuxmi.com$ ls -l linuxmi.txt -rwxrwxr-x 1 linuxmi linuxmi 1087 10月 3 20:23 linuxmi.txt
分配“others (o)”段的讀權(quán)限,請僅運行l(wèi)inuxmi@linuxmi:~/www.linuxmi.com$ sudo chmod o=r linuxmi.txt [sudo] linuxmi 的密碼: linuxmi@linuxmi:~/www.linuxmi.com$ ls -l linuxmi.txt -rwxrwxr-- 1 linuxmi linuxmi 1087 10月 3 20:23 linuxmi.txt
從輸出中,我們可以看到已為“others”段分配了讀取權(quán)限,而同時又失去了執(zhí)行權(quán)限。這意味著=運算符將分配新的權(quán)限,而同時會刪除以前的權(quán)限。
示例5)向文件和組所有者分配執(zhí)行權(quán)限
linuxmi@linuxmi:~/www.linuxmi.com$ sudo chmod ug+x linuxmi.txt linuxmi@linuxmi:~/www.linuxmi.com$ ls -l linuxmi.txt -rwxrwxr-- 1 linuxmi linuxmi 1087 10月 3 20:23 linuxmi.txt 上面的命令將執(zhí)行權(quán)限添加到文件的所有者和組。使用我們的文件,它將變成:
示例6)為文件,組和其他分配不同的權(quán)限
sudo chmod u=rwx,g=rw,o=r filename 上面的命令將所有權(quán)限分配給文件的所有者,將讀寫權(quán)限分配給組,僅將讀取權(quán)限授予其他用戶。
注意:如果在=運算符之后未指定任何權(quán)限,則將刪除該用戶段中的所有權(quán)限。
示例7)刪除其他用戶的所有權(quán)限
$ sudo chmod o= filename sudo chmod o= linuxmi.txt $ sudo chmod o-rwx linuxmi.txt 上面的命令從“其他”用戶段中刪除指定文件的所有權(quán)限。 該命令與以下命令具有相同的作用: $ sudo chmod o-rwx filename
linuxmi@linuxmi:~/www.linuxmi.com$ sudo chmod o= linuxmi.txt linuxmi@linuxmi:~/www.linuxmi.com$ ls -l linuxmi.txt -rwxrw---- 1 linuxmi linuxmi 1087 10月 3 20:23 linuxmi.txt linuxmi@linuxmi:~/www.linuxmi.com$ sudo chmod o-rwx linuxmi.txt linuxmi@linuxmi:~/www.linuxmi.com$ ls -l linuxmi.txt -rwxrw---- 1 linuxmi linuxmi 1087 10月 3 20:23 linuxmi.txt
示例8)使用模板文件分配權(quán)限
分配文件權(quán)限的另一種便捷方法是使用參考文件。在此方法中,您使用--reference=<模板文件> 選項將文件的權(quán)限設(shè)置為與另一個參考文件的權(quán)限相同。使用以下語法
$ sudo chmod –reference=ref_file filename 例如,要將linuxmi.txt的文件權(quán)限設(shè)置為與www.linuxmi.com.py的權(quán)限相同,請運行以下命令:$ sudo chmod --reference=www.linuxmi.com.py linuxmi.txt 模板文件是www.linuxmi.com.py,將linuxmi.txt更改為模板文件相同的權(quán)限。
示例9)僅將執(zhí)行權(quán)限分配給目錄
假設(shè)我們有一個包含文件和子目錄的目錄,并且我們希望僅對目錄分配執(zhí)行權(quán)限,而不接觸文件。因此,這可以通過使用以下chmod命令來實現(xiàn),
$ chmod a+X * 如果您已經(jīng)注意到,我們已經(jīng)使用大寫的X作為執(zhí)行權(quán)限,以上命令將在當(dāng)前工作目錄的所有目錄上設(shè)置執(zhí)行權(quán)限??偨Y(jié)這個話題暫時到此結(jié)束。我們查看了chmod命令,并了解了可以使用該命令更改文件權(quán)限的各種示例。
責(zé)任編輯:xj
原文標(biāo)題:【Linux】修改權(quán)限命令chmod用法示例
文章出處:【微信公眾號:深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
-
Linux
+關(guān)注
關(guān)注
87文章
11420瀏覽量
212361 -
命令
+關(guān)注
關(guān)注
5文章
722瀏覽量
22633 -
修改
+關(guān)注
關(guān)注
0文章
4瀏覽量
8966
原文標(biāo)題:【Linux】修改權(quán)限命令chmod用法示例
文章出處:【微信號:zenRRan,微信公眾號:深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
交換機(jī)常用配置命令
linux權(quán)限管理詳解
用戶與組管理全攻略之確保權(quán)限分配無懈可擊
搞懂Linux權(quán)限管理,提升系統(tǒng)安全性與穩(wěn)定性

Linux lsof命令的基本用法

Linux用戶身份與進(jìn)程權(quán)限詳解

瑞芯微RK3568鴻蒙開發(fā)板OpenHarmony系統(tǒng)修改cfg文件權(quán)限方法

執(zhí)行shell腳本的方式包括什么
嵌入式學(xué)習(xí)-常見的shell命令之其他命令
常見的shell命令之其他命令
嵌入式學(xué)習(xí)-常見的shell命令之文件操作相關(guān)命令
常見的shell命令之文件操作相關(guān)命令
使用mybatis切片實現(xiàn)數(shù)據(jù)權(quán)限控制

鴻蒙開發(fā)組件:DataAbility權(quán)限控制

評論