【Ubuntu】--- 创建用户 删除用户 及其他用户操作大全 持续更新中

在这里插入图片描述

  • 在编程的艺术世界里,代码和灵感需要寻找到最佳的交融点,才能打造出令人为之惊叹的作品。
  • 而在这座秋知叶i博客的殿堂里,我们将共同追寻这种完美结合,为未来的世界留下属于我们的独特印记。

【Ubuntu】--- 创建用户 删除用户 及其他用户操作大全 持续更新中

  • 开发环境
  • 一、创建系统用户
    • 1、设置密码(可选)
    • 2、示范
  • 二、创建常规用户
    • 1、创建一个名为`qiuzhiyei1`的用户
    • 2、示范
  • 三、创建用户但不创建home目录
  • 四、修改账户密码
  • 五、删除账户
    • 1. 仅删除用户账户
    • 2. 删除用户及其主目录和邮箱
    • 3. 删除用户及其所有文件
    • 4. 特殊情况处理
  • 六、查看现有用户
    • 方法一:`cat /etc/passwd`
    • 方法二:`getent passwd`
  • 七、给账户root权限


开发环境

  • 开发环境:ubuntu20

一、创建系统用户

  • 系统用户通常用于运行后台服务或执行系统任务,它们不需要登录shell,也不会创建家目录。然而,如果你需要为系统用户指定一个登录shell,可以使用以下命令:
sudo adduser --system --shell /bin/bash --group qiuzhiyei
  • --system: 创建一个系统用户。
  • --shell /bin/bash: 为用户指定bash作为登录shell(尽管系统用户通常不需要登录)。
  • --group: 创建一个与用户同名的用户组,并将用户添加到该组中。

1、设置密码(可选)

  • 尽管系统用户通常不需要密码,但如果你确实需要设置,可以使用:
sudo passwd qiuzhiyei

2、示范

root@ubuntu20:~$ sudo adduser --system --shell /bin/bash --group qiuzhiyei
Adding ubuntu20 user `qiuzhiyei' (UID 113) ...
Adding new group `qiuzhiyei' (GID 118) ...
Adding new user `qiuzhiyei' (UID 113) with group `qiuzhiyei' ...
root@ubuntu20:~$ sudo passwd qiuzhiyei
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
root@ubuntu20:~$

注意: 在实际使用中,通常不需要为系统用户设置密码。

二、创建常规用户

  • 常规用户具有登录权限和家目录,适合进行日常开发和存储个人文件。

1、创建一个名为qiuzhiyei1的用户

sudo adduser qiuzhiyei1
  • 此命令会提示你设置密码并询问一些个人信息。创建的用户将没有root权限,适合开发人员使用。

2、示范

root@ubuntu20:~# sudo adduser qiuzhiyei1
Adding user `qiuzhiyei1' ...
Adding new group `qiuzhiyei1' (1001) ...
Adding new user `qiuzhiyei1' (1001) with group `qiuzhiyei1' ...
Creating home directory `/home/qiuzhiyei1' ...
Copying files from `/etc/skel' ...
New password:
Retype new password:
passwd: password updated successfully
Changing the user information for qiuzhiyei1
Enter the new value, or press ENTER for the defaultFull Name []:Room Number []:Work Phone []:Home Phone []:Other []:
Is the information correct? [Y/n]

三、创建用户但不创建home目录

  • 如果你不想为新用户创建家目录,可以使用--no-create-home选项:
sudo adduser --no-create-home changfanglan

这种用户可能适合某些特定场景,如Samba共享,但请注意,没有家目录的用户在登录桌面环境时可能会遇到问题。

四、修改账户密码

sudo passwd username

五、删除账户

1. 仅删除用户账户

  • 若只需删除用户账户,不涉及其个人文件和设置,可使用以下命令:
sudo deluser 用户名
  • 例如,删除名为qiuzhiyei的用户:
sudo deluser qiuzhiyei
  • 系统将提示正在删除用户qiuzhiyei,并可能警告该用户组已无其他成员。

2. 删除用户及其主目录和邮箱

  • 如需彻底删除用户,并同时移除其主目录和邮箱,应执行:
sudo deluser --remove-home 用户名
  • qiuzhiyei为例:
sudo deluser --remove-home qiuzhiyei
  • 系统将搜索并删除相关文件,然后删除用户账户。

3. 删除用户及其所有文件

  • 若需更彻底地删除用户及其拥有的所有文件,可使用:
sudo deluser --remove-all-files 用户名
  • 请注意,此操作将删除用户的所有文件,需谨慎使用。

4. 特殊情况处理

  • 在删除用户时,可能会遇到无法删除用户主组的情况,如:
groupdel: cannot remove the primary group of user '用户名'
  • 此时,可以尝试使用userdel命令配合-r选项来删除用户及其主目录:
sudo userdel -r 用户名
  • 例如,删除qiuzhiyei用户及其主目录:
sudo userdel -r qiuzhiyei
  • 重要提示:执行删除操作前,请务必确认操作对象,以免误删重要数据或账户。

六、查看现有用户

方法一:cat /etc/passwd

cat /etc/passwd

区别与好处

  • 直接性:这个命令直接展示了/etc/passwd文件的内容,该文件明确记录了系统上的所有用户信息。
  • 全面性:你可以看到每个用户的详细信息,包括用户名、用户ID、组ID、家目录和默认shell。
  • 简单性cat命令是Linux中最基础的命令之一,易于使用和理解。

方法二:getent passwd

getent passwd

区别与好处

  • 动态性:与直接查看/etc/passwd文件不同,getent命令查询的是系统的用户数据库,这意味着它可以反映实时的用户信息,即使在/etc/passwd文件未被直接更新的情况下。
  • 兼容性getent是一个更为通用的命令,可以用于查询不同类型的系统数据库,不仅仅是用户信息。
  • 安全性:由于不直接操作文件,使用getent可能在一定程度上减少了误操作的风险。

七、给账户root权限

  • 当用户尝试使用sudo命令却收到“qiuzhiyei is not in the sudoers file. This incident will be reported.”这样的提示时,说明该用户没有被授予Root权限。为了解决这个问题,需要将用户添加到sudoers文件中。

以下是授予用户Root权限的步骤:

  1. 编辑sudoers文件
    打开终端,输入以下命令以编辑sudoers文件:

    sudo vim /etc/sudoers
    
  2. 找到用户权限规格部分
    sudoers文件中,找到类似于下面的行:

    # User privilege specification
    root    ALL=(ALL:ALL) ALL
    
  3. 添加用户权限
    root权限行下方,添加想要授予Root权限的用户,格式如下:

    用户名 ALL=(ALL:ALL) ALL
    

    qiuzhiyei为例,添加:

    qiuzhiyei ALL=(ALL:ALL) ALL
    
  4. 保存并退出编辑器
    如果使用的是vim编辑器,按Esc键退出插入模式,然后输入:wq并按Enter键保存并退出。如果使用的是nano编辑器,可以按Ctrl + O保存,然后按Ctrl + X退出。

  5. 测试sudo权限
    保存并退出编辑器后,就可以尝试使用sudo命令来验证权限是否已成功授予。例如,输入sudo ls并查看是否要求输入密码。如果要求输入密码并能够成功执行命令,则说明Root权限已正确授予。

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

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

相关文章

c++中string用法详解

目录 二、案例需求 三、案例实现 1.首先获取strData中的角色数量 2.创造结构体数组,定义两个索引值 3.循环遍历对结构体User中的Id和Exp进行赋值 4.对结构体数组userArr进行排序 5.展示结果以及最终代码 ​四、最后 一、前言 在C中,std::string …

【Git】多人协作 -- 详解

一、多人协作(1) ⽬前,我们所完成的工作如下: 基本完成 Git 的所有本地库的相关操作,git 基本操作,分支理解,版本回退,冲突解决等等。 申请码云账号,将远端信息 clone…

(微服务实战)聚合支付系统商户线上聚合收银台接口设计

1 概述 聚合支付收款分为线上和线下业务场景,本文中的商户收银台接口设计主要是指线上业务场景,线下业务场景聚合收款方式后续会进行单独设计和分析。 主流的线上支付渠道有微信支付,支付宝支付,云闪付。这三种支付渠道都有各自…

Linux操作系统学习:day04

内容来自:Linux介绍 视频推荐:[Linux基础入门教程-linux命令-vim-gcc/g -动态库/静态库 -makefile-gdb调试]( 目录 day0422、通过文字设定法修改用户对文件的操作权限23、通过数字设定法修改文件的权限24、修改文件所有者和所属组25、tree—查看目录内…

Notes客户机开启事务日志

大家好,才是真的好。 了解过事务日志的人都知道——等等,你还不知道事务日志? 那我们先介绍一下,简单来说,Domino事务日志是捕获数据库更改并将其写入的记录,然后等服务器不繁忙或按计划更新到磁盘上的No…

虚拟机怎么额外搭建两个Redis节点,配置多个 Redis 实例

前提条件 在开始之前,请确保你已经具备以下条件: 一台已安装 Redis 的虚拟机。虚拟机上已安装基本的 Linux 工具(例如 FinalShell)。 步骤二:配置额外的 Redis 实例 接下来,我们将配置两个新的 Redis 实…

MYSQL无法启动的修复过程

记录一次MySQ无法启动的修复过程。 1. 错误表现 今天在用python操作数据库时可能有些错误(具体来说就是我尝试创建了一个已经存在的database),结果我发现MySQL中的那个database不存在了,我重启了一下电脑,结果mysql…

数模E题——信号干扰下的超宽带(UWB)精确定位问题

E 题——信号干扰下的超宽带(UWB)精确定位问题 思路:该题主要问题是对干扰进行识别和自适应消除,得到更加理想的定位的结果 代码下载 第一题问题思路与结果: 主要是对文件进行解析并对其中存在的数据丢失进行补偿&am…

网页右键不能审查元素解决办法

网页右键不能审查元素解决办法 1.问题复现2.解决方法 1.问题复现 有的网站右键不能审查元素 这时是javascript 中的onselectstart"return false" 被禁止右键了。 2.解决方法 隐私和安全--->网络设置 网络设置--->javascript 然后回到不能审查元素的网页 …

C++ 03 之 命名空间

game_kun.cpp #include "game_kun.h"void kun::atk() {cout << "吃鸡的攻击"<< endl; } game_lol.cpp #include "game_lol.h"void lol::atk() {cout << "lol的攻击"<< endl; } game_kun.h #include <…

【信息学奥赛】CSP-J/S初赛02 计算机软件与操作系统

1 计算机软件 计算机软件可分为系统软件和应用软件两大类。 系统软件 用来支持应用软件的开发和运行的&#xff0c;主要是操作系统软件&#xff0c;如&#xff1a;DOS、Windows95/98/2000、Unix、Linux、WindowsNT&#xff1b; 应用软件 为了某个应用目的而编写的软件&…

【shell脚本速成】for 嵌套和和 if 高级用法

文章目录 一、for嵌套二、for与数组三、if高级用法3.1、条件符号使用双圆括号&#xff0c;可以在条件中植入数学表达式 if (())3.2、使用双方括号,可以在条件中使用通配符 四、简写if五、与文件存在与否的判断六、课后练习 &#x1f308;你好呀&#xff01;我是 山顶风景独好 &…

【ARMv8/ARMv9 硬件加速系列 3 -- SVE 指令语法及编译参数详细介绍】

文章目录 SVE 汇编语法SVE 单通道谓词SVE 测试代码SVE 软件和库支持SVE 编译参数配置-march=armv8-a+lse+profile+memtag+sve2-aes+sve2-bitperm+crypto+sve2+sve2-sha3+sve2-sm4SVE 汇编语法 在介绍 SVE 汇编指令语法之前,先介绍下如何判断自己所使用的芯片是否实现了SVE功能…

web前端开发哪个城市:探索最佳发展地

web前端开发哪个城市&#xff1a;探索最佳发展地 在数字化浪潮席卷全球的今天&#xff0c;Web前端开发作为互联网行业的核心技能之一&#xff0c;其发展前景日益广阔。然而&#xff0c;对于许多有志于投身这一领域的年轻人来说&#xff0c;选择哪个城市作为起点&#xff0c;却…

记java生产项目中线程池使用的一点总结

背景 最近项目中有很多使用线程池进行处理的地方&#xff0c;同时也碰到了几个问题比如线程池的个数该怎么评估&#xff0c;线程程的该怎么具体去使用&#xff0c;结合项目和实际场景得到一些理解 使用多线程的三种方式 设定多线程数量 通过指定核心和最大线程数大于1的方式…

JY-156/1静态电压继电器 板前接线 约瑟JOSEF

JY-150系列电压继电器适用于继电保护线路中&#xff0c;作为过电压保护或低电压闭锁的动作元件。 该产品采用集成电路原理构成&#xff0c;它克服了原来电磁型电压继电器触点易抖动&#xff0c;工作时噪音大&#xff0c;动作值、返回值难调整及运输后动作值易变等缺点&#xff…

Dubbo 3.x源码(23)—Dubbo服务引用源码(6)MigrationRuleListener迁移规则监听器

基于Dubbo 3.1&#xff0c;详细介绍了Dubbo服务的发布与引用的源码。 此前我们学习了Dubbo3.1版本的服务引入的总体流程&#xff0c;以及Dubbo服务引用bean的获取以及懒加载原理。当然真正的服务远程引入、以及配置迁移啥的都还没讲&#xff0c;MigrationRuleListener#onRefer方…

什么洗地机好用又实惠?四大口碑优品推荐,超级火爆

作为一个家电工作者&#xff0c;近年来测评了不少洗地机&#xff0c;相对于传统的清洁习惯&#xff0c;即先扫地&#xff0c;再拖地&#xff0c;洗地机能够在一拖一拉之间&#xff0c;便完成地面上的清洁&#xff0c;而且人们也不用低头弯腰的去清洁&#xff0c;可谓是省时省力…

【单片机毕业设计选题24013】-基于STM32的城市垃圾分类引导系统

系统功能: 1、系统具有语音识别功能&#xff0c;可以对厨余垃圾、其他垃圾、有害垃圾、可回收垃圾进行语音识别&#xff1b; 2、系统可根据语音识别结果直接开启对应类别的垃圾桶&#xff0c;引导分类投放&#xff1b; 3、系统具有语音播报功能&#xff0c;可以语音播报出识…

使用 swiper 轮播 echarts 图表,地图点击失效

问题 使用 swiper 轮播 echarts 图表&#xff0c;地图点击失效&#xff0c;伪代码如下 <Swiper><SwiperSlide>...</SwiperSlide>// 轮播中有地图<SwiperSlide><EchartsMap/></SwiperSlide><SwiperSlide>...</SwiperSlide> &…