用户管理(添加和删除,查询信息,切换用户,查看登录用户,用户组,配置文件)

目录

添加和删除用户

查询用户信息

切换用户

查看当前的操作用户是谁

查看首次登录的用户是谁

用户组(对属于同个角色的用户统一管理)

新增组

删除组

添加用户的同时,指定组

修改用户的组

组的配置文件(/etc/group)

用户的配置文件(/etc/passwd)

口令的配置文件(/etc/shadow)


Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号进入系统。

添加和删除用户

参考:

Ubuntu中用useradd创建用户后无法用su切换过去_useradd 后不能切换用户登录-CSDN博客

Ubuntu中用useradd创建用户时没指定家目录和shell版本,就不能su切换到新用户_ubuntu新建用户没有家目录-CSDN博客

Ubuntu中,添加用户和指定用户密码,命令如下(需要有系统管理员权限):

useradd -m -s /bin/bash 用户名

passwd 用户名

注意:

  1. -m指自动创建home家目录,或者使用-d来手动指定home家目录,-s是指定shell版本(/bin/bash是shell版本)
  2. 自动创建家目录,是自动创建和用户同名的家目录,即/home/用户名,当使用该用户登录后,会自动切换到家目录下

删除用户,命令如下(需要有系统管理员权限):

userdel 用户名 删除用户,保留家目录

userdel -r 用户名 删除用户,连家目录一起删除

注意:

  1. -r指连同家目录一起删除
  2. 在现实情况下,删除家目录的操作要慎重,比如:会把员工留下的工作资料一起删除

示例如下:

创建用户hyh6,自动创建家目录,密码为:0h'GhM({,然后登录用户hyh6,注销hyh6,然后连同家目录一起删除用户hyh6

查询用户信息

查看用户信息,命令为:

id 用户名

示例如下:

查询用户hyh3和root的信息

切换用户

切换用户,命令为:

su – 用户名

注意:

  1. 从权限高的用户切换到权限低的用户,不需要输入密码,反之需要
  2. 当需要返回原来用户时,使用exitlogout

示例如下:

创建用户hyh6,指定家目录,指定密码,然后切换到hyh6

查看当前的操作用户是谁

查看当前的操作用户是谁,命令如下:

whoami

示例如下:

使用root用户登录系统,然后切换到用户hyh2,查看当前的操作用户是谁

查看首次登录的用户是谁

查看第一次登录的用户是谁,命令为:

who

示例如下:

使用root用户登录系统,然后切换到用户hyh2,查看第一次登录的用户是谁

用户组(对属于同个角色的用户统一管理)

类似于角色,系统可以对有共性/权限的多个用户进行统一的管理。

我们有共性的用户拉到一个组,然后给这个组赋予权限,那么这个组里的用户就都有了这个权限。

注意:如果新建的用户没有给他指定组,会默认新建一个与用户名同名的组,然后把该用户加入进去

新增组

新增组,命令为:

groupadd 组名

示例如下:

新建组【开发部】

查看发现有【开发部】组

删除组

删除组,命令为:

groupdel 组名

示例如下:

删除名为【开发部】的组

添加用户的同时,指定组

useradd -g 用户组 用户名

示例如下:

新建用户hyh7,自动创建家目录,指定到【开发部】组

修改用户的组

修改用户的组,命令为:

usermod -g 用户组 用户名

示例如下:

创建市场部,将用户hyh7的组修改为【市场部】

组的配置文件(/etc/group)

组(group)的配置文件,记录Linux中组的信息。

文件中每行含义:组名:口令:组标识号:组内用户列表

注意:组内的用户列表是看不到的

示例如下:

查看/etc/group,输入命令cat /etc/group

文件中的内容如下:

用户的配置文件(/etc/passwd)

用户(user)的配置文件,记录用户的各种信息

文件中每行含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell

注意:

  1. 用户标识号就是uid,组标识号就是gid,主目录就是用户家目录
  2. shell的用途:一般我们输入的命令,Linux内核是无法识别的,shell就承担了中间翻译的功能。一般国内使用的shell是bash

示例如下:

查看/etc/passwd文件,输入命令cat /etc/passwd

文件内容如下:

口令的配置文件(/etc/shadow)

口令的配置文件,口令是在该文件中验证的

文件中每行含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

示例如下:

查看/etc/shadow文件,输入命令cat /etc/shadow

文件内容如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/76972.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PyTorch学习-小土堆教程

网络搭建torch.nn.Module 卷积操作 torch.nn.functional.conv2d(input, weight, biasNone, stride1, padding0, dilation1, groups1) 神经网络-卷积层

MVCC详细介绍及面试题

目录 1.什么是mvcc? 2.问题引入 3. MVCC实现原理? 3.1 隐藏字段 3.2 undo log 日志 3.2.1 undo log版本链 3.3 readview 3.3.1 当前读 ​编辑 3.3.2 快照读 3.3.3 ReadView中4个核心字段 3.3.4 版本数据链访问的规则(了解&#x…

企业级Active Directory架构设计与运维管理白皮书

企业级Active Directory架构设计与运维管理白皮书 第一章 多域架构设计与信任管理 1.1 企业域架构拓扑设计 1.1.1 林架构设计规范 林根域规划原则: 采用三段式域名结构(如corp.enterprise.com),避免使用不相关的顶级域名架构主…

android11 DevicePolicyManager浅析

目录 📘 简单定义 📘应用启用设备管理者 📂 文件位置 🧠 DevicePolicyManager 功能分类举例 🛡️ 1. 安全策略控制 📷 2. 控制硬件功能 🧰 3. 应用管理 🔒 4. 用户管理 &am…

Java学习手册:Java线程安全与同步机制

在Java并发编程中,线程安全和同步机制是确保程序正确性和数据一致性的关键。当多个线程同时访问共享资源时,如果不加以控制,可能会导致数据不一致、竞态条件等问题。本文将深入探讨Java中的线程安全问题以及解决这些问题的同步机制。 线程安…

PyTorch核心函数详解:gather与where的实战指南

PyTorch中的torch.gather和torch.where是处理张量数据的关键工具,前者实现基于索引的灵活数据提取,后者完成条件筛选与动态生成。本文通过典型应用场景和代码演示,深入解析两者的工作原理及使用技巧,帮助开发者提升数据处理的灵活…

声学测温度原理解释

已知声速,就可以得到温度。 不同温度下的胜诉不同。 25度的声速大约346m/s 绝对温度-273度 不同温度下的声速。 FPGA 通过测距雷达测温度,固定测量距离,或者可以测出当前距离。已知距离,然后雷达发出声波到接收到回波的时间&a…

【网络篇】UDP协议的封装分用全过程

大家好呀 我是浪前 今天讲解的是网络篇的第二章:UDP协议的封装分用 我们的协议最开始是OSI七层网络协议 这个OSI 七层网络协议 是计算机的大佬写的,但是这个协议一共有七层,太多了太麻烦了,于是我们就把这个七层网络协议就简化为…

spring-ai-alibaba使用Agent实现智能机票助手

示例目标是使用 Spring AI Alibaba 框架开发一个智能机票助手,它可以帮助消费者完成机票预定、问题解答、机票改签、取消等动作,具体要求为: 基于 AI 大模型与用户对话,理解用户自然语言表达的需求支持多轮连续对话,能…

嵌入式C语言高级编程:OOP封装、TDD测试与防御性编程实践

一、面向对象编程(OOP) 尽管 C 语言并非面向对象编程语言,但借助一些编程技巧,也能实现面向对象编程(OOP)的核心特性,如封装、继承和多态。 1.1 封装 封装是把数据和操作数据的函数捆绑在一起,对外部隐藏…

蓝桥杯 web 常考到的一些知识点

filter:filter方法创建一个新数组,其包含通过所提供函数实现的测试的所有元素。这个 方法不会改变原数组,而是返回一个新的数组。 map:map方法创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后的 返回…

音视频小白系统入门笔记-0

本系列笔记为博主学习李超老师课程的课堂笔记&#xff0c;仅供参阅 音视频小白系统入门课 音视频基础ffmpeg原理 绪论 ffmpeg推流 ffplay/vlc拉流 使用rtmp协议 ffmpeg -i <source_path> -f flv rtmp://<rtmp_server_path> 为什么会推流失败&#xff1f; 默认…

mysql按条件三表并联查询

下面为你呈现一个 MySQL 按条件三表并联查询的示例。假定有三个表&#xff1a;students、courses 和 enrollments&#xff0c;它们的结构和关联如下&#xff1a; students 表&#xff1a;包含学生的基本信息&#xff0c;有 student_id 和 student_name 等字段。courses 表&…

UML之序列图的消息

序列图表现各参与者之间为完成某个行为而发生的交互及其时间顺序&#xff0c;序列图中的交互通过消息实现。消息是从一条生命线到另一条生命线的通信&#xff0c;它们通常是水平或倾斜向下的箭头&#xff0c;从发送方生命线离开&#xff0c;到达接收方生命线。如果需要&#xf…

UniAD:自动驾驶的统一架构 - 创新与挑战并存

引言 自动驾驶技术正经历一场架构革命。传统上&#xff0c;自动驾驶系统采用模块化设计&#xff0c;将感知、预测和规划分离为独立组件。而上海人工智能实验室的OpenDriveLab团队提出的UniAD&#xff08;Unified Autonomous Driving&#xff09;则尝试将这些任务整合到一个统一…

如何写好合同管理系统需求分析

引言 在当今企业数字化转型的浪潮中&#xff0c;合同管理系统作为企业法律合规和商业运营的重要支撑工具&#xff0c;其需求分析的准确性和完整性直接关系到系统建设的成败。本文基于Volere需求过程方法论&#xff0c;结合江铃汽车集团合同管理系统需求规格说明书实践案例&…

libevent服务器附带qt界面开发(附带源码)

本章是入门章节&#xff0c;讲解如何实现一个附带界面的服务器&#xff0c;后续会完善与优化 使用qt编译libevent源码演示视频qt的一些知识 1.主要功能有登录界面 2.基于libevent实现的服务器的业务功能 使用qt编译libevent 下载这个&#xff0c;其他版本也可以 主要是github上…

八、自动化函数

1.元素的定位 web自动化测试的操作核心是能够找到页面对应的元素&#xff0c;然后才能对元素进行具体的操作。 常见的元素定位方式非常多&#xff0c;如id,classname,tagname,xpath,cssSelector 常用的主要由cssSelector和xpath 1.1 cssSelector选择器 选择器的功能&#x…

Web三漏洞学习(其二:sql注入)

靶场&#xff1a;NSSCTF 、云曦历年考核题 二、sql注入 NSSCTF 【SWPUCTF 2021 新生赛】easy_sql 这题虽然之前做过&#xff0c;但为了学习sql&#xff0c;整理一下就再写一次 打开以后是杰哥的界面 注意到html网页标题的名称是 “参数是wllm” 那就传参数值试一试 首先判…

单片机非耦合业务逻辑框架

在小型单片机项目开发初期&#xff0c;由于业务逻辑相对简单&#xff0c;我们往往较少关注程序架构层面的设计。 然而随着项目经验的积累&#xff0c;开发者会逐渐意识到模块间的耦合问题&#xff1a;当功能迭代时&#xff0c;一处修改可能引发连锁反应。 此时&#xff0c;构…