Linux中chmod權(quán)限設(shè)置方式
設(shè)置基本權(quán)限命令:chmod
1、權(quán)限介紹
Linux中,文件和目錄的權(quán)限由三個部分構(gòu)成:所有者(user)、所屬組(group)和其他用戶(others)。
每個用戶組有讀?。╮)、寫入(w)和執(zhí)行(x)的權(quán)限。文件和目錄的權(quán)限可以使用 ls -l
命令查看。
chmod命令語法:
chmod [選項] [模式] 文件或目錄
在 Linux 中,可以使用以下命令設(shè)置文件或目錄的權(quán)限:
chmod
命令:用于修改文件或目錄的權(quán)限。常用的權(quán)限模式包括數(shù)字模式、符號模式和符號模式的簡略寫法。chown
命令:用于修改文件或目錄的所有者和所屬組??梢詫⑽募蚰夸浀乃袡?quán)從一個用戶轉(zhuǎn)移到另一個用戶。常用的格式為chown user:group file.txt
,其中user
是所有者的用戶名,group
是所屬組的組名。chgrp
命令:用于修改文件或目錄的所屬組。可以將文件或目錄的所屬組從一個組轉(zhuǎn)移到另一個組。常用的格式為chgrp group file.txt
,其中group
是所屬組的組名。
2、chmod命令常見用法和示例
r
:讀取權(quán)限,可以查看文件內(nèi)容或列出目錄中的文件列表。w
:寫入權(quán)限,可以修改文件內(nèi)容或創(chuàng)建、刪除文件。x
:執(zhí)行權(quán)限,對于文件表示可執(zhí)行文件,對于目錄表示可以進入該目錄。s
:設(shè)置了 SUID 或 SGID 權(quán)限,用于特殊權(quán)限設(shè)置。當文件被執(zhí)行時,以文件所有者或所屬組的身份運行。t
:設(shè)置粘貼位權(quán)限,用于目錄。只有目錄所有者才能刪除或重命名此目錄中的文件。
數(shù)字模式(八進制):
使用數(shù)字來表示權(quán)限,每個權(quán)限用三位數(shù)字表示。其中,每一位的含義如下:
- 4:讀取權(quán)限(r)
- 2:寫入權(quán)限(w)
- 1:執(zhí)行權(quán)限(x)
將所有者、所屬組和其他用戶的權(quán)限分別加起來,形成一個三位數(shù)。
符號模式:
使用符號來表示權(quán)限的增加或減少。符號模式包括以下符號:
+
:添加權(quán)限-
:移除權(quán)限=
:設(shè)置精確權(quán)限
可以結(jié)合以下字符來表示權(quán)限:
r
:讀取權(quán)限w
:寫入權(quán)限x
:執(zhí)行權(quán)限u
:所有者g
:所屬組o
:其他用戶a
:所有用戶
符號模式的簡略寫法:
- 使用 u、g、o 和 a 分別表示所有者、所屬組、其他用戶和所有用戶。
- 使用 +、- 和 = 來添加、移除和設(shè)置權(quán)限。
- 使用 r、w 和 x 來表示讀取、寫入和執(zhí)行權(quán)限。
- 例如,chmod u=rw,go=r file.txt 將文件的所有者設(shè)置為讀寫權(quán)限,所屬組和其他用戶設(shè)置為只讀權(quán)限。
3、文件權(quán)限詳解
以下是ls -l 輸出定義:
root@VM-12-3-ubuntu:~# ls -l 1.txt -rw-r--r-- 1 root root 0 Jan 29 14:27 1.txt root@VM-12-3-ubuntu:~# 第一個字符 - 表示這是一個普通文件。 rw- 表示所有者(root)具有讀寫權(quán)限。 r-- 表示所屬組(root)具有讀權(quán)限。 r-- 表示其他人具有讀權(quán)限。 1: 這是鏈接數(shù),表示指向該文件的硬鏈接數(shù)量。 root: 這是所有者的用戶名。 root: 這是所屬組的組名。 0: 這是文件的大?。ㄒ宰止?jié)為單位)。 Jan 29 14:27: 這是文件的最后修改日期。 1.txt: 這是文件的名稱。
如果使用普通用戶去編輯這個文件,則會顯示權(quán)限不足,如下
[root@test1 ~]# touch test.txt [root@test1 ~]# ls -l test.txt -rw-r--r--. 1 root root 0 Jan 19 09:49 test.txt [root@test1 ~]# chmod ugo+r test.txt [root@test1 ~]# ls -l test.txt -rw-r--r--. 1 root root 0 Jan 19 09:49 test.txt [root@test1 ~]# chmod u+rwx test.txt [root@test1 ~]# ls -l test.txt -rwxr--r--. 1 root root 0 Jan 19 09:49 test.txt [root@test1 ~]#
4、chmod通過字符添加權(quán)限
以下是常用的字符表示法:
r
表示讀取權(quán)限w
表示寫入權(quán)限x
表示執(zhí)行權(quán)限
在這些字母之前,你可以使用以下字母中的一個來指定要添加權(quán)限的用戶組:
u
表示文件所有者g
表示文件所屬組o
表示其他用戶a
表示所有用戶
例如:
4.1、將文件1.txt的所有者和所屬組添加執(zhí)行權(quán)限,如下權(quán)限前后變化
root@VM-12-3-ubuntu:~# ls -l 1.txt -rw-r--r-- 1 root root 0 Jan 29 14:27 1.txt root@VM-12-3-ubuntu:~# chmod u+x,g+x 1.txt root@VM-12-3-ubuntu:~# ls -l 1.txt -rwxr-xr-- 1 root root 0 Jan 29 14:27 1.txt root@VM-12-3-ubuntu:~#
4.2、將所有用戶的讀取、寫入和執(zhí)行權(quán)限添加到目錄test_dir中
root@VM-12-3-ubuntu:~# ls -l total 8 -rwxr-xr-- 1 root root 0 Jan 29 14:27 1.txt drwx------ 4 root root 4096 Nov 14 22:47 snap drwxr-xr-x 2 root root 4096 Jan 30 10:00 test_dir #a+rwx 表示將所有用戶的讀取、寫入和執(zhí)行權(quán)限添加到目錄中 root@VM-12-3-ubuntu:~# chmod a+rwx test_dir root@VM-12-3-ubuntu:~# ls -l total 8 -rwxr-xr-- 1 root root 0 Jan 29 14:27 1.txt drwx------ 4 root root 4096 Nov 14 22:47 snap drwxrwxrwx 2 root root 4096 Jan 30 10:00 test_dir root@VM-12-3-ubuntu:~#
4.3、將所有用戶的寫權(quán)限添加到目錄test_dir中,并遞歸地更改其所有子目錄和文件的權(quán)限
root@VM-12-3-ubuntu:~# ls -l total 8 -rwxr-xr-- 1 root root 0 Jan 29 14:27 1.txt drwx------ 4 root root 4096 Nov 14 22:47 snap drwxrwxrwx 2 root root 4096 Jan 30 10:00 test_dir #在這個命令中,-R 參數(shù)表示遞歸地更改目錄及其所有子目錄和文件的權(quán)限。a+w 表示將所有用戶的寫權(quán)限都添加到了目錄及其所有子目錄和文件上 root@VM-12-3-ubuntu:~# chmod -R a+w test_dir root@VM-12-3-ubuntu:~# ls -l total 8 -rwxr-xr-- 1 root root 0 Jan 29 14:27 1.txt drwx------ 4 root root 4096 Nov 14 22:47 snap drwxrwxrwx 2 root root 4096 Jan 30 10:00 test_dir root@VM-12-3-ubuntu:~#
4.4、將文件所有者和所屬組的只讀權(quán)限添加到test.txt 文件中
#root用戶默認創(chuàng)建文件的權(quán)限就是所有者和所屬組只讀權(quán)限 root@VM-12-3-ubuntu:~# touch test.txt root@VM-12-3-ubuntu:~# ls -l test.txt -rw-r--r-- 1 root root 0 Jan 30 11:00 test.txt #ug+r 表示將文件所有者和所屬組的讀取權(quán)限添加到了文件上 root@VM-12-3-ubuntu:~# chmod ug+r test.txt root@VM-12-3-ubuntu:~# ls -l test.txt -rw-r--r-- 1 root root 0 Jan 30 11:00 test.txt root@VM-12-3-ubuntu:~#
4.5、將文件所有者和其他用戶執(zhí)行權(quán)限添加到test.txt文件中,而不影響其所屬組的權(quán)限
root@VM-12-3-ubuntu:~# ls -l test.txt -rw-r--r-- 1 root root 0 Jan 30 11:16 test.txt #uo+x 表示將文件所有者和其他用戶的執(zhí)行權(quán)限添加到了文件上,而不影響其所屬組的權(quán)限 root@VM-12-3-ubuntu:~# chmod uo+x test.txt root@VM-12-3-ubuntu:~# ls -l test.txt -rwxr--r-x 1 root root 0 Jan 30 11:16 test.txt root@VM-12-3-ubuntu:~#
5、chmod以數(shù)字添加權(quán)限
- 4:讀權(quán)限,表示可以讀取文件內(nèi)容或查看目錄中的文件列表。
- 2:寫權(quán)限,表示可以修改文件內(nèi)容或在目錄中創(chuàng)建、刪除文件。
- 1:執(zhí)行權(quán)限,對于文件來說表示可以執(zhí)行,對于目錄來說表示可以進入該目錄。
這些數(shù)字可以通過相加來表示不同的權(quán)限組合,例如:
- 7:表示擁有讀、寫和執(zhí)行權(quán)限(4 + 2 + 1)。
- 6:表示擁有讀和寫權(quán)限,但沒有執(zhí)行權(quán)限(4 + 2)。
- 5:表示擁有讀和執(zhí)行權(quán)限,但沒有寫權(quán)限(4 + 1)。
- 4:表示只有讀權(quán)限,沒有寫和執(zhí)行權(quán)限。
常用添加數(shù)字權(quán)限例子:
5.1、將文件所有者的讀、寫和執(zhí)行權(quán)限加到test.txt文件中
root@VM-12-3-ubuntu:~# ls -l test.txt -rw-r--r-- 1 root root 0 Jan 31 08:43 test.txt # 700 表示文件所有者獲得讀、寫和執(zhí)行權(quán)限,而其它用戶沒有任何權(quán)限 root@VM-12-3-ubuntu:~# chmod 700 test.txt root@VM-12-3-ubuntu:~# ls -l test.txt -rwx------ 1 root root 0 Jan 31 08:43 test.txt root@VM-12-3-ubuntu:~#
5.2、將文件所有者的讀和寫權(quán)限,所屬組的讀權(quán)限,其他用戶的讀權(quán)限添加到test.txt文件中
#一開始的權(quán)限是700 root@VM-12-3-ubuntu:~# ls -l test.txt -rwx------ 1 root root 0 Jan 31 08:43 test.txt # 644 表示文件所有者獲得讀和寫權(quán)限,所屬組和其他用戶獲得只讀權(quán)限 root@VM-12-3-ubuntu:~# chmod 644 test.txt root@VM-12-3-ubuntu:~# ls -l test.txt -rw-r--r-- 1 root root 0 Jan 31 08:43 test.txt root@VM-12-3-ubuntu:~#
5.3、將目錄 test_dir
的所有者的讀、寫和執(zhí)行權(quán)限,所屬組的讀和執(zhí)行權(quán)限,其他用戶的執(zhí)行權(quán)限添加到了目錄上
#開始的權(quán)限是:文件所有者和所屬組的讀、寫和執(zhí)行權(quán)限都添加到了目錄及其所有子目錄和文件上 root@VM-12-3-ubuntu:~# ls -l total 8 drwxrwxrwx 2 root root 4096 Jan 30 10:00 test_dir #現(xiàn)在的權(quán)限是:750 表示文件所有者獲得讀、寫和執(zhí)行權(quán)限,所屬組獲得讀和執(zhí)行權(quán)限,其他用戶獲取執(zhí)行權(quán)限 root@VM-12-3-ubuntu:~# chmod 750 test_dir root@VM-12-3-ubuntu:~# ls -l total 8 drwxr-x--- 2 root root 4096 Jan 30 10:00 test_dir root@VM-12-3-ubuntu:~#
5.4、使文件所有者具有讀、寫和執(zhí)行權(quán)限,而所屬組和其他用戶只有讀和執(zhí)行權(quán)限
root@VM-12-3-ubuntu:~# ls -l test.txt -rw-r--r-- 1 root root 0 Jan 31 08:43 test.txt # 755 表示文件所有者具有讀、寫和執(zhí)行權(quán)限,而所屬組和其他用戶只有讀和執(zhí)行權(quán)限 root@VM-12-3-ubuntu:~# chmod 755 test.txt root@VM-12-3-ubuntu:~# ls -l test.txt -rwxr-xr-x 1 root root 0 Jan 31 08:43 test.txt root@VM-12-3-ubuntu:~#
5.5、使文件所有者具有讀和寫權(quán)限,所屬組具有讀權(quán)限,其他用戶沒有任何權(quán)限
root@VM-12-3-ubuntu:~# ls -l test.txt -rw-r--r-- 1 root root 0 Jan 31 10:05 test.txt # 640 表示使文件所有者具有讀和寫權(quán)限,所屬組具有讀權(quán)限,其他用戶沒有任何權(quán)限 root@VM-12-3-ubuntu:~# chmod 640 test.txt root@VM-12-3-ubuntu:~# ls -l test.txt -rw-r----- 1 root root 0 Jan 31 10:05 test.txt root@VM-12-3-ubuntu:~#
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Linux中設(shè)置路由以及虛擬機聯(lián)網(wǎng)圖文詳解
這篇文章主要介紹了Linux中設(shè)置路由以及虛擬機聯(lián)網(wǎng),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04關(guān)于Linux安裝mysql默認配置文件位置詳解
本篇文章主要介紹了關(guān)于Linux安裝mysql默認配置文件位置詳解,具有一定的參考價值,有興趣的可以了解一下。2017-06-06Linux系統(tǒng)防CC攻擊自動拉黑IP增強版(Shell腳本)
這篇文章主要介紹了Linux系統(tǒng)防CC攻擊自動拉黑IP增強版(Shell腳本),需要的朋友可以參考下2015-04-04Linux用戶建立腳本/猜字游戲/網(wǎng)卡流量監(jiān)控介紹
大家好,本篇文章主要講的是Linux用戶建立腳本/猜字游戲/網(wǎng)卡流量監(jiān)控介紹,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下2021-12-12