Linux 檢視以及修改檔案或資料夾的許可權
1. linux下修改檔案使用者組
-
chgrp: change group的簡寫,修改檔案所屬的使用者組。
chgrp users test.log
-
修改後檢視 ls -l
-rwxrwx— 1 work users 0 Jun 8 15:46 test.log
-
如果要修改該目錄下所有檔案和目錄,使用-R引數。
chgrp -R users test
-
要被改變的group名,必須在 /etc/group 檔案中。 /etc/group檔案記錄系統中所有的組名稱。
2. linux下修改檔案所有者
-
chown :change owner的簡寫, 修改檔案的所有者。
chown [-R] 賬號名稱 檔案或目錄
-
-R 遞迴,將子目錄下檔案全部修改。 將檔案所有者修改bin
chown bin test.log
-
修改的使用者必須在/etc/passwd檔案中 /etc/passwd記錄使用者資訊。 chown還可以修改組名稱將
所有者和組名稱都修改為root。chown root:root test.log
3.Linux系統下檢視檔案或資料夾的許可權:
1)在終端輸入:
ls -l xxx.xxx (xxx.xxx是檔名)
那麼就會出現相類似的資訊,主要都是這些:
-rw-rw-r–
如下圖:
一共有10位數
其中: 最前面那個 - 代表的是型別,如果是目錄,最前面這個是d
中間那三個 rw- 代表的是所有者(user)
然後那三個 rw- 代表的是組群(group)
最後那三個 r-- 代表的是其他人(other)
然後我再解釋一下後面那9位數:
r 表示檔案可以被讀(read)
w 表示檔案可以被寫(write)
x 表示檔案可以被執行(如果它是程式的話)
- 表示相應的許可權還沒有被授予 現在該說說修改檔案許可權了:
在終端輸入:
chmod o+w
表示給其他人授予寫xxx.xxx這個檔案的許可權
chmod go-rw 檔名xxx.xxx
表示刪除xxx.xxx中組群和其他人的讀和寫的許可權 其中:
u 代表所有者(user)
g 代表所有者所在的組群(group)
o 代表其他人,但不是u和g (other)
a 代表全部的人,也就是包括u,g和o
r 表示檔案可以被讀(read)
w 表示檔案可以被寫(write)
x 表示檔案可以被執行(如果它是程式的話)
其中:rwx也可以用數字來代替
r ------------4
w ------------2
x ------------1
- ------------0 行動:
+ 表示新增許可權
- 表示刪除許可權
= 表示使之成為唯一的許可權 當大家都明白了上面的東西之後,那麼我們常見的以下的一些許可權就很容易都明白了:
-rw------- (600) 只有所有者才有讀和寫的許可權
-rw-r–r-- (644) 只有所有者才有讀和寫的許可權,組群和其他人只有讀的許可權
-rwx------ (700) 只有所有者才有讀,寫,執行的許可權
-rwxr-xr-x (755) 只有所有者才有讀,寫,執行的許可權,組群和其他人只有讀和執行的許可權
-rwx–x--x (711) 只有所有者才有讀,寫,執行的許可權,組群和其他人只有執行的許可權
-rw-rw-rw- (666) 每個人都有讀寫的許可權
-rwxrwxrwx (777) 每個人都有讀寫和執行的許可權 等效寫法:chmod u+rw xxx.xxx = chmod 600 xxx.xxx chmod a+r xxx.xxx = chmod 444 xxx.xxx
-
如果要加上特殊許可權,就必須使用4位數字才能表示。特殊許可權的對應數值為:
s或 S (SUID):對應數值4。
s或 S (SGID):對應數值2。
t或 T :對應數值1。 用同樣的方法修改檔案許可權就可以了
chmod 7600 xxx.xxx 想一次修改某個目錄下所有檔案的許可權,包括子目錄中的檔案許可權也要修改,要使用引數-R表示啟動遞迴處理。
例如:chmod 777 /home/user 注:僅把/home/user目錄的許可權設定為rwxrwxrwx
chmod -R 777 /home/user 注:表示將整個/home/user目錄與其中的檔案和子目錄的許可權都設定為rwxrwxrwx -
使用命令chown改變目錄或檔案的所有權
檔案與目錄不僅可以改變許可權,其所有權及所屬使用者組也能修改,和設定許可權類似,使用者可以通過圖形介面來設定,或執行chown命令來修改。
1. chown user xxx.xxx要改變所屬組,可使用下面命令:
2.chown :users xxx.xxx要同時改變所屬使用者和組:
3.chown user:usergroup xxx.xxx要修改目錄及子目錄的許可權,使用-R引數就可以了,方法和前面一樣。