一个用户可以属于多个组
一个组内可以有多个用户
==================================
每个账户有一个唯一的UID (user identifier)-->身份证
每个组也有一个唯一的GID (group identifier) --》组织代码
多个账户可以属于同一个组
==================================
/etc/passwd 用来存放用户帐号信息
/etc/shadow 用来存放密码信息
/etc/group 用来存放组的信息的
/etc/login.defs
/etc/skel 目录
==================================
useradd命令 (adduser)
格式:useradd [选项]... 用户名
-u:指定 UID 标记号
-d:指定宿主目录,缺省为 /home/用户名
-e:指定帐号失效时间
-g:指定用户的基本组名(或UID号)(初始组)
-G:指定用户的附加组名(或GID号)
-M:不为用户建立并初始化宿主目录(家目录)
-s:指定用户的登录Shell
-m, --create-home 创建家目录
-c, --comment COMMENT 用户注释信息
[root@teacher vnc]# useradd user1 -g GroupA 添加用户user1加入到指定的GroupA组
useradd: group 'GroupA' does not exist 因为GroupA组不存在
[root@teacher vnc]# groupadd GroupA 添加GroupA组
[root@teacher vnc]# useradd user1 -g GroupA
[root@teacher vnc]# id user1
uid=519(user1) gid=520(GroupA) groups=520(GroupA)
[root@teacher vnc]# id root
uid=0(root) gid=0(root) groups=0(root)
在系统里真正识别用户的是看用户的UID和GID
[root@teacher vnc]# useradd zhangwuji -c "mingjiao zhangmen shuaige"
添加用户zhangwuji,并且添加注释信息
===================================
passwd命令
格式:passwd [选项]... 用户名
-d:清空用户的密码,使之无需密码即可登录delete
-l:锁定用户帐号 lock
-S:查看用户帐号的状态(是否被锁定) status
-u:解锁用户帐号unlock
--stdin:接收标准输入作为密码 echo $User_p |passwd $User_a --stdin &>/dev/null
root用户可以修改所有用户密码,不要求密码复杂性,普通用户只能改自己的密码,要求密码复杂性
===================================
[root@teacher vnc]# tail -1 /etc/passwd
zhangwuji:x:520:521:mingjiao zhangmen shuaige:/ho0me/zhangwuji:/bin/bash
以冒号为分割符: 字段1:用户帐号的名称
字段2:用户密码字串或者密码占位符“x”
字段3:用户帐号的UID号
字段4:所属基本组帐号的GID号
字段5:用户注释说明
字段6:宿主目录(家目录)
字段7:登录Shell信息
========用户类型
1.超级用户root uid是0
2.程序用户:实现特定的功能(开启ftp服务、http服务、关机等),但是一般不能登录系统:uid在1-499之间
程序用户:ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin (shutdown mail games)
3.普通用户:使用useradd命令新建的用户,一般uid从500开始,每新建一个用户,uid会自动加
正常能登录系统的用户需要设置密码,并且shell不是/sbin/nologin /sbin/shutdown 应该推荐的shell为/bin/bash
没有设置密码的用户也是不能登录系统的
默认情况下,新建的用户的同时,会建立一个同名的组,而且家目录会在/home下,名字和用户名同名。
[root@teacher vnc]# useradd xuzhu 新建用户如果没有指定属于那个组,会自动建立同名的组。如果没有指定家目录会自动在/home/目录下建立同名的家目录
普通用户的家目录都在/home
超级管理员的家目录在/root
========shell是/sbin/nologin 的用户是不能登录系统的
[root@teacher vnc]# cat /etc/passwd|grep yyy
yyy:x:518:519::/home/yyy:/sbin/nologin
[root@teacher vnc]# ssh yyy@10.0.0.253
yyy@10.0.0.253's password:
Last login: Sat May 18 09:58:48 2013 from 10.0.0.79
This account is currently not available. 此用户无效,不可用
=================================================
etc/shadow用来存放密码信息的
字段1:用户帐号的名称 *
字段2:加密的密码字串信息 *
字段3:上次修改密码的时间
字段4:密码的最短有效天数,默认值为0
字段5:密码的最长有效天数,默认值为99999
字段6:提前多少天警告用户口令将过期,默认值为7
字段7:在密码过期之后多少天禁用此用户
字段8:帐号失效时间,默认值为空
字段9:保留字段(未使用)
[root@teacher vnc]# tail -1 /etc/shadow
zhangwuji:!!:15843:0:99999:7:::
!!说明zhangwuji和xuzhu没有设置密码
*也说明用户没有设置密码,一般都是系统里的程序用户
如果清空密码字段里的内容,这个用户的密码就为空,可以手动修改/etc/shadow也可以使用密码
passwd -d yy 清空yy用户的密码
==================================================
/etc/group 用来存放组的信息的
[root@teacher vnc]# tail -2 /etc/group
zhangwuji:x:521:
xuzhu:x:522:
组: 主要组(初始组、有效组)
次要组(附属组)
一个用户可以属于多个组
------/etc/gshadow 存放组密码的,很少使用
------/etc/login.defs文件 对账户初始的属性设置,设置普通用户的UID和GID范围等
文件里定义了很多新建用户规定的潜规则,例如:uid和gid的范围,邮箱的路径,密码加密的方法等
------/etc/skel 存放用户登录系统需要的最基本的一些配置文件(样板文件和目录) ---每次新建用户的时候,都会从/etc/skel目录下复制文件到用户的家目录下
[root@teacher skel]# ls -a
. .bash_logout .bashrc .mozilla
.. .bash_profile .gnome2
.gnome2 是用来存放与图像界面相关程序文件信息的
.bash_logout 系统用户注销的时候,会执行这个文件里的命令
.bash_profile 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该
文件仅仅执行一次(bash这个程序启动的时候,会加载这个文件里的内容)
====================================================
su - lifeng 切换用户登录系统
su lifeng
区别:如果不接-号,系统会使用上一个用户的环境变量,如果接-号,相当于使用后面的用户的环境变量
====================================================
userdel命令
格式:userdel [-r] 用户名
添加 -r 选项时,表示连用户的宿主目录和邮箱一并删除
====================================================
usermod命令
格式:usermod [选项]... 用户名
-l:更改用户帐号的登录名称
-L:锁定用户账户
-U:解锁用户账户
以下选项与useradd命令中的含义相同
-u、-d、-e、-g、-G、-s
-u:指定 UID 标记号
-d:指定宿主目录,缺省为 /home/用户名
-e:指定帐号失效时间
-g:指定用户的基本组名(或UID号)(初始组)
-G:指定用户的附加组名(或GID号)
-s:指定用户的登录Shell
====================================================
groupmod 修改组的信息,其实可以直接去修改/etc/group和/etc/passwd文件
====================================================
[lirong@teacher ~]$ w 查看当前系统有多少用户登录,并且正在使用的命令
21:04:56 up 12:38, 7 users, load average: 0.07, 0.03, 0.00
当前的时间 机器开机多长时间 登录用户数 cpu的平均负载 1分钟 5分钟 15分钟
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty3 - 20:59 4:57 0.00s 0.00s -bash
root tty1 :0 08:29 4:38m 1:41 1:41 /usr/bin/Xorg :0 -
root pts/0 :0.0 08:29 12:35m 30:47 0.00s bash
root pts/1 :3.0 08:29 0.00s 51:01 0.00s ssh lirong@10.0.0.
root pts/2 :3.0 09:39 1:06m 0.00s 0.00s bash
root pts/4 :3.0 20:59 5:27 0.00s 0.00s bash
lirong pts/6 10.0.0.253 21:04 0.00s 0.00s 0.00s w
登录时间 登录的用户在使用什么命令
===
:0 说明是本机连接0号桌面,默认情况下进入图形界面,就是0号桌面
:3 说明是本机连接的3号桌面
10.0.0.253 从远程ip为10.0.0.253的机器连接到本机
一个组内可以有多个用户
==================================
每个账户有一个唯一的UID (user identifier)-->身份证
每个组也有一个唯一的GID (group identifier) --》组织代码
多个账户可以属于同一个组
==================================
/etc/passwd 用来存放用户帐号信息
/etc/shadow 用来存放密码信息
/etc/group 用来存放组的信息的
/etc/login.defs
/etc/skel 目录
==================================
useradd命令 (adduser)
格式:useradd [选项]... 用户名
-u:指定 UID 标记号
-d:指定宿主目录,缺省为 /home/用户名
-e:指定帐号失效时间
-g:指定用户的基本组名(或UID号)(初始组)
-G:指定用户的附加组名(或GID号)
-M:不为用户建立并初始化宿主目录(家目录)
-s:指定用户的登录Shell
-m, --create-home 创建家目录
-c, --comment COMMENT 用户注释信息
[root@teacher vnc]# useradd user1 -g GroupA 添加用户user1加入到指定的GroupA组
useradd: group 'GroupA' does not exist 因为GroupA组不存在
[root@teacher vnc]# groupadd GroupA 添加GroupA组
[root@teacher vnc]# useradd user1 -g GroupA
[root@teacher vnc]# id user1
uid=519(user1) gid=520(GroupA) groups=520(GroupA)
[root@teacher vnc]# id root
uid=0(root) gid=0(root) groups=0(root)
在系统里真正识别用户的是看用户的UID和GID
[root@teacher vnc]# useradd zhangwuji -c "mingjiao zhangmen shuaige"
添加用户zhangwuji,并且添加注释信息
===================================
passwd命令
格式:passwd [选项]... 用户名
-d:清空用户的密码,使之无需密码即可登录delete
-l:锁定用户帐号 lock
-S:查看用户帐号的状态(是否被锁定) status
-u:解锁用户帐号unlock
--stdin:接收标准输入作为密码 echo $User_p |passwd $User_a --stdin &>/dev/null
root用户可以修改所有用户密码,不要求密码复杂性,普通用户只能改自己的密码,要求密码复杂性
===================================
[root@teacher vnc]# tail -1 /etc/passwd
zhangwuji:x:520:521:mingjiao zhangmen shuaige:/ho0me/zhangwuji:/bin/bash
以冒号为分割符: 字段1:用户帐号的名称
字段2:用户密码字串或者密码占位符“x”
字段3:用户帐号的UID号
字段4:所属基本组帐号的GID号
字段5:用户注释说明
字段6:宿主目录(家目录)
字段7:登录Shell信息
========用户类型
1.超级用户root uid是0
2.程序用户:实现特定的功能(开启ftp服务、http服务、关机等),但是一般不能登录系统:uid在1-499之间
程序用户:ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin (shutdown mail games)
3.普通用户:使用useradd命令新建的用户,一般uid从500开始,每新建一个用户,uid会自动加
正常能登录系统的用户需要设置密码,并且shell不是/sbin/nologin /sbin/shutdown 应该推荐的shell为/bin/bash
没有设置密码的用户也是不能登录系统的
默认情况下,新建的用户的同时,会建立一个同名的组,而且家目录会在/home下,名字和用户名同名。
[root@teacher vnc]# useradd xuzhu 新建用户如果没有指定属于那个组,会自动建立同名的组。如果没有指定家目录会自动在/home/目录下建立同名的家目录
普通用户的家目录都在/home
超级管理员的家目录在/root
========shell是/sbin/nologin 的用户是不能登录系统的
[root@teacher vnc]# cat /etc/passwd|grep yyy
yyy:x:518:519::/home/yyy:/sbin/nologin
[root@teacher vnc]# ssh yyy@10.0.0.253
yyy@10.0.0.253's password:
Last login: Sat May 18 09:58:48 2013 from 10.0.0.79
This account is currently not available. 此用户无效,不可用
=================================================
etc/shadow用来存放密码信息的
字段1:用户帐号的名称 *
字段2:加密的密码字串信息 *
字段3:上次修改密码的时间
字段4:密码的最短有效天数,默认值为0
字段5:密码的最长有效天数,默认值为99999
字段6:提前多少天警告用户口令将过期,默认值为7
字段7:在密码过期之后多少天禁用此用户
字段8:帐号失效时间,默认值为空
字段9:保留字段(未使用)
[root@teacher vnc]# tail -1 /etc/shadow
zhangwuji:!!:15843:0:99999:7:::
!!说明zhangwuji和xuzhu没有设置密码
*也说明用户没有设置密码,一般都是系统里的程序用户
如果清空密码字段里的内容,这个用户的密码就为空,可以手动修改/etc/shadow也可以使用密码
passwd -d yy 清空yy用户的密码
==================================================
/etc/group 用来存放组的信息的
[root@teacher vnc]# tail -2 /etc/group
zhangwuji:x:521:
xuzhu:x:522:
组: 主要组(初始组、有效组)
次要组(附属组)
一个用户可以属于多个组
------/etc/gshadow 存放组密码的,很少使用
------/etc/login.defs文件 对账户初始的属性设置,设置普通用户的UID和GID范围等
文件里定义了很多新建用户规定的潜规则,例如:uid和gid的范围,邮箱的路径,密码加密的方法等
------/etc/skel 存放用户登录系统需要的最基本的一些配置文件(样板文件和目录) ---每次新建用户的时候,都会从/etc/skel目录下复制文件到用户的家目录下
[root@teacher skel]# ls -a
. .bash_logout .bashrc .mozilla
.. .bash_profile .gnome2
.gnome2 是用来存放与图像界面相关程序文件信息的
.bash_logout 系统用户注销的时候,会执行这个文件里的命令
.bash_profile 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该
文件仅仅执行一次(bash这个程序启动的时候,会加载这个文件里的内容)
====================================================
su - lifeng 切换用户登录系统
su lifeng
区别:如果不接-号,系统会使用上一个用户的环境变量,如果接-号,相当于使用后面的用户的环境变量
====================================================
userdel命令
格式:userdel [-r] 用户名
添加 -r 选项时,表示连用户的宿主目录和邮箱一并删除
====================================================
usermod命令
格式:usermod [选项]... 用户名
-l:更改用户帐号的登录名称
-L:锁定用户账户
-U:解锁用户账户
以下选项与useradd命令中的含义相同
-u、-d、-e、-g、-G、-s
-u:指定 UID 标记号
-d:指定宿主目录,缺省为 /home/用户名
-e:指定帐号失效时间
-g:指定用户的基本组名(或UID号)(初始组)
-G:指定用户的附加组名(或GID号)
-s:指定用户的登录Shell
====================================================
groupmod 修改组的信息,其实可以直接去修改/etc/group和/etc/passwd文件
====================================================
[lirong@teacher ~]$ w 查看当前系统有多少用户登录,并且正在使用的命令
21:04:56 up 12:38, 7 users, load average: 0.07, 0.03, 0.00
当前的时间 机器开机多长时间 登录用户数 cpu的平均负载 1分钟 5分钟 15分钟
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty3 - 20:59 4:57 0.00s 0.00s -bash
root tty1 :0 08:29 4:38m 1:41 1:41 /usr/bin/Xorg :0 -
root pts/0 :0.0 08:29 12:35m 30:47 0.00s bash
root pts/1 :3.0 08:29 0.00s 51:01 0.00s ssh lirong@10.0.0.
root pts/2 :3.0 09:39 1:06m 0.00s 0.00s bash
root pts/4 :3.0 20:59 5:27 0.00s 0.00s bash
lirong pts/6 10.0.0.253 21:04 0.00s 0.00s 0.00s w
登录时间 登录的用户在使用什么命令
===
:0 说明是本机连接0号桌面,默认情况下进入图形界面,就是0号桌面
:3 说明是本机连接的3号桌面
10.0.0.253 从远程ip为10.0.0.253的机器连接到本机