Linux中每個文件的權限都分爲三部分:所有者、所有者所在組其他用戶、其他組用戶
基本概念
用戶組
Linux中,所有的用戶都必須屬於一個組
所有者
文件的所有者一般是文件的創建者
文件所在組
文件所在組與文件所有者所在的組相同
文件權限
使用命令 ls -l
顯示的內容中符號的含義:
- 第一個字符代表文件(-),目錄(d),鏈接(l)
- 接下來的九個字符每三個一組,代表讀(r),寫(w),執行(x)
- 第一組是文件所有者的權限
- 第二組是文件所有者所在組其他用戶的權限
- 第三組是其他組用戶的權限
- 權限也可用數字表示:r = 4,w = 2,x = 1,實際上分別對應着二進制的一位
- 接下來的數字表示連接的文件數
- 後面的兩個字符串分別對應文件所有者和文件所有者所在組
- 在後面的數值表示文件的大小(以字節爲單位)
- 然後是最後一次修改日期
- 最後的字符串表示文件名
舉例:
-rwxr-xr-x 1 root root 437 12月 2 09:53 filename
含義:
- 一個文件
- 所有者的權限爲讀寫和執行,所有者所在組的其他用戶和其他組的用戶的權限都爲讀和執行
- 文件所有者爲root
- 文件所有者所在的組爲root
- 大小爲437B
- 最後一次修改在12月2日9點53分
- 文件名爲filename
查看文件詳細信息
ls -l
命令可以查看文件的詳細信息ls -ahl
命令可以查看所有文件(包括隱藏文件)的詳細信息
更改文件權限
- 第一種形式
chmod 755 filename
表示給文件filename加上rwxr-xr-x的權限
- 第二種形式
- 在這種形式中,u代表所有者權限(用戶權限),g代表所有者所在組其他用戶權限(組權限),o代表其他組用戶權限,a代表所有用戶權限
+
代表加入權限,-
代表去除權限,=
代表設置權限chmod u=rwx,g=rx,o=rx filename
也可以寫爲chmod u=rwx,go=rx filename
更改所有者和用戶組
- 更改所有者
chown username filename
將文件filename的所有者改爲用戶username
- 更改所在組
chgrp groupname filename
將文件filename所在組改爲組groupname
- 還可以加上
-R
參數表示遞歸地進行更改(對目錄)
増刪用戶
- 添加用戶
adduser username
添加用戶usernamepasswd username
爲用戶username設置密碼
- 刪除用戶
userdel username
刪除用戶username
用戶組操作
- 添加組
groupadd groupname
增加組groupname
- 刪除組
groupdel groupname
刪除組groupname
- 更改用戶所在組
usermod -g groupname username
將用戶username更改到組groupname下