• Linux 系统中用户切换


    1. Linux系统中用户切换的命令为su,语法为:

    su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]]

    参数说明

    -f , –fast:不必读启动文件(如 csh.cshrc 等),仅用于csh或tcsh两种Shell。

    -l , –login:加了这个参数之后,就好像是重新登陆一样,大部分环境变量(例如HOME、SHELL和USER等)都是以该使用者(USER)为主,并

    且工作目录也会改变。如果没有指定USER,缺省情况是root。

    -m, -p ,–preserve-environment:执行su时不改变环境变数。

    -c command:变更账号为USER的使用者,并执行指令(command)后再变回原来使用者。

    –help 显示说明文件
    –version 显示版本资讯

    USER:欲变更的使用者账号,
    ARG: 传入新的Shell参数。

    2. su [user] 和 su - [user]的区别:

    su [user]切换到其他用户,但是不切换环境变量,su - [user]则是完整的切换到新的用户环境。

    如:

    [root@rac1 ~]# pwd  --当前目录
    /root
    [root@rac1 ~]# su oracle --使用su [user]
    [oracle@rac1 root]$ pwd  --当前目录没有改变,还是之前的用户目录
    /root
    [oracle@rac1 root]$ su - oracle --使用su - [user]
    Password:
    [oracle@rac1 ~]$ pwd   --当前目录变为当前用户的家目录
    /home/oracle
    [oracle@rac1 ~]$

    所以建议大家在切换用户时,尽量用su - [user],否则可能会出现环境变量不对的问题。

  • 相关阅读:
    mysql InnoDB 索引小记
    Linux shell 脚本小记
    Java中Integer的源码学习
    nginx小记
    位运算小结
    Redis小结
    CSS中nth-child和nth-of-type的简单使用
    Linux awk小记
    mysql小记--基础知识
    让44.1版本的sketch打开更高版本的sketch文件
  • 原文地址:https://www.cnblogs.com/tdskee/p/5908164.html
Copyright © 2020-2023  润新知