linux能改讀寫許可權嗎

2022-04-15 16:00:13

linux能改讀寫許可權。在linux中,可以使用chmod命令來修改讀寫許可權,該命令可以控制使用者對檔案的許可權,可以使用八進位制數位模式或符號模式來設定讀寫許可權,語法「chmod [-cfvR] [--help] mode file...」。

本教學操作環境:linux5.9.8系統、Dell G3電腦。

linux能改讀寫許可權。

在linux中,可以使用chmod命令來修改讀寫許可權。

Linux chmod(英文全拼:change mode)命令是控制使用者對檔案的許可權的命令

Linux/Unix 的檔案呼叫許可權分為三級 : 檔案所有者(Owner)、使用者組(Group)、其它使用者(Other Users)。

1.png

只有檔案所有者和超級使用者可以修改檔案或目錄的許可權。可以使用絕對模式(八進位制數位模式),符號模式指定檔案的許可權。

2.png

使用許可權 : 所有使用者

語法

chmod [-cfvR] [--help] [--version] mode file...

引數說明

mode : 許可權設定字串,格式如下 :

[ugoa...][[+-=][rwxX]...][,...]

其中:

  • u 表示該檔案的擁有者,g 表示與該檔案的擁有者屬於同一個群體(group)者,o 表示其他以外的人,a 表示這三者皆是。

  • + 表示增加許可權、- 表示取消許可權、= 表示唯一設定許可權。

  • r 表示可讀取,w 表示可寫入,x 表示可執行,X 表示只有當該檔案是個子目錄或者該檔案已經被設定過為可執行。

選項說明:

  • -c : 若該檔案許可權確實已經更改,才顯示其更改動作

  • -f : 若該檔案許可權無法被更改也不要顯示錯誤訊息

  • -v : 顯示許可權變更的詳細資料

  • -R : 對目前目錄下的所有檔案與子目錄進行相同的許可權變更(即以遞迴的方式逐個變更)

  • --help : 顯示輔助說明

  • --version : 顯示版本

符號模式

使用符號模式可以設定多個專案:who(使用者型別),operator(操作符)和 permission(許可權),每個專案的設定可以用逗號隔開。 命令 chmod 將修改 who 指定的使用者型別對檔案的存取許可權,使用者型別由一個或者多個字母在 who 的位置來說明,如 who 的符號模式表所示:

who使用者型別說明
uuser檔案所有者
ggroup檔案所有者所在組
oothers所有其他使用者
aall所用使用者, 相當於 ugo

operator 的符號模式表:

Operator說明
+為指定的使用者型別增加許可權
-去除指定使用者型別的許可權
=設定指定使用者許可權的設定,即將使用者型別的所有許可權重新設定

permission 的符號模式表:

模式名字說明
r設定為可讀許可權
w設定為可寫許可權
x執行許可權設定為可執行許可權
X特殊執行許可權只有當檔案為目錄檔案,或者其他型別的使用者有可執行許可權時,才將檔案許可權設定可執行
ssetuid/gid當檔案被執行時,根據who引數指定的使用者型別設定檔案的setuid或者setgid許可權
t貼上位設定貼上位,只有超級使用者可以設定該位,只有檔案所有者u可以使用該位

範例:

如果我們要設定 .bashrc 檔案的許可權為 rwxr-xr-x,則可執行如下命令:

[root@localhost ~]# chmod u=rwx,go=rx .bashrc
[root@localhost ~]# ls -al .bashrc
-rwxr-xr-x. 1 root root 176 Sep 22 2004 .bashrc

如果想要增加 .bashrc 檔案的每種使用者都可做寫操作的許可權,可以使用如下命令:

[root@localhost ~]# ls -al .bashrc
-rwxr-xr-x. 1 root root 176 Sep 22 2004 .bashrc
[root@localhost ~]# chmod a+w .bashrc
[root@localhost ~]# ls -al .bashrc
-rwxrwxrwx. 1 root root 176 Sep 22 2004 .bashrc

八進位制語法

chmod命令可以使用八進位制數來指定許可權。檔案或目錄的許可權位是由9個許可權位來控制,每三位為一組,它們分別是檔案所有者(User)的讀、寫、執行,使用者組(Group)的讀、寫、執行以及其它使用者(Other)的讀、寫、執行。歷史上,檔案許可權被放在一個位元掩碼中,掩碼中指定的位元位設為1,用來說明一個類具有相應的優先順序。

#許可權rwx二進位制
7讀 + 寫 + 執行rwx111
6讀 + 寫rw-110
5讀 + 執行r-x101
4唯讀r--100
3寫 + 執行-wx011
2只寫-w-010
1只執行--x001
0---000

例如, 765 將這樣解釋:

  • 所有者的許可權用數位表達:屬主的那三個許可權位的數位加起來的總和。如 rwx ,也就是 4+2+1 ,應該是 7。

  • 使用者組的許可權用數位表達:屬組的那個許可權位數位的相加的總和。如 rw- ,也就是 4+2+0 ,應該是 6。

  • 其它使用者的許可權數位表達:其它使用者許可權位的數位相加的總和。如 r-x ,也就是 4+0+1 ,應該是 5。

範例:

使用如下命令,即可完成對 .bashrc 目錄檔案的許可權修改:

[root@localhost ~]# ls -al .bashrc
-rw-r--r--. 1 root root 176 Sep 22 2004 .bashrc
[root@localhost ~]# chmod 777 .bashrc
[root@localhost ~]# ls -al .bashrc
-rwxrwxrwx. 1 root root 176 Sep 22 2004 .bashrc

再舉個例子,通常我們以 Vim 編輯 Shell 檔案批次檔後,檔案許可權通常是 rw-rw-r--(644),那麼,如果要將該檔案變成可執行檔案,並且不讓其他人修改此檔案,則只需將此檔案的許可權該為 rwxr-xr-x(755)即可。

相關推薦:《Linux視訊教學

以上就是linux能改讀寫許可權嗎的詳細內容,更多請關注TW511.COM其它相關文章!