linux常用終端命令(三)用戶和權限


三、用戶權限相關命令

  • 用戶 和 權限的基本概念
  • 用戶管理 終端命令
  • 組管理 終端命令
  • 修改權限 終端命令

1、用戶和權限的基本概念

1.1、基本概念

  • 用戶管理包括 用戶 與 組 管理
  • linux系統中,不論是由本機或是遠程登錄系統,每個系統都必須擁有一個賬號
    並且對於不同的系統資源用有不同的使用權限
  • 在linux中,可以指定 每一個用戶 針對 不同的文件或者目錄 的 不同權限
  • 文件 / 目錄 的權限包括:
序號 權限 英文 縮寫 數字代號
01 read r 4
02 write w 2
03 執行 excute x 1
04 無權限   - 0

 

 

 

 

 

 

1.2、組

  • 為了方便用戶管理,提出 組 的概念
  • 實際應用中,可以預先對 組 設置好權限,然后 將不同的用戶添加到對應的組中,從而
    不用依次為每個用戶設置權限

1.3、ls -l 擴展

  • ls -l 可以查看文件夾下文件的詳細信息,從左到右依次是:
    • 權限、第一個字符是 d 表示目錄
    • 硬鏈接數、有多少種方式可以訪問到當前目錄/文件
    • 擁有者、home目錄下 文件/目錄 的擁有者通常都是當前用戶
    • 組、linux中,很多時候,會出現組名和用戶名相同的情況
    • 大小
    • 時間
    • 名稱
  目錄 擁有者 組權限 其他用戶權限
文件權限示例 - r w - r w - r - -
目錄權限示例 d r w x r w x r - x

 

 

 

 

1.4、chmod 簡單使用

  • chmod 可以修改 用戶/組 對 文件/目錄 的權限
  • 命令格式:
$ chmod +/-rwx 文件名/目錄名
  • 以上方式會一次性修改 擁有者/組 權限

1.5、超級用戶

  • linux系統中的root 賬號通常用於系統的維護和管理,對操作系統的所有資源 具有所有訪問權限
  • 不推薦直接使用root賬號登錄系統
  • 在linux安裝過程中,系統會自動創建一個用戶賬號,而這個默認的用戶就稱為“標准用戶”

sudo

  • su 是substitute user的縮寫,表示使用另一個用戶的身份
  • sudo 命令用來以其他身份來執行命令,預設的身份為root
  • 用戶使用sudo時,必須先輸入密碼,之后有5分鍾的有效期限,超過期限則必須重新輸入密碼

2、組管理終端命令

創建組 / 刪除組 的終端命令都需要通過sudo執行

序號 命令 作用
01 groupadd 組名 添加組
02 groupdel 組名 刪除組
03 cat /etc/group 確認組信息
04 chgrp [-R] 組名 文件/目錄名 修改文件/目錄的所屬組

 

 

 

 

 

 

 

  • 組信息保存在/etc/group文件中
  • /etc 目錄是專門用來保存 系統配置信息 的目錄
  • chgrp的 -R 遞歸處理,將指定目錄下的所有文件及子目錄一並處理。

3、用戶管理 終端命令

創建用戶 / 刪除用戶 / 修改用戶 的終端命令都需要通過sudo執行

 3.1、創建用戶 / 設置密碼 / 刪除用戶

序號 命令 作用 說明
01 useradd -m -g 組 新用戶名 添加新用戶 -m  自動建立用戶家目錄
-g  指定用戶所在的組,否則會建立一個和用戶同名的組
02 passwd 用戶名 設置用戶密碼 如果是普通用戶,直接用passwd可以修改自己的賬戶密碼
03 userdel -r 用戶名 刪除用戶 -r 選項會自動刪除用戶家目錄
04 cat /etc/passwd | grep 用戶名 確認用戶信息 新建用戶后,用戶信息會保存在/etc/passwd文件中

 

 

 

 

 

  • 創建用戶時,如果忘記添加-m 選項指定新用戶的家目錄--簡單的方法就是刪除用戶,重新創建
  • 創建用戶時,默認會創建一個和用戶名同名的組名
  • 用戶信息保存在 /etc/passwd 文件中

3.2、查看用戶信息

序號 命令 作用
01 id [用戶名] 查看用戶UID和GID信息
02 who 查看當前所有登錄的用戶列表
03 whoami 查看當前登錄用戶的賬戶名

 

 

 

 

 

passwd文件

/etc/passwd  文件存放的是用戶的信息,由6個分號組成的7個信息,分別是:

  1. 用戶名
  2. 密碼(x,表示加密的密碼)
  3. UID(用戶標識)
  4. GID(組標識)
  5. 用戶全名或本地帳號
  6. 家目錄
  7. 登錄使用的 Shell,就是登錄之后,使用的終端命令,ubuntu 默認是 dash

 

usermod

  • usermod  可以用來設置用戶的主組 / 附加組 和登錄 Shell,命令格式如下:
  • 主組:通常在新建用戶時指定,在etc/passwd 的第4列GID對應的組
  • 附加組:在etc/group中最后一列表示該組的用戶列表,用於指定用戶的附加權限

設置了用戶的附加組之后,需要重新登錄才能生效!

# 修改用戶的主組(passwd 中的GID)
$ usermod -g 組 用戶名

# 修改用戶的附加組
$ usermod -G 組 用戶名

# 修改用戶登錄 Shell
$ usermod -s /bin/bash

默認使用useradd 添加的用戶是沒有權限使用 sudo 以 root 身份執行命令的,
可以使用以下命令,將用戶添加到sudo附加組中

usermod -G sudo 用戶名

 

which

  • /etc/passwd  是用於保存用戶信息的文件
  • /usr/bin/passwd  是用於修改用戶密碼的程序

which  命令可以查看執行命令所在位置,例如:

$ which ls

# 輸出
# /bin/ls

$ which useradd

# 輸出
# /user/sbin/useradd

 

bin和sbin

  • 在linux中,絕大多數可執行文件都是保存在 /bin、/sbin、/usr/bin、/usr/sbin
  • /bin  是二進制執行文件目錄,主要用於具體應用
  • /sbin  是系統管理員專用的二進制代碼存放目錄,主要用於系統管理
  • /usr/bin  后期安裝的一些軟件
  • /usr/sbin 超級用戶的一些管理程序

cd 終端命令是內置在系統內核中的,沒有獨立的文件。

3.3、切換用戶

序號 命令 作用 說明
01 su - 用戶名 切換用戶,並且切換目錄 -  可以切換到用戶家目錄,否則保持位置不變
02 exit 退出當前登錄賬戶  

 

 

 

 

  • sudo 不接用戶,可以切換到root

4、修改文件權限

序號 命令 作用
01 chown 修改擁有者
02 chgrp 修改組
03 chmod 修改權限

 

 

 

 

 

命令格式如下:

# 修改文件|目錄的擁有者
$ chown 用戶名 文件名|目錄名


# 遞歸修改文件|目錄的組
$ chgrp -R 組名 文件名|目錄名

# 遞歸修改文件權限
$ chmod -R 755 文件名|目錄名
  • chmod 在設置權限時,可以簡單地使用三個數字分別對應 擁有者 / 組 / 其他 用戶的權限
# 直接修改文件|目錄的 讀|寫|執行 權限,但不能精確到 擁有者|組|其他
$ chmod +/-rwx 文件名|目錄名
擁有者 其他
r w x r w x r w x
4 2 1 4 2 1 4 2 1

 

 

 

 

  • 常見數字組合有(u 表示用戶 / g 表示組 / o 表示其他):
    • 777  ===> u=rwx,g=rwx,o=rwx
    • 755  ===> u=rwx,g=r-x,o=r-x
    • 644  ===> u=rw,g=r,o=r

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM