您好,登錄后才能下訂單哦!
這篇文章主要講解了“在CentOS系統管理中什么是用戶和用戶組”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“在CentOS系統管理中什么是用戶和用戶組”吧!
一:新建用戶和用戶組:useradd和groupadd
1,useradd的參數:
-u:指定UID標記號
-d:指定宿主目錄,缺省為/home/用戶名
-e:指定賬號失效時間(下面usermod也有此選項)
-g:指定所屬的基本組(組名或GID)
-G:指定所屬的附加組(組名或GID)
-M:不為用戶建立并初始化宿主目錄、
-s:指定用戶的登錄shell(默認為/bin/bash,一般不用改,在建立非登錄用戶的時候可以指定
為/sbin/nologin)
注:這些參數都能分開用,不沖突的可以在建立用戶的時候連著用。
示例1:添加用戶stu01,指定UID為520,宿主目錄為/public/stu01,指定基本組為users(注:系統中本身就
存在users這個組GID為100),附加組為tech:
[root@localhost ~]# useradd -u 520 -d /public/stu04 -g users-G tech stu01
[root@localhost ~]# id stu01
uid=520(stu01) gid=100(users) groups=100(users),200(tech)
示例2:添加用戶stu02,不為用戶建立宿主目錄:
[root@localhost ~]# useradd -M -s /sbin/nologin stu02 //創建一個非登錄用戶stu02
[root@localhost ~]# cat /etc/passwd | grep stu02
stu02:x:1001:1001::/home/stu02:/sbin/nologin //-s參數指定bash shell
2,groupadd的參數:
gourpadd [-g GID] 組名
-g參數指定了新建用戶組的GID
[root@localhost ~]# groupadd -g 600 stu //添加一個組stu,指定其GID為600
[root@localhost ~]# cat /etc/group | grep stu //查看stu組的信息
stu:x:600:
二:刪除用戶和用戶組
1,userdel
-格式:userdel [-r] 用戶名
添加-r選項,宿主目錄/用戶郵件也一并刪除
示例:
[root@localhost~]# useradd user1;useradd user2 //添加用戶user1和user2
[root@localhost~]# ll -d /home/user1/ /var/mail/user1 /home/user2/ /var/mail/user2 //查看user1、user2的宿主目錄和郵件文件是否存在
drwx------ 3 user1 user1 4096 02-1809:53 /home/user1/
drwx------ 3 user2 user2 4096 02-1809:53 /home/user2/
-rw-rw---- 1 user1 mail 0 02-18 09:53 /var/mail/user1
-rw-rw---- 1 user2 mail 0 02-18 09:53 /var/mail/user2
[root@localhost~]# userdel user1 ; userdel -r user2 //加不加-r的區別
[root@localhost~]# ll -d /home/user1/ /var/mail/user1 /home/user2/ /var/mail/user2
ls:/home/user2/: 沒有那個文件或目錄//加-r之后刪除宿主目錄
ls:/var/mail/user2: 沒有那個文件或目錄//加-r之后刪除郵件文件
drwx------ 3 1002 1002 4096 02-1809:53 /home/user1/
-rw-rw---- 1 1002 mail 0 02-18 09:53 /var/mail/user1
[root@localhost~]#
2,groupdel:刪除用戶組
-格式:groupdel組名
-刪除的目標組不能是用戶的基本組。
-在刪除用戶組的時候,如果該組為某個成員的私有組,則無法刪除,必須先刪除組里面的成員,才能成功刪除該組。
[root@localhost~]# id user1 //查看user1的基本組和附加組
uid=1002(user1) gid=1002(user1) groups=1002(user1),600(stu)
[root@localhost ~]# grep stu /etc/group
stu:x:600:user1,user2
上面的操作可以看到,user1的基本組為user1,附加組為stu,那么現在只能刪除stu,而不能直接刪除組user1,因為user1組是一個基本組,要想刪除user1,必須先刪除user1用戶,再刪除user1組,而stu組不是一個基本組,只是user1和user2的附加組,所以可以直接刪除。
[root@localhost~]# groupdel user1 //嘗試刪除user1用戶組,因為user1組為user1的基本組,所以需要先刪除user1用戶,才能刪除user1組。
groupdel:不能刪除用戶的主組。
[root@localhost~]# groupdel stu
[root@localhost~]# grep stu /etc/group //刪除stu組之后,不能看到/etc/group文件里面的stu組的信息了。
三:為用戶和用戶組添加密碼
1,為用戶添加密碼:
Passwd命令:
選項有:
-d :清空用戶的密碼,使之無需密碼即可登錄
-l :鎖定用戶賬號
-S :查看用戶賬號的狀態(是否被鎖定)
-u :解鎖用戶賬號
- - stdin:標準輸入(比如管道)取密碼
注:刪除密碼用passwd –d 而不能用echo “” | passwd - -stdin 用戶名
示例:
[root@localhosthome]# cat /etc/shadow| grep user3 //查看user3是否有密碼
user3:$1$4vGPvNrT$xrFPE9XQhl.w1jchu10wo/:16119:0:99999:7:::
[root@localhosthome]# passwd -d user3 //使用-d選項刪除密碼
Removing passwordfor user user3.
passwd: Success
[root@localhosthome]# cat /etc/shadow| grep user3 //再次查看,密碼取消
user3::16119:0:99999:7:::
[root@localhosthome]#
示例:
如果修改一個用戶的密碼,可以直接輸入passwd 用戶名,然后進入交互式的密碼輸入去人,使用- -stdin使用非交互式設置密碼,直接將密碼導入。
[root@localhost/]# echo "123" | passwd --stdin user3 //設置user3的密碼為123,使用--stdin為面交互式導入密碼
Changing password for user user3.
passwd: all authentication tokensupdated successfully.
[root@localhost/]# passwd -l user3 //鎖定user3賬戶
Locking password for user user3.
passwd: Success
[root@localhost/]# grep user3 /etc/shadow //查看鎖定賬戶密碼信息,有兩個“!”
user3:!!$1$4vGPvNrT$xrFPE9XQhl.w1jchu10wo/:16119:0:99999:7:::
[root@localhost/]# passwd -S user3 //用-S查看是否被鎖定
user3 LK 2014-02-18 0 99999 7 -1(Password locked.)
[root@localhost/]# passwd -u user3 //-u參數為解鎖
Unlocking password for user user3.
passwd: Success.
[root@localhost/]# grep user3 /etc/shadow //解鎖之后,該賬戶密碼段沒有“!”
user3:$1$4vGPvNrT$xrFPE9XQhl.w1jchu10wo/:16119:0:99999:7:::
[root@localhost/]#
2,用戶組的密碼gpasswd
gpasswd 組名:進入交互式的密碼輸入確認。
gpasswd –r 組名:-r選項為移除密碼,gpasswd –r 組名為清空該組密碼
組密碼的用途:主要是一些用戶想要加入組,那么需要用到的這個組賬戶的密碼,而這個用戶加入的時候也是臨時加入的,用exit即可退出該組。
四:用戶組成員的添加和刪除
1,gpasswd在用戶組中的應用
-A :定義組管理員列表(可以在/etc/gshadow文件里查看組管理員和組成員)
-a :添加組成員,每次只能加一個
-d :刪除組成員,每次只能刪一個
-M :定義組成員列表,可設置多個(為覆蓋操作,在定義之后,之前組內用戶將被刪除;注意在寫多個成員列表的時候,用逗號隔開)
示例:
[root@localhost ~]# grep user /etc/gshadow
user:!::
[root@localhost ~]# gpasswd -a user1 user //將賬戶user1加入到user組中
正在將用戶“user1”加入到“user”組中
[root@localhost ~]# gpasswd -a user2 user //將user2加入到user組中
正在將用戶“user2”加入到“user”組中
[root@localhost ~]# grep user /etc/gshadow | tail -1 //查看user用戶組的成員
user:!::user1,user2
[root@localhost ~]# gpasswd -M stu01,stu02 user //-M參數覆蓋添加多個用戶
[root@localhost ~]# cat /etc/gshadow | tail -1 //再次查看,user1和user2被覆蓋
user:!::stu01,stu02
[root@localhost ~]# gpasswd -d stu01 user //將stu01從user組中刪除
正在將用戶“stu01”從“user”組中刪除
[root@localhost ~]# cat /etc/gshadow | tail -1
user:!::stu02 //刪除后只剩下stu02用戶
[root@localhost ~]# gpasswd -A stu02 user //將stu02設置為管理員
[root@localhost ~]# grep user /etc/gshadow | tail -1
user:!:stu02:stu02 //gshadow文件中,第三個字段為該組的管理員賬戶,為stu02
[root@localhost ~]#
2,usermod主要是對用戶的屬性進行更改,可以增加用戶成員的所屬附加組
只是用usermod的 -a-G選項(-a表示添加,-G指定組,-a -G為新加一個附加組)
命令:usermod -a -G 用戶組 用戶名
[root@localhost~]# usermod -a -G tech stu02 //為stu02增加一個附加組tech
[root@localhost~]# id stu02
uid=501(stu02) gid=1201(nsd)groups=1201(nsd),200(tech),1204(user)
感謝各位的閱讀,以上就是“在CentOS系統管理中什么是用戶和用戶組”的內容了,經過本文的學習后,相信大家對在CentOS系統管理中什么是用戶和用戶組這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。