在linux中,可以使用useradd指令來增加用戶,該指令的作用是新用戶,新增新的系統用戶,基本語法格式為「useradd [選項] 使用者名稱」。
本教學操作環境:linux5.9.8系統、Dell G3電腦。
在linux中,可以使用useradd指令來新建用戶,新增新的系統用戶。
此指令的基本格式如下:
[root@localhost ~]#useradd [选项] 用户名
此指令常用的選項及各自的意義,如表 1 所示。
選項 | 意思 |
---|---|
-u UID | 手工指定使用者的UID,注意UID 的範圍(不要小於500)。 |
-d 主目錄 | 手動指定使用者的主目錄。主目錄必須寫絕對路徑,而且如果需要手動指定主目錄,則一定要注意權限; |
#-c 使用者說明 | 手動指定/etc/passwd文件中各使用者資訊中第5 個欄位的描述性內容,可隨意配置; |
-g 群組名稱 | 手工指定使用者的初始群組。一般以和使用者名稱相同的群組作為使用者的初始群組,在建立使用者時會預設建立初始群組。一旦手動指定,系統將不會在建立此預設的初始群組目錄。 |
-G 群組名稱 | 指定使用者的附加群組。我們把使用者加入其他群組,一般都使用附加群組; |
-s shell | 手動指定使用者的登入Shell,預設是/bin/bash; |
-e 曰期 | 指定使用者的失效曰期,格式為"YYYY-MM-DD"。也就是 /etc/shadow 檔案的第八個欄位; |
-o | 允許建立的使用者的 UID 相同。例如,執行"useradd -u 0 -o usertest" 指令建立使用者usertest,它的UID 和root 使用者的UID 相同,都是0; |
#建立使用者時強制建立使用者的家目錄。在建立系統用戶時,該選項是預設的; | |
#建立系統用戶,也就是UID 在1~499 之間,供系統程式使用的用戶。由於系統使用者主要用於運行系統所需服務的權限配置,因此系統使用者的建立預設不會建立主目錄。 |
[root@localhost ~]# useradd lamp此行指令就表示建立 lamp 普通使用者。 不要小看這條簡單的指令,它會完成以下幾項操作:
[root@localhost ~]# grep "lamp" /etc/passwd lamp:x:500:500::/home/lamp:/bin/bash可以看到,使用者的UID 是從500 開始計算的。同時預設指定了使用者的家目錄為 /home/lamp/,使用者的登入 Shell 為 /bin/bash。
[root@localhost ~]# grep "lamp" /etc/shadow lamp:!!:15710:0:99999:7:::當然,這個使用者還沒有設定密碼,所以密碼欄位是"!!",代表這個使用者沒有合理密碼,不能正常登入。同時會依照預設值設定時間字段,例如密碼有效期限有 99999 天,距離密碼過期 7 天系統會提示使用者「密碼即將過期」等。
[root@localhost ~]# grep "lamp" /etc/group lamp:x:500:該群組會作為新使用者的初始組。
[root@localhost ~]# grep "lamp" /etc/gshadow lamp:!::當然,我們沒有設定組密碼,所以這裡沒有密碼,也沒有群組管理員。
[root@localhost ~]#ll -d /home/lamp/ drwx------ 3 lamp lamp 4096 1月6 00:19 /home/lamp/ [root@localhost ~]#ll /var/spod/mail/lamp -rw-rw---- 1 lamp mail 0 1月6 00:19 /var/spool/mail/lamp注意這兩個檔案的權限,都要讓lamp 使用者擁有對應的權限。
/etc/skel 目錄中的設定檔複製到新使用者的主目錄中。
[root@localhost ~]# groupadd lamp1 #先手工添加lamp1用户组,因为我一会儿要把lamp1用户的初始迎指定过来,如果不事先建立,则会报告用户组不存在 [root@localhost ~]# useradd -u 550 -g lamp1 -G root -d /home/lamp1 -c "test user" -s /bin/bash lamp1 #在建立用户lamp1的同时,指定了UID(550)、初始组(lamp1)、附加组(root)、家目录(/home/lamp1/)、用户说明(test user)和用户登录Shell(/bin/bash) [root@localhost ~]# grep "lamp1" /etc/passwd /etc/shadow /etc/group #同时查看三个文件 /etc/passwd:lamp1:x:550:502:test user:/home/lamp1:/bin/bash #用户的UID、初始组、用户说明、家目录和登录Shell都和命令手工指定的一致 /etc/shadow:lamp1:!!:15710:0:99999:7::: #lamp1用户还没有设定密码 /etc/group:root:x:0:lamp1 #lamp1用户加入了root组,root组是lamp1用户的附加组 /etc/group:lampl:x:502: #GID为502的组是lamp1组 [root@localhost ~]#ll -d /home/lamp1/ drwx------ 3 lamp1 lamp1 4096 1月6 01:13 /home/lamp1/ #家目录也建立了,不需要手工建立透過以上 2 種方式,都可以成功建立使用者。通常情況下,根本不需要手動指定任何內容,因為使用預設值就可以滿足我們的要求。那你有沒有想過,useradd 指令的這些預設值保存哪裡,能否手動修改呢? 答案是肯定的。 useradd 指令在新增使用者時參考的預設值檔案主要有兩個,分別是 /etc/default/useradd 和 /etc/login.defs。 相關推薦:《
Linux影片教學》
以上是linux怎麼增加用戶的詳細內容。更多資訊請關注PHP中文網其他相關文章!