A. 如何在linux下修改文件夾許可權(對於不同用戶擁有該文件夾許可權的處理)
首先把文件夾的所有者改成xiaoc組改成kx0dx0achown xiaoc:k cx0dx0a然後設許可權所有者xiaoc 能讀能改,組成員xiaob 能讀不能改,其它人 xiaoa 不能讀不能寫x0dx0achmod 750 c
B. 如何在Linux中管理文件和文件夾的許可權
命令行:文件許可權
改動文件許可權和所有權的兩個命令如下:
chmod - 更改許可權
chown - 更改所有權
上面兩個命令用起來都不難。不過你要明白,只有用戶是當前所有者或根用戶,才能夠實際更改文件的許可權或所有權,這一點很重要。所以,如果你是用戶Bethany,要是不藉助根許可權(或sudo),就無法對用戶Jacob擁有的文件和文件夾進行更改。比如說:
數據分區上創建了一個新的文件夾,名為/DATA/SHARE。Bethany和Jacob這兩個用戶都需要擁有讀取和寫入該文件夾的訪問許可權。有許多方法可以實現這一點(其中一個方法是,把兩個用戶加入到一個特殊的用戶組――我們會在另一篇文章中探討如何管理用戶組)。如果Bethany和Jacob是系統上的唯一兩個用戶(而且你知道自己的網路很安全――這很重要),就可以更改該文件夾的許可權,為他們授予訪問權。為此,一個方法就是執行該命令。
sudo chmod -R ugo+rw /DATA/SHARE
上面這個命令的詳細分解如下:
sudo - 這用於為使用sudo的任何系統上的命令獲得管理員許可權(不然你就得使用'su'以獲得根許可權,運行不帶'sudo'的上面這個命令)
chmod - 改動許可權的命令
-R - 這改動父文件夾及其裡面子對象的許可權
ugo+rw - 這為User(用戶)、Group(用戶組)及Other(其他對象)授予讀取和寫入訪問許可權。
你可能也猜測到了,這個命令完全開放了SHARE文件夾的許可權,那樣系統上的任何人都能訪問該文件夾。正如我在前面提到的那樣,一種更安全的方法就是使用用戶組。但我們使用這種方法僅僅是為了演示。
許可權的詳細分解如下:
u - 用戶
g - 用戶組
o - 其他對象
"其他對象"這個條目是個危險的條目,因為它實際上為每個人賦予了文件夾/文件的許可權。你為某文件或文件夾所能賦予的許可權如下:
r - 讀取
w- 寫入
x - 執行
使用-R這個參數選項符很重要。如果你在SHARE目錄裡面有許多子文件夾和文件,又希望許可權從父對象(包含文件夾)應用到子對象(子文件夾和文件),就必須使用-R(遞歸)這個參數選項符,那樣同樣的許可權就可以一路應用到父文件夾裡麵包含的最深層文件夾。
命令行:文件所有權
更改文件或文件夾的所有權同樣很簡單。假設Jacob為Bethany把一個文件夾移入到SHARE目錄裡面,但是Jacob仍擁有所有權。只要藉助一個簡單的命令,就可以更改這個所有權:
sudo chown -R bethany /DATA/SHARE
讓我們詳細分解這個命令。
sudo - 必須用到管理員許可權,因為我們所處理的是屬於另一個用戶的文件夾
chown - 更改所有權的命令·-R - 這個遞歸參數選項符確保所有子對象都獲得同樣的所有權變更。
bethany - 文件夾的新所有者
/DATA/SHARE - 所要修改的目錄
要是Bethany將文件夾發回給Jacob,就需要再次更改所有權(如果使用用戶組,同樣可以簡化這一步)。
GUI:用戶許可權
我准備在Ubuntu 13.10系統上,使用Nautilus文件管理器,演示如何更改文件許可權。
假設你需要允許每個人都獲得讀取/寫入文件夾TEST的許可權。為此,在Nautilus文件管理器裡面,採取下面這些步驟:
1.打開Nautilus
2.瀏覽至目標文件或目標文件夾
3.滑鼠右擊該文件或文件夾
4.選擇Properties(屬性)
5.點擊Permissions(許可權)選項卡
6.點擊Others(其他)部分中的Access files(訪問文件)
7.選擇"Create and delete files"(創建並刪除文件)
8.點擊Change Permissions for Enclosed Files(更改所附文件的許可權)
9.在隨後彈出的窗口中,選擇Files(文件)下的Read and Write(讀取和寫入),選擇Folders(文件夾)下的Create and delete files(創建並刪除文件),見圖A。
10.點擊Change(更改)。
11.點擊Close(關閉)。
如果你需要更改不屬於你的文件夾的許可權,戲法就會出現。可以實現這一幕,但必須在擁有管理員訪問權的前提下啟動Nautilus。為此,採取下面這些步驟:
1.打開終端窗口
2.執行命令sudo -i
3.執行命令nautilus
sudo -i命令為你賦予了持久訪問sudo的許可權,直到你輸入exit命令,清除該訪問權。一旦Nautilus打開,你可以更改文件夾或文件的許可權,如上所述――即便你不是該文件夾或文件的所有者。
注意:如果你所使用的發行版並不使用sudo,就要把上述指令改成如下:
1.打開終端窗口
2.執行命令su
3.鍵入你的根密碼,按回車鍵
4.執行命令nautilus。
在你完成這項任務之後,關閉Nautilus窗口,然後關閉終端窗口。
GUI:更改所有權
更改文件或文件夾的所有權常常需要使用管理員許可權。所以為此,你需要採用上面介紹的方法來啟動Nautilus。
想藉助Nautilus更改文件夾或文件的所有權,請採取下面這些步驟:
1.在藉助管理員許可權打開的Nautilus窗口中,找到相應的文件夾或文件
2.滑鼠右擊該文件夾(或文件)
3.點擊Permissions(許可權)選項卡
4.從Owner(所有者)下拉框中選擇新的所有者(見下圖)
5.點擊Close(關閉)。
就是這樣。現在,你藉助命令行或GUI,更改文件或文件夾的許可權或所有權時應該不會有任何問題了。使用用戶組讓你可以更改許可權和所有權,卻擁有更強大的功能和更高的安全性――我們以後會介紹這方面。現在,請享受更改文件和文件夾的便利吧!
C. LINUX 如何對文件分配許可權 許可權分別是什麼
在Linux中,許可權的所有者分為用戶許可權,組許可權和其他許可權,分別是用字母u, g, o 代表
許可權分為:讀 r , 寫 w , 執行 x。
比如看到了,你一個文件夾1個的許可權是: rwxr-xr-x 這個許可權的意思是這個文件夾的所有者用戶是完全控制(第一段rwx),這個文件夾的所屬組用戶的許可權是讀取和執行(第二段r-x),這個文件夾的對於其他用戶來說是讀取和執行(第三段r-x)。
這些許可權都可以用數字來表示:r 4, w 2 , x 1, 那麼上邊的許可權就是755 (一段一段的加和)更改許可權的命令是chmod。
想這對文件夾/test設置許可權,希望是test文件夾的所屬用戶完全控制,所屬組和其他用戶只能讀取和執行。
(3)linux給文件夾賦予許可權擴展閱讀:
HFS+卷使用分配文件有以下幾點優勢:
1、使用文件允許分配文件為其自身分配存儲塊,這種方式相對簡單得多,因為這樣卷就只有一種塊類型——分配塊。HFS之所以復雜是因為它使用扇區來存儲分配點陣圖,用分配塊來存儲文件。
2、分配文件可以是不連續的,允許分配信息和用戶數據交叉存取。許多現代的文件系統都採取這種方式以減少文件增大的過程中的磁頭運動行程。
3、分配文件可以擴展。因為分配文件的可擴展性,所以很容易增加磁碟上的分配塊的數量。這無論是對於想減小分配塊的大小還是擴大整個磁碟的空間都是非常有用的。
4、分配文件的可收縮性。可以為不同大小的卷創建適當的鏡像,回寫至磁碟時,即便磁碟很大,也可以建立足夠的分配文件數據;如果寫入較小的磁碟,分配文件又可以收縮至適當的大小。
D. linux文件許可權命令
有三種不同類型的用戶可對文件或目錄進行訪問:文件所有者,同組用戶、其他用戶。所有者一般是文件的創建者。所有者可以允許同組用戶有權訪問文件,還可以將文件的訪問許可權賦予系統中的其他用戶。在這種情況下,系統中每一位用戶都能訪問該用戶擁有的文件或目錄。
每一文件或目錄的訪問許可權都有三組,每組用三位表示,分別為文件屬主的讀、寫和執行許可權;與屬主同組的用戶的讀、寫和執行許可權;系統中其他用戶的讀、寫和執行許可權。當用ls -l命令顯示文件或目錄的詳細信息時,最左邊的一列為文件的訪問許可權。例如:
$ ls-l sobsrc.tgz
-rw-r--r--1root root483997Ju1l517:3lsobsrc.tgz
橫線代表空許可。r代表只讀,w代表寫,x代表可執行。注意這里共有10個位置。第一個字元指定了文件類型。在通常意義上,一個目錄也是一個文件。如果第一個字元是橫線,表示是一個非目錄的文件。如果是d,表示是一個目錄。例如:
– rw- r– r–
普通文件 文件主 組用戶 其他用戶
是文件sobsrc.tgz 的訪問許可權,表示sobsrc.tgz是一個普通文件;sobsrc.tgz的屬主有讀寫許可權;與sobsrc.tgz屬主同組的用戶只有讀許可權;其他用戶也只有讀許可權。
確定了一個文件的訪問許可權後,用戶可以利用Linux系統提供的chmod命令來重新設定不同的訪問許可權。也可以利用chown命令來更改某個文件或目錄的所有者。利用chgrp命令來更改某個文件或目錄的用戶組。
下面分別對這些命令加以介紹。
chmod 命令
chmod命令是非常重要的,用於改變文件或目錄的訪問許可權。用戶用它控制文件或目錄的訪問許可權。
以主文件夾下的一個名為「cc」的文件夾為例。下面一步一步介紹如何修改許可權:
1.打開終端。輸入」su」(沒有引號)
2.接下來會要你輸入密碼,輸入你的root密碼。
3.假設我的文件夾在主目錄里,地址為 /var/home/dengchao/cc 。假設我要修改文件許可權為777,則在終端輸入 chmod 777 /var/home/userid/cc 文件夾的許可權就變為了777。
如果是修改文件夾及子文件夾許可權可以用 chmod -R 777 /var/home/userid/cc
具體的許可權(例如777的含意等)在下面解釋下:
1.777有3位,最高位7是設置文件所有者訪問許可權,第二位是設置群組訪問許可權,最低位是設置其他人訪問許可權。
其中每一位的許可權用數字來表示。具體有這些許可權:
r(Read,讀取,許可權值為4):對文件而言,具有讀取文件內容的許可權;對目錄來說,具有瀏覽目 錄的許可權。
w(Write,寫入,許可權值為2):對文件而言,具有新增、修改文件內容的許可權;對目錄來說,具有刪除、移動目錄內文件的許可權。
x(eXecute,執行,許可權值為1):對文件而言,具有執行文件的許可權;對目錄了來說該用戶具有進入目錄的許可權。
2. 首先我們來看如何確定單獨一位上的許可權數值,例如最高位表示文件所有者許可權數值,當數字為7時,7用「rwx」表示 –{4(r)+2(w)+1(x)=7}–又如果數值為6,則用「rw-」表示–{4(r)+2(w)+0(x)=6}–,」-」表示不具備許可權,這里表 示不具備「執行」許可權。
假如我們設定其他用戶的訪問許可權為 「r–」,則數值為4+0+0=4
一開始許多初學者會被搞糊塗,其實很簡單,我們將rwx看成二進制數,如果有則用1表示,沒有則有0表示,那麼rwx則可以表示成為:111
而二進制的111就是7。
3.我們再來看下怎麼確定3個數位上的許可權。假如我們要給一個文件設置許可權,具體許可權如下:
文件所有者有「讀」、「寫」、「執行」許可權,群組用戶有「讀」許可權,其他用戶有「讀」許可權,則對應的字母表示為」rwx r– r–「,對應的數字為744
一般都是最高位表示文件所有者許可權值,第二位表示群組用戶許可權,最低位表示其他用戶許可權。
下面來舉些例子熟悉下。
許可權 數值
rwx rw- r– 764
rw- r– r– 644
rw- rw- r– 664
該命令有兩種用法。一種是包含字母和操作符表達式的文字設定法;另一種是包含數字的數字設定法。
1. 文字設定法
chmod [who] [+ | – | =] [mode] 文件名¼
命令中各選項的含義為:
操作對象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 與其他用戶擁有一樣的許可權。
-c:若該檔案許可權確實已經更改,才顯示其更改動作
-f:若該檔案許可權無法被更改也不要顯示錯誤訊息
-v:顯示許可權變更的詳細資料
-R:對目前目錄下的所有檔案與子目錄進行相同的許可權變更(即以遞回的方式逐個變更)
–help:顯示輔助說明
–version:顯示版本
文件名:以空格分開的要改變許可權的文件列表,支持通配符。在一個命令行中可給出多個許可權方式,其間用逗號隔開。例如:chmod g+r,o+r example使同組和其他用戶對文件example 有讀許可權。
例1:
$ chmod a+x sort
即設定文件sort的屬性為:
文件屬主(u) 增加執行許可權
與文件屬主同組用戶(g) 增加執行許可權
其他用戶(o) 增加執行許可權
例2:
$ chmod ug+w,o-x text
即設定文件text的屬性為:
文件屬主(u) 增加寫許可權
與文件屬主同組用戶(g) 增加寫許可權
其他用戶(o) 刪除執行許可權
例3:
$ chmod u+s a.out
假設執行chmod後a.out的許可權為(可以用ls – l a.out命令來看):
–rws--x--x1inin users7192Nov414:22a.out
並且這個執行文件要用到一個文本文件shiyan1.c,其文件存取許可權為「–rw——-」,即該文件只有其屬主具有讀寫許可權。
當其他用戶執行a.out這個程序時,他的身份因這個程序暫時變成inin(由於chmod命令中使用了s選項),所以他就能夠讀取shiyan1.c這個文件(雖然這個文件被設定為其他人不具備任何許可權),這就是s的功能。
因此,在整個系統中特別是root本身,最好不要過多的設置這種類型的文件(除非必要)這樣可以保障系統的安全,避免因為某些程序的bug而使系統遭到入侵。
例4:
$ chmod a–x mm.txt
$ chmod–x mm.txt
$ chmod ugo–x mm.txt
以上這三個命令都是將文件mm.txt的執行許可權刪除,它設定的對象為所有使用者。
2. 數字設定法
我們必須首先了解用數字表示的屬性的含義:0表示沒有許可權,1表示可執行許可權,2表示可寫許可權,4表示可讀許可權,然後將其相加。所以數字屬性的格式應為3個從0到7的八進制數,其順序是(u)(g)(o)。
例如,如果想讓某個文件的屬主有「讀/寫」二種許可權,需要把4(可讀)+2(可寫)=6(讀/寫)。
數字設定法的一般形式為:chmod [mode] 文件名¼
例1:
$ chmod644mm.txt
$ ls–l
即設定文件mm.txt的屬性為:
-rw-r--r--1inin users1155Nov511:22mm.txt
文件屬主(u)inin 擁有讀、寫許可權
與文件屬主同組人用戶(g) 擁有讀許可權
其他人(o) 擁有讀許可權
例2:
$ chmod750wch.txt
$ ls–l
-rwxr-x---1inin users44137Nov129:22wchtxt
即設定wchtxt這個文件的屬性為:
文件主本人(u)inin 可讀/可寫/可執行權
與文件主同組人(g) 可讀/可執行權
其他人(o) 沒有任何許可權
chgrp命令
功能:改變文件或目錄所屬的組。
語法:chgrp[選項] group filename¼
參數:
-c或–changes 效果類似」-v」參數,但僅回報更改的部分。
-f或–quiet或–silent 不顯示錯誤信息。
-h或–no-dereference 只對符號連接的文件作修改,而不更動其他任何相關文件。
-R或–recursive 遞歸處理,將指定目錄下的所有文件及子目錄一並處理。
-v或–verbose 顯示指令執行過程。
–help 在線幫助。
–reference=<參考文件或目錄> 把指定文件或目錄的所屬群組全部設成和參考文件或目錄的所屬群組相同。
–version 顯示版本信息。
該命令改變指定指定文件所屬的用戶組。其中group可以是用戶組ID,也可以是/etc/group文件中用戶組的組名。文件名是以空格分開的要改變屬組的文件列表,支持通配符。如果用戶不是該文件的屬主或超級用戶,則不能改變該文件的組。
該命令的各選項含義為:
– R 遞歸式地改變指定目錄及其下的所有子目錄和文件的屬組。
例1:
$chgrp-R book/opt/local/book
改變/opt/local /book/及其子目錄下的所有文件的屬組為book。
chown命令
功能:更改某個文件或目錄的屬主和屬組。這個命令也很常用。例如root用戶把自己的一個文件拷貝給用戶yusi,為了讓用戶yusi能夠存取這個文件,root用戶應該把這個文件的屬主設為yusi,否則,用戶yusi無法存取這個文件。
語法:chown[選項] 用戶或組 文件
說明:chown將指定文件的擁有者改為指定的用戶或組。用戶可以是用戶名或用戶ID。組可以是組名或組ID。文件是以空格分開的要改變許可權的文件列表,支持通配符。
參數說明:
user : 新的檔案擁有者的使用者 ID
group : 新的檔案擁有者的使用者群體(group)
-c : 若該檔案擁有者確實已經更改,才顯示其更改動作
-f : 若該檔案擁有者無法被更改也不要顯示錯誤訊息
-h : 只對於連結(link)進行變更,而非該 link 真正指向的檔案
-v : 顯示擁有者變更的詳細資料
-R : 對目前目錄下的所有檔案與子目錄進行相同的擁有者變更(即以遞回的方式逐個變更)
–help : 顯示輔助說明
–version : 顯示版本
例1:把文件yusi123.com的所有者改為yusi。
$chownyusi yusi123.com
例2:把目錄/demo及其下的所有文件和子目錄的屬主改成yusi,屬組改成users。
$ chown-R yusi.users/demo
例如:chown qq /home/qq (把home目錄下的qq目錄的擁有者改為qq用戶)
例如:chown -R qq /home/qq (把home目錄下的qq目錄下的所有子文件的擁有者改為qq用戶)
E. linux中怎樣新建一個文件,並為該文件賦予許可權
mkdir -p dir1/dir2/dir3
賦予文件夾許可權:
修改linux文件許可權命令:chmod
$ ls -l rodine.org. tgz
-rw-r--r-- 1 root root 483997 Ju1 l5 17:3l rodine.org. tgz
橫線代表空許可。r代表只讀,w代表寫,x代表可執行。注意這里共有10個位置。第一個字元指定了文件類型。在通常意義上,一個目錄也是一個文件。如果第一個字元是橫線,表示是一個非目錄的文件。如果是d,表示是一個目錄。
文字設定法
chmod [who] [+ | - | =] [mode] 文件名?
命令中各選項的含義為:
操作對象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 有讀許可權。
F. linux如何僅賦予jerry用戶對該文件的完全控制許可權
linux僅賦予jerry用戶對該文件的完全控制許可權的方法:把指定文件夾的擁有權賦予指定的用戶或組.chmo+rx是給文件擁有者(owner)指定許可權。也就是說誰擁有該文件,那麼它就有了你指定的許可權。你可以通過chown命令修改文件的擁有者,一個文件的許可權一般分三部分,文件擁有者的許可權,組用戶的許可權,其它用戶的許可權。
G. linux里如何把一個文件更改成所有的用戶都有可執行許可權
linux里把一個文件更改成所有的用戶都有可執行許可權可以使用以下命令:
chmod 777 filename
其中chmod可以藉以控制文件如何被他人所調用。
1、chmod語法
chmod [-cfvR] [--help] [--version] mode file...
2、chmod參數說明
mode : 許可權設定字串,格式如下 :
[ugoa...][[+-=][rwxX]...][,...]
(7)linux給文件夾賦予許可權擴展閱讀
chmod可以用數字來表示許可權如 :
chmod 777 file
語法為:
chmod abc file
其中a,b,c各為一個數字,分別表示User、Group、及Other的許可權。
r=4,w=2,x=1
若要rwx屬性則4+2+1=7;
若要rw-屬性則4+2=6;
若要r-x屬性則4+1=5。
H. linux怎麼給一個文件夾許可權
1、Linux許可權說明
linux的文件夾也有三種許可權分別是:
r(Read 讀取):對文件有讀取文件內容的許可權(cat指令);對目錄有查看目錄下內容的許可權(ls命令)。
x(eXecute 執行):對文件有執行文件的許可權(./指令);對目錄該有進入目錄的許可權(cd命令)。
w(Write 寫入):對文件有增加、刪除、修改文件內容的許可權;對目錄有增加、刪除、修改目錄下內容的許可權。w 是可以在目錄下創建、修改、刪除文件,不僅可以修改自己的文件也可以修改別人的文件,因此增加了一個t 許可權對 x 許可權進行了限制,表示只可以修改自己的文件。
umask 命令可以設置系統的許可權掩碼,即可以控制文件夾、文件生成時的默認許可權。文件夾的默認許可權是755、文件的許可權644.root 帳號的umask是022,而普通用戶的umask是002,這代表root用戶的文件對於其他用戶來說默認的許可權更少。文件的默認許可權是用666減umask,而文件夾的默認許可權是用777減umask,這樣的話相當於無論何時生成的文件的默認許可權都是不可能有運行的許可權。umask的設置可以在配置文件 /etc/bashrc 中進行設置、更改。
2、改變許可權
改變擁有者chown(change owner):
chown yly tmp //改變文件tmp的擁有者為yly用戶
chown -R yly:yly tmp //改變tmp文件及其下的文件和子目錄的許可權為yly用戶:yly組
說明:要改變的文件擁有者,也就是用戶名必須存在於/etc/passwd文件中,否則就會顯示錯誤。另外用戶密碼
是保存在/etc/shadow文件夾中的。
改變群組chgrp(change group):
chgrp yly tmp //改變tmp文件的群組為yly組
說明:要改變的目標群組名稱必須在於/etc/group文件中存在,否則就會顯示錯誤。
注意:當使用cp指令復制文件時,被復制的文件擁有者和群組仍沒有改變,此時需要使用以上指令進行設置。
改變文件許可權chmod
I. 在 Linux 上給用戶賦予指定目錄的讀寫許可權
在 Linux 上指定目錄的讀寫許可權賦予用戶,有兩種方法可以實現這個目標:第一種是使用 ACL (訪問控制列表),第二種是創建用戶組來管理文件許可權,下面會一一介紹。為了完成這個教程,我們將使用以下設置:
請確認所有的命令都是使用 root 用戶執行的,或者使用 sudo 命令來享受與之同樣的許可權。讓我們開始吧!下面,先使用 mkdir 命令來創建一個名為 share 的目錄。
1. 使用 ACL 來為用戶賦予目錄的讀寫許可權
重要提示: 打算使用此方法的話,您需要確認您的 Linux 文件系統類型(如 ext3 和 ext4, NTFS, BTRFS)支持 ACL。
1.1. 首先, 依照以下命令在您的系統中檢查當前文件系統類型,並且查看內核是否支持 ACL:
從下方的截屏可以看到,文件系統類型是 ext4,並且從 CONFIG_EXT4_FS_POSIX_ACL=y 選項可以發現內核是支持 POSIX ACL 的。
[圖片上傳失敗...(image-c85622-1574572716190)]
1.2. 查看文件系統(分區)掛載時是否使用了 ACL 選項。
[圖片上傳失敗...(image-bdb4d9-1574572716190)]
通過上邊的輸出可以發現,默認的掛載項目中已經對 ACL 進行了支持。如果發現結果不如所願,你可以通過以下命令對指定分區(此例中使用 /dev/sda3)開啟 ACL 的支持)。
1.3. 指定目錄 share 的讀寫許可權分配給名為 shenweiyan 的用戶了,依照以下命令執行即可。
[圖片上傳失敗...(image-dfb909-1574572716190)]
在上方的截屏中,通過輸出結果的第二行 getfacl 命令可以發現,用戶 shenweiyan 已經成功的被賦予了 /data/share 目錄的讀寫許可權。
如果想要獲取 ACL 列表的更多信息。請參考:
2. 使用用戶組來為用戶賦予指定目錄的讀寫許可權
2.1. 如果用戶已經擁有了默認的用戶組(通常組名與用戶名相同),就可以簡單的通過變更文件夾的所屬用戶組來完成。
另外,我們也可以通過以下方法為多個用戶(需要賦予指定目錄讀寫許可權的)新建一個用戶組。如此一來,也就創建了一個共享目錄。
2.2. 接下來將用戶 shenweiyan 添加到 dbshare 組中:
2.3. 將目錄的所屬用戶組變更為 dbshare:
2.4. 現在,給組成員設置讀寫許可權。
ok,在 Linux 上給用戶賦予指定目錄的讀寫許可權就介紹到這里 !
參考資料:
J. linux如何給文件許可權
chmod -R 755 文件夾名 ,一般加這個許可權就好了。第一個數字表示根用戶有讀寫執行許可權,第二個表示組用戶有讀和執行的許可權,第三個是其他用戶有讀和執行的許可權。
一、訪問許可權
訪問許可權分為讀(read)、寫(write)、執行(execute)三種,
並且涉及到文件所有者(user)、文件所屬組(group)、其他人(other)三個主體。
選取上圖紅框中的兩行為例,結合下面的表格先講一下基本結構:
第一位表示文件類型
第二~十位表示許可權:每三位一組,共三組,分別表示三個主體對應的三種許可權
對照表格可以知道
drwxr-xr-x表示:
d為目錄文件
文件所有者可讀、可寫、可執行(rwx:可讀r、可寫w、可執行x)
文件所屬組可讀、可執行(r-x:可讀r、不可寫-、可執行x)
其他人可讀、可執行(r-x:可讀r、不可寫-、可執行x)
-rw-r--r--表示:
-為普通文件
文件所有者可讀、可寫(rw-:可讀r、可寫w、不可執行-)
文件所屬組可讀(r--:可讀r、不可寫-、不可執行-)
其他人可讀(r--:可讀r、不可寫-、不可執行-)
二、修改許可權
如何修改許可權?一般有兩種方法:
文字法:chmod [who][operator][permission] <file-name>
數字法:chmod xxx <file-name>
1.文字法:
[who]:表示要修改的主體,
u:用戶(user),即文件所有者:創建文件的人
g:同組用戶(group),即文件所屬組:與文件屬主有相同組ID的所有用戶
o:其他用戶(others),即其它人:與文件無關的人
a:所有用戶(all),它是系統默認值
[operator]:表示進行哪種修改操作,
+:添加某個許可權
-:取消某個許可權
=:賦予給定許可權並取消其他所有許可權(如果有的話)
[permission]:表示要設置的許可權,
r:可讀
w:可寫
x:可執行
2.數字法:
xxx表示數字屬性,格式為3個從0到7的數,其對應的主體順序是u g o,
將對應主體位上的所有權值分別相加就可以得到這個三位數了。
4表示可讀許可權
2表示可寫許可權
1表示可執行許可權
0表示沒有許可權
相加後的值表示的意義如下:
7=4+2+1 表示可讀可寫可執行
6=4+2 表示可讀可寫
5=4+1 表示可讀可執行
3=2+1 表示可寫可執行
例1:
chmod 755 <file-name>
表示將文件<file-name>的許可權修改為:
u(文件所有者) 可讀可寫可執行
g(文件所屬組) 可讀可執行
o(其它人) 可讀可執行
這種修改用第一種方式來寫就是(假設文件之前沒任何許可權)(如果有許可權這樣寫也可以,只是太繁瑣):
chmod a+rx,u+w <file-name>
或
chmod ugo+rx,u+w <file-name>
或
chmod u+rwx,go+rx <file-name>
另外,
如果原來文件已經有許可權,如-rw-r--r--,則用第一種方式來寫如下:
chmod ugo+x <file-name>
或
chmod a+x <file-name>
如果原來文件已經有許可權,如drwxrwxrwx,則用第一種方式來寫如下:
chmod go-w <file-name>
例2:
chmod 777 <file-name>
表示將文件<file-name>的許可權修改為:
a(所有人)可讀可寫可執行
這種修改用第一種方式來寫就是(假設文件之前沒任何許可權)(如果有許可權這樣寫也可以,只是太繁瑣):
chmod a+rwx <file-name>
或
chmod ugo+rwx <file-name>
另外,
如果原來文件已經有許可權,如drwxr-xr-x,則用第一種方式來寫如下:
chmod go+w <file-name>