三.Linux用户和用户管理

前言:Linux系统是一个多用户多任务的分时操作系统,任何一个要使用资源的都必须向系统管理员申请一个账户,然后通过这个账户的身份进入系统。

一.此次目的

用户账号的添加、删除与修改。
用户口令的管理。
用户组的管理。

二.用户账号的添加、删除与修改。

1.添加新的用户账号使用useradd命令。

语法:useradd 选项 用户名

选项

-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组,
-G 用户组,用户组 指定用户所属的附加组,
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号

(1) useradd test1创建用户test1

有些版本的只有useradd是不会创建下面的家目录的。

(2) useradd -d /home/123 -m test2  指定为test2用户创建11111的家目录,默认情况是用户名

你可以重新登录,用用户test2登录。发现家目录是11111

(3) useradd test4 -s /bin/sh -g group -G yy

创建用户test4 登录的shell是/bin/sh,主组属于group,副组属于yy

2.删除账号 

如果一个用户的账号不再使用,可以从系统中删除。删除用户账号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录。

语法:userdel 选项 用户名

-r:将用户的家目录一同删除

userdel -r test2

 你可以看到test2的家目录也一并删除了

检测用户是否删除干净

第一步:检测用户是否纯在

命令:id 用户名

命令:getent passwd 用户名 

第二步:检测用户的家目录

ls /home | grep 用户名

如果任然纯在用户家目录,删除就行了。 

第三步:检测用户的邮件 

邮件地址 /var/mail

 ls /var/mail/用户名

之所以有test1是因为由前面知道没有使用-r参数,只是删除账户,一些其他是没有删除的,二test2用了-r参数,所以删除了。

 第四步:检测用户进程

ps -u 用户名

第五步:杀死进程

kill -9 进程ID 

-9 代表的是 SIGKILL 信号。它是一个特殊的信号,通常用于强制终止进程,不会给进程执行清理操作的机会。 

第六步:检测系统用户配置文件

grep 用户名 /etc/passwd
grep 用户名 /etc/shadow
 

没有输出值说明删除了

第七步:删除用户的Cron作业

ls /var/spool/cron/crontabs/

第八步:检测用户的组

grep 用户名 /etc/group
 

没有说明删除了

3.修改账号 usermod

修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等。

语法:usermod 选项 用户名

(1)-l参数,修改用户的登录名,也就是你登录的时候使用的名字

注意:-l 选项只会修改用户名,不会更改用户的家目录和邮件别名。

usermod  -l 新用户名 旧用户名

验证注意事项

命令:usermod -l new test3 

我将用户test3在登录的时候使用new这个名字登录

来到登录界面,会有者new账户

 

 

你会发现家目录的test3名并没有修改 ,这是就可以将这个家目录修改为你的new名字

(2)usermod -d 新目录 -m 用户名   修改用户的主目录

这个命令并不能修改当前正在运行的用户 

重新登录其他用户,修改成功。

 

(3) usermod -s /bin/bash(/bin/sh) 用户名:修改用户的默认登录的shell

可以发现现在这个账户是/bin/bash登录shell

命令:usermod -s /bin/sh new

补充:这是网上查找的关于bash和sh

sh 是 Bourne Shell 的缩写,最初由 Steve Bourne 开发。它是一个传统的 Unix shell,基本功能较为简洁,兼容性强。bash(Bourne Again Shell)则是 sh 的一个扩展,包含了更多的功能,比如命令补全、历史记录、数组支持等,并且更加灵活。

bash 在现代 Linux 系统中通常是默认的 shell,而 sh 可能是指向 bash 或其它 shell(如 Dash)的符号链接。简单来说,bash 是对 sh 的增强版,功能更丰富。 

具体区别太多太细,不是相关的运维人员没必要。

 (4)usermod -g 主用户组 用户名/usermod -G 附加用户组 用户名:修改用户的用户组

这里我修改yy2的

命令:usermod -g  yuanshen yy2

这是修改主属组的

 命令:usermod -G group yy2

这里意味着这个yy2用户属于主组为yuanshen,附加组为group

(5) usermod -L 用户名(锁定用户)/usermod -U  用户名 (解锁用户)

命令:usermod -L  new

 这里通过grep new /etc/shadow,也就是查看这个用户的密码情况。

 

命令:usermod -U new 

没有感叹号了

(6) usermod -e 2024-11-9 用户名

用chage -l new 可以查看用户密码过期事件

4.用户口令管理passwd 

语法:passwd 选项 用户名

(1) passwd -l 锁定口令,就是禁用账号

这里我用usermod -U解锁用户

(2)passwd -u 口令解锁。

我先用usermod -L 锁定账户

成功解锁 

(3) passwd -d 账户无口令(没有密码)

(4)passwd -f 强迫用户下次登录时修改口令

没有密码的会直接修改密码。

三.LIinx系统中的用户组的管理

不同Linux 系统对用户组的规定有所不同,Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新。

1.增加一个·新的用户组使用groupadd命令

语法:groupadd 选项 用户组

(1)groupadd -g CID 指定新用户组的组标识号(GID)

(2)groupadd -o GID 组名

般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。

 

2.删除一个·已有的用户组使用groupdel命令 

命令:groupdel fist1

3. 修改用户组的属性使用groupmod命令

语法:groupmod 选项 组名

(1)groupmod -g GID 组名

(2)groupmod -og GID 组名与前面的一样

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

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

相关文章

SpringBoot技术栈:构建高效共享汽车系统

4系统概要设计 4.1概述 本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示: 图4-1系统工作原理…

【笔记】扩散模型(九):Imagen 理论与实现

论文链接:Photorealistic Text-to-Image Diffusion Models with Deep Language Understanding 非官方实现:lucidrains/imagen-pytorch Imagen 是 Google Research 的文生图工作,这个工作并没有沿用 Stable Diffusion 的架构,而是级…

css:基础

前言 我们之前其实也可以写出一个看起来算是一个网页的网页,为什么我们还要学css? CSS(Cascading Style Sheets)也叫层叠样式表,是负责美化的,我们之前说html就是一个骨架,css就可以用来美化网…

[全网最细数据结构完整版]第七篇:3分钟带你吃透队列

目录 1->队列的概念及结构 2->队列的实现 2.1定义队列基本结构 struct QueueNode 和 struct Queue 2.2队列初始化函数 QueueInit 函数 2.3队列销毁函数 QueueDestroy 函数 2.4队列插入数据函数 QueuePush 函数 2.5判断队列是否为空,空返回true,非空返回false 2.6队列删…

Android笔记(三十五):用责任链模式封装一个App首页Dialog管理工具

背景 项目需要在首页弹一系列弹窗,每个弹窗是否弹出都有自己的策略,以及哪个优先弹出,哪个在上一个关闭后再弹出,为了更好管理,于是封装了一个Dialog管理工具 效果 整体采用责任链模块设计,控制优先级及弹…

掌握软件组件/单元测试中的这些术语,你就算正式入门了

上篇干货,和大家分享了软件测试的几个级别,在【组件/单元测试】当中,涉及不少名词术语。从之前的学员学习过程来看,这里比较容易出现概念混乱,进而导致面试过程中频频翻车,所以有必要在这里单独拎出来和大家…

html的week控件 获取周(星期)的第一天(周一)和最后一天(周日)

html的week控件 获取周(星期)的第一天(周一)和最后一天(周日) <input type"week" id"week" class"my-css" value"ViewBag.DefaultWeek" /><script> function PageList() { var dateStrin…

【主机游戏】艾尔登法环游戏攻略

艾尔登法环&#xff0c;作为一款备受好评但优化问题频发的游戏&#xff0c;就连马斯克都夸过 今天介绍一下这款游戏 https://pan.quark.cn/s/24760186ac0b 角色升级 在《艾尔登法环》中&#xff0c;角色升级需要找到梅琳娜。你可以在关卡前废墟的营地附近&#xff0c;风暴关…

CSS 中三角形的绘制方法详解

在网页设计领域&#xff0c;特殊形状常常能为页面增添独特的视觉效果&#xff0c;三角形便是其中之一。本文将详细介绍如何利用 CSS 绘制三角形。 一、原理阐述 CSS 中一个元素的边框分为上边框、右边框、下边框和左边框。当把一个元素的宽度和高度设为 0&#xff0c;且只让其…

虚拟机linux7.9下安装mysql

1.MySQL官网下载安装包&#xff1a; MySQL :: Download MySQL Community Server https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.39-linux-glibc2.12-x86_64.tar.gz 2.解压文件&#xff1a; #tar xvzf mysql-5.7.39-linux-glibc2.12-x86_64.tar.gz 3.移动文件&#…

负载均衡式在线oj项目开发文档(个人项目)

项目目标 需要使用的技术栈&#xff1a; 这个项目共分成三个模块第一个模块为公共的模块&#xff0c;用于解决字符串处理&#xff0c;文件操作&#xff0c;网络连接等等的问题。 第二个模块是一个编译运行的模块&#xff0c;这个模块的主要功能就是将用户的代码收集上来之后要…

MySQL数据库专栏(五)连接MySQL数据库C API篇

摘要 本篇文章主要介绍通过C语言API接口链接MySQL数据库&#xff0c;各接口功能及使用方式&#xff0c;辅助类的封装及调用实例&#xff0c;可以直接移植到项目里面使用。 目录 1、环境配置 1.1、添加头文件 1.2、添加库目录 2、接口介绍 2.1、MySql初始化及数据清理 2.1.…

PH热榜 | 2024-11-08

DevNow 是一个精简的开源技术博客项目模版&#xff0c;支持 Vercel 一键部署&#xff0c;支持评论、搜索等功能&#xff0c;欢迎大家体验。 在线预览 1. Quorini 标语&#xff1a;几分钟内设计并运行无服务器云 API 介绍&#xff1a;Quorini 提供了一套可视化的工具&#xff…

QML:Menu详细使用方法

目录 一.性质 二.作用 三.方法 四.使用 1.改变标签 2.打开本地文件 3.退出程序 4.打开Dialog 五.效果 六.代码 在 QML 中&#xff0c;Menu 是一个用于创建下拉菜单或上下文菜单的控件。它通常由多个 MenuItem 组成&#xff0c;每个 MenuItem 可以包含文本、图标和快捷…

k8s 处理namespace删除一直处于Terminating —— 筑梦之路

问题现象 k8s集群要清理某个名空间&#xff0c;把该名空间下的资源全部删除后&#xff0c;删除名空间&#xff0c;一直处于Terminating状态&#xff0c;无法完全清理掉。 如何处理 为什么要记录下这个处理的步骤&#xff0c;经过查询资料&#xff0c;网上也有各种各样的方法&…

>>,<<,~,,|,∧

‌监视器中的数值在十六进制显示时没有负数&#xff0c;主要是因为十六进制本身不直接表示负数&#xff0c;而是通过补码的形式来表示。

【韩老师零基础30天学会Java 】03章 变量

第三章 变量 1. 变量介绍 为什么需要变量&#xff1f; 变量是程序的基本组成单位 变量有三个基本单位&#xff1a;类型名称值 //1.定义变量int age 20;double score88.6;char gender男;String namejack;变量使用注意事项 变量表示内存中的一个存储区域[不同的变量,类型不同&am…

扭蛋机小程序开发,潮玩扭蛋机市场下新机遇

随着大众对潮玩文化的需求不断增长&#xff0c;市场进行了创新升级&#xff0c;不再局限于传统的销售营销模式&#xff0c;进一步推动行业的发展。目前&#xff0c;扭蛋机的种类越来越丰富&#xff0c;从手办、玩具到各种IP周边等&#xff0c;为市场带来更多新颖的扭蛋商品。销…

Unity 实现数字垂直滚动效果

Unity 实现数字垂直滚动效果 前言项目场景布置Shader代码编写材质球设置代码编写数字图片 前言 遇到一个需要数字垂直滚动模拟老虎机的效果&#xff0c;记录一下。 项目 场景布置 3个Image换上带有RollNumberShader的材质 在RollNumberScript脚本中引用即可 Shader代码编…

记录解决vscode 登录leetcode中遇到的问题

1. 安装完 leetcode 点击sign in to leetcode 点击打开网站登录leetcode&#xff0c;发现网页无法打开。 解决办法&#xff1a;将leetcode.cn.js文件中的leetcode-cn.com路径都改成leetcode.cn 2. 继续点击 sign in to leetcode &#xff0c;选择使用账号登录&#xff0c;始…