Linux用戶管理命令


一、用戶管理命令

相關命令:useradd、userdel、usermod、passwd、su、sudo、id

用戶管理文件 /etc/passwd

各字段解釋,以root用戶為例

root:x:0:0:root:/root:/bin/bash

 

2.useradd命令

Linux useradd 命令用於建立用戶帳號。

語法: useradd -D [-b][-e <有效期限>][-f <緩沖天數>][-g <群組>][-G <群組>][-s <shell>]

參數說明

  • -c<備注>  加上備注文字。備注文字會保存在passwd的備注欄位中。
  • -d<登入目錄>  指定用戶登入時的起始目錄。
  • -D  變更預設值.
  • -e<有效期限>  指定帳號的有效期限。
  • -f<緩沖天數>  指定在密碼過期后多少天即關閉該帳號。
  • -g<群組>  指定用戶所屬的群組。
  • -G<群組>  指定用戶所屬的附加群組。
  • -m  自動建立用戶的登入目錄。
  • -M  不要自動建立用戶的登入目錄。
  • -n  取消建立以用戶名稱為名的群組.
  • -r  建立系統帳號。
  • -s<shell>   指定用戶登入后所使用的shell。
  • -u<uid>  指定用戶ID。

3.userdel命令

Linux userdel命令用於刪除用戶帳號。

語法: userdel [-r][用戶帳號]

參數說明

  • -r  刪除用戶登入目錄以及目錄中所有文件。

4.usermod命令

Linux usermod命令用於修改用戶帳號。

語法: usermod [-LU][-c <備注>][-d <登入目錄>][-e <有效期限>][-f <緩沖天數>][-g <群組>][-G <群組>][-l <帳號名稱>][-s <shell>][-u <uid>][用戶帳號]

參數說明

  • -c<備注>  修改用戶帳號的備注文字。
  • -d登入目錄>  修改用戶登入時的目錄。
  • -e<有效期限>  修改帳號的有效期限。
  • -f<緩沖天數>  修改在密碼過期后多少天即關閉該帳號。
  • -g<群組>  修改用戶所屬的群組。
  • -G<群組>  修改用戶所屬的附加群組。
  • -l<帳號名稱>  修改用戶帳號名稱。
  • -L  鎖定用戶密碼,使密碼無效。
  • -s<shell>  修改用戶登入后所使用的shell。
  • -u<uid>  修改用戶ID。
  • -U  解除密碼鎖定。

5.passwd命令

Linux passwd命令用來更改使用者的密碼

語法:passwd [-k] [-l] [-u [-f]] [-d] [-S] [username]

必要參數

  • -d 刪除密碼
  • -f 強迫用戶下次登錄時必須修改口令
  • -w 口令要到期提前警告的天數
  • -k 更新只能發送在過期之后
  • -l 停止賬號使用
  • -S 顯示密碼信息
  • -u 啟用已被停止的賬戶
  • -x 指定口令最長存活期
  • -g 修改群組密碼
  • 指定口令最短存活期
  • -i 口令過期后多少天停用賬戶

6.su命令

Linux su(英文全拼:switch user)命令用於變更為其他使用者的身份,除 root 外,需要鍵入該使用者的密碼。

使用權限:所有使用者。

語法:su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]]

參數說明

  • -f 或 --fast 不必讀啟動檔(如 csh.cshrc 等),僅用於 csh 或 tcsh
  • -m -p 或 --preserve-environment 執行 su 時不改變環境變數
  • -c command 或 --command=command 變更為帳號為 USER 的使用者並執行指令(command)后再變回原來使用者
  • -s shell 或 --shell=shell 指定要執行的 shell (bash csh tcsh 等),預設值為 /etc/passwd 內的該使用者(USER) shell
  • --help 顯示說明文件
  • --version 顯示版本資訊
  • - -l 或 --login 這個參數加了之后,就好像是重新 login 為該使用者一樣,大部份環境變數(HOME SHELL USER等等)都是以該使用者(USER)為主,並且工作目錄也會改變,如果沒有指定 USER ,內定是 root
  • USER 欲變更的使用者帳號
  • ARG 傳入新的 shell 參數

細節

su -: 會切換root用戶,也會把用戶變量也切換到root的環境變量

su :  只是會切換root用戶,但是當前的環境變量還是以前用戶的環境變量

 

7.sudo命令

Linux sudo命令以系統管理者的身份執行指令,也就是說,經由 sudo 所執行的指令就好像是 root 親自執行。

使用權限:在 /etc/sudoers 中有出現的使用者。

參數說明

  • -V 顯示版本編號
  • -h 會顯示版本編號及指令的使用方式說明
  • -l 顯示出自己(執行 sudo 的使用者)的權限
  • -v 因為 sudo 在第一次執行時或是在 N 分鍾內沒有執行(N 預設為五)會問密碼,這個參數是重新做一次確認,如果超過 N 分鍾,也會問密碼
  • -k 將會強迫使用者在下一次執行 sudo 時問密碼(不論有沒有超過 N 分鍾)
  • -b 將要執行的指令放在背景執行
  • -p prompt 可以更改問密碼的提示語,其中 %u 會代換為使用者的帳號名稱, %h 會顯示主機名稱
  • -u username/#uid 不加此參數,代表要以 root 的身份執行指令,而加了此參數,可以以 username 的身份執行指令(#uid 為該 username 的使用者號碼)
  • -s 執行環境變數中的 SHELL 所指定的 shell ,或是 /etc/passwd 里所指定的 shell
  • -H 將環境變數中的 HOME (家目錄)指定為要變更身份的使用者家目錄(如不加 -u 參數就是系統管理者 root )
  • command 要以系統管理者身份(或以 -u 更改為其他人)執行的指令

8.id命令

Linux id命令用於顯示用戶的ID,以及所屬群組的ID。

id會顯示用戶以及所屬群組的實際與有效ID。若兩個ID相同,則僅顯示實際ID。若僅指定用戶名稱,則顯示目前用戶的ID。

語法:id [-gGnru][--help][--version][用戶名稱]

參數說明

  • -g或--group  顯示用戶所屬群組的ID。
  • -G或--groups  顯示用戶所屬附加群組的ID。
  • -n或--name  顯示用戶,所屬群組或附加群組的名稱。
  • -r或--real  顯示實際ID。
  • -u或--user  顯示用戶ID。
  • -help  顯示幫助。
  • -version  顯示版本信息。


免責聲明!

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



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