博客
关于我
Linux下 su命令与su - 命令有什么区别?
阅读量:494 次
发布时间:2019-03-07

本文共 883 字,大约阅读时间需要 2 分钟。

Linux下 su命令与su - 命令的区别

在Linux系统中,su命令和su -命令虽然看起来相似,但在实际使用中有明显的区别。以下从多个方面详细分析两者的差异。

一、切换root身份的不同

  • su命令

    使用su root或直接输入根用户的用户名后,su命令仅切换到根用户的身份,但不会切换Shell环境。这样虽然可以以根用户的权限执行命令,但路径环境变量(PATH)仍然指向普通用户的配置文件,可能导致一些命令无法找到,出现command not found的错误。

  • su -命令

    使用su - rootsu -命令时,su不仅切换到根用户的身份,还会切换到根用户的Shell环境。这意味着路径环境变量(PATH)会指向根用户的配置文件,避免了command not found错误的问题。

  • 二、采用su deploy命令后的环境变量不同

  • su命令

    su命令不会读取目标用户的环境配置文件,这意味着在切换到目标用户后,路径环境变量(PATH)仍然指向普通用户的配置文件。

  • su -命令

    su -命令会读取目标用户的环境配置文件,包括路径环境变量(PATH),使得切换后的Shell环境与目标用户完全一致。

  • 三、service命令的使用差异

  • su命令

    在切换到根用户后,通常无法直接使用service命令来管理服务,因为普通用户的权限不足以执行此操作。

  • su -命令

    使用su -命令后,Shell环境已经切换到根用户,具备管理服务的权限,可以正常使用service命令来操作服务。

  • 四、用echo $PATH命令后的环境量不同

  • su命令

    在切换到根用户后,路径环境变量(PATH)通常会指向/usr目录下的配置文件,反映普通用户的路径设置。

  • su -命令

    使用su -命令后,路径环境变量(PATH)会指向根用户的配置文件,通常位于/root或其他适用于管理员的目录下。

  • 总结

    通过以上分析可以看出,su命令和su -命令在切换用户身份、环境变量设置以及命令执行权限等方面存在显著差异。在实际操作中,根据需要选择合适的命令可以更高效地完成任务。

    转载地址:http://bsqcz.baihongyu.com/

    你可能感兴趣的文章
    OpenCV:不规则形状区域中每种颜色的像素数?
    查看>>
    OpenCV:概念、历史、应用场景示例、核心模块、安装配置
    查看>>
    OpenDaylight融合OpenStack架构分析
    查看>>
    openEuler Summit 2022 成功举行,开启全场景创新新时代
    查看>>
    OpenFeign源码学习
    查看>>
    OpenFeign组件声明式服务调用
    查看>>
    Openfire身份认证绕过漏洞复现+利用(CVE-2023-32315)
    查看>>
    OpenGL中shader读取实现
    查看>>
    OpenGL着色器、纹理开发案例
    查看>>
    openjudge 1792 迷宫 解析报告
    查看>>
    Openlayers Draw的用法、属性、方法、事件介绍
    查看>>
    Openlayers layer 基础及重点内容讲解
    查看>>
    Openlayers Select的用法、属性、方法、事件介绍
    查看>>
    Openlayers Source基础及重点内容讲解
    查看>>
    Openlayers view三要素(zoom,center,projection)及其他参数属性方法介绍
    查看>>
    openlayers 入门教程(九):overlay 篇
    查看>>
    openlayers 入门教程(二):map 篇
    查看>>
    openlayers 入门教程(五):sources 篇
    查看>>
    openlayers 入门教程(八):Geoms 篇
    查看>>
    openlayers 入门教程(十三):动画
    查看>>