Linux基础命令su详解

19 篇文章 0 订阅

su 是 Linux 和 Unix 系统中的一个命令,用于切换到另一个用户的身份,默认是切换到 superuser(root)身份。通过 su 命令,用户可以执行需要更高权限的操作。

基本用法

su [OPTION] [USER] 

常用选项详解

  1. -l, --login
    使用户以登录身份切换,这将加载目标用户的环境变量(如 PATHHOMEUSER 等)。

    示例:

    su -l username 
  2. -c, --command=COMMAND
    允许用户在切换到目标用户身份后直接执行指定的命令。

    示例:

    su -c "ls /root" username 
  3. -s, --shell=SHELL
    使用指定的 shell 而不是默认 shell 进行切换。

    示例:

    su -s /bin/bash username 
  4. -m, --preserve-environment
    保持当前用户的环境变量,而不改为目标用户的环境变量。通常这是一个不常用的选项。

    示例:

    su -m username 
  5. -p
    和 -m 选项相同,也是保留当前用户的环境变量。

    示例:

    su -p username 
  6. USER
    指定要切换到的目标用户,如果不提供用户名,则默认切换到 root 用户。

    示例:

    su 

使用示例

  • 切换到 root 用户:

    su 

    提示输入 root 用户的密码。

  • 切换到指定用户:

    su username 

    提示输入指定用户的密码。

  • 使用登录模式切换到指定用户:

    su -l username 

    以目标用户的登录身份切换,加载其环境变量。

  • 以指定用户身份执行命令:

    su -c "mkdir /home/username/new_directory" username 

    在指定用户下创建一个新的目录。

  • 切换到指定用户并使用特定 shell:

    su -s /bin/zsh username 

    以 zsh shell 切换到指定用户。

注意事项

  • 使用 su 命令时,必须使用目标用户的密码进行身份验证,通常是 root 用户。
  • 使用 su 切换到 root 用户时,不要与 sudo 混淆。sudo 允许用户以更细粒度的权限执行命令,而不需要全程切换用户。
  • 根用户和非根用户在系统中执行命令的权限可能相差甚远,因此谨慎使用 root 权限进行操作。

总结

su 命令是Linux和Unix系统中实现用户切换的基本工具,通过它可以在必要时获取较高权限来执行需要管理员权限的操作。熟练掌握 su 的用法对于系统管理和维护是十分重要的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

penny_tcf

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值