不可不知的su与su -的区别!

这是一个很容易让人忽视的问题:

习惯了root,但是新工作环境中,不提倡使用root操作,所以经常用到su命令。使用中经常遇到这样的问题:

我从root切换到普通用户后,有时候直接运行ifconfig命令可以运行,有时候提示找不到命令,需要加全路径/sbin/ifconfig运行。后来研究发现:

su命令只是切换了到了普通用户身份,但Shell环境仍然是root用户的Shell;这时候可以查看环境变量,echo $PATH  还是root用户的,包含/sbin/等等,那么这时候直接执行ifconfig是没有问题的。

su - 用户名 这样子切换到普通用户身份,连同Shell环境一起切换成普通用户身份,,pwd一下,发现工作目录变成了普通用户的工作目录。这时候查看环境变量,发现已经是普通用户的环境变量了。这时候直接执行ifconfig就得加绝对路径了

同理,普通用户切换到root用户道理一样,所以,提倡用su -

时间: 2024-08-28 15:14:25

不可不知的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

su和su - 的区别

我们在更改系统文件或者执行某些命令,需要root身份才能进行,这就需要从当前用户切换到root用户.Linux中切换用户的命令是su或su -.前天我在使用useradd这个命令时,才体会到这两者的本质区别.如图: 我首先是用su命令切换到root身份的,但是运行useradd时,出现错误:bash: useradd: command not found.google了一下,原因是在这个用su命令切换过来的root用户上. su命令和su -命令最大的本质区别就是:su 只是切换了root身份,

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

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

实际操作中命令 su 与 sudo 的区别(转)

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

ubuntu普通账户获取root权限的方法以及su和su -的区别

打开命令窗口 输入命令:sudo passwd root 然后按照上图中的操作进行即可. su和su -的命令的不同: su命令和su -命令最大的本质区别就是:前者只是切换了root身份,但Shell环境仍然是普通用户的Shell:而后者连用户和Shell环境一起切换成root身份了.只有切换了Shell环境才不会出现PATH环境变量错误.su切换成root用户以后,pwd一下,发现工作目录仍然是普通用户的工作目录:而用su -命令切换以后,工作目录变成root的工作目录了.用echo $PA

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 - 的区别和实际中遇到的问题

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