一、使用者和許可權

檢視某個目錄下檔案的詳細資訊:ls -l /home/user
在這裡插入圖片描述
每一列代表的含義:
1)許可權,第 1 個字元如果是 d 表示目錄,然後依次是使用者許可權、組許可權、其他使用者許可權
2)硬連結數,通俗地講,就是有多少種方式,可以訪問到當前目錄/檔案,比如,a下有子目錄b,b下有子目錄c、d…那麼a的硬連結數就是3:/home/user/a、...
3)擁有者,家目錄下 檔案/目錄 的擁有者通常都是當前使用者
4)組。
二、組管理 終端命令

命令 作用
groupadd 組名 新增組
groupdel 組名 刪除組
cat /etc/group 檢視組資訊
chgrp -R 組名 檔案/目錄名 修改檔案/目錄的所屬組

建立組 / 刪除組 的終端命令都需要通過 sudo 執行,組資訊儲存在 /etc/group 檔案中,/etc 目錄是專門用來儲存系統配置資訊的目錄,在實際應用中,對每個組設定不同的許可權,然後將不同的使用者新增到對應的組中,從而不用依次為每一個使用者設定許可權。

二、使用者管理 終端命令

命令 作用
useradd -m -g 組 新建使用者名稱 新增新使用者 -m, 自動建立使用者家目錄,-g指定使用者所在的組,否則會建立一個和同名的組
passwd 使用者名稱 設定使用者密碼 如果是普通使用者,直接用 passwd 可以修改自己的賬戶密碼
userdel -r 使用者名稱 刪除使用者, -r 選項會自動刪除使用者家目錄
cat /etc/passwd grep 使用者名稱
id [使用者名稱] 檢視使用者 UID 和 GID 資訊
who 檢視當前所有登入的使用者列表
whoami 檢視當前登入使用者的賬戶名

/etc/passwd 檔案存放的是使用者的資訊,由 6 個分號組成的 7 個資訊,分別是
1)使用者名稱
2)密碼(x,表示加密的密碼)
3)UID(使用者標識)
4)GID(組標識)
5)使用者全名或本地帳號
6)家目錄
7)登入使用的 Shell,就是登入之後,使用的終端命令,ubuntu 預設是 dash

usermod

usermod 可以用來設定 使用者 的 主組 / 附加組 和 登入 Shell,命令格式如下:

命令 作用
usermod -g 組 使用者名稱 修改使用者的主組(passwd 中的 GID)
usermod -G 組 使用者名稱 修改使用者的附加組
usermod -s /bin/bash 使用者名稱 修改使用者登入 Shell
usermod -G sudo 使用者名稱 將使用者新增到 sudo 附加組中

which命令
which 命令可以檢視執行命令所在位置,例如:

命令 作用
which ls 輸出/bin/ls
which useradd 輸出/usr/sbin/useradd

bin 和 sbin
在 Linux 中,絕大多數可執行檔案都是儲存在 /bin、/sbin、/usr/bin、/usr/sbin
/bin(binary)是二進位制執行檔案目錄,主要用於具體應用
/sbin(system binary)是系統管理員專用的二進位制程式碼存放目錄,主要用於系統管理
/usr/bin(user commands for applications)後期安裝的一些軟體
/usr/sbin(super user commands for applications)超級使用者的一些管理程式

切換使用者

命令 作用
su - 使用者名稱 切換使用者,並且切換目錄,加上-表示可以切換到使用者家目錄,否則保持位置不變
exit 退出當前登入賬戶

su 不接使用者名稱,可以切換到 root,但是不推薦使用,因為不安全

三、修改檔案許可權

命令 作用
chown 使用者名稱 檔名/目錄名 修改檔案
chgrp -R 組名 檔名/目錄名 修改檔案許可權
chmod -R 755 檔名/目錄名 修改檔案許可權,三個數字分別對應 擁有者 / 組和其他使用者的許可權

注意,chmod +/-rwx 檔名|目錄名這個命令是直接修改檔案/目錄的 讀|寫|執行 許可權,但是不能精確到擁有者|組|其他。