当前位置: 首页 > article >正文

Linux基础命令su详解

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 的用法对于系统管理和维护是十分重要的。


http://www.kler.cn/news/334200.html

相关文章:

  • MKV转MP4丨FFmpeg的简单命令使用——视频格式转换
  • VSCode debug模式无法跳转进入内置模块
  • HTB:Mongod[WriteUP]
  • MAC备忘录空白解决方案
  • 通过PHP获取商品详情
  • 微信小程序使用scroll-view 加上enable-flex之后高度变得特别长
  • 《无机杀手》制作团队选择Blender的原因分析
  • 【Yocto 是一个开源项目】
  • Python Kivy 进阶功能教程
  • ES8的Java API client 8.0 简单示例操作 Elasticsearch
  • 【Java】IntelliJ IDEA开发环境安装
  • C++基础---类和对象(上)
  • vue使用高德地图
  • 合肥企业参访:走进联想合肥智能制造基地参观学习
  • Windows下VScode快速配置OpenCV开发环境 【快乐篇】
  • Pandas 时间序列处理
  • SpringSession;基于Redis的SpringSession实现;实现session共享的三种方式
  • malloc源码分析之 ----- 你想要啥chunk
  • Oracle架构之数据库备份和RAC介绍
  • 【Vue】特殊的按键修饰符 tab、ctrl、meta(win键)、alt