当前位置: 首页 > news >正文

Linux---用户切换命令(su命令、sudo命令、exit命令)

1. su命令

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

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

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

su 是最简单的用户切换命令,通过该命令可以实现任何身份的切换,包括从普通用户切换为 root

用户、从 root 用户切换为普通用户以及普通用户之间的切换。

普通用户之间切换以及普通用户切换至 root 用户,都需要知晓对方的密码,只有正确输入密码,

才能实现切换;从 root 用户切换至其他用户,无需知晓对方密码,直接可切换成功。

su命令就是用于账户切换的系统命令,其来源英文单词:Switch User

语法: su [选项] 用户名

选项包括:

-:当前用户不仅切换为指定用户的身份,同时所用的工作环境也切换为此用户的环境(包括

PATH 变量、MAIL 变量等),使用 - 选项可省略用户名,默认会切换为 root 用户。

-l:同 - 的使用类似,也就是在切换用户身份的同时,完整切换工作环境,但后面需要添加欲切换

的使用者账号。

-p:表示切换为指定用户的身份,但不改变当前的工作环境(不使用切换用户的配置文件)。

-c 命令:仅切换用户执行一次命令,执行后自动切换回来,该选项后通常会带有要执行的命令。

 切换用户后,可以通过exit命令退回上一个用户,也可以使用快捷键:ctrl + d

[shaonian@localhost ~]$ whoami
shaonian[shaonian@localhost ~]$ su - shaonian1
Password:   [shaonian1@localhost ~]$ whoami
shaonian1[shaonian1@localhost ~]$ exit
logout
[shaonian@localhost ~]$ whoami
shaonian

注意:使用 su 命令时,有 - 和没有 - 是完全不同的,- 选项表示在切换用户身份的同时,连当前使

用的环境变量也切换成指定用户的。我们知道,环境变量是用来定义操作系统环境的,因此如果系

统环境没有随用户身份切换,很多命令无法正确执行。在不使用 su - 的情况下,虽然用户身份成

功切换,但环境变量依旧用的是原用户的,切换并不完整。

2. sudo命令

在得知root密码的时候,可以通过su命令切换到root得到最大权限。

但是不建议长期使用root用户,避免带来系统损坏。

可以使用sudo命令,为普通的命令授权,临时以root身份执行。

语法:sudo 其他命令

在其它命令之前,带上 sudo,即可为这一条命令临时赋予 root 授权。

但是并不是所有的用户,都有权利使用 sudo,我们需要为普通用户配置 sudo 认证:

       切换到root用户,执行visudo命令,会自动通过vi编辑器打开:/etc/sudoers

       在文件的最后添加:shaonian ALL=(ALL)   NOPASSWD: ALL

       其中最后的NOPASSWD: ALL 表示使用sudo命令,无需输入密码,shaonian是用户名,

       最后通过 wq 保存,切换回普通用户,执行的命令,均以root运行。

参数说明:

#列出目前的权限
[shaonian@localhost ~]$ sudo -l
#列出 sudo 的版本资讯
[shaonian@localhost ~]$ sudo -V
#sudo命令使用
[shaonian@localhost ~]$ sudo ls

3. exit命令

Linux exit命令用于退出目前的shell。

执行exit可使shell以指定的状态值退出。若不设置状态值参数,则shell以预设值退出。状态值0代

表执行成功,其他值代表执行失败。exit也可用在script,离开正在执行的script,回到shell。

相关文章:

Linux---用户切换命令(su命令、sudo命令、exit命令)

1. su命令 root用户拥有最大的系统操作权限,而普通用户在许多地方的权限是受限的。 普通用户的权限,一般在其HOME目录内是不受限的。 一旦出了HOME目录,大多数地方,普通用户仅有只读和执行权限,无修改权限。 su 是…...

手机图片怎么提取文字?高效渠道一览

随着智能手机的普及,我们现在可以随时随地使用手机拍照记录生活中的点滴。然而,有时候我们拍照之后可能需要提取图片中的文字,比如拍下的菜谱、公告、名片等等。这时,我们就需要使用手机图片提取文字的功能。 - 采用OCR技术拍照识…...

Elasticsearch 聚合数据结果不精确问题解决方案

Elasticsearch 聚合数据结果不精确 背景 近期我们项目中出现使用ES聚合某个索引的数据取TOP 10的数据和相同条件下查询所有数据然后按数据量排序取的TOP 10的数据不一致的问题。 下面我们简单分析一下这个问题,列出一些常见的解决方案。 问题 Elasticsearch分片…...

Qt经典面试题:Qt开启线程的几种方式

方法一:从QThread类派生 ①创建一个类从QThread类派生 ②在子线程类中重写 run 函数, 将处理操作写入该函数中 ③在主线程中创建子线程对象, 启动子线程,调用start()函数 这种方法涉及到创建一个从QThread类派生的子类,并在该子类中重写run()函数。处理操…...

使用chartgtp写Android代码

<LinearLayout android:layout_width"match_parent" android:layout_height"match_parent" android:orientation"horizontal"> <TextView android:id"id/姓名" …...

【C++】4.jsoncpp库:jsoncpp库安装与使用入门

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍jsoncpp的使用。 学其所用&#xff0c;用其所学。——梁启超 欢迎来到我的博客&#xff0c;一起学习知识&#xff0c;共同进步。 喜欢的朋友可以关注一下&#xff0c;下次更新不迷路&am…...

HTML、CSS、 JavaScript介绍(二)

CSS 指层叠样式表 (Cascading Style Sheets)&#xff0c;CSS定义如何显示 HTML 元素。HTML 标签原本被设计为用于定义文档内容&#xff0c;样式表定义如何显示 HTML 元素&#xff0c;就像 HTML 中的字体标签和颜色属性所起的作用那样。样式通常保存在外部的 .css 文件中。我们只…...

高效益的淘客APP要怎么开发,需要哪些功能

现在各大淘客app都有移动端的app&#xff0c;但是一直不知道如何推广出去。客app想要赚钱&#xff0c;要思考怎么推广淘客app&#xff0c;推广适用于非常执行力的人。淘客app推广首要第一条&#xff0c;产品要好&#xff0c;app要好&#xff0c;返利要高&#xff0c;用户才会使…...

Java基础--->IO流(2)【常见IO模型】

文章目录 计算机角度IO操作系统IO常见的IO模型Java 中 3 种常见 IO 模型BIO&#xff08;BlockingI/O&#xff09;【同步阻塞IO】NIO&#xff08;Non-blocking/New I/O&#xff09;【非阻塞IO】IO多路复用AIO&#xff08;Asynchronous I/O&#xff09;【异步IO】 计算机角度IO 根…...

JavaScript let 和 const

在JavaScript中&#xff0c;let和const是用于声明变量的关键字。 let关键字用于声明一个块级作用域的变量。块级作用域是指在一个代码块&#xff08;通常是在花括号 {} 内部&#xff09;中声明的变量只在该代码块内部有效。例如&#xff1a; javascript function example() {…...

云原生下多集群的监控系统背景、架构设计与实现

随着云原生技术的普及&#xff0c;越来越多的企业开始采用多集群部署方案来提高系统的可用性和灵活性。在这种情况下&#xff0c;如何有效地监控多个集群的运行状态&#xff0c;成为了云原生架构下的一个重要问题。 多集群监控系统需要考虑以下几个方面的问题&#xff1a; 监…...

利用OpenCV处理图像

OpenCV是非常流行的图像处理库&#xff0c;下面介绍一下其对图像的基本操作。 1. 安装与环境 安装还有点儿复杂的&#xff0c;但百度几篇博客基本能解决&#xff0c;这里就不多说了。 安装好后&#xff0c;要在工程中使用OpenCV的头文件和库&#xff0c;需要在CMakeLists.tx…...

【面试实战】SpringIoC、AOP、MVC面试实战

version:1.0 文章目录 SpringSpring基础 / IoC🙎‍♂️面试官:举例Spring的模块?🙎‍♂️面试官:Spring、SpringMVC、Spring Boot关系?🙎‍♂️面试官:说说对SpringIoC的了解?🙎‍♂️面试官:什么是Spring Bean?🙎‍♂️面试官:Bean的作用域?🙎‍♂️面…...

[Redis 分布式锁 ]

目录 前言: 使用场景: 基于 Redis 实现分布式锁的详细示例&#xff1a; 使用示例&#xff1a; 依赖: Redis分布式锁控制并发访问: 前言: 记录一些小笔记 , 如果对你有帮助 那就更好了 使用场景: Redis 实现分布式锁的使用场景包括&#xff1a; 防止重复操作&#xf…...

如何创建Vue实例?Vue实例有哪些属性和方法

Vue实例就是Vue的实例化对象&#xff0c;就像你有一个iPhone&#xff0c;那么iPhone就是你的实例化对象。要创建Vue实例&#xff0c;就像你想拥有一部iPhone一样&#xff0c;首先要有一个设计图。 这个设计图就相当于Vue实例的options对象&#xff0c;你可以设置它的属性&…...

InnoDB Cluster集群Mysql Router代理层最佳实践

InnoDB Cluster 集群 & Mysql-Router 代理层 前言 Mysql是现今最常用的关系型数据库之一&#xff0c;高可用一直是我们对软件服务的要求。常见的Mysql高可用是主从配置&#xff0c;在主节点挂掉后需要依赖监控脚本进行主从切换将从节点升级&#xff0c;后台服务代码层面也…...

RabbitMQ系列-概念及安装

1. 消息队列 消息队列是指利用队列这种数据结构进行消息发送、缓存、接收&#xff0c;使得进程间能相互通信&#xff0c;是点对点的通信 而消息代理是对消息队列的扩展&#xff0c;支持对消息的路由&#xff0c;是发布-订阅模式的通信&#xff0c;消息的发送者并不清楚消息的…...

进程间通信之共享内存

进程间通信之共享内存 1.共享内存机制2.两种常用共享内存方式3.补充一下:linux中shm与shmm的区别4.IPC通信System V版本的共享内存shm5.存储映射共享I/O(mmap函数)1.共享内存机制 是允许两个或多个进程(不相关或有亲缘关系)访问同一个逻辑内存的机制。它是共享和传递数据的一…...

网络连接中的舔狗协议

舔狗网络协议 &#xff08;discard protocol) 最近互联网上&#xff0c;“舔狗” 这个词语很火&#xff0c;也衍生出来很多梗&#xff08;快速说出互联网 4 大舔狗&#xff01;&#xff01;&#xff01;&#xff09;。然后今天偶然间看到了一个 RFC 文档&#xff0c; 发现了一…...

一分钟了解乐观锁、悲观锁、共享锁、排它锁、行锁、表锁以及使用场景

大家好&#xff0c;我是冰点&#xff0c;今天给大家带来&#xff0c;关于MySQL中的锁的使用。 我首先提个问题&#xff0c;大家知道什么是 乐观锁、悲观锁、共享锁&#xff0c;、排它锁、行锁、表锁&#xff0c;以及每种锁的使用场景吗&#xff1f; !! 背景&#xff1a;最近在各…...

vscode里如何用git

打开vs终端执行如下&#xff1a; 1 初始化 Git 仓库&#xff08;如果尚未初始化&#xff09; git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...

手游刚开服就被攻击怎么办?如何防御DDoS?

开服初期是手游最脆弱的阶段&#xff0c;极易成为DDoS攻击的目标。一旦遭遇攻击&#xff0c;可能导致服务器瘫痪、玩家流失&#xff0c;甚至造成巨大经济损失。本文为开发者提供一套简洁有效的应急与防御方案&#xff0c;帮助快速应对并构建长期防护体系。 一、遭遇攻击的紧急应…...

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

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

OkHttp 中实现断点续传 demo

在 OkHttp 中实现断点续传主要通过以下步骤完成&#xff0c;核心是利用 HTTP 协议的 Range 请求头指定下载范围&#xff1a; 实现原理 Range 请求头&#xff1a;向服务器请求文件的特定字节范围&#xff08;如 Range: bytes1024-&#xff09; 本地文件记录&#xff1a;保存已…...

视频字幕质量评估的大规模细粒度基准

大家读完觉得有帮助记得关注和点赞&#xff01;&#xff01;&#xff01; 摘要 视频字幕在文本到视频生成任务中起着至关重要的作用&#xff0c;因为它们的质量直接影响所生成视频的语义连贯性和视觉保真度。尽管大型视觉-语言模型&#xff08;VLMs&#xff09;在字幕生成方面…...

爬虫基础学习day2

# 爬虫设计领域 工商&#xff1a;企查查、天眼查短视频&#xff1a;抖音、快手、西瓜 ---> 飞瓜电商&#xff1a;京东、淘宝、聚美优品、亚马逊 ---> 分析店铺经营决策标题、排名航空&#xff1a;抓取所有航空公司价格 ---> 去哪儿自媒体&#xff1a;采集自媒体数据进…...

是否存在路径(FIFOBB算法)

题目描述 一个具有 n 个顶点e条边的无向图&#xff0c;该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序&#xff0c;确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数&#xff0c;分别表示n 和 e 的值&#xff08;1…...

3-11单元格区域边界定位(End属性)学习笔记

返回一个Range 对象&#xff0c;只读。该对象代表包含源区域的区域上端下端左端右端的最后一个单元格。等同于按键 End 向上键(End(xlUp))、End向下键(End(xlDown))、End向左键(End(xlToLeft)End向右键(End(xlToRight)) 注意&#xff1a;它移动的位置必须是相连的有内容的单元格…...

【JVM面试篇】高频八股汇总——类加载和类加载器

目录 1. 讲一下类加载过程&#xff1f; 2. Java创建对象的过程&#xff1f; 3. 对象的生命周期&#xff1f; 4. 类加载器有哪些&#xff1f; 5. 双亲委派模型的作用&#xff08;好处&#xff09;&#xff1f; 6. 讲一下类的加载和双亲委派原则&#xff1f; 7. 双亲委派模…...

破解路内监管盲区:免布线低位视频桩重塑停车管理新标准

城市路内停车管理常因行道树遮挡、高位设备盲区等问题&#xff0c;导致车牌识别率低、逃费率高&#xff0c;传统模式在复杂路段束手无策。免布线低位视频桩凭借超低视角部署与智能算法&#xff0c;正成为破局关键。该设备安装于车位侧方0.5-0.7米高度&#xff0c;直接规避树枝遮…...