環境:CentOS8 需求:手動新建一個用戶,用戶名爲zhangsan,uid設置爲1024(前提是這個uid沒有被佔用),gid也設置爲1024,組名與用戶名同名,家目錄在/home/zhangsan、默認shell爲/bin/bash |
注意:以下步驟都是使用root用戶進行,部分命令和操作只有root用戶纔有權限。
第一步:修改 /etc/passwd 文件
vim 打開 /etc/passwd 文件追加一行信息
/etc/passwd文件的每一行代表一個用戶的信息,用冒號分隔的每一個字段分別代表不同的含義。
- 第一個字段:用戶名
- 第二個字段:密碼,這裏的 x 僅僅是一個標識,真正的密碼加密保存在 /etc/shadow 中
- 第三個字段:UID
- 第四個字段:GID
- 第五個字段:用戶描述信息,可不填
- 第六個字段:用戶家目錄位置
- 第七個字段:默認shell
修改完成,保存退出。
第二步:修改 /etc/shadow 文件
用 vim 打開 /etc/shadow 文件,進入輸入模式,系統給出警告。它告訴你,你正在打算修改一個只讀文件(其實讀權限也沒有)。
可以看一下,shadow 文件啥權限也沒有
不過沒關係,咱用的root用戶,想幹啥就幹啥。按下 Enter 鍵繼續。
在 shadow 文件的最後追加一行信息。
shadow文件同樣是一行一個用戶的信息,每個字段有不同含義。
- 第一個字段:用戶名
- 第二個字段:密碼。有密碼的用戶在這裏都是一串加密過的字符。這裏我填了兩個歎號,表示沒有密碼。
- 第三個字段:從1970/01/01到最近一次密碼修改經過的時間,以天爲單位。
- 第四個字段:密碼過多久可以被修改,0表示隨時可改。
- 第五個字段:密碼的有效期
- 第六個字段:密碼要過期前多少天提醒用戶,7就是提前一週提醒。
- 第七個字段:密碼過期後多少天之內還能登錄,但是要登錄必須改密碼。
- 第八個字段:密碼的最長使用期限
- 第九個字段:系統保留字段
修改完畢,使用 wq! 保存退出,不然又會給出警告,無法保存。
第三步:修改 /etc/group 文件
在最後追加如下信息
group 文件一行有四個字段
- 第一個字段是組名
- 第二個字段是組密碼,這裏的 x 和 /etc/passwd 的密碼字段差不多。
- 第三個字段就是GID
- 第四個字段是組中的用戶,如果該組是某個用戶的主要組,那麼這個用戶不會顯示在這個字段裏,因此這裏我空着。
第四步:新建用戶家目錄
mdkir /home/zhangsan
第五步:複製/etc/skel目錄下的環境變量配置文件到家目錄下
這幾個文件裏面是用戶的環境變量配置信息,我們使用 useradd 命令新建用戶也會複製這幾個文件到用戶的家目錄下。
第六步:修改家目錄的權限和屬主
到現在爲止,用戶 zhangsan 的家目錄和其中的所有文件都是root用戶的
將這些文件的歸屬權給 zhangsan,並修改文件權限
# 將用戶 zhangsan 的家目錄 /home/zhangsan 的屬主和組修改爲 zhangsan
chown -R zhangsan:zhangsan /home/zhangsan
# 修改文件的權限,只允許屬主有讀寫權限,其他用戶和組沒有任何權限
chmod 700 /home/zhangsan
修改後的結果如下
第七步:創建郵箱文件
# 創建郵箱文件
touch /var/spool/mail/zhangsan
# 同樣需要修改郵箱的所有者
chown zhangsan:zhangsan /var/spool/mail/zhangsan
第八步:確認用戶創建成功