当前位置: 首页 > news >正文

Linux:用户账号管理和组账号管理

用户账号管理

在这里插入图片描述

账号控制总述

在这里插入图片描述
在这里插入图片描述

用户账户
作用:  1.可以登陆操作系统   2.不同的用户具备不同的权限
唯一标识:UID(编号从0开始的编号,默认最大60000)zhangsan(UID 1200)
管理员root的UID:永远为0
系统用户(为程序运行与服务运行提供身份)为1~999
普通用户的UID:默认从1000开始组账户                                  
作用: 方便管理用户
唯一标识:GID(编号从0开始的编号,默认最大60000)原则:Linux一个用户必须至少属于一个组
组账户的分类:
基本组:系统创建与用户同名
附加组(从属组):由管理员创建,由管理员进行加入

在这里插入图片描述
创建一个用户,默认情况下会创建一个同名的组,称为基本组,一般基本组只有一个成员。比如创建一个tom用户,就会创建一个tom组。
我们手动添加的组是附加组。
基本组我们一般是不用的,更多使用附加组。
一般我们给组设置权限,组里的用户会继承组里的权限。

解析用户账号文件

	本地账户的数据文件
–	/etc/passwd、/etc/shadow
–	/etc/group、/etc/gshadow/etc/passwd:存放用户基本信息配置文件
[root@localhost ~]# head -1  /etc/passwd
root:x:0:0:root:/root:/bin/bash
用户名:密码占位符:UID:基本组GID:用户描述信息:家目录:解释器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

用户创建

	命令useradd
–	格式:useradd  [选项]...  用户名
•	常用命令选项
–	-u:指定 UID 标记号
–	-d:指定宿主目录(家目录),缺省为 /home/用户名
–	-G:指定所属的附加组
–	-s:指定用户的登录解释器

useradd

在这里插入图片描述

useradd -u(指定uid)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

id

在这里插入图片描述

useradd -d(指定家目录)

在这里插入图片描述
在这里插入图片描述
注意:用户的家目录不能自己创建,否则权限上可能会有问题。

useradd -G(指定附加组)

在这里插入图片描述

useradd -s (指定用户的登录解释器)

-s:指定用户的登录解释器
shell:壳,解释器
用户---->解释器---->内核---->硬件
/sbin/nologin:禁止用户登录操作系统

在这里插入图片描述
在这里插入图片描述

用户修改

	usermod命令
–	格式:usermod  [选项]...  用户名
•	常用命令选项
–	-l:更改用户帐号的登录名称
–	-u:用户id
–	-d:家目录路径(不会自动创建家目录)
–	-s:登录解释器
–	-G:附加组     //重置附加组

修改用户帐号的登录名称

在这里插入图片描述

修改uid和登录解释器

在这里插入图片描述

修改家目录

在这里插入图片描述

直接用vim修改/etc/passwd

在这里插入图片描述
在这里插入图片描述

重置用户附加组

在这里插入图片描述
在这里插入图片描述
原来没有附加组,就会增加附加组;
原来有附加组,就会修改附加组;
在这里插入图片描述
在这里插入图片描述

设置用户密码

Linux用户没有密码不能登录。

	passwd命令
–	格式:passwd  [选项]...  用户名
[root@localhost ~]# passwd  nsd01       #交互式设置
更改用户 nsd01 的密码 。
新的 密码:                             #输入新密码
无效的密码: 密码少于 8 个字符
重新输入新的 密码:                #重新输入新密码
passwd:所有的身份验证令牌已经成功更新。
[root@localhost ~]# su  -  nsd01       #临时切换用户身份
[nsd01@localhost ~]$ passwd 
更改用户 nsd01 的密码 。
为 nsd01 更改 STRESS 密码。
(当前)UNIX 密码:           #输入旧密码
新的 密码:                          #输入新密码
重新输入新的 密码:             #重新输入新密码
passwd:所有的身份验证令牌已经成功更新。
[nsd01@localhost ~]$  exit    #退出。回到root用户身份

root修改普通用户密码

在这里插入图片描述
注:无需知道旧密码,直接改新密码
在这里插入图片描述

su切换用户

在这里插入图片描述
在这里插入图片描述

普通用户修改密码

在这里插入图片描述
普通用户修改密码的时候,必须要符合复杂性要求。

非交互式设置密码

	passwd命令,支持非交互式设置密码
–	--stdin:从标准输入(比如管道)取密码
[root@localhost ~]# echo 123   |   passwd  --stdin nsd01
[root@localhost ~]# echo 123456   |   passwd  --stdin nsd01
[root@localhost ~]# echo redhat   |   passwd  --stdin nsd01

在这里插入图片描述
在这里插入图片描述

用户密码信息存放文件:/etc/shadow

	/etc/shadow,保存密码字串/有效期等信息
–	每个用户记录一行,以:分割为9个字段
[root@localhost ~]# grep nsd01  /etc/shadow
nsd01:$6$NVe937Nd$B0n94XrpQ.LipQHTpYh0iV/M4jCLdccfHxzRLprdxDzwk8WDDh/TzdTfh8lA9y9WKJ.8Ls/l5.w/1W.nV6CFX/:18481:0:99999:7:::字段1:用户帐号的名称
字段2:加密后的密码字符串
字段3:上次修改密码的时间(自1970-1-1到达上一次修改密码的时间,所经历的天数)
字段4:密码的最短有效天数,默认0(0表示随时都可以修改,1表示至少使用1天才可以修改密码)
字段5:密码的最长有效天数,默认99999
字段6:密码过期前的警告天数,默认7
字段7:密码过期后多少天禁用此用户账号
字段8:帐号失效时间,默认值为空
字段9:保留字段(未使用)最后几个字段,可以理解为用户永远有效。

在这里插入图片描述
在这里插入图片描述
两个!!表示用户刚创建,没有设置过密码,只有设置了密码才能登录系统。

用户初始配置

在这里插入图片描述

配置文件来源

	配置文件来源
新建用户时,新建用户家目录,根据 /etc/skel 模板目录复制
[root@localhost ~]# ls -A /etc/skel/[root@localhost ~]# touch  /etc/skel/haxi.txt
[root@localhost ~]# mkdir  /etc/skel/test
[root@localhost ~]# ls -A  /etc/skel/[root@localhost ~]# useradd  nsd19
[root@localhost ~]# ls  -A   /home/nsd19[root@localhost ~]# useradd nsd20
[root@localhost ~]# ls  -A  /home/nsd20

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

主要的初始配置文件

	主要的初始配置文件
–	~/.bash_profile:每次登录系统时执行,定义初始变量值
–	~/.bashrc:每次进入新的Bash环境时执行(开启新的终端)[root@localhost ~]# vim   /root/.bashrc     #定义永久别名
alias   haha='echo   haha'开启新的终端进行测试:
[root@localhost ~]# haha
haha–	/etc/bashrc:全局配置文件,影响全体用户 (开启新的终端)[root@localhost ~]# vim   /etc/bashrc 
alias   xixi='echo xixi'[root@localhost ~]# useradd  nsd20
[root@localhost ~]# su  -  nsd20      #相当于开启新的终端
[nsd20@localhost ~]$ xixi
xixi
[nsd20@localhost ~]$ exit
登出
[root@localhost ~]#

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
root:/root/.bashrc
普通用户:/home/用户名/.bashrc
全体:/etc/bashrc

http://www.lryc.cn/news/441201.html

相关文章:

  • MyBatis-Plus分页查询、分组查询
  • 2024年9月HarmonyOS鸿蒙应用开发者高级认证全新题库(覆盖99%考题)
  • 大工程师插件下载 官方地址
  • rtems 5.3 qemu realview_pbx_a9 环境搭建:生成 rtems arm 工具链
  • 【算法】栈与模拟
  • 【Django】Django AI 聊天机器人项目:基于 ChatGPT 的 Django REST API
  • System.out源码解读——err 和 out 一起用导致的顺序异常Bug
  • 汽车软件开发之敏捷开发
  • ListBox显示最新数据、左移和右移操作
  • mysql实用系列:日期格式化
  • 时钟频率、AI采样率与AO更新率的关系
  • 代理IP设置后IP不变?可能的原因及解决方法
  • 瑞芯微RK3588开发板Linux系统添加自启动命令的方法,深圳触觉智能Arm嵌入式鸿蒙硬件方案商
  • Varjo在芬兰开设新工厂,以满足国防部门在XR模拟训练中的需求
  • python 识别省市、区县并组建三级信息数据库
  • 家用小型超声波清洗机怎么选?四大人气爆款品牌不可错过!
  • NVIDIA最新AI论文介绍NEST:一种用于语音处理的快速高效自监督模型
  • 聊聊对别人表示真正的关注
  • 大数据-133 - ClickHouse 基础概述 全面了解
  • 第1步win10宿主机与虚拟机通过NAT共享上网互通
  • Python学习——【2.3】for循环
  • Element UI:初步探索 Vue.js 的高效 UI 框架
  • React Native防止重复点击
  • 如何将Git本地代码推送到Gitee云端仓库
  • 架构师论文备考-论云原生架构及其应用
  • 12.java面向对象:java构造器
  • 微服务之间的安全通信
  • 全面掌握 Jest:从零开始的测试指南(下篇)
  • 如何利用UML进行领域建模
  • Vue实用操作篇-1-第一个 Vue 程序