zoukankan      html  css  js  c++  java
  • 用户和组

    用户和组

    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指令全路径 相关选项或参数

  • 相关阅读:
    Python深浅拷贝&垃圾回收&with语句
    面向对象
    三器(装饰器,生成器,迭代器)
    Redis数据类型&优缺点&持久化方式
    localStroge和sessionStorge
    redis哨兵&codis
    Redis分布式锁
    技术点剖析
    【牛客网】牛客练习赛4 A Laptop【树状数组+离散化】
    组合数有关的公式及常用求和【数学--排列组合】
  • 原文地址:https://www.cnblogs.com/nyxd/p/5366355.html
Copyright © 2011-2022 走看看