一、管理用戶賬號
1、用戶賬號概述
Linux基于用戶身份對資源訪問進(jìn)行控制。
2、用戶賬號管理
1)用戶賬號
超級用戶(root);
普通用戶;
程序用戶;
- UID(User IDentify)用戶標(biāo)識號;
①用戶賬號文件/etc/passwd
/etc/passwd文件用于保存用戶名稱、宿主目錄、登錄Shell等基本信息;每一行對應(yīng)一個用戶的賬號記錄。如下圖:
②用戶賬號文件/etc/shadow
/etc/shadow文件用于保存用戶的密碼、賬號有效期等信息,每一行對應(yīng)一個用戶的密碼記錄。如下圖:
3、添加用戶賬號
添加用戶賬號的命令及常用選項(xiàng)格式如下:
應(yīng)用舉例:
<!--創(chuàng)建bob用戶,管理組為root,附加組為root,指定宿主目錄為/bob--> [root@CentOS01 ~]# useradd -d /bob -g root -G root bob [root@centos01 ~]# tail -2 /etc/passwd dhcpd:x:177:177:DHCP server:/:/sbin/nologin bob:x:1001:0::/bob:/bin/bash <!--創(chuàng)建tom用戶,不需要創(chuàng)建宿主目錄,賬戶不能登錄系統(tǒng)--> [root@centos01 ~]# useradd -M -s /sbin/nologin tom [root@centos01 ~]# tail -2 /etc/passwd bob:x:1001:0::/bob:/bin/bash tom:x:1002:1002::/home/tom:/sbin/nologin
4、設(shè)置/更改用戶密碼passwd
設(shè)置/更改用戶密碼的基本命令格式語法及常用選項(xiàng)如下:
應(yīng)用舉例:
[root@centos01 ~]# passwd bob <!--賬戶設(shè)置密碼--> 更改用戶 bob 的密碼 。 新的 密碼: <!--輸入密碼--> 無效的密碼: 密碼未通過字典檢查 - 過于簡單化/系統(tǒng)化 重新輸入新的 密碼: <!--確定密碼--> passwd:所有的身份驗(yàn)證令牌已經(jīng)成功更新。 [root@centos01 ~]# passwd -l bob <!--鎖定用戶--> 鎖定用戶 bob 的密碼 。 passwd: 操作成功 [root@centos01 ~]# passwd -S bob <!--查看用戶是否鎖定--> bob LK 2020-01-11 0 99999 7 -1 (密碼已被鎖定。) [root@centos01 ~]# passwd -u bob <!--解鎖用戶--> 解鎖用戶 bob 的密碼。 passwd: 操作成功 [root@centos01 ~]# passwd -S bob <!--查看用戶狀態(tài)是否解鎖--> bob PS 2020-01-11 0 99999 7 -1 (密碼已設(shè)置,使用 SHA512 算法。) [root@centos01 ~]# passwd -d bob <!--清空賬戶密碼--> 清除用戶的密碼 bob。 passwd: 操作成功 [root@centos01 ~]# userdel -r bob <!--刪除賬戶和宿主目錄--> [root@centos01 ~]# tail -2 /etc/passwd dhcpd:x:177:177:DHCP server:/:/sbin/nologin tom:x:1002:1002::/home/tom:/sbin/nologin
5、用戶賬號的初始配置文件
文件來源于新建用戶賬戶時,從/etc/skel目錄中復(fù)制而來;主要的用戶初始配置文件如下:
-
~/.bash_profile:每次登錄時執(zhí)行。
-
~/.bashrc:每次進(jìn)入新Bash環(huán)境時執(zhí)行。
- ~/.bash_logout:每次退出登錄時執(zhí)行。
二、管理組賬號
1、組賬號概述
基本組(私有組);
附加組(公共組);
- GID:組標(biāo)識號
1)組賬號文件/etc/group
/etc/group文件用于保存組賬號基本信息;如下所示:
[root@centos01 ~]# cat /etc/group root:x:0: bin:x:1: daemon:x:2: sys:x:3: adm:x:4: tty:x:5: ............ <!--此處省略部分內(nèi)容-->
2)組賬號文件/etc/gshadow
/etc/gshadow文件用于保存組賬號的密碼信息;如下所示:
[root@centos01 ~]# cat /etc/gshadow root::: bin::: daemon::: sys::: adm::: tty::: ............ <!--此處省略部分內(nèi)容-->
2、添加組賬號groupadd
添加組賬號命令的基本格式如下:
應(yīng)用舉例:
[root@centos01 ~]# groupadd -g 200 accp [root@centos01 ~]# tail -3 /etc/group tcpdump:x:72: test:x:1000: accp:x:200: [root@centos01 ~]# groupadd benet [root@centos01 ~]# tail -3 /etc/group dhcpd:x:177: tom:x:1002: benet:x:1003:
3、添加、刪除組成員gpasswd
設(shè)置組賬號密碼、添加/刪除組成員;命令的基本格式及常用選項(xiàng)如下:
應(yīng)用舉例:
[root@centos01 ~]# gpasswd -a bob benet<!--將用戶加入到組中(自行創(chuàng)建bob用戶)--> 正在將用戶“bob”加入到“benet”組中 [root@centos01 ~]# tail -2 /etc/group tom:x:1002: benet:x:1003:bob [root@centos01 ~]# gpasswd -M tom,lisi benet <!--批量添加用戶到benet組中 --> [root@centos01 ~]# tail -2 /etc/group benet:x:1003:tom,lisi lisi:x:1004: [root@centos01 ~]# gpasswd -d tom benet <!--將tom用戶退出benet組--> 正在將用戶“tom”從“benet”組中刪除 [root@centos01 ~]# tail -2 /etc/group benet:x:1003:lisi lisi:x:1004:
4、刪除組賬號groupdel
刪除組賬號命令的基本格式如下:
應(yīng)用舉例:
[root@centos01 ~]# groupdel benet <!--刪除benet組-->
5、添加用戶賬號時指定組
useradd命令中的“-g”選項(xiàng)指定用戶的基本組名(或GID號);“-G”選項(xiàng)指定用戶的附加組名(或GID號)。
應(yīng)用舉例:
<!--創(chuàng)建bob用戶,管理組為root,附加組為root,指定宿主目錄為/bob--> [root@centos01 ~]# useradd -d /bob -g root -G root bob [root@centos01 ~]# tail -2 /etc/passwd dhcpd:x:177:177:DHCP server:/:/sbin/nologin bob:x:1001:0::/bob:/bin/bash
6、查詢賬號信息
1)id命令
id用于查詢用戶身份標(biāo)識;命令基本語法格式如下:
應(yīng)用舉例:
[root@centos01 ~]# id bob <!--查看用戶的詳細(xì)信息--> uid=1003(bob) gid=0(root) 組=0(root),1005(benet)
2)groups命令
groups命令用于查詢用戶所屬的組;命令基本語法格式如下:
應(yīng)用舉例:
[root@centos01 ~]# groups bob <!--查詢用戶所屬組--> bob : root benet
3)finger命令
finger命令用于查詢用戶賬號的詳細(xì)信息;命令基本語法格式如下:
4)users、w和who命令
users、w和who命令用于查詢已登錄到主機(jī)的用戶信息。應(yīng)用舉例如下:
[root@centos01 ~]# users root [root@centos01 ~]# w 01:57:23 up 53 min, 1 user, load average: 0.00, 0.01, 0.01 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 192.168.100.254 01:04 3.00s 0.05s 0.00s w [root@centos01 ~]# [root@centos01 ~]# who root pts/0 2020-01-17 01:04 (192.168.100.254)