当前位置: 首页 > 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

相关文章:

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

用户账号管理 账号控制总述 用户账户 作用: 1.可以登陆操作系统 2.不同的用户具备不同的权限 唯一标识:UID(编号从0开始的编号,默认最大60000)zhangsan(UID 1200) 管理员root的UID:永远为0 系统用户(为程…...

MyBatis-Plus分页查询、分组查询

目录 准备工作1. 实体类2. Mapper类3. 分页插件4. 数据 分页查询1. 使用条件构造器2. 使用自定义sql 分组查询1. 分组结果类2. 自定义sql3. 测试类 准备工作 1. 实体类 对地址字段address使用字段类型转换器,将List转为字符串数组保存在数据库中 package com.exa…...

2024年9月HarmonyOS鸿蒙应用开发者高级认证全新题库(覆盖99%考题)

一个小时通过鸿蒙高级认证 1、在开发 Harmony0S 应用工程时, 随着业务的发展,现在需要创建一个模块, 关于在 DevEco Studio 中创建 Module , 下列选项哪种方式是错误的? 必对 在 hvigor 目录下,单击鼠标右键&#xf…...

大工程师插件下载 官方地址

https://download.3dsource.cn/3DSource_Client.exe...

rtems 5.3 qemu realview_pbx_a9 环境搭建:生成 rtems arm 工具链

前言 rtems 是一款比较优秀的 RTOS,官方网址 https://www.rtems.org/ 当前 rtems 最新发布的版本:rtems-5.3 版本, 下载地址 https://ftp.rtems.org/pub/rtems/releases/5/5.3/ rtems 支持的 平台也是比较多的,当前支持 STM32F4…...

【算法】栈与模拟

【ps】本篇有 5 道 leetcode OJ。 目录 一、算法简介 二、相关例题 1)删除字符串中的所有相邻重复项 .1- 题目解析 .2- 代码编写 2)比较含退格的字符串 .1- 题目解析 .2- 代码编写 3)基本计算器 II .1- 题目解析 .2- 代码编写 4&…...

【Django】Django AI 聊天机器人项目:基于 ChatGPT 的 Django REST API

Django AI 聊天机器人项目:基于 ChatGPT 的 Django REST API 本文档将介绍如何使用 Django 和 Django REST Framework 构建一个 AI 聊天机器人项目,并结合 OpenAI 的 GPT 模型提供代码解释服务。步骤包括创建 Django 项目、配置 API、与 OpenAI 集成&am…...

System.out源码解读——err 和 out 一起用导致的顺序异常Bug

前言 笔者在写一个小 Demo 的过程中&#xff0c;发现了一个奇怪的问题。问题如下&#xff1a; // 当 flagtrue 时打印 a1 &#xff1b;当 flagfalse 时打印 a2。 public static void main(String[] args) {boolean flag false;for (int i 0; i < 10; i) {if (flag) {Sys…...

汽车软件开发之敏捷开发

一、前言 目前汽车电子产品&#xff0c;特别是汽车几大域控&#xff08;如&#xff1a;智能座舱、智能驾驶、智能网联、车身控制&#xff09;市场竞争激烈&#xff0c;消费者对汽车的需求逐渐多元化和个性化&#xff0c;用户对座舱和智驾产品的要求也越来越高。他们不仅要求产…...

ListBox显示最新数据、左移和右移操作

1、程序 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using static Sys…...

mysql实用系列:日期格式化

在MySQL中&#xff0c;你可以使用DATE_FORMAT()函数来格式化日期。DATE_FORMAT() 函数通常用于格式化 DATETIME 或 TIMESTAMP类型的字段。这个函数允许你按照指定的格式来显示日期和时间。下面是一些常见的日期格式化的例子&#xff1a; 显示年-月-日&#xff1a; SELECT DATE_…...

时钟频率、AI采样率与AO更新率的关系

在数据采集和信号生成设备&#xff08;如NI板卡&#xff09;中&#xff0c;时钟频率、AI&#xff08;模拟输入&#xff09;采样率、以及AO&#xff08;模拟输出&#xff09;更新率是三个至关重要的参数。它们共同决定了设备在信号采集与生成时的性能表现。本文将详细分析它们之…...

代理IP设置后IP不变?可能的原因及解决方法

在使用代理IP时&#xff0c;有时会遇到代理设置后IP地址却没有变化的情况。这种问题可能会让人感到困惑&#xff0c;但其实背后有多种原因。本文将详细探讨这些原因&#xff0c;并提供相应的解决方法&#xff0c;帮助你顺利解决问题。 可能的原因 代理IP设置后IP地址不变的原…...

瑞芯微RK3588开发板Linux系统添加自启动命令的方法,深圳触觉智能Arm嵌入式鸿蒙硬件方案商

本文适用于触觉智能所有Linux系统的开发板、主板添加自启动命令的方法&#xff0c;本次使用了触觉智能的EVB3588开发板演示&#xff0c;搭载了瑞芯微RK3588旗舰芯片。 该开发板为核心板加底板设计&#xff0c;为工业场景设计研发的模块化产品&#xff0c;10年以上稳定供货,帮助…...

Varjo在芬兰开设新工厂,以满足国防部门在XR模拟训练中的需求

在军事国防领域&#xff0c;全新技术的投入使用最看重的就是保密与安全。作为全球领先的XR头戴式显示器提供商Varjo&#xff0c;近日正式宣布将在位于芬兰的赫尔辛基开设一家新的安全制造工厂。 此次工厂扩建将使Varjo能够满足国防训练和模拟领域对其高分辨率XR解决方案日益增…...

python 识别省市、区县并组建三级信息数据库

一、网址&#xff1a; 全国行政区划信息查询平台 二、分析并搭建框架 检查网页源码&#xff1a; 检查网页源码可以发现&#xff1a; 所有省级信息全部在javaScript下的json中&#xff0c;会在页面加载时加载json数据&#xff0c;填充到页面的option中。 1、第一步&#xff1a…...

家用小型超声波清洗机怎么选?四大人气爆款品牌不可错过!

在现代社会快节奏的步伐中&#xff0c;保持高度的个人及家居卫生标准成为了日常生活的重要组成部分&#xff0c;对于追求高端生活品质的人群而言&#xff0c;这一点尤为重要。因此&#xff0c;选取一款集高效与便利于一体的超声波清洗机&#xff0c;无疑是升级日常清洁体验的理…...

NVIDIA最新AI论文介绍NEST:一种用于语音处理的快速高效自监督模型

语音处理专注于开发能够分析、解释和生成人类语音的系统。这些技术涵盖了多种应用&#xff0c;例如自动语音识别&#xff08;ASR&#xff09;、说话人验证、语音转文本翻译以及说话人分离。随着对虚拟助手、转录服务和多语言交流工具的依赖不断增加&#xff0c;高效准确的语音处…...

聊聊对别人表示真正的关注

在工作和生活中,那些重要人士所得到的关注已经很多了&#xff0c;所以你不能只关注那些重要的人&#xff0c;对那些保洁门卫、前台等也需要我们给予真心的关注。 他们可使你的生活正常有序&#xff0c;但却经常被你忽略&#xff0c;见面打个招呼时常跟他们聊一聊&#xff0c;这…...

大数据-133 - ClickHouse 基础概述 全面了解

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; 目前已经更新到了&#xff1a; Hadoop&#xff08;已更完&#xff09;HDFS&#xff08;已更完&#xff09;MapReduce&#xff08;已更完&am…...

ES6从入门到精通:前言

ES6简介 ES6&#xff08;ECMAScript 2015&#xff09;是JavaScript语言的重大更新&#xff0c;引入了许多新特性&#xff0c;包括语法糖、新数据类型、模块化支持等&#xff0c;显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var&#xf…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)

概述 在 Swift 开发语言中&#xff0c;各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过&#xff0c;在涉及到多个子类派生于基类进行多态模拟的场景下&#xff0c;…...

基于当前项目通过npm包形式暴露公共组件

1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹&#xff0c;并新增内容 3.创建package文件夹...

Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?

Redis 的发布订阅&#xff08;Pub/Sub&#xff09;模式与专业的 MQ&#xff08;Message Queue&#xff09;如 Kafka、RabbitMQ 进行比较&#xff0c;核心的权衡点在于&#xff1a;简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...

计算机基础知识解析:从应用到架构的全面拆解

目录 前言 1、 计算机的应用领域&#xff1a;无处不在的数字助手 2、 计算机的进化史&#xff1a;从算盘到量子计算 3、计算机的分类&#xff1a;不止 “台式机和笔记本” 4、计算机的组件&#xff1a;硬件与软件的协同 4.1 硬件&#xff1a;五大核心部件 4.2 软件&#…...

论文阅读:LLM4Drive: A Survey of Large Language Models for Autonomous Driving

地址&#xff1a;LLM4Drive: A Survey of Large Language Models for Autonomous Driving 摘要翻译 自动驾驶技术作为推动交通和城市出行变革的催化剂&#xff0c;正从基于规则的系统向数据驱动策略转变。传统的模块化系统受限于级联模块间的累积误差和缺乏灵活性的预设规则。…...

Cilium动手实验室: 精通之旅---13.Cilium LoadBalancer IPAM and L2 Service Announcement

Cilium动手实验室: 精通之旅---13.Cilium LoadBalancer IPAM and L2 Service Announcement 1. LAB环境2. L2公告策略2.1 部署Death Star2.2 访问服务2.3 部署L2公告策略2.4 服务宣告 3. 可视化 ARP 流量3.1 部署新服务3.2 准备可视化3.3 再次请求 4. 自动IPAM4.1 IPAM Pool4.2 …...

WEB3全栈开发——面试专业技能点P7前端与链上集成

一、Next.js技术栈 ✅ 概念介绍 Next.js 是一个基于 React 的 服务端渲染&#xff08;SSR&#xff09;与静态网站生成&#xff08;SSG&#xff09; 框架&#xff0c;由 Vercel 开发。它简化了构建生产级 React 应用的过程&#xff0c;并内置了很多特性&#xff1a; ✅ 文件系…...

sshd代码修改banner

sshd服务连接之后会收到字符串&#xff1a; SSH-2.0-OpenSSH_9.5 容易被hacker识别此服务为sshd服务。 是否可以通过修改此banner达到让人无法识别此服务的目的呢&#xff1f; 不能。因为这是写的SSH的协议中的。 也就是协议规定了banner必须这么写。 SSH- 开头&#xff0c…...

【把数组变成一棵树】有序数组秒变平衡BST,原来可以这么优雅!

【把数组变成一棵树】有序数组秒变平衡BST,原来可以这么优雅! 🌱 前言:一棵树的浪漫,从数组开始说起 程序员的世界里,数组是最常见的基本结构之一,几乎每种语言、每种算法都少不了它。可你有没有想过,一组看似“线性排列”的有序数组,竟然可以**“长”成一棵平衡的二…...