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