無論是Window,MacOs,Linux均採用多用戶的管理模式進行許可權管理。 在Linux系統中,擁有最大許可權的賬戶名為:root(超級管理員)。 root用戶擁有最大的系統操作許可權,而普通用戶在許多地方的許可權是受限的。 普通用戶一般在HOME目錄是不受限制的,一旦出了HOME目錄,大多地方,僅有 ...
無論是Window,MacOs,Linux均採用多用戶的管理模式進行許可權管理。
- 在Linux系統中,擁有最大許可權的賬戶名為:root(超級管理員)。
- root用戶擁有最大的系統操作許可權,而普通用戶在許多地方的許可權是受限的。
- 普通用戶一般在HOME目錄是不受限制的,一旦出了HOME目錄,大多地方,僅有隻讀和執行許可權。
切換用戶
su命令就是用於賬戶切換的系統命令,其來源英文單詞:Switch User
語法:su [-] [用戶名]
- -符號是可選的,表示是否在切換用戶後載入環境變數,建議帶上。
- 用戶名參數,表示要切換的用戶,用戶名也可以省略,省略表示切換到root
- 切換用戶後,可以通過exit命令退回上一個用戶,也可以使用快捷鍵ctrl + d
區別
- 使用普通用戶,切換到其他用戶需要輸入密碼。
- 使用root用戶切換到其他用戶,無需密碼,可以直接切換。
臨時授權
sudo命令,可以為普通的命令授權,臨時以root身份執行。
語法:sudo 其他命令
- 在其他命令之前,帶上sudo,即可為這條命令臨時賦予root授權。
- 並不是所有用戶都有權利使用sudo,需要給普通用戶配置sudo認證。
為普通用戶配置sudo認證
-
切換到root用戶,執行visudo命令,會自動通過vi編輯器打開:/etc/sudoers。
-
在文件的最後添加
[用戶名] ALL=(ALL) NOPASSWD:ALL
- 其中最後的NOPASSWD:ALL表示使用sudo命令,無需輸入密碼。
-
最後通過
wq
保存。 -
切換回普通用戶。
-
執行的命令,均以root運行。
用戶與用戶組
Linux系統中可以
- 配置多個用戶
- 配置多個用戶組
- 用戶可以加入多個用戶組中
Linux中關於許可權的管控級別有2個級別,分別是:
- 針對用戶的許可權控制
- 針對用戶組的許可權控制
用戶組管理
以下命令需要root用戶執行
-
創建用戶組
groupadd [用戶組]
-
刪除用戶組
groupdel [用戶組]
-
創建用戶
useradd [-g -d] 用戶名
- -g選項:指定用戶的組,不指定-g的話會創建同名組並自動加入,如果指定-g需要組已存在,如已存在同名組,必須使用-g。
- -d選項:指定用戶HOME路徑,不指定的話HOME目錄預設在:/home/用戶名。
-
刪除用戶
useradd [-r] 用戶名
- -r選項:刪除用戶的HOME目錄,不使用-r的話刪除用戶時,HOME目錄會保留
-
查看用戶所在組
id[用戶名]
-
修改用戶所在組
usermod -aG 用戶組 用戶名,將指定用戶加入指定用戶組
-
查看當前系統中有哪些用戶
語法:getent passwd
- 共有7份信息分別是:用戶名:密碼(x):用戶ID:組ID描述信息(無用):HOME目錄:執行終端(預設bash)
認識許可權信息
許可權細節總共分為10個槽位
舉例:drwxr-xr-x 表示
- 這是一個文件夾,首字母d表示
- 所屬用戶的許可權是:有r有x,rwx
- 所屬用戶組的許可權是:有r無w有r,r-x(-表示無此許可權)
- 其他用戶的許可權是:有r無w有r,r-x
rwx表示
- r表示讀許可權
- w表示寫許可權
- x表示執行許可權
針對文件,文件夾的不同,rwx的含義有細微差別
- r,針對文件可以查看文件內容,針對文件夾,可以查看文件夾內容,如ls。
- w,針對文件表示可以修改此文件,針對文件夾,可以在文件夾內:創建,刪除,改名等操作。
- x,針對文件表示可以將文件作為程式執行,針對文件夾,表示可以更改工作目錄到此文件夾,即cd。
修改許可權控制
註意:只有文件,文件夾的所屬用戶或root用戶可以修改。
chmod
可以使用chmod修改文件,文件夾許可權信息。
語法:chmod [-R] 許可權 文件或文件夾
示例:
chmod u=rwx,g=rx,o=x hello.txt #將文件許可權修改為rwxr-x--x
其中:u表示user所屬用戶許可權,g表示group組許可權,o表示other其他用戶許可權
- -R選項,對文件夾內的全部內容應用同樣的操作
除此之外,還有快捷寫法:chmod 751 hello.txt #將hello.txt得許可權修改為751
751表示什麼意思呢?
許可權的數字序號
許可權可以用3為數字代表
- 第一位表示用戶許可權
- 第二位表示用戶組許可權
- 第三位表示其他用戶許可權。
數字細節如下
- 0:無任何許可權,即---
- 1:僅有x許可權,即--x
- 2:僅有w許可權,即-w-
- 3:有w和x許可權,即-wx
- 4:僅有r許可權,即r--
- 5:有r和x許可權,即r-x
- 6:有r和w許可權,即rw-
- 7:有全部許可權,即rwx
所以751表示:(7)rwx(5)r-x(1)--x
chown
使用chown命令,可以修改文件,文件夾的所屬用戶和用戶組
語法:chown [-R] [用戶][:][用戶組] 文件或文件夾
- 選項,-R,對文件夾內的全部內容應用同樣的操作。
- 選項,用戶,修改所屬用戶。
- 選項,用戶組,修改所屬用戶組。
- :用於分隔用戶和用戶組。
示例
- chown root hell.txt,將hello.txt所屬用戶修改為root
- chown :root hell.txt,將hello.txt所屬用戶組修改為root
- chown root:KF hell.txt,將hello.txt所屬用戶修改為root,所屬用戶組修改為KF
- chown -R root test,將文件夾test的所屬用戶修改為root並對文件夾內全部應用同樣規則。