[root@test etc]# useradd --help
useradd: invalid option -- -
usage: useradd [-u uid [-o]] [-g group] [-g group,...]
[-d home] [-s shell] [-c comment] [-m [-k template]]
[-f inactive] [-e expire ] [-p passwd] [-m] [-n] [-r] name
useradd -d [-g group] [-b base] [-s shell]
[-f inactive] [-e expire ]
當不加 -d 引數, useradd 指令使用命令列來指定新帳號的設定值 and 使用系統上的預設值。新使用者帳號將產生一些系統檔案,使用者目錄建立,拷備起始檔案等,這些均可以利用命令列選項指定。此版本為redhatlinux
提供。引數說明:
-u 使用者的id值。必須為唯一的id值,除非用-o選項。數字不可為負值。預設為最小不得小於999而逐次增加。0~999傳統上是保留給系統帳號使用。
-g 《群組》指定使用者所屬的群組。名稱或以數字來做為使用者登入起始群組(group)。群組名須為現有存在的名稱。群組數字也須為現有存在的群組。預設的群組數字為1。
-g 《群組》指定使用者所屬的附**組。定義此使用者為此一堆 groups 的成員。每個群組使用","區格開來,不可以夾雜空白字元。群組名同-g選項的限制。定義值為使用者的起始群組。
-d 《登入目錄》指定使用者登入時的啟始目錄。新帳號每次登入時所使用的 home_dir。預設值為 default_home內login 名稱,並當成登入時目錄名稱。
-s 使用者登入後使用的shell名稱。預設為不填寫,這樣系統會幫你指定預設的登入shell。
-c 《備註》為新帳號加上備註文字(password檔的說明欄),備註文字會儲存在passwd的備註欄位中。
-m 使用者目錄如不存在則自動建立。如使用-k選項 skeleton_dir 內的檔案將複製至使用者目錄下。然而在 /etc/skel 目錄下的檔案也會複製過去取代。任何在 skele-ton_dir or/etc/skel 的目錄也相同會在使用者目錄下一一建立。the-k同-m不建立目錄以及不複製任何檔案為預設值。
-m 不建立使用者目錄,即使 /etc/login.defs 系統檔設定要建立使用者目錄。
-n 預設值使用者群組與使用者名稱會相同。此選項將取消此預設值。
-f 《緩衝天數》指定在密碼過期後多少天即關閉該帳號。當值為0時帳號則立刻被停權。而當值為-1時則關閉此功能,預設值為-1。
-e 《有效期限》指定帳號的終止日期。日期的指定格式為 mm/dd/yy 。
-r 此引數是用來建立系統帳號。系統帳號的uid會比定義在系統檔上/etc/login.defs。的uid_min來的小。注意useradd此用法所建 立的帳號不會建立使用者目錄,也不會在乎紀錄在 /etc/login.defs. 的定義值。如果你想要有使用者目錄須額外指定-m引數來建立系統帳號。這是redhat額外增設的選項。
-p 使用者可以在建立賬戶時,一併設定好密碼,-p引數後跟的是密文,在/etc/shadow檔案中可以查詢到相關密碼所對應的密文。
-d 變更預設值。
改變預設值(沒試驗過,很少用)
當 -d 選項出現時,useradd秀出現在的預設值,或是藉由命令列的方式更新預設值。可用選項為∶
-b default_home定義使用者所屬目錄的前乙個目錄。使用者名稱會附加在default_home後面用來建立新使用者的目錄。當然使用-d後則此選項無效。
-e default_expire_date使用者帳號停止日期。
-f default_inactive帳號過期幾日後停權。
-g default_group新帳號起始群組名或id。群組名須為現有存在的名稱。群組id也須為現有存在的群組。
-s default_shell使用者登入後使用的 shell 名稱。往後新加入的帳號都將使用此 shell.
如不指定任何引數,useradd 顯示目前預設的值。
註記系統管理者有義務在 /etc/skel 目錄下放置使用者定義檔。此版本『useradd』由redhat修改。
警告不可新增使用者於nis群組中。你必須在nis伺服器上執行。
檔案/etc/passwd - 使用者帳號資訊
/etc/shadow - 使用者帳號資訊加密
/etc/group - 群組資訊
/etc/default/useradd - 定義資訊
/etc/login.defs - 系統廣義設定
/etc/skel - 內含定義檔的目錄
useradd 預設值:
上面的示例可以讓我們了解到,系統其實已經規範好了一些新增使用者時的引數了,像我沒有指定使用者的家目錄,也沒有指定使用者的 uid 和 gid 可是系統會幫我們為使用者加上,同時其預設shell被設定成了 /bin/bash ,也讓我知道了,使用 useradd 命令一定要有root許可權。那麼,useradd 去新增使用者時,其預設值是多少呢?使用上面所說的 useradd 的 -d 引數可以顯示出其預設值,各位可以看出,其值完全與 /etc/default/useradd 這個檔案裡面的內容相同。原來在 linux 中使用 useradd 去新增使用者時,一些在 /etc/passwd 中的值是會去參考 /etc/default/useradd 這個檔案的。其檔案內容基本如下:
# useradd defaults file
group=100 # 預設的使用者組
home=/home # 家目錄的位址
inactive=-1 # 密碼過期的寬限時間,對應 /etc/shadow 的第七欄
expire= # 賬號失效日期,對應 /etc/shadow 的第八欄
shell=/bin/bash # 預設使用的shell
skel=/etc/skel # 使用者家目錄裡面的內容參照檔案(裡面基本上全為隱藏檔案——>以「.」開頭的檔案)
create_mail_spool=yes# 建立使用者的mailbox
舉例:例一:增加乙個mail_0001賬戶,屬於mailuser組,密碼是1234(\$1\$m3eaghpj\$gs5elcforokdagwz1j8xc0假如為1234的密文),且沒有登入系統的許可權:
useradd -p \$1\$m3eaghpj\$gs5elcforokdagwz1j8xc0 -g mailuser -s /sbin/nologin mail_0001
例二:不加任何引數,直接預設建立乙個新使用者chongpig
[root@xiaoxiaozi simaopig]# useradd chongpig
在和使用者相關聯的幾個檔案裡面搜一下chongpig這個賬號
[root@xiaoxiaozi simaopig]# grep chongpig /etc/passwd /etc/shadow /etc/group
/etc/passwd:chongpig:x:501:501::/home/chongpig:/bin/bash
/etc/shadow:chongpig:!!:14446:0:99999:7:::
/etc/group:chongpig:x:501:
例三:建立乙個新賬號 simaopig2 ,且看一下uid 888不存在,那麼就指定給simaopig2,並且把它加到mysql 組中:
[root@xiaoxiaozi simaopig]# grep 888 /etc/passwd
[root@xiaoxiaozi simaopig]# useradd -u 888 -g mysql simaopig2
[root@xiaoxiaozi simaopig]# grep simaopig2 /etc/passwd /etc/shadow /etc/group
/etc/passwd:simaopig2:x:888:27::/home/simaopig2:/bin/bash
/etc/shadow:simaopig2:!!:14446:0:99999:7:::
userdel命令:
功能說明:刪除使用者帳號。
語 法:userdel [options] [使用者帳號]
補充說明:userdel可刪除使用者帳號與相關的檔案。若不加引數,則僅刪除使用者帳號,而不刪除相關檔案。
引數:-f 刪除使用者登入目錄以及目錄中所有檔案。
-r 使用者目錄下的檔案一併移除,在其他位置上的檔案也將一一找出並刪除.
linux命令學習 awk 命令學習
三 awk 指令碼 四 awk 程式設計 五 寫在結尾 awk是linux上一款強大的文字分析工具,它可以將檔案逐行的讀入,然後用分割符分割開來,再對分割的各個部分進行處理。awk分割的各個部分叫做域,預設的分割符是空格和製表符。可以通過 f來指定分割符。awk有3個不同版本 awk nawk和ga...
linux命令學習 iostat 命令學習
三 一些擴充套件 參考資料 當我們要看系統io情況時,一般最先想到的應該就是iostat命令的。iostat提供了豐富的引數給我們查詢各種維度的io資料。學習iostat有助於我們排查io相關問題時可以更快的定位到問題根源。以下內容大多來自iostat的man文件,會加上部分自己的理解,英文水平好的...
linux命令學習
1.sudo s 能在不輸入命令的情況下將目錄切換到root使用者 2.du sh 檔名 能夠指示檔案的大小 3.ls lh 檔名 能夠指示檔案的大小和詳細資訊 4.kill 9 pid 絕殺程序 所有程序都能殺 檔案的查詢 find 查詢的路徑 home name 檔名或 檔名 當make時錯誤資...