linux su命令详解_suse和centos的区别[通俗易懂]

linux su命令详解_suse和centos的区别[通俗易懂]Linux中的su和su-命令存在差异,添加-选项表示切换用户身份的同时切换环境变量。没有-选项则不切换环境变量,可能导致部分命令无法正确执行。

linux

Linux中的su 和su –

前言背景:

笔者在在一次体验华为昇腾开发的过程了遇到了一个问题,就是一条atc的转换模型指令报出来错误:atc: invalid option -- '- '。最开始我还以为是不是因为英文指令中存在中文字符的问题导致linux环境中无法识别。后来参考一篇文章后终于破案了(atc: invalid option – ‘-‘_qq_49723795的博客-CSDN博客 )原来我没有正确的进入镜像里面的用户环境,导致当前的环境不能识别出atc指令。

笔者错误进入环境用的是su HwHiAiUser,而正确的写法应该是su - HwHiAiUser

su指令:

在linux中,su是“switch user”的缩写,是切换用户的意思,su命令用于变更为其他使用者的身份,语法为“su 选项 [USER [ARG]]”;使用该命令时,除 root 外,需要键入该使用者的密码。

语法:
[root@localhost ~]# su [选项] 用户名
选项 : 用途:
当前用户不仅切换为指定用户的身份,同时所用的工作环境也切换为此用户的环境(包括 PATH 变量、MAIL 变量等),使用 – 选项可省略用户名,默认会切换为 root 用户。
-l 同 – 的使用类似,也就是在切换用户身份的同时,完整切换工作环境,但后面需要添加欲切换的使用者账号。
-p 表示切换为指定用户的身份,但不改变当前的工作环境(不使用切换用户的配置文件)。
-m 和 -p 一样。
-c 仅切换用户执行一次命令,执行后自动切换回来,该选项后通常会带有要执行的命令。

susu - 的区别:

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

今天的文章linux su命令详解_suse和centos的区别[通俗易懂]分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:http://bianchenghao.cn/78295.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注