linux切换用户无法加载变量,Linux 中用户切换:su 和 su- 的使用 环境变量详解

大部分Linux发行版的默认帐户是普通用户,而更改系统文件或者执行某些命令,须要root身份才能进行,这就须要从当前用户切换到root用户,Linux中切换用户的命令是su或su -,下面就su命令和su -命令最大的本质区别给你们详解一下: linux

前者只是切换了root身份,但Shell环境仍然是普通用户的Shell;然后者连用户和Shell环境一块儿切换成root身份了。只有切换了Shell环境才不会出现PATH环境变量错误。su切换成root用户之后,pwd一下,发现工做目录仍然是普通用户的工做目录;而用su -命令切换之后,工做目录变成root的工做目录了。用echo $PATH命令看一下su和su - 之后的环境变量有何不一样。以此类推,要从当前用户切换到其它用户也同样,应该使用su -命令。 shell

打个比方:在普通用户下输入:

$pwdide

/home/test (当前用户目录)操作系统

$su ** (输入密码)字符串

#pwd (再次查看路径)it

/home/test (仍是当前用户目录)class

可是若是换成su -的话结果以下:test

$pwd变量

/home/test(当前用户目录)程序

$su -

** (输入密码)

#pwd (再次查看路径)

/root (切换到超级用户目录)

小知识点:

环境变量:实际上就是用户运行环境的参数集合,linux是一个都用户操做系统,并且每一个用户登录后,都会有一个专有的运行环境。一般每一个用户默认的环境环境都是相同的,而这个默认环境实际上都是一组环境变量的定义,用户能够对本身的运行环境进行定制,其方法就是修改相应的系统环境变量。

常见的环境变量:

PATH 系统路径

HOME 系统根目录

HISTSIZE 保存历史命令记录的条数

LOGNAME 当前用户的登录名

HOSTNAME 主机的名称,若应用程序要用到主机名的话,一般是从这个变量中获取的

SHELL 当前用户用的哪一种shell

LANG/LANGUGE语言相关的环境变量,使用多种语言的用户能够修改此环境变量

MAIL 当前用户的邮件存放目录

设置环境变量方法:

经过etho显示字符串(指定的环境变量)

经过export 设置环境变量

经过env显示全部环境变量

经过set命令显示本地定义的shell变量

经过uset命令来清除环境变量

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值