linux系统命令su的简单介绍

Linux下su命令怎么使用Linux su , 全拼:switch user,命令用于变更为其他使用者的身份,除root外 , 需要键入使用者的密码 。
使用权限:所有使用者
语法:
su [参数] [-] [用户帐号]
参数说明:
-f或者--fast不必读启动档,仅用于csh或tcsh
-m -p或者-preserve-environment执行su时不改变环境变数
-c command或者--command=command变更为账号为USER的使用者并执行指令后再变回原来使用者
-s shell或者--shell=shell指定要执行的shell,预设值为/etc/passwd内的该使用者shell
-help 显示说明文件
--version 显示版本资讯
-
-l或者--login这个参数加了之后,就好像是重新login为该使用者一样 , 大部分环境变数都是以该使用者为主,并且工作目录也会改变,如果没有指定USER , 内定是root
USER 欲变更的使用者账号
ARG 传入新的shell参数
关于Linux中su的命令su命令功能说明:切换用户身份 。
语法:su [-flmp][--help][--version][-][-c 指令][-s
][用户帐号]
补充说明:su可让用户暂时变更登入的身份 。变更时须输入所要变更的用户帐号与密码 。
参数:
 -c指令或--command=指令执行完指定的指令后,即恢复原来的身份 。
 -f或--fast适用于csh与tsch,使shell不用去读取启动文件 。
 -.-l或--login改变身份时,也同时变更工作目录,以及HOME,SHELL,USER,LOGNAME 。此外,也会变更PATH变量 。
 -m,-p或--preserve-environment变更身份时,不要变更环境变量 。
 -s
或--shell=
指定要执行的shell 。
 --help显示帮助 。
 --version显示版本信息 。
 [用户帐号]指定要变更的用户 。若不指定此参数,则预设变更为root 。
示例:
su -c ls root#变更帐号为 root 并在执行 ls 指令后退出变回原使用者 。
su root -f#变更帐号为 root 并传入 -f 参数给新执行的 shell 。
su - test#变更帐号为 test 并改变工作目录至 test 的家目录(home dir) 。
linux切换用户命令linux切换用户的命令是“su” 。
普通用户之间切换以及普通用户切换至 root 用户,都需要知晓对方的密码,只有正确输入密码,才能实现切换;从 root 用户切换至其他用户,无需知晓对方密码,直接可切换成功 。
su 命令的基本格式:# su [选项] 用户名 ;
选项:
-:当前用户不仅切换为指定用户的身份,同时所用的工作环境也切换为此用户的环境(包括 PATH 变量、MAIL 变量等),使用 - 选项可省略用户名,默认会切换为 root 用户 。
-l:同 - 的使用类似,也就是在切换用户身份的同时,完整切换工作环境 , 但后面需要添加欲切换的使用者账号 。
-p:表示切换为指定用户的身份,但不改变当前的工作环境(不使用切换用户的配置文件) 。
-m:和 -p 一样;
-c 命令:仅切换用户执行一次命令,执行后自动切换回来,该选项后通常会带有要执行的命令 。
su(Switch User)切换到超级管理员
使用su命令所有管理员都必须知道root账号的密码;
sudo(Switch User and DO)以超级管理员身份执行;
sudo使得普通管理员使用自己的密码也可以获得超级管理员权限;
linux 常用系统命令
# 查看ip地址
ip a
ip addr
# ping网络(测试网络连通)
ip 目标机器的ip
# 查看系统时间
date
# 注销
logout
# 关机
shutdown now
# 重启
reboot
# 清屏
clear
Linux下 su命令与su - 命令有什么区别?Linux下 su命令与su - 命令的区别:
一、切换root身份不同
1、su命令:su只是切换了root身份,但Shell环境仍然是普通用户的Shell;而su -连用户和Shell环境一起切换成root身份了 。只有切换了Shell环境才不会出现PATH环境变量错误,报command not found的错误 。
2、su - 命令:su切换成root用户以后,pwd一下,发现工作目录仍然是普通用户的工作目录;而用su -命令切换以后 , 工作目录变成root的工作目录了 。
二、采用su deploy命令后,取目标用户不同
1、su命令:su不会读取目标用户的环境配置文件 , 如图 。
2、su - 命令:su - 读取目标用户的环境配置文件,如图 。
综上总结:有“-”和无“-”各自的环境变量不同 。
三、service命令
1、su命令:使用 su root 切换到root用户后,不可以使用service命令;
2、su - 命令:使用 su - 后,就可以使用service命令了 。
四、用echo $PATH命令后,环境量不同
1、su命令:环境量变为usr 。
2、su - 命令:环境量变为oracle 。
linux su和sudo命令的区别su
su的全称并不是super user , 而是switch user,是不是就突然明白了?是切换用户的意思 。su的一般使用方法是su或者su - , 两种方法虽然只差了1个字符,但也是有比较大的差异的 。
加入了-参数 , 就是login-shell的方式,也就是说切换到另一个用户之后,当前的shell会加载对应的环境变量和各种设置;
如果没有加入-参数,就是non-login-shell的方式,也就是说当前的shell还是加载切换之前的那个用户的环境变量以及各种设置 。
如果不想因为切换到另一个用户导致自己在当前用户下的设置不可用 , 那么就可以用non-login-shell的方式;如果切换用户后,需要用到该用户的各种环境变量,那么使用login-shell方式即可 。
sudo
全称为super user do,即以超级用户的方式执行命令,这里的超级用户指的就是root用户,我们在Linux中有时会遇到permission
denied的情况,如以ubuntu用户的身份查看/etc/shadow的内容,因为它是只有root用户才能查看的,这个时候就可以使用sudo 。
两者的区别在于:
使用su - 提供root账号的密码 , 可以切换到root用户;
使用sudo su -,提供当前用户的密码,也可以切换到root用户 。
如果我们的Linux系统有很多用户需要使用的话,前者要求所有用户都知道root用户的密码,显然是非常危险的;后者是不需要暴露root账户密码的,用户只需要输入自己的账户密码就可以 。
linux命令中su是什么意思su的全称并不是super user,而是switch user,是不是就突然明白了?是切换用户的意思 。su的一般使用方法是su或者su -,两种方法虽然只差了1个字符,但也是有比较大的差异的 。
加入了-参数,就是login-shell的方式,也就是说切换到另一个用户之后,当前的shell会加载对应的环境变量和各种设置;
如果没有加入-参数,就是non-login-shell的方式 , 也就是说当前的shell还是加载切换之前的那个用户的环境变量以及各种设置 。
如果不想因为切换到另一个用户导致自己在当前用户下的设置不可用,那么就可以用non-login-shell的方式;如果切换用户后,需要用到该用户的各种环境变量,那么使用login-shell方式即可 。
【linux系统命令su的简单介绍】关于linux系统命令su和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读