首頁 > 運維 > linux運維 > 主體

Linux改變檔案或目錄的存取權限的命令

巴扎黑
發布: 2017-08-10 11:35:01
原創
2243 人瀏覽過

[導讀] Linux系統中的每個檔案和目錄都有存取許可權限,用它來確定誰可以透過何種方式對檔案和目錄進行存取和操作。檔案或目錄的存取權限分為唯讀,只寫和可執行三種。以檔案為例,唯讀權限表示只允許讀取其內容,而禁止對

Linux系統中的每個檔案和目錄都有存取許可權限,用它來確定誰可以透過何種方式對文件和目錄進行存取和操作。

檔案或目錄的存取權限分為唯讀,只寫和可執行三種。以檔案為例,唯讀權限表示只允許讀取其內容,而禁止對其做任何的變更操作。可執行權限表示允許將該檔案作為一個程式執行。文件被建立時,文件擁有者會自動擁有對該文件的讀取、寫入和可執行權限,以便於對文件的讀取和修改。使用者也可依需求把存取權限設定為需要的任何組合。

有三種不同類型的使用者可對檔案或目錄進行存取:檔案擁有者,同組使用者、其他使用者。擁有者一般是文件的創建者。擁有者可以允許同組使用者有權存取文件,也可以將文件的存取權限賦予系統中的其他使用者。在這種情況下,系統中每位使用者都能存取該使用者擁有的檔案或目錄。

每個文件或目錄的存取權限都有三組,每組用三位表示,分別為文件屬主的讀、寫和執行權限;與屬主同組的用戶的讀、寫和執行權限;系統中其他使用者的讀取、寫入和執行權限。當用ls -l指令顯示檔案或目錄的詳細資料時,最左邊的一列為檔案的存取權限。例如:

$ ls -l sobsrc. tgz-rw-r--r-- 1 root root 483997 Ju1 l5 17:3l sobsrc. tgz
登入後複製

橫線代表空許可。 r代表只讀,w代表寫,x代表可執行。注意這裡共有10個位置。第一個字元指定了文件類型。在通常意義上,一個目錄也是一個檔案。如果第一個字元是橫線,表示是一個非目錄的檔案。如果是d,表示是一個目錄。

例如:

- rw- r-- r--
登入後複製

普通檔案檔案主群組使用者其他使用者

是檔案sobsrc.tgz 的存取權限,表示sobsrc.tgz是一個普通檔案;sobsrc.tgz的屬主有讀寫權限;與sobsrc.tgz屬主同組的使用者只有讀取權限;其他使用者也只有讀取權限。

確定了一個檔案的存取權限後,使用者可以利用Linux系統提供的chmod指令來重新設定不同的存取權限。也可以利用chown指令來更改某個檔案或目錄的擁有者。利用chgrp指令來更改某個檔案或目錄的使用者群組。

下面分別對這些指令加以介紹。

chmod 指令

chmod指令是非常重要的,用來改變檔案或目錄的存取權限。使用者用它來控制檔案或目錄的存取權限。

該指令有兩種用法。一種是包含字母和操作符表達式的文字設定法;另一種是包含數字的數字設定法。

1. 文字設定法

chmod [who] [+ | - | =] [mode] 檔案名稱?

指令中各選項的意義為:

2. 數字設定法

我們必須先了解用數字表示的屬性的意義:0表示沒有權限,1表示可執行權限,2表示尚慈ㄏ苜蓿?表示可讀權限,然後將其相加。所以數字屬性的格式應為3個從0到7的八進位數,其順序是(u)(g)(o)。

例如,如果想讓某個檔案的屬主有「讀/寫」二種權限,需要把4(可讀)+2(可寫)=6(讀/寫)。

數字設定法的一般形式為:

chmod [mode] 檔案名稱?

chgrp指令

功能:改變檔案或目錄所屬的群組。

語法:chgrp [選項] group filename?

此指令改變指定指定檔案所屬的使用者群組。其中group可以是使用者群組ID,也可以是/etc/group檔案中使用者群組的群組名稱。檔案名稱是以空格分開的要改變屬組的檔案列表,支援通配符。如果用戶不是該文件的屬主或超級用戶,則不能改變該文件的群組。

此指令的各選項意義為:

- R 遞歸式地改變指定目錄及其下的所有子目錄和檔案的屬組。

chown 指令

功能:更改某個檔案或目錄的屬主和屬群組。這個指令也很常用。例如root使用者把自己的一個文件拷貝給使用者xu,為了讓使用者xu能夠存取這個文件,root使用者應該把這個文件的屬主設為xu,否則,使用者xu無法存取這個文件。

語法:chown [選項] 使用者或群組 檔案

說明:chown將指定檔案的擁有者改為指定的使用者或群組。用戶可以是用戶名或用戶ID。群組可以是群組名稱或群組ID。文件是以空格分開的要改變權限的文件列表,支援通配符。

該指令的各選項意義如下:

- R 递归式地改变指定目录及其下的所有子目录和文件的拥有者。- v 显示chown命令所做的工作。
登入後複製

操作物件who可是下述字母中的任一個或它們的組合:

u 表示“用户(user)”,即文件或目录的所有者。g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。o 表示“其他(others)用户”。a 表示“所有(all)用户”。它是系统默认值。
登入後複製

操作符號可以是:

+ 添加某个权限。- 取消某个权限。= 赋予给定权限并取消其他所有权限(如果有的话)。
登入後複製

設定mode所表示的權限可用下述字母的任意組合:

r 可读。w 可写。x 可执行。X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性。s 在文件执行时把进程的属主或组ID置为该文件的文件属主。方式“u+s”设置文件的用户ID位,“g+s”设置组ID位。t 保存程序的文本到交换设备上。u 与文件属主拥有一样的权限。g 与和文件属主同组的用户拥有一样的权限。o 与其他用户拥有一样的权限。
登入後複製

文件名:以空格分开的要改变权限的文件列表,支持通配符。

在一个命令行中可给出多个权限方式,其间用逗号隔开。例如:chmod g+r,o+r example

使同组和其他用户对文件example 有读权限。


以上是Linux改變檔案或目錄的存取權限的命令的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!