一、su命令

su是最简单的用户切换命令,通过该命令可以实现任何用户之间的互相切换,当然能够正确切换的前提就是输入正确的密码。普通用户切换至root用户或者普通用户之间互相切换都要知道对方账户的密码,root用户切换至普通用户直接就可以切换,无需知晓对方密码。

su命令的基本格式:

[root@localhost ~]# su [选项] 用户名

选项:

-:当前用户不仅切换为指定用户身份,同时所用的工作环境也切换为此用户的环境(包括PATH变量,MAIL变量等),使用-选项可省略用户名,默认会切换为root用户。

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

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

-m:和-p一样

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

二、su和su - 的区别

使用su切换用户加-和不加是完全不同的,-选项表示在切换用户身份的同时,连当前使用的环境变量也切换成指定用户的(环境变量是用来定义操作系统环境的,因此如果系统环境没有随用户身份切换,很多命令无法正确执行)。

可以简单理解为:有-的切换更彻底,没有的只切换了一部分,这就会导致某些命令运行出现问题或错误。

举个例子,普通用户 lamp 通过 su 命令切换成 root 用户,但没有使用 - 选项,这样情况下,虽然看似是 root 用户,但系统中的 $PATH 环境变量依然是 lamp 的(而不是 root 的),因此当前工作环境中,并不包含 /sbin、/usr/sbin等超级用户命令的保存路径,这就导致很多管理员命令根本无法使用。不仅如此,当 root 用户接受邮件时,会发现收到的是 lamp 用户的邮件,因为环境变量 $MAIL 也没有切换。

原文地址:Linux su命令:用户间切换(包含su和su -的区别)

Linux用户间的切换命令su以及su和su - 的区别相关推荐

  1. 高效Linux用户需要了解的命令行技能

    高效Linux用户需要了解的命令行技能 出处: Quora   译文出处: 凌坤(@灵犀志趣_凌坤) 最近在Quora上看到一个问答题目,关于在高效率Linux用户节省时间Tips.将该题目的回答进行 ...

  2. linux组的管理命令,Linux用户与组管理命令

    1.列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可. who | cut -d" " -f1 | sort -u 或 who | cut -d ...

  3. Linux下convert批处理的命令及其与Windows下nconvert的区别与联系

    Linux下convert批处理的命令及其与Windows下nconvert的区别与联系 linux下可以利用convert命令来直接进行图像的批处理,而windows下只能借助nconvert.ex ...

  4. linux组的管理命令,linux 用户和组管理命令(示例代码)

    Linux 用户和组管理 组管理 groupadd命令:添加组 groupadd 选项 group_name -g GID :指定GID;默认是上一个组的GIDS+1 -r 创建系统组: groupm ...

  5. Linux增加四个用户分别并命名,16、Linux用户和组管理命令演练和实战应用,,150R...

    一.内容回顾 bash  globing,*,?,[],[^] IO重定向及管道  >  ,   >>  ,  2>  ,   2>>   &>  , ...

  6. Linux用户与权限管理命令

    目录 一.Linux用户介绍 二.用户和组相关文件 三.用户和组管理命令 四.Linux权限管理命令 一.Linux用户介绍 Linux用户类型分为三类:超级管理员用户.系统用户和普通用户 超级管理员 ...

  7. linux用户及用户组相关命令

    用户及用户组相关命令: 1. 新建一个用户,修改密码 useradd 用户名 [root@node ~]# useradd ffcc [root@node ~]# cat /etc/passwd   ...

  8. 切换用户_Mac如何在多个用户间快速切换?

    很多小伙伴在使用Mac的时候,都会设置多个用户,不同的用户可以设置不同的桌面,作用于不同的场景.切换用户的方法,大家都知道的就是注销.然而有的时候我们需要频繁的在多个用户之间进行切换,如果每次都要先注 ...

  9. linux用户管理类常用命令:

    写在前面: 我的博客已迁移至自建服务器:博客传送门,CSDN博客暂时停止,如有机器学习方面的兴趣,欢迎来看一看. 此外目前我在gitHub上准备一些李航的<统计学习方法>的实现算法,目标将 ...

最新文章

  1. MPB:生态环境中心陈保冬组-基于高通量测序技术的丛枝菌根真菌多样性研究方法...
  2. 2001年 数的划分
  3. python【力扣LeetCode算法题库】28-实现 strStr()
  4. vue将原生事件绑定到组件
  5. 基础002_V7-CLB
  6. ASP.NET Core 集成测试
  7. Java面试10大知识点总结宝典助你通关!已拿意向书!
  8. ansible mysql plugin_Ansible--Module
  9. 【leetcode】963. Minimum Area Rectangle II
  10. 【R图秀-6】地震来了
  11. CString,string,char*之间的转换
  12. Pandas基础学习
  13. 【演化(进化)算法】遗传算法原理及python实现
  14. css如何放大网页字体大小怎么调整,CSS网页设计时关于字体大小的设计
  15. Qimage像素级操作
  16. 官方AWZ爱伪装 一键新机 全息备份 虚拟定位 非NZT 暗王者 IG V8 V3 IOSAPP一键新机 全息备份
  17. Nature Medicine:肠道菌群代谢组学-苯乙酸PAA能够诱发脂肪性肝病
  18. python 安装scapy_安装scapy时出错
  19. Eclipse单独设置注释字体加粗
  20. 跟着NC学作图 | 柱状图新画法 (环状柱状图)

热门文章

  1. python用turtle画一个旋转的风车
  2. 腾讯云Cannot parse privatekey: unsupported key format问题解决
  3. Flutter 图片和多行文本中的第一行对齐,文字行高、行距、偏移设置
  4. python爬虫--小白爬取哔哩哔哩每周更新栏目动画
  5. 浪潮的“Inspur品牌”
  6. 学习金蝶ERP 之 K3 介绍
  7. 实例化和初始化的区别
  8. 开关电源拓扑结构详解
  9. 拼团系统开发的亮点与核心功能
  10. Linux上传GitHub【超详细】