在命令行使用命令「ll」或者「ls -a」,能夠查看文件或者文件的權限:spa
-rw-r--r--. 1 root root 6 Nov 9 16:42 a.txt
其中「-rw-r--r--」表示權限,一共有十個字符。命令行
第一個字符,若是是「-」則表示是文件,若是是「d」則表示是目錄(directory)。code
後面9個字符每3個字符又做爲一個組,則有3組信息(「rw-」、「r--」、「r--」),分別表示所屬用戶自己具備的權限、所屬用戶的用戶組其餘成員的權限、其餘用戶的權限。對象
每一組信息如「rw-」,每個字符都有它本身的特定含義且前後位置是固定的,其中r是讀權限、w是寫權限、x是可執行權限、-沒有對應字符的權限。Linux裏面對這些字符設置對應的數值,r是4,w是2,x是1,-是0。上面的「rw-」則是6(=4+2+0),因此最開始a.txt的權限是644,屬於root用戶組的root用戶。遞歸
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 與其餘用戶擁有同樣的權限。ast
我想修改文件a.txt的權限爲755,則爲:test
[root@master my]# ll -rw-r--r--. 1 root root 6 Nov 9 16:42 a.txt #改以前權限是644 [root@master my]# chmod 755 a.txt [root@master my]# ll -rwxr-xr-x. 1 root root 6 Nov 9 16:42 a.txt #改後權限是755
改以前:權限
[root@master test1]# ll drw-r--r--. 2 root root 4096 Nov 9 16:42 my #改以前文件夾my的權限是644 [root@master test1]# ll my/ -rwxr-xr-x. 1 root root 6 Nov 9 16:42 a.txt #改以前文件夾my的裏面的文件權限是755
執行命令修改my文件夾權限爲600:程序
[root@master test1]# chmod 600 my/ #修改命令 [root@master test1]# ll drw-------. 2 root root 4096 Nov 9 16:42 my #改my文件夾以後權限是600 [root@master test1]# ll my/ -rwxr-xr-x. 1 root root 6 Nov 9 16:42 a.txt #改my文件夾以後裏面的文件權限仍是755,沒有變化
執行1.2.1步驟以後,my文件夾和裏面的文件權限都是不一樣的。如今遞歸修改,都改成統一的權限777:
[root@master test1]# chmod -R 777 my/ #修改命令,注意中間是大寫的R,不是小寫 [root@master test1]# ll drwxrwxrwx. 2 root root 4096 Nov 9 16:42 my #修改後my文件夾權限是777 [root@master test1]# ll my/ -rwxrwxrwx. 1 root root 6 Nov 9 16:42 a.txt #修改後裏面的文件變爲了777
這個和修改文件夾的權限是基本相同的,只不過是把chmod命令換成了chown。
修改a.txt文件所屬用戶(jay)和用戶組(fefjay):
chown jay:fefjay a.txt #修改文件所屬用戶爲jay,所屬用戶組爲fefjay
僅修改文件夾my自己所屬用戶(jay)和用戶組(fefjay):
chown jay:fefjay my #修改文件所屬用戶爲jay,所屬用戶組爲fefjay
遞歸修改文件夾my及包含的全部子文件(夾)的所屬用戶(jay)和用戶組(fefjay):
chown -R jay:fefjay my #修改文件所屬用戶爲jay,所屬用戶組爲fefjay
修改單個文件(夾)就用命令:
chown或chmod 「權限」或「名:組」 文件(夾)名稱
修改文件夾及子文件夾全部文件就用命令:
chown或chmod -R 「權限」或「名:組」 文件夾名稱