Linux:su和su-的区别

大部分Linux发行版的默认账户是普通用户,而更改系统文件或者执行某些命令,需要root身份才能进行,这就需要从当前用户切换到root用户。Linux中切换用户的命令是su或su -。

如上图所示,一开始是普通账户,执行userdel时,提示command not found,通过su命令切换到root用户,依旧提示command not found,退出后,重新通过su - 命令,成功实现userdel的命令执行。

su命令和su -命令最大的区别就是:前者只是切换了root身份,但Shell环境仍然是普通用户的Shell;而后者连用户和Shell环境一起切换成root身份了。只有切换了Shell环境才不会出现PATH环境变量错误。

如下图所示:

su命令切换成root用户以后,pwd一下,发现工作目录仍然是普通用户的工作目录;

而用su -命令切换以后,工作目录变成root的工作目录。

用echo $PATH命令看一下su和su -以后的环境变量有何不同。

以此类推,要从当前用户切换到其它用户也一样,应该使用su -命令。

Linux:su和su-的区别

时间: 2024-10-12 17:39:01

Linux:su和su-的区别的相关文章

Linux用户切换:su和su - 区别

大部分Linux发行版的默认账户是普通用户,而更改系统文件或者执行某些命令,需要root身份才能进行,这就需要从当前用户切换到root用户,Linux中切换用户的命令是su或su -,下面就su命令和su -命令最大的本质区别给大家详解一下: 前者只是切换了root身份,但Shell环境仍然是普通用户的Shell:而后者连用户和Shell环境一起切换成root身份了.只有切换了Shell环境才不会出现PATH环境变量错误.su切换成root用户以后,pwd一下,发现工作目录仍然是普通用户的工作目

(总结)Linux下su与su -命令的本质区别

本人以前一直习惯直接使用root,很少使用su,前几天才发现su与su -命令是有着本质区别的! 大部分Linux发行版的默认账户是普通用户,而更改系统文件或者执行某些命令,需要root身份才能进行,这就需要从当前用户切换到root用户.Linux中切换用户的命令是su或su -.前天我在使用useradd这个命令时,才体会到这两者的本质区别.如图: 我首先是用su命令切换到root身份的,但是运行useradd时,出现错误:bash: useradd: command not found.go

Linux实际操作中命令 su 与 sudo 的区别

------------------------------------------------------------------------------------------------ 首先我先做了一些更改操作: 换到root用户的操作=>sudo su输入当前用户的密码: ****** 修改root密码的操作=>passwd 123456 /* root密码已改为123456 */ [email protected] chenwei <www.chenwei.ws>---

linux shell 的变量问题 &amp;&amp;export 语句作用 &amp;&amp;su 与 su - 的区别

首先来看看变量的问题 [[email protected] ~]# dhh=1 [[email protected] ~]# echo $dhh 1 开一个子shell测试 [[email protected] ~]# bash [[email protected] ~]# echo $dhh 没有值 使用export方法 [[email protected] ~]# exit      ----------退出子shell exit [email protected] ~]# export d

【转】(总结)Linux下su与su -命令的本质区别

原文网址:http://www.ha97.com/4001.html 本人以前一直习惯直接使用root,很少使用su,前几天才发现su与su -命令是有着本质区别的! 大部分Linux发行版的默认账户是普通用户,而更改系统文件或者执行某些命令,需要root身份才能进行,这就需要从当前用户切换到root用户.Linux中切换用户的命令是su或su -.前天我在使用useradd这个命令时,才体会到这两者的本质区别.如图: 我首先是用su命令切换到root身份的,但是运行useradd时,出现错误:

Linux下su与su -命令的区别

在启动服务器ntpd服务时遇到一个问题 使用 su root 切换到root用户后,不可以使用service命令: 使用 su - 后,就可以使用service命令了. 原因: su命令和su -命令区别就是: su只是切换了root身份,但Shell环境仍然是普通用户的Shell:而su -连用户和Shell环境一起切换成root身份了.只有切换了Shell环境才不会出现PATH环境变量错误,报command not found的错误. su切换成root用户以后,pwd一下,发现工作目录仍然

linux下su 与su -的区别

Linux下su与su -命令的区别在启动服务器ntpd服务时遇到一个问题 使用 su root 切换到root用户后,不可以使用service命令: 使用 su - 后,就可以使用service命令了. 原因: su命令和su -命令区别就是: su只是切换了root身份,但Shell环境仍然是普通用户的Shell:而su -连用户和Shell环境一起切换成root身份了.只有切换了Shell环境才不会出现PATH环境变量错误,报command not found的错误. su切换成root用

Linux 下 su 和 su - 的区别和实际中遇到的问题

从普通用户切换成root用户: 可以用su 或者 su -   : su命令和su -命令最大的本质区别就是:前者只是切换了root身份,但Shell环境仍然是普通用户的Shell: 而后者连用户和Shell环境一起切换成root身份了.只有切换了Shell环境才不会出现PATH环境变量错误.su切换成root用户以后,pwd 一下,发现工作目录仍然是普通用户的工作目录:而用su -命令切换以后,工作目录变成root的工作目录了.用echo $PATH命令看一下su和su -以后的环境变量有何不

Linux学习-- su -和 su的区别深入解析

su - 和su 的区别--也即交互式登录和非交互式登录 一.简单介绍 交互式: 直接通过终端输入账号密码登录等 变量,别名等不会继承上一级shell,都会重新读取 非交互式:图形化界面下打开的终端,执行脚本,任何其它的bash实例等 变量,别名等会继承上一级shell,然后读取文件 二.相关文件 我们先看下这五个文件主要内容 /etc/profile :存放着系统中已经存在的环境变量,如PATH,USER /etc/profile.d/*.sh :存放着许多颜色的设置,vim的设置等 ~/.b

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

su命令和su -命令最大的本质区别就是: 前者只是切换了root身份,但Shell环境仍然是普通用户的Shell:而后者连用户和Shell环境一起切换成root身份了.只有切换了Shell环境才不会出现PATH环境变量错误.su切换成root用户以后,pwd一下,发现工作目录仍然是普通用户的工作目录:而用su -命令切换以后,工作目录变成root的工作目录了.用echo $PATH命令看一下su和su -以后的环境变量有何不同.以此类推,要从当前用户切换到其它用户也一样,应该使用su -命令.