useradd、usermod、userdel命令詳解

useradd

useradd 命令用來創建或更新用戶信息。

-c:加上備註文字,備註文字保存在passwd的備註欄中。
-d:指定用戶登入時的主目錄,替換系統默認值/home/<用戶名>
-D:變更預設值。
-e:指定賬號的失效日期,日期格式爲MM/DD/YY,例如06/30/12。缺省表示永久有效。
-f:指定在密碼過期後多少天即關閉該賬號。如果爲0賬號立即被停用;如果爲-1則賬號一直可用。默認值爲-1.
-g:指定用戶所屬的羣組。值可以使組名也可以是GID。用戶組必須已經存在的,期默認值爲100,即users。
-G:指定用戶所屬的附加羣組。
-m:自動建立用戶的登入目錄。
-M:不要自動建立用戶的登入目錄。
-N: 不要創建以用戶名稱爲名的羣組。
-n:取消建立以用戶名稱爲名的羣組。
-r:建立系統賬號。
-s:指定用戶登入後所使用的shell。默認值爲/bin/bash。
-u:指定用戶ID號。該值在系統中必須是唯一的。0~499默認是保留給系統用戶賬號使用的,所以該值必須大於499。

1.創建用戶

useradd tester1

2.-N 選項,即不要生成與用戶同名的羣組。查看下 /etc/passwd 文件,發現 tester2 用戶的初始羣組ID是100。這個100是哪來的?有ID爲100的羣組嗎?其實100作爲 -N 的默認值是寫在配置文件中的。不管有沒有ID爲100的羣組,都是這個值。當然我們也可以通過修改配置文件來改變這個默認值!

useradd tester2 -N

3.sudo 是一個非常有權勢的羣組, tester3 加入到這個羣組

useradd tester3 -g sudo

4.添加到非初始化組

useradd tester4 -G sudo

5.創建用戶的同時創建用戶的家目錄,必須指定 -m 選項

 useradd -m tester5

6.指定家目錄,但此時不生成目錄 abc

useradd -d /home/abc tester6

7.生成目錄 abcd,並且目錄下默認存在文件

useradd -d /home/abcd -m tester7

8.創建一個帶有家目錄並且可以登錄 bash 的用戶

 useradd -m -s /bin/bash tester8

9.創建一個沒有家目錄且不能登錄的用戶

useradd -s /sbin/nologin tester9

10.創建時把用戶加入不同的用戶組

useradd -m -G xxx,sudo tester4

11.建立一個新用戶賬戶testuser1,並設置UID爲544,主目錄爲/usr/testuser1,屬於users組:

useradd -u 544 -d /usr/test1  -g users -m  test11

12.新創建一個oracle用戶,這初始屬於oinstall組,且同時讓他也屬於dba組。

useradd oracle -g oinstall -G dba

usermod

usermod命令用於修改用戶的基本信息。usermod命令不允許你改變正在線上的使用者帳號名稱。當usermod命令用來改變user id,必須確認這名user沒在電腦上執行任何程序。

usermod(選項)(參數)

選項
-c<備註>:修改用戶帳號的備註文字;

$ useradd -c nihao   han
$ cat /etc/passwd |tail -1
han:x:2019:2019:nihao:/home/han:/bin/bash 
$ usermod -c hello han
$ cat /etc/passwd |tail -1
han:x:2019:2019:hello:/home/han:/bin/bash

把han用戶的備註信息nihao改爲hello

-d<登入目錄>:修改用戶登入時的目錄;

$ usermod -d /home/qwe han
$ cat /etc/passwd |tail -1
han:x:2019:2019::/home/qwe:/bin/bash

-e<有效期限>:修改帳號的有效期限;

[root@centos6 ~]$ cat /etc/shadow |tail -1
han:!!:17549:0:99999:7:::
[root@centos6 ~]$ usermod -e 3 han
[root@centos6 ~]$ cat /etc/shadow |tail -1
han:!!:17549:0:99999:7::3:

-f<緩衝天數>:修改在密碼過期後多少天即關閉該帳號;

[root@centos6 ~]$ usermod -f 4 han
[root@centos6 ~]$ cat /etc/shadow |tail -1
han:!!:17549:0:99999:7:4:3:

-g<羣組>:修改用戶所屬的羣組;

[root@centos6 ~]$ usermod -g yingyu han
[root@centos6 ~]$ id han
uid=2019(han) gid=506(yingyu) groups=506(yingyu)

-G<羣組>;修改用戶所屬的附加羣組;

[root@centos6 ~]$ usermod -G shuxue han
[root@centos6 ~]$ id han
uid=2019(han) gid=506(yingyu) groups=506(yingyu),2020(shuxue)

-l<帳號名稱>:修改用戶帳號名稱;

[root@centos6 ~]$ usermod -l xiaoming han
[root@centos6 ~]$ cat /etc/passwd |tail -1
xiaoming:x:2019:506::/home/qwe:/bin/bash
[root@centos6 ~]$ id xiaoming
uid=2019(xiaoming) gid=506(yingyu) groups=506(yingyu),2020(shuxue)

-L:鎖定用戶密碼,使密碼無效;

[root@centos6 ~]$ usermod -L xiaoming
[root@centos6 ~]$ su lilei
[lilei@centos6 root]$ su xiaoming
Password: 
su: incorrect password

-s:修改用戶登入後所使用的shell;

[root@centos6 ~]$ usermod -s /bin/sh xiaoming
[root@centos6 ~]$ cat /etc/passwd |tail -1
xiaoming:x:2019:506::/home/qwe:/bin/sh

-u:修改用戶ID;

[root@centos6 ~]$ usermod -u 1995 xiaoming
[root@centos6 ~]$ cat /etc/passwd |tail -1
xiaoming:x:1995:506::/home/qwe:/bin/sh

-U:解除密碼鎖定。

[root@centos6 /home]$ usermod -U xiaoming
[root@centos6 /home]$ su lilei
[lilei@centos6 home]$ su xiaoming
Password: 
[xiaoming@centos6 home]$

userdel

userdel命令用於刪除給定的用戶,以及與用戶相關的文件。若不加選項,則僅刪除用戶帳號,而不刪除相關文件。
語法

userdel(選項)(參數)

選項
-f:強制刪除用戶,即使用戶當前已登錄;

[root@centos6 ~]$ userdel wangcai
userdel: user wangcai is currently used by process 2727
[root@centos6 ~]$ cat /etc/passwd|tail -1
wangcai:x:2019:2021::/home/wangcai:/bin/bash
[root@centos6 ~]$ userdel -f wangcai
userdel: user wangcai is currently used by process 2727
[root@centos6 ~]$ cat /etc/passwd|tail -1
han:x:2018:2018::/home/han:/bin/bash

-r:刪除用戶的同時,刪除與用戶相關的所有文件。

[root@centos6 ~]$ ls /home/
lilei  wangcai
[root@centos6 ~]$ userdel -r lilei
[root@centos6 ~]$ ls /home/
wangcai

剛纔刪除wangcai這個用戶時沒有加-r參數所以還保存有它的家目錄,加-r用戶lilei家目錄就沒了

請不要輕易用-r選項;他會刪除用戶的同時刪除用戶所有的文件和目錄,切記如果用戶目錄下有重要的文件,在刪除前請備份。
其實也有最簡單的辦法,但這種辦法有點不安全,也就是直接在/etc/passwd中刪除您想要刪除用戶的記錄;但最好不要這樣做,/etc/passwd是極爲重要的文件,可能您一不小心會操作失誤。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章