账号管理

1.账号文件
/etc/passwd //用户信息

账号管理
/etc/shadow //用户密码信息
账号管理
例:

sshd:x:74:74:Privilege-separate SSH:/var/empty/sshd:/sbin/nologin
用户名:密码占位符:UID:GID:描述信息:家目录:使用的Shell

root:$6$FHdPVQ1:17211:0:99999:7:::

用户名:
密码信息($开头为密码正常状态,!!开头则当前用户未设置密码, 不允许登陆系统):
上次修改密码的时间(1970-01-01自动统计):
密码最短使用期限(多少天后方可更改密码,0可随时更改密码):
密码最长使用期限(多少天后必须强制更改密码,才可继续使用、99999账户永不过期):
密码提前提醒天数:
账号失效时间(到达时间,账号自动禁用):
未使用

UID:用户编号

超级用户:Linux下最高权限用户root,UID为0

程序用户:用于Liunx下运行软件,该用户不允许登陆系统;UID(1-499)

普通用户:Linux常使用用户,需自行创建,UID(500-∞)

GID:组编号

超级组:Linux下管理员组,默认只有root用户,GID为0

程序组:多个程序用户所属,GID(1-499)

用户组:普通用户所属组,默认新建普通用户会自动创建同名的用户组,GID(500-∞)

Shell:负责解释用户的输入操作,交由内核处理

分类:

/bin/bash:常用Shell,可登陆系统

/bin/zsh

/bin/csh

/sbin/nologin:常用于程序用户,不允许登陆系统

注:/etc/shells文件中存储当前系统所有已支持Shell
账号管理

2.用户管理

useradd | adduser [选项】 用户名 //新建新用户

选项

-d:更改新建用户家目录,默认/home/目录下新建同名目录

-M:不新建家目录 ,一般用于程序用户;默认使用-m选项(新建家目录)

-s:更新新建用户Shell,默认使用/bin/bash/

-u:制定新建用户UID,默认从500自动排序

注:默认新建用户,如不加选项则使用初始参数;例:useradd u01-->/etc/default/useradd(设置家目录、Shell、UID、GID) --> /etc/skel/(拷贝默认用户文件)
账号管理

userdel [-r] 用户名 //删除用户

选项

-r:删除该用户的家目录

usermod [选项] 用户名

选项

-d:更改用户家目录

-s:更新用户Shell

-u:更改用户UID

3.密码管理

passwd [选项] 用户名 //设置用户密码

选项

-d:设置用户密码为空,建议不适用该选项

-x:制定麻麻最长使用时间,默认永久

-n:制定密码最短使用时间,默认为0,任意时间都可以更改密码

chage -E“时间”用户 //设置账号失效时间

chage -l 用户 //查看账号的密码控制信息 (如最短、最长密码使用时间等)

注:默认root用户可设置所有用户密码,并不需要该用户原密码;而普通用户只能更改自己的密码(passwd),并且需要原密码

4.组文件

/etc/group //查看组信息
账号管理

/etc/gshadow //组密码信息
账号管理

例:

adm:x:4:adm,daemon

组名:密码占位符:GID:成员

haldaemon:!::haldaemon

组名:当前组未设置密码::成员

5.管理组

groupadd [选项] 组名 //新建组

选项:

-g:指定新建组GID,默认从上一个组+1

groupdel 组名 //删除组

groupmod [选项] 组名 //更改组

选项:

-g:更改组GID

gpasswd [选项]用户名 组名 //将指定用户加入指定组

选项:

-a:将指定用户加入组

-d:将指定用户从组中移除

-M :批量添加、删除组成员,用于定义成员列表

useradd u01

useradd u02

groupadd hehe

gpasswd -a u01 hehe //将u01用户加入hehe组

gpasswd -d u01 hehe //将u01用户从hehe组中移除

gpasswd -M "u01,u02" hehe //将u01、u02用户加入到hehe组

gpasswd -M "u01" hehe //在hehe组中只保留u01用户,其余用户全部移除

gpasswd -M "" hehe //移除hehe组中所有成员

6.查询账号信息

id [ 用户名 ] //查询用户的信息;如UID、GID、所属组

groups [ 用户名 ] //查询用户所属组

finger [ 用户名 ] //查询用户的详细信息

1)mount /dev/cdrom /mnt/

2)rpm -ivh /mnt/Packages/finger-0.17-40.el6.x86_64.rpm //安装finger软件包

3)finger root //查询root用户详细信息;如家目录、登陆地址等

4)w //详细查看所有已登陆的用户信息

pts/0:代表为远程登陆,第一个远程

tty1:本地登陆的第一个终端

猜你喜欢

转载自blog.51cto.com/13770300/2129408