Linux 系統中一般都是root用戶具備超級權限,超級用戶root通常是不須要建立的,然而不少時候root用戶不是任何人均可以使用的,畢竟最高權限的用戶,任意使用的話,會對系統形成不少沒必要要的破壞。那麼就須要建立給不一樣人建立用戶進行Linux系統的訪問,或者針對不一樣的應用程序使用不一樣的用戶。這時候有人會說,建立用戶很簡單啦,不就直接使用useradd 或者adduser就完事啦,確實是這樣的,可是就這麼簡單的一個命令,卻有不一樣的使用方式或者有不一樣的方法來建立用戶。下面經過15個案例來看一這個useradd或者adduser的不一樣使用方式。web
因爲Linux系統的版本以及操做系統類型不大同樣,不一樣版本的以及不一樣類型的操做系統的命令具體還要參照對應的文檔,這裏只是簡單的使用centos來進行舉例。shell
在Linux系統中執行‘useradd’命令,主要就是完成如下三個過程:centos
建立用戶命令的基本語法是:安全
在本文中,咱們將向您展現在Linux中最經常使用的15個useradd命令及其實際例子。咱們把這一節從基本用法到高級用法分爲兩部分微信
第一部分:useradd命令的10個基本用法框架
1,如何增長一個用戶在Linux中加密
在Linux系統中新增一個用戶,可使用useradd或者adduser命令後面加上一個用戶名來進行新增。這個用戶名是用於系統登陸的,所以這個用戶名必須是惟一的,若是系統中已經又或者用戶了,就不能進行建立了。spa
例如,增長一個新的用戶test1,使用如下命令。操作系統
當咱們建立完test1用戶以後,這個時候用test1用戶來進行登陸,登陸不了的,因爲該用戶咱們不知道用戶的密碼,登陸不了的,那如何給用戶添加密碼呢?經過下面命令進行添加。
用戶建立以後默認會把用戶自動添加到/etc/passwd文件中, 這個文件用來存儲用戶的信息。
上面的條目包含一組由7個冒號分隔的字段,每一個字段都有本身的含義。讓咱們看看這些字段是什麼:
2,建立一個具備不一樣主目錄的用戶
一般狀況下,在Linux操做系統中建立一個用戶默認建立用戶的目錄在home目錄下,就好比上面建立的用戶主目錄就默認就是/home/test1目錄。
可是可使用「-d」 可選參數來改變用戶的主目錄的位置,例如建立一個test2用戶在/tempfile/user1.首先這個/tempfile/user1必須是已經在系統建立好的目錄也能夠是其它目錄。
這個時候命令執行成功以後,咱們在回去看一下/etc/passwd 中的目錄
3,建立一個具備不一樣主目錄的用戶
在Linux中,每一個用戶都有本身的UID(唯一標識號)。默認狀況下,每當咱們在Linux中建立一個新用戶賬戶時,它都會分配用戶500、50一、502等等。。。
可是,咱們能夠建立用戶的自定義用戶id與' -u '選項。例如,下面的命令將建立一個用戶' test3'與自定義用戶id '996 '。
接下來讓咱們來驗證一下,該命令執行成功是否建立了用戶id爲996的用戶test3.
注意:確保用戶ID的值必須與系統中任何其餘已建立的用戶惟一。
4,建立具備特定組ID的用戶
相似地,每一個用戶都有本身的GID(組標識號)。咱們還可使用-g選項建立具備特定組ID的用戶。
在本例中,咱們將在「-u」和「-g」選項的幫助下同時添加具備特定UID(不存在的用戶id)和GID(必須存在的組)的用戶「test4」。
執行完以後, 咱們來驗證一下,經過查看/etc/passwd文件。
5,將一個用戶添加到多個組
使用useradd命令加上「-G」選項將用戶添加到其餘組。每一個組名由逗號分隔,中間沒有空格。
在本例中,咱們將用戶「test5」添加到多個組中,如管理員、webadmin和開發人員。
接下來,使用id命令驗證分配給用戶的多個組
6,添加一個沒有主目錄的用戶
在某些狀況下,因爲一些安全緣由,咱們不但願爲用戶分配主目錄。在這種狀況下,當用戶登陸到剛剛從新啓動的系統時,其主目錄將是根目錄。當該用戶使用su命令時,其登陸目錄將是之前的用戶主目錄。
若要建立沒有主目錄的用戶目錄,則使用' -M '。例如,下面的命令將建立一個沒有主目錄的用戶' test6'。
接下來咱們使用ls命令來驗證一下用戶test6是否有主目錄。
7,建立一個具備過時時間的用戶
默認狀況下,當咱們添加用戶使用’ useradd‘命令時,用戶賬戶永遠不會有過時時間。它們的有效日期被設定爲0(意思是從未過時)。
不過,咱們能夠用「e」來設置有效期。選項,它將日期設置爲yyyy-mm-ddd格式。這有助於爲特定時間段建立臨時賬戶。
在這個例子中,咱們建立了一個用戶‘test7‘用戶到期日爲2020年3月21日,格式爲yyyy-mm-ddd。
其次,在設置賬戶到期日期後,使用「chage」命令爲用戶「test7」驗證賬戶和密碼的年齡。
8,建立一個具備密碼過時時間的用戶
在本例中,咱們將爲用戶設置一個賬戶密碼到期日期,即45天。使用’-e‘和’-f‘選項
9,建立一個自定義註釋的用戶
useradd命令的‘-c‘選項容許您添加自定義註釋,如用戶全名、電話號碼等到/etc/ passwd;)文件中。能夠將註釋添加爲不帶空格的單行
例如,下面的命令將添加一個用戶test9‘並將該用戶的全名test9 devloper插入到評論字段中。
你能夠在/etc/passwd‘ /etc/passwd‘文件在評論部分。
10,更改用戶登陸Shell
有時,咱們添加與登陸shell無關的用戶,有時咱們須要爲用戶分配不一樣的shell。咱們能夠爲每一個用戶分配不一樣的登陸shell選項
在本例中,將添加一個用戶沒有登陸shell,即‘/sbin/nologin‘shell.
您能夠檢查分配給用戶的shell在‘/etc/passwd‘文件
第二部分:useradd命令的5個高級用法
11,添加一個具備特定主目錄、默認Shell和自定義註釋的用戶
下面的命令將建立一個用戶'test11 '與主目錄' /tempfile/user11',默認shell爲/bin/bash,並添加額外的信息用戶。
在上面的命令中,' -m -d '選項建立一個具備指定主目錄的用戶,' -s '選項設置用戶的默認shell,即/bin/bash.「-c」選項添加關於用戶和「-U」參數的額外信息建立/添加與用戶同名的組。
12,添加具備主目錄、自定義Shell、自定義註釋和UID/GID的用戶
該命令與上面的命令很是類似,可是這裏咱們將shell定義爲' /bin/zsh ',並將自定義UID和GID定義爲用戶' test '的用戶id和用戶組id。其中「-u」定義新用戶的UID(即1204),而「-g」定義GID(即1000)。
13,添加一個具備主目錄、沒有Shell、自定義註釋和用戶ID的用戶
下面的命令與上面的兩個命令很是類似,惟一的區別是這裏,咱們禁用登陸shell到一個名爲' test13 '的用戶自定義用戶ID(即1026)。
這裏' -s '選項添加了默認的shell /bin/bash,但在本例中,咱們將login設置爲' /usr/sbin/nologin '。這意味着用戶' test13 '將沒法登陸到系統。
14,添加具備主目錄、Shell、自定義Skell/註釋和用戶ID的用戶
這個命令中惟一的變化是,咱們使用' -k '選項來設置自定義框架目錄,即/etc/custom.skell,不是默認的 /etc/skel。咱們還使用了' -s '選項來定義不一樣的shell,即/bin/tcsh來定義用戶' test14 '。
15,添加一個沒有主目錄、沒有Shell、沒有組和自定義註釋的用戶
下面的命令與上面介紹的其餘命令很是不一樣。這裏咱們使用' -M '選項來建立沒有用戶主目錄的用戶,並使用' -N '參數來告訴系統只建立用戶名(沒有組)。' -r '參數用於建立系統用戶。
好了,今天的分享就到這,小弟不才,望你們有什麼講解不到位或者有問題的,請多指教,歡迎留言區評論。有喜歡的朋友記得收藏或者點贊哦,最後不少知識分享到微信公衆號井壹數碼,但願感興趣的朋友關注一下。多謝各位。