公衆號關注「傑哥的IT之旅」,linux
選擇「 星標 」, 重磅乾貨,第一 時間送達!
來自:Linux迷web
連接:http://r6d.cn/tNnD微信
來自:Linux迷web
連接:http://r6d.cn/tNnD微信
Linux中的Chmod命令用於更改或分配文件和目錄的權限。在Linux/Unix系統中,文件和目錄的可訪問性是由文件全部權和權限決定的。在上一篇文章中,咱們瞭解瞭如何使用chown命令管理文件和目錄的全部權。在本教程中,咱們將介紹chmod命令。網絡
chmod命令(change mode的縮寫)用於管理文件和目錄權限,並肯定誰能夠訪問它們。如今讓咱們深刻了解文件和目錄權限的本質,以及如何修改它們。app
Linux權限
爲了更好地理解chmod命令是如何工做的,咱們該謹慎地研究Linux文件權限模型。編輯器
在Linux中,咱們具備3種類型的文件權限:讀(r),寫(w)和執行(x)權限。這些權限肯定哪些用戶能夠讀取,寫入或執行文件。您可使用文本或八進制(數字)表示法來分配這些權限,咱們將在本教程後面討論。
文件和目錄能夠屬於文件(u),組(g)或其餘(o)的全部者工具
u - 全部人的權限flex
g - 全部組的權限ui
o - 其餘人的權限url
使用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命令,並瞭解了可使用該命令更改文件權限的各類示例。
m
」獲取!
推薦閱讀:
一、
實用!五款新型 Linux 命令行工具
二、
實用!提升 Linux 效率的 30 個命令行經常使用快捷鍵!
三、
Linux 終端下記不住命令的使用方法?這個開源項目幫你解決。
四、
Linux經常使用命令 & 實用命令萬字總結
五、
記住!這些 Linux 命令千萬不要運行!
六、
5分鐘帶你瞭解 Linux 經常使用命令全稱!
七、
Linux 網絡狀態工具 ss 命令使用詳解
八、
如何快速回憶起遺忘的 Linux 命令?
九、
如何在後臺運行Linux命令?
十、
Linux 系統經常使用命令速查手冊
關注微信公衆號「
傑哥的IT之旅」,後臺回覆「
1024」查看更多內容,回覆「
加羣」
備註:地區-職業方向-暱稱 便可加入讀者交流羣。
二、 實用!提升 Linux 效率的 30 個命令行經常使用快捷鍵!
三、 Linux 終端下記不住命令的使用方法?這個開源項目幫你解決。
四、 Linux經常使用命令 & 實用命令萬字總結
五、 記住!這些 Linux 命令千萬不要運行!
六、 5分鐘帶你瞭解 Linux 經常使用命令全稱!
七、 Linux 網絡狀態工具 ss 命令使用詳解
八、 如何快速回憶起遺忘的 Linux 命令?
九、 如何在後臺運行Linux命令?
十、 Linux 系統經常使用命令速查手冊

![]()
點個[在看],是對傑哥最大的支持!
本文分享自微信公衆號 - 傑哥的IT之旅(Jake_Internet)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。