Linux命令进阶·如何切换root以及回退、sudo命令、用户/用户组管理,以及解决创建用户不显示问题和Ubuntu不显示用户名只显示“$“符号问题

目录

1.  root用户(超级管理员)

1.1  用于账户切换的系统命令——su

1.2  退回上一个用户命令——exit

1.3  普通命令临时授权root身份执行——sudo

1.3.1  为普通用户配置sudo认证

2.  用户/用户组管理

2.1  用户组管理

2.2  用户管理

2.2.1  创建用户:useradd [-g -d] 用户名

2.2.2  删除用户:userdel [-r] 用户名

2.2.3  查看用户所属组:id [用户名]

2.2.4  修改用户所属组:usermod -aG 用户组 用户名

3.  用户管理出现的相关问题解决

3.1  创建用户不显示问题

3.2  su: 警告:无法更改到 /home/test 目录: 没有那个文件或目录

3.3  使用 -m 后删除不掉创建的目录

3.4  Ubuntu不显示用户名,只显示"$“符号,回退键会变为”^H"

3.5  userdel: user dky1 is currently used by process 61754


1.  root用户(超级管理员)

        无论是Windows、MacOS、Linux均采用多用户的管理模式进行权限管理。在Linux系统中,拥有最大权限的账户名为:root(超级管理员),而我们平常使用的账户是普通的用户。

        root用户拥有最大的系统操作权限,而普通用户在许多地方的权限是受限的。

  • 使用普通用户在根目录下创建文件夹:

  • 切换到root用户后,继续尝试:

普通用户的权限,一般在其home目录内不受限的

一旦出了home目录,大多数地方,普通用户仅有只读和执行权限,无修改权限

1.1  用于账户切换的系统命令——su

功能:用于账户切换的系统

语法:su [-] [用户名]

  • -: 符号是可选的,表示是否在切换用户后加载环境变量,建议带上
  • 用户名:表示切换的用户,也可以省略,省略表示切换到root

        省略用户名:

1.2  退回上一个用户命令——exit

  • 切换用户后,可以通过exit命令退回上一个用户

  • 也可以使用快捷键:Ctrl+d

  • 使用普通用户,切换到其他用户需要输入密码,如切换到root用户
  • 使用root用户切换到其他用户,无需密码,可以直接切换

1.3  普通命令临时授权root身份执行——sudo

        我们可以通过su命令切换到root得到最大权限,但是不建议长期使用root用户,避免带来系统损伤。

功能:为普通命令授权,临时root身份执行

语法:sudo 其他命令

        在其他命令之前,带上sudo,即可为这一条命令临时赋予root授权,但并不是所有的用户,都有权利使用sudo,我们需要为普通用户配置sudo认证。

1.3.1  为普通用户配置sudo认证

        正常情况下,我们使用sudo命令,需要输入密码验证才能正常使用:

        如何跳过密码验证这一步呢?切换到root用户,执行visudo命令,会自动通过vi编辑器打开:/etc/sudoers,在文件最后添加:

用户名 ALL=(ALL)        NOPASSWD:ALL

        其中最后NOPASSWD:ALL表示使用sudo命令,不需要输入密码,然后通过低线命令模式输入:wq保存:

        切换回普通用户,执行命令,可以看到不需要再输入密码验证:

2.  用户/用户组管理

        Linux系统中可以:配置多个用户、配置多个用户组、用户可以加入多个用户组中。

        Linux中关于权限的管控级别有2个级别,分别是:

  • 针对用户的权限控制
  • 针对用户组的权限控制

2.1  用户组管理

 以下命令需要root用户执行:

  • 创建用户组:groupadd 用户组名
  • 删除用户组:groupdel 用户组名

2.2  用户管理

以下命令需要root用户执行:

2.2.1  创建用户:useradd [-g -d] 用户名

  • -g:指定用户的组。不指定-g,会创建同名组并自动加入,指定-g需要组已经存在,如已存在同名组,必须使用-g
  • -d:指定用户HOME。不指定,HOME目录默认在:/home/用户名

        首先,我们现在 /home 下创建一个目录 myuser:

        创建一个用户组 mydky:

        创建用户,并通过 su 命令切换到用户,通过 pwd 查看路径:

        这里出现一个问题Ubuntu不显示用户名,只显示"$“符号,下面3.4小节说解决方法。

完整:

2.2.2  删除用户:userdel [-r] 用户名

  • -r:删除用户的HOME目录。不使用-r,删除用户时,HOME目录保留

        上面是直接删除dky1,我们可以看见myuser还被保留。

        当我们使用 -r 时,首先我们通过useradd - m 创建一个qwer用户:

         然后使用userdel -r 我们会发现,创建的用户qwer被删除了:

2.2.3  查看用户所属组:id [用户名]

  • 用户名:被查看的用户,如果不提供则查看自身

不提供用户名,查看自身:

使用id 用户名:

2.2.4  修改用户所属组:usermod -aG 用户组 用户名

  • 将指定用户加入指定用户组

        如下图蓝色部分表示,将用户plm,放到mydky用户组内,可以通过id plm查看其所属的组,如黄色部分:

3.  用户管理出现的相关问题解决

3.1  创建用户不显示问题

        需要注意的是,在ubuntu系统中,使用useradd会出现以下这种情况:

        我们明明已经创建了用户,并且显示已存在,但是在home目录下是没有显示的,解决方法使用useradd -m来进行实现:

        网上找了一下原因,说是因为在/etc/login.defs中的CREATE_HOME被设置为no了。(这里最好还是不要去更改文件了)

        通过man useradd文档可以看见-m可以再系统不允许创建主用户目录的情况下创建主用户目录,演示如上图。

3.2  su: 警告:无法更改到 /home/test 目录: 没有那个文件或目录

        这里算是上个问题的延伸,当我们使用useradd创建用户时,想要通过:

su -

        切换用户会发现: 

        那是因为我们 /home下根本就不显示 test:

        解决方法就是加 -m

3.3  使用 -m 后删除不掉创建的目录

        在使用 -m 解决创建用户不显示的问题后,会发现当你想删除创建的用户时,会发现无法删除了,虽然使用userdel提示test不存在,但是查找会发现其还在home目录下:

        这里我们可以使用 rm -rf进行删除:

3.4  Ubuntu不显示用户名,只显示"$“符号,回退键会变为”^H"

        这里正常情况下应该是:

        但此时确只有$号:

        解决方法切换到root账户,输入命令:

vim /etc/passwd

        对相关文件进行修改,不过修改前,我们需要先进行一下文件备份,以免出错:

方法一:复制文件

        使用 cp 命令复制文件是备份文件的简单方法。例如,您可以使用以下命令将 /etc/passwd 文件复制到当前目录中:

cp /etc/passwd passwd.bak

  • /etc/passwd 文件:这个文件包含系统中所有用户的基本信息,如用户名、密码(加密形式)、UID、GID、用户信息和默认的用户目录等。它是一个关键的系统文件
  • passwd.bak:这是目标文件的名称,它是 passwd 文件的备份副本,通常会存放在当前工作目录中。

 使用如下命令检查是否备份成功:

cat /etc/passwd// 该命令将显示 passwd.bak 文件的内容,其中包含与 /etc/passwd 相同的用户帐户信息。

方法二:创建归档文件

        使用 tar 命令创建归档文件是备份多个文件或整个目录的一种简单方法。例如,您可以使用以下命令将 /etc 目录打包成一个压缩文件:

tar -czf etc_backup.tar.gz /etc

方法三:使用版本控制系统

        使用版本控制系统(如 Git 或 SVN)来管理文件更改历史记录并创建备份是一种良好的做法。这样可以轻松地跟踪文件更改,并且在需要恢复之前的版本时更加方便。


        此时我们可以使用:

vim /etc/passwd

        这里需要安装好vim,否则会出现:

        可以通过如下命令进行安装:

apt install vim

        此时在输入就可以进入:

        找到最下方如上图箭头指向,进入插入模式进行修改,修改完如下:

        进入底层命令模式保存退出:

如果对于vim相关命令不熟悉可以看:

Linux命令进阶·vi\vim编辑器详细命令介绍_linux实验6:vi 编辑器进阶-CSDN博客

        这样在通过su命令进入发现问题解决了:

3.5  userdel: user dky1 is currently used by process 61754

        出现上述情况的根本原因在于切换回 root 用户之后,dky1用户还被某个进程占用。

        解决方法,再返回前使用:

ctrl+d

        把dky1的终端关掉就行了: 

        如果已经返回直接把终端关掉重开就行了。

Linux命令进阶·vi\vim编辑器详细命令介绍_linux实验6:vi 编辑器进阶-CSDN博客

Linux常用命令详细解析(含完整命令演示过程)_linux常用命令演示-CSDN博客

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

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

相关文章

【JavaEE】JavaEE、web 开发、框架(Spring) 、Maven

文章目录 一、JavaEE 发展历程二、什么是 web 开发1、什么是 web 开发?2、web 网站的工作流程 三、框架1、什么是框架?2、为什么要学框架?3、框架的优点(Spring Boot VS Servlet) 四、Maven 一、JavaEE 发展历程 Java…

虚拟机玩游戏,轻松实现多开不同IP

嘿,亲爱的游戏小伙伴们!今天要和大家分享一个超级实用的技巧,让你在游戏中轻松多开不同IP,享受开挂的乐趣! 第一步:准备虚拟机 首先,你需要下载一个虚拟机软件,比如VMware或者Virt…

MySQL常用语句整理

《SQL必知必会》(第3版)SQL是目前使用最为广泛的数据库语言之一。本书没有涉及理论,而是从实践出发,由浅入深地讲解了广大读者所必需的SQL知识,适用于各种主流数据库。实例丰富,便于查阅。本书涉及不同平台上数据的排序、过滤和分…

【MATLAB】基于RSSI的蓝牙定位与例程,设置4个基站、二维定位

目录 ​编辑 商品描述 主要功能 技术细节 适用场景 下载链接 商品描述 这款基于接收信号强度指示(RSSI)原理的蓝牙定位程序,专为需要高效、可靠定位解决方案的开发者和研究人员设计。它能够在二维平面内,通过4个锚点实现对未…

DreamCamera2相机预览变形的处理

最近遇到一个问题,相机更换了摄像头后,发现人像角度顺时针旋转了90度,待人像角度正常后,发现 预览时图像有挤压变形,最终解决。在此记录 一人像角度的修改 先放示意图 设备预览人像角度如图1所示,顺时针旋…

鸿蒙修饰符

文章目录 一、引言1.1 什么是修饰符1.2 修饰符在鸿蒙开发中的重要性1.3 修饰符的作用机制 二、UI装饰类修饰符2.1 Styles修饰符2.1.1 基本概念和使用场景2.1.2 使用示例2.1.3 最佳实践 2.2 Extend修饰符2.2.1 基本概念2.2.2 使用示例2.2.3 Extend vs Styles 对比2.2.4 使用建议…

phpmyadmin导出wordpress数据教程

网站搬家或网站修改,需要导出数据或备份数据,一般主机控制面板最常用phpmyadmin。下面这个是一个有详细图文操作步骤的phpmyadmin导出wordpress数据教程。 1、先登陆到你主机的管理面板,找到数据库,再找到phpmyadmin,…

阅读笔记——SVD本质+计算+应用

摘要:本文讨论了正交相似对角化的方法,几何含义;方阵,非方阵的奇异值分解的计算,矫正方法以及与正交相似对角化存在区别;最后讨论了奇异值分解的应用。 1.实对称矩阵A的变换是一种线性变换,对应…

Linux网络_网络协议_网络传输_网络字节序

一.协议 1.概念 协议(Protocol) 是一组规则和约定,用于定义计算机网络中不同设备之间如何进行通信和数据交换。协议规定了数据的格式、传输方式、传输顺序等详细规则,确保不同设备和系统能够有效地互联互通。 在网络通信中&#…

数据结构 (16)特殊矩阵的压缩存储

前言 特殊矩阵的压缩存储是数据结构中的一个重要概念,它旨在通过找出特殊矩阵中值相同的矩阵元素的分布规律,把那些呈现规律性分布的、值相同的多个矩阵元素压缩存储到一个存储空间中,从而节省存储空间。 一、特殊矩阵的定义 特殊矩阵是指具有…

ehr系统建设方案,人力资源功能模块主要分为哪些,hrm平台实际案例源码,springboot人力资源系统,vue,JAVA语言hr系统(源码)

eHR人力资源管理系统:功能强大的人力资源管理工具 随着企业规模的不断扩大和业务需求的多样化,传统的人力资源管理模式已无法满足现代企业的需求。eHR人力资源管理系统作为一种先进的管理工具,能够为企业提供高效、准确、实时的人力资源管理。…

搭建AD域服务器

搭建AD域服务器 使用深信服HCI搭建AD域服务器 1、新建虚拟机 2、填写参数 3、省略安装过程 4、进入服务器管理器 5、 6、 7、 8、 9、 10、 11、 12、 13、 14、 15、 16、 17、 18、 19、 20、 21、 22、 23、

MOH: MULTI-HEAD ATTENTION AS MIXTURE-OFHEAD ATTENTION

当前的问题 多头注意力使用多个头部可以提高模型的精度。然而,并不是所有的注意力头都具有同样的重要性。一些研究表明,许多注意力头可以被修剪而不影响准确性。 此外,在多头注意中,每个注意头并行操作,最终输出是所…

Spring boot之BeanDefinition介绍

在spring框架中IOC容器进行bean的创建和管理。Bean的创建是一个比较复杂的过程,它并不像我们创建对象一样只是直接new一下就行,虽然有些bean确实就是New一下。但在Spring中可以通过一些途径对bean进行增强扩展。在这个过程中,BeanDefinition作…

Ubuntu 服务器部署 Tomcat 并配置 SSL/TLS 证书

本文目录 准备登陆云服务器安装 Java下载 tomcat 包配置防火墙浏览器访问 Tomcat 默认页面以服务的形式运行 Tomcat创建 Tomcat 用户和组创建 systemd 服务文件启动 tomcat 服务 Tomcat webapps 文件目录部署一个静态网站tomcat 的配置文件 将域名解析到服务器Tomcat 配置 SSL/…

C++小问题

怎么分辨const修饰的是谁 是限定谁不能被改变的? 在C中,const关键字的用途和位置非常关键,它决定了谁不能被修改。const可以修饰变量、指针、引用等不同的对象,并且具体的作用取决于const的修饰位置。理解const的规则能够帮助我们…

PPT不能编辑,按钮都是灰色,怎么办?

PPT文件打开之后,发现无法编辑,再仔细查看发现工具栏中的功能按钮都是灰色的,无法使用,这是什么原因?该如何解决? 原因:无法编辑PPT文件,并且功能按钮都是灰色,这是因为…

相交链表和环形链表

(一)相交链表 相交链表 思路:先分别计算出A列表和B列表的长度,判断它们的尾节点是否相等,如果不相等就不相交,直接返回空。然后让两个列表中的长的列表先走它们的差距步,然后再一起走&#xff…

ARM架构下安装新版docker及docker-compose

一、常见CPU 架构: 二、环境信息 CPU架构操作系统配置HUAWEI Kunpeng 920 5220 aarch64openEuler 22.03 (LTS-SP3)64C128g15T 三、安装docker 3.1 二进制包下载 docker-ce 社区下载地址: wget https://mirrors.nju.edu.cn/docker-ce/linux/static/s…

LeetCode-315. Count of Smaller Numbers After Self

目录 题目描述 解题思路 【C】 【Java】 复杂度分析 LeetCode-315. Count of Smaller Numbers After Selfhttps://leetcode.com/problems/count-of-smaller-numbers-after-self/description/ 题目描述 Given an integer array nums, return an integer array counts whe…