目录
3.设置组账号密码(极少用),添加、删除组成员 gpasswd 命令
三、查询命令(id、groups、finger、w、whoami、who)
3.finger 命令(需安装,安装过程详见“Linux 系统管理 03”)
一、用户账号管理
1.用户账号概述
(1)用户账号的常见分类:
超级用户:root uid=0 gid=0 权限最大。
普通用户:uid>=500 做一般权限的系统管理,权限有限。
程序用户:1=<uid<500 为了提升系统安全性,为了支持所对应服务对系统资源 的使用,不能用于登录系统或管理系统。
(2)UID:
用户标识
(3)用户账号文件
/etc/passwd
作用:保存用户名称、宿主目录、登录 Shell 等基本信息,每一行对应一个用户 的账号记录
共 7 各字段,各字段代表含义:
第一字段 amber:用户账号名
第二字段 x:密码占位符
第三字段 500:uid 编号
第四字段 500:gid 编号
第五字段 空:用户备注
第六字段 /home/amber:用户宿主目录
第七字段 /bin/bash:登录的 shell(若为/sbin/nologin 则不能登录)
/etc/shadow
作用: 保存用户的密码、账号有效期等信息,每一行对应一个用户的密码记录。
共 9 字段,目前只启用前 7 字段,各字段代表的含义:
第一字段 amber:用户账号名
第二字段 $6$I….Yi1:密文
第三字段 16793:账号上次修改时间距 1970 年 1 月 1 日过去多少天
第四字段 0:距上次密码修改起多少天内不能再次修改密码,单位“天”。“0” 表示随时可修改密码。
第五字段 99999:密码过期天数(密码在修改密码后多少天必须重新修改密 码。99999 表示永久可以使用。)
第六字段 7:强制密码修改提醒时间(7 表示在密码过期前 7 天开始警告)
第七字段 空:当密码过期后经过多少天该帐号会被禁用
第八字段 空:密码过期日期,若设置则显示为过期日期距 1970 年 1 月 1 日多少天。
2.添加用户账号 useradd 命令
(1)格式:
useradd [选项] 用户名
(2)选项:
-u:指定 uid 标记号
-d:指定宿主目录,缺省默认为/home/用户名
-e:指定账号失效时间
-M:不为用户建立初始化宿主目录
-s:指定用户的登录 shell
-g:指定用户的基本组名(或 gid 号)
-G:指定用户的附加组名(或 gid 号)
-c:添加备注,显示在/etc/passwd 第五字段
(3)示例:
[root@bogon ~]# groupadd group1 //创建组group1
[root@bogon ~]# mkdir -p /testgroup1 //创建目录
[root@bogon ~]# groupadd jiaoxue //创建组jiaoxue
[root@bogon ~]# useradd -d /testgroup1/tom/ -g group1 -G jiaoxue -s /bin/bash -e 2016-01-01 tom
[root@bogon ~]# passwd tom
更改用户 tom 的密码 。
新的 密码:
无效的密码: WAY 过短
无效的密码: 过于简单
重新输入新的 密码:
passwd: 所有的身份验证令牌已经成功更新。
[root@bogon ~]# tail -1 /etc/passwd
tom:x:501:501::/testgroup1/tom/:/bin/bash
[root@bogon ~]# tail -1 /etc/shadow
tom:$6$oe91WmLV$11aOIhoKOYMSNUl6wnSpYJfsr1V8vfbCPPFoBN76RSjKnPECXEC1KU aBA8Utnk2qBV8uHh78U65qyr3ZQNqdx1:16798:0:99999:7::16801:
3.用户账号的初始配置文件
(1)文件来源:
新建用户账号时,从/etc/skel/目录中复制而来
(2)主要的用户初始配置文件:
.bash_profile:每次登录时执行
.bashrc:每次进入新 bash 环境时执行
.bash_logout:每次退出登录时执行
(3)进行修改后查看具体作用:
[root@bogon ~]# vi ~tom/.bash_profile
# .bash_profile
# Get the aliases and functions if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs PATH=$PATH:$HOME/bin
export PATH
echo "welcome tom!" 【增加此内容】
保存并退出
[root@bogon ~]# vi ~tom/.bashrc
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# User specific aliases and functions
echo "hi!this is a new bash!" 【增加此内容】
保存并退出
[root@bogon ~]# vi ~tom/.bash_logout
# ~/.bash_logout
echo "byebye tom!"
sleep 3
保存并退出
以 tom 身份登录操作系统
4.设置/更改用户口令 passwd 命令
(1)格式:
passwd [选项] 用户名
(2)常用选项:
-d:清空用户密码
-l:锁定用户账号
-S:查看用户账号的状态(是否被锁定)
-u:解锁用户账号
-x, –maximum=DAYS:密码的最长有效时限
-n, –minimum=DAYS:密码的最短有效时限
-w, –warning=DAYS:在密码过期前多少天开始提醒用户
-i, –inactive=DAYS:当密码过期后经过多少天该帐号会被禁用
(3)示例:
[root@bogon ~]# passwd -l tom
锁定用户 tom 的密码 。
passwd: 操作成功
[root@bogon ~]# passwd -S tom
tom LK 2015-12-29 0 99999 7 -1 (密码已被锁定。)
[root@bogon ~]# passwd -u tom
解锁用户 tom 的密码 。
passwd: 操作成功
[root@bogon ~]# passwd -S tom
tom PS 2015-12-29 0 99999 7 -1 (密码已设置,使用 SHA512 加密。)
[root@bogon ~]# passwd -d tom
清除用户的密码 tom。
passwd: 操作成功
5.修改用户属性 usermod 命令
(1)格式:
usermod [选项] … 用户名
(2)常用选项:
-l:更改用户账号的登录名字
-c:修改用户备注
-L:锁定用户账号
-U:解锁用户账户
以下选项与 useradd 命令中的含义相同:-u、-d、-e、-s、-c
(3)示例:
[root@bogon ~]# usermod -l tom1 tom //更改tom用户登录名为tom1
[root@bogon ~]# tail -1 /etc/passwd
tom1:x:501:501::/testgroup1/tom/:/bin/bash
[root@bogon ~]# usermod -c jiaoxue tom1 //更改修改用户备注
[root@bogon ~]# tail -1 /etc/passwd
tom1:x:501:501:jiaoxue:/testgroup1/tom/:/bin/bash
6、删除用户账号 userdel 命令
(1)格式:
userdel 用户名
(2)常用选项:
-r:删除用户的同时删除用户的宿主目录
(3)示例:
[root@bogon ~]# userdel -r tom1
[root@bogon ~]# ls /testgroup1/
二、组账号管理
1.组长号概述
(1)组账号分类:
基本组(私有组) 附加组(公共组)
(2)GID:
组标识号
(3)组账号文件:
/etc/group:保存组账号基本信息
/etc/gshadow:保存组账号的密码信息(较少使用)
2、添加组账号 groupadd 命令
(1)格式:
groupadd [-g GID] 组账号名
(2)常用选项:
-g GID
(3)示例:
[root@bogon ~]# tail -3 /etc/group
amber:x:500:
group1:x:501:
jiaoxue:x:502:
[root@bogon ~]# groupadd -g 888 market
[root@bogon ~]# tail -4 /etc/group
amber:x:500:
group1:x:501:
jiaoxue:x:502:
market:x:888:
3.设置组账号密码(极少用),添加、删除组成员 gpasswd 命令
(1)格式:
gpasswd [选项] … 组账号名
(2)常用选项:
-a:向组内添加一个用户
-d:从组内删除一个用户成员
-M:定义组成员列表,以逗号分隔
(3)示例:
[root@bogon ~]# useradd test1
[root@bogon ~]# useradd test2
[root@bogon ~]# useradd test3
[root@bogon ~]# gpasswd -a test1 market
Adding user test1 to group market
[root@bogon ~]# tail -4 /etc/group
market:x:888:test1
test1:x:889:
test2:x:890:
test3:x:503:
[root@bogon ~]# gpasswd -d test1 market
Removing user test1 from group market
[root@bogon ~]# tail -4 /etc/group
market:x:888:
test1:x:889:
test2:x:890:
test3:x:503:
[root@bogon ~]# gpasswd -M test1,test2,test3 market
[root@bogon ~]# tail -4 /etc/group
market:x:888:test1,test2,test3
test1:x:889:
test2:x:890:
test3:x:503:
[root@bogon ~]# gpasswd -M test1 market
[root@bogon ~]# tail -4 /etc/group
market:x:888:test1
test1:x:889:
test2:x:890:
test3:x:503:
(4)增加或删除组成员,也可用 vi 编辑器对/etc/group 文件直接编译修改 ·示例:
4、删除组账号 groupdel 命令
(1)格式:
groupdel 组账号名
(2)示例:
[root@bogon ~]# groupdel market
[root@bogon ~]# tail -5 /etc/group
group1:x:501:
jiaoxue:x:502:
test1:x:889:
test2:x:890:
test3:x:503:
三、查询命令(id、groups、finger、w、whoami、who)
1.id 命令
(1)作用:
查询用户身份标识
(2)格式:
id [用户名]
(3)示例:
[root@bogon ~]# id amber uid=500(amber) gid=500(amber) 组=500(amber)
[root@bogon ~]# id uid=0(root) gid=0(root) 组=0(root)
2.groups 命令
(1)作用:
查询客户所属的组
(2)格式:
groups [用户名]
(3)示例:
[root@bogon ~]# groups amber
amber : amber
[root@bogon ~]# groups
root
3.finger 命令(需安装,安装过程详见“Linux 系统管理 03”)
(1)作用:
查询账号的详细信息
(2)格式:
finger [用户名]
(3)示例:
4.w 命令
(1)作用:
查询已登录到主机的用户信息
(2)示例:
5.whoami
(1)作用:
查询当前登录的账号名
(2)示例:
[root@bogon ~]# whoami
root
6.who
(1)作用:
与 w 命令类似,查询查询已登录到主机的用户
(2)示例:
[root@bogon ~]# who
root tty1 root pts/0 root pts/1
2015-12-29 15:04 (:0)
2015-12-29 15:04 (:0.0)
2015-12-29 15:05 (192.168.1.106)