zl程序教程

您现在的位置是:首页 >  系统

当前栏目

【Linux篇<Day07>】——用户和组详解

Linux 详解 用户
2023-09-11 14:20:37 时间

在这里插入图片描述

一份微语报,众览天下事!
【今日要闻】
鸿蒙操作系统开源项目
全球下载次数高达6300万次
马克斯以440亿美元收购Twitter
【今日微语】
下定决心去做一件事
请务必尽全力去做它

让我们进入今天的学习吧!
💪Keep  trying💪

在这里插入图片描述

🥬一、用户与组概述
🥒二、添加和删除用户
🍉三、用户密码设置
🥦四、修改用户属性
🍆五、用户初始配置文件
🌶️六、组账号管理

在这里插入图片描述

🥬一、用户与组概述

  • 账户类别:用户账号和组账号;
    识别方式:UID和GID

  • 用户账号:超级管理员、系统用户、普通用户
    root用户的UID为0(谁的UID为0谁就是超级管理员
    系统用户UID:1~999
    普通用户UID:1000~

  • 组账号:分为基本组(私有组)和附加组(公共组、从属组)
    组账号用来区分权限,不用于登录
    每一个用户被创建时,会先创建一个该用户,然后创建一个与该用户同名的组作为该用户的基本组,然后把该用户加入到里面。

  • 用户的账户信息
    存放在 /etc/passwd 里面,每个用户记录一行,共七个字段,用六个冒号隔开。七个字段的具体含义如下图所示:
    在这里插入图片描述

🥒二、添加和删除用户

  • 查看用户信息:id 用户名 在这里插入图片描述

  • 添加用户 格式:useradd [选项]… 用户名
    冷知识:在添加用户时,系统会新建四种文件,分别为:用户本身、用户基本组、用户家目录、信箱文件(从 /etc/skel 下拷贝至家目录);添加用户时,新用户的UID和GID会随着最近的一个UID和GID加1;如果UID和GID跨度过大,在条件允许的情况下,GID会跟随UID,重新对齐。
    常用子选项:

    • -u:指定用户UID 在这里插入图片描述

    • -d:指定用户家目录 在这里插入图片描述

    • -s:指定登录解释器 在这里插入图片描述

    • -G:指定附加组 在这里插入图片描述

    • -g:指定基本组 在这里插入图片描述

  • 删除用户

    • userdel 用户名:只删除用户名和组,保留家目录和信箱文件
    • userdel -r 用户名:连同家目录和信箱文件一起删除 在这里插入图片描述

🍉三、用户密码设置

  • 交互式
    格式:passwd 用户名 在这里插入图片描述

  • 非交互式(只有管理员可以
    格式:echo 密码 | passwd --stdin 用户名 在这里插入图片描述

  • 解析用户密码文件 用户密码信息存放在:/etc/shadow文件中,每个用户记录一行,共九个字段,用冒号隔开,各字段含义如下图所示:
    在这里插入图片描述冷知识:如果希望用户首次登录系统时强制修改密码,可以利用vim把/etc/shadow 第三个字段设置为0,然后强制保存并退出!

🥦四、修改用户属性

  • 格式:usermod [选项]… 用户名

  • 常用子选项:

    • -u:修改UID 在这里插入图片描述

    • -l:修改用户名
      在这里插入图片描述

    • -d:修改家目录
      注意:即便是修改了家目录,也只是修改了配置文件,但不会新建家目录

    • -s:修该登录解释器

    • -G:修改附加组(重置附加组)

    • -g:修改基本组(不建议修改)

  • 如何创建在用户家目录删除的情况下手动创建
    用户创建时,系统会以/etc/skel作为模板,复制一份到用户的家目录下
    步骤:
    cp -r /etc/skel /home/用户名
    chmod 用户名:基本组 /home/用户名(家目录)

🍆五、用户初始配置文件

  • 配置文件来源 新建用户时,根据 /etc/skel 模板复制

  • 主要的初始配置文件

    • ~/.bash_profile:每次登录时执行
    • ~/.bashrc:每次进去新的bash环境时执行
    • ~/.bash_logout:每次退出登录时执行
  • 全局配置文件 /etc/bashre  /etc/profile
    配置后所以的用户都可以使用,并且优先听取全局的配置 举栗子:在普通用户下的.bashrc里面写入alias hn =“hostname”,然后在全局的/etc/bashrc里面写入alias hn =“pwd”,再去普通用户下面执行hn 在这里插入图片描述由此可见,hn执行的是pwd,所以全局优先

🌶️六、组账号管理

  • 组的基本信息存放在/etc/group中,
    在这里插入图片描述

    组的成员的信息存放在/etc/gshadow中
    在这里插入图片描述

  • 添加组
    格式:groupadd [-g 组ID] 组名
    -g是指定GID添加,不加该子选项默认会在前一个GID上加1 在这里插入图片描述

  • 管理组成员

    • gpaswd -a 用户名 组名:添加组成员到该组 在这里插入图片描述
    • gpasswd -M:重新定义组成员列表
      格式:gpasswd -M '用户1,用户2...' 组名
      清空组成员:gpasswd -M ‘’ 组名
    • gpaswd -d 用户名 组名:从该组删除该用户 在这里插入图片描述
  • 删除组 格式:groupdel 组名
    注意:删除组的同时会将组里面的所有成员删除 ;不能删除基本组在这里插入图片描述

  • gpasswd -A :设置组管理员
    格式:gpasswd -A 用户名 组名
    在这里插入图片描述


         👆回到顶部👆

在这里插入图片描述