linux系统(centos)下su和sudo命令的区别

区别

我们在日常使用过程中,这2个命令很多时候能达到相同的效果,对细节区别十分模糊,这里进行简单的解释和区分。希望大家能够正确使用这2个命令,使用过程中,也知其原因。

  • su命令:用于切换当前用户身份到其他用户身份,变更时须输入所要变更的用户帐号与密码。
  • sudo命令:临时用来以其他用户的身份来执行命令。普通用户需要在/etc/sudoer文件里面配置才能使用sudo命令。

su命令基本使用

基本参数:

-c<指令>或--command=<指令>:执行完指定的指令后,即恢复原来的身份;
-f或——fast:适用于csh与tsch,使shell不用去读取启动文件;
-l或——login:改变身份时,也同时变更工作目录,以及HOME,SHELL,USER,logname。此外,也会变更PATH变量;
-m,-p或--preserve-environment:变更身份时,不要变更环境变量;
-s<shell>或--shell=<shell>:指定要执行的shell;
--help:显示帮助;
--version;显示版本信息。

常见的使用场景:

  1. 切换用户。普通用户登录后,不加任何参数,默认是切换到root用户。

    su  #默认切换到其他用户,需要输入其他用户的密码。
    
    su zdsoft #切换到zdsoft用户,不会加载zdsoft用户的个人环境配置文件,不会进入zdsoft用户的home目录。
    #root用户切换到其他用户不需要输入密码 su - zdsoft #切换到zdsoft用户,加载zdsoft用户个人环境配置文件,并进入到zdsoft的home目录。
  2. 临时切换,执行某命令后,立马退出来。

    su root -c 'ls -l'  #切换到root命令,执行ls -l命令后退回来

sudo命令基本使用

备注:sudo明确临时切换身份来执行命令,可以在/etc/sudoer文件里面配置免密。在生产环境中,系统管理员管理系统时,建议不要使用root命令直接ssh远程登录,也不要直接使用root操作系统变更。而是使用一个运维专用的普通账号。绝大情况下使用这个普通账号进行系统管理(部署服务,上线应用,查看日志等等)。特殊情况下需要root用户,那就应该为这个普通账号配置sudo权限。

/etc/sudoer文件里面,也可以配置,限制某用户用sudo时,只能执行特定的几个命令。

基本参数:

-b:在后台执行指令;
-h:显示帮助;
-H:将HOME环境变量设为新身份的HOME环境变量;
-k:结束密码的有效期限,也就是下次再执行sudo时便需要输入密码;。
-l:列出目前用户可执行与无法执行的指令;
-p:改变询问密码的提示符号;
-s<shell>:执行指定的shell;
-u<用户>:以指定的用户作为新的身份。若不加上此参数,则预设以root作为新的身份;
-v:延长密码有效期限5分钟;
-V :显示版本信息。

常用使用场景:

  1. 使用某用户的名义执行命令。

    sudo -u zdsoft touch test.txt #使用zdsoft用户身份执行touch命令。
    #若不加上此参数,则预设以root作为新的身份;
  2. 永久切换到root下面,这种情况就和su很像。

    sudo -i #切换root用户,并不退出来。
    #-i就是登录的参数

最新文章

  1. [转]linux,windows 可执行文件(ELF、PE)
  2. echarts 各种细节问题
  3. 【转】Java读取文件方法大全
  4. HW5.12
  5. yii2源码学习笔记(十三)
  6. Android应用程序的Activity启动过程简要介绍和学习计划
  7. HNCU1100:彩票
  8. 浅析 jQuery 内部架构设计
  9. Go语言打造以太坊智能合约测试框架(level3)
  10. 只有try和finally,没有catch
  11. java.lang.ClassNotFoundException的解决方法
  12. P2P Downloader
  13. ICMP协议、DNS、ARP协议、ping、DHCP协议
  14. eclipse mavenWeb项目真正实现热部署(修改java代码和页面文件不用重启tomcat)
  15. Python中的类(中)
  16. python3 win10_x64 安装pcapy
  17. mysql 索引 大于等于 走不走索引 最左前缀
  18. hadoop HA+kerberos HA集群搭建
  19. RESTful风格与RESTful Api
  20. 吐血整理 Delphi系列书籍 118本(全)

热门文章

  1. MySQL(二)——常用命令
  2. Dockerfile优化——supervisor服务
  3. NRF52832空中升级DFU
  4. Python习题集(十一)
  5. Identity基于角色的访问授权
  6. ysoserial CommonsColletions5分析
  7. Powershell配合word伪装木马执行
  8. Java实现发送邮件,图片,附件
  9. HDU 6170 FFF at Valentine(强联通缩点+拓扑排序)
  10. 1.24学习总结——HTML常见标签