一、權限基礎
在Linux中,每個文件和文件夾都擁有自己的所有者、組和權限。權限是用來控制對文件和文件夾的訪問的。權限分為三種類型:讀取權限、寫入權限和執行權限,分別對應的是r、w和x。
不同的用戶或用戶組對同一文件或文件夾可能會有不同的權限。
例如,以下命令將文件夾test的所有權賦予用戶webadmin,同時刪除其他所有用戶的權限,對於目錄test里的文件,每個用戶只有讀取和執行的權限,webadmin有讀取、寫入和執行的權限。
chown webadmin test
chmod -R 755 test
二、權限的數字表示
Linux中,權限可以用數字表示。r對應4,w對應2,x對應1。將數字相加便可表示出不同的權限組合。
例如,數字7代表權限為rwx。
將數字表示權限的命令如下:
chmod 777 test
三、修改文件夾權限
用戶對文件夾的權限可以通過命令chmod改變。
以下命令將文件夾test的所有權賦予用戶webadmin,同時刪除其他所有用戶的權限,對於目錄test里的文件,每個用戶只有讀取和執行的權限,webadmin有讀取、寫入和執行的權限。
chown webadmin test
chmod -R 755 test
四、查看文件夾權限
用戶對文件夾的權限可以通過命令ls -l查看。
以下命令將查看文件夾test的權限:
ls -l test
五、特殊權限
除了三種基本權限外,還有三個特殊的權限:setuid、setgid和sticky bit。
setuid權限可以讓一個程序在執行時獲取文件所有者的權限。
setgid權限可以讓文件和文件夾的組權限繼承自父文件夾。
sticky bit權限可以防止文件被誤刪。
下面的命令將test文件夾的sticky bit權限設置為on:
chmod +t test
六、用戶組
用戶組是指具有相同權限的一批用戶的集合。可以使用Groupadd命令添加一個新的用戶組。例如:
groupadd developers
可以通過以下命令將用戶添加到用戶組:
usermod -a -G developers user1
七、文件夾的默認權限
在Linux中,可以為新建的文件夾設置默認的權限。這樣,每當用戶在該文件夾下創建新的文件夾時,它們就會繼承相應的默認權限。
以下命令將文件夾test的默認權限設置為755:
chmod g+rws,o-rwx test
setfacl -d -m g::rwx test
八、使用ACLs進行高級權限管理
ACLs是一種高級權限系統,可以為文件和文件夾指定更加靈活和細緻的權限設置。ACLs允許用戶詳細指定每個用戶和用戶組的訪問權限,並可以具體指定哪種用戶擁有哪些權限。
setfacl -m u:user1:rwx /var/www
setfacl -m g:developers:rwx /var/www
setfacl -m m:user1:rwx /var/www
上述命令將為/var/www文件夾指定了一些ACLs規則。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/293086.html