码迷,mamicode.com
首页 > 其他好文 > 详细

用户和组

时间:2016-04-08 06:26:12      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:

用户和组

1、用户和组原理图

技术分享

2、用户和组的应用场景

① 实现系统的用户管理

② 主要为了实现软件的安装配置

3、与组相关的文件

1)/etc/group :组文件信息

使用vi编辑器打开/etc/group文件

技术分享

打开后如下图所示:

技术分享

第1列:组名称

第2列:使用一个x占位符,真实密码存储在/etc/gshadow文件中

第3列:组id,组的唯一标识

0代表root超级管理员组

1-499代表系统组(软件安装时自动创建的组)

500之后代表自定义用户组

第4列:组内用户列表,用户与用户之间通过逗号隔开

2)/etc/gshadow :组密码文件(了解)

使用vi指令查看/etc/gshadow文件

技术分享

打开文件后,效果如下图所示:

技术分享

第1列:组名称

第2列:组密码

第3列:组内管理员

第4列:组内的用户列表

4、与用户相关的文件

1)/etc/passwd :系统用户文件

使用vi指令,打开passwd文件,如下图所示:

技术分享

技术分享

第1列:用户名称

第2列:用户密码,使用一个x占位符,,真实密码存储在/etc/shadow文件中

第3列:用户id,用户的唯一标识

第4列:所属组(主组)id

第5列:备注信息

第6列:用户的家,默认/home/用户名

第7列:用户指令目录

2)/etc/shadow :用户密码文件

使用vi编辑器打开/etc/shadow文件,如下图所示:

技术分享

打开后效果:

技术分享

第1列:用户名称

第2列:用户密码

5、与组相关的管理指令

1)groupadd 组名 :添加组

-g :添加组时指定组id(必须是500以后)

技术分享

使用tail指令查看最后2行代码:

技术分享

2)groupmod 组名 :修改组

-n :修改组名称

-g :修改组id

技术分享

3)groupdel 组名 :删除组

技术分享

6、与用户相关的管理指令

1)useradd [参数] 用户名 :添加用户

-g group_name :添加用户时指定所属组名称

-d home :添加用户时指定用户的家

例1:使用useradd创建用户

技术分享

由此可知,使用useradd会自动添加一个用户并新创建一个组与用户名同名且会在/home目录下创建一个与用户名同名的用户的家。

例2:创建用户指定所属组

技术分享

例3:创建用户时指定用户的家

技术分享

2)usermod [选项] 用户名

-c comment :修改用户的备注信息

技术分享

-l login_name :修改用户的登录名称

技术分享

-d home_dir :修改用户的家

技术分享

-g group_name :修改用户的所属组信息

技术分享

3)userdel [参数] 用户名 :删除用户

-r :删除用户同时删除用户的家

例1:删除用户

技术分享

例2:删除用户同时删除用户的家

技术分享

7、设置用户口令

在Linux操作系统中,如果一个用户没有用户口令(密码),其是无法登陆Linux操作系统的!

passwd [选项] 用户 :重置用户密码

-S :Status缩写,查看用户密码状态(是否设置)

-l :lock缩写,锁定用户,防止用户登陆Linux操作系统

-u :unlock缩写,解锁用户

-d :删除用户密码

例1:passwd重置用户密码:

技术分享

例2:查看用户的密码状态

技术分享

例3:锁定用户防止登陆操作系统

技术分享

例4:解锁用户

技术分享

例5:删除用户口令

技术分享

8、禁止用户登陆

1)/etc/shadow :禁止某个用户登陆

使用vi指令编辑/etc/shadow文件,如下图所示:

技术分享

打开后,效果如下图所示:

技术分享

如果你希望禁止某个用户登陆Linux操作系统,可以在密码的前面添加两个!!这样就可以禁止用户登陆了。

2)/etc/nologin :禁止所有用户登陆(root用户除外)

如果在实际应用中如系统维护,需要禁止所有用户登陆,我们可以在/etc目录下创建一个nologin文件即可阻止所有用户登陆。

技术分享

9、附属组操作

gpasswd [参数] 组名 :添加或删除用户,主要针对附属组

-a user_name :添加用户到某个附属组中

技术分享

-d user_name :从附属组中删除某个用户

技术分享

10、用户相关指令

  • su :切换用户
  • newgrp :切换所属组
  • whoami :我是谁?显示当前用户

?

例1:使用su切换用户

技术分享

① 当使用root用户切换到普通用户不需要输入密码

② 当使用普通用户切换到普通用户需要输入密码

③ 当我们从普通用户切换到超级管理员root也需要输入密码

?

例2:newgrp切换所属组信息

技术分享

?

例3:whoami我是谁,获取当前用户信息

技术分享

11、显示用户信息

  • id :显示用户信息
  • groups :显示用户的所属组信息

技术分享

12、设置用户信息

  • chfn [用户名称] :设置用户信息
  • finger [用户名称] :查看用户信息

技术分享

13、批量添加用户

在实际工作应用中,可能需要大批量的导入Linux系统用户信息,这个时候不妨考虑使用批量导入功能。

批量添加用户六步走:

① 编辑用户文件

② 编辑密码文件

③ newusers????????????

④ pwunconv????????

⑤ chpasswd ????????

⑥ pwconv

第一步:编辑用户文件

技术分享

第1列:用户名

第2列:用户密码,真实密码存放在/etc/shadow文件中

第3列:用户id

第4列:组id

第5列:备注信息

第6列:用户的家

第7列:系统用户Shell目录

技术分享

第二步:编辑密码文件

技术分享

第三步:使用newusers指令导入用户文件

技术分享

执行以上步骤,代表把user.txt 文件中的内容导入到/etc/passwd文件中

技术分享

第四步:使用pwunconv指令反转/etc/shadow文件中的密码到/etc/passwd中显示

技术分享

第五步:使用chpasswd导入密码文件到/etc/passwd中

技术分享

第六步:使用pwconv指令,重新生成/etc/shadow文件

技术分享

到此u1,u2,u3,u4四个用户导入成功!

批量添加用户原理图:

技术分享

14、赋予某些用户特殊权限

1)vi编辑/etc/sudoers(有语法着色,建议使用此方法)

2)直接使用visudo指令编辑用户权限(没有语法着色)

例:分配wenbao用户useradd与shutdown权限

技术分享

特别说明:设置普通用户特殊权限时,其处理指令必须使用全路径,其指令所在路径可以通过whereis指令进行获取.

技术分享

在sudoers文件中设置如下:

技术分享

使用wenbao账户进行登陆,然后使用sudo –l查看器具有哪些超级权限:

技术分享

使用时,我们必须通过如下格式进行操作:

sudo(以管理员身份运行) Shell指令全路径 相关选项或参数

技术分享

用户和组

标签:

原文地址:http://www.cnblogs.com/nyxd/p/5366355.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!