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

su和sudo的区别

linux中 su和sudo的区别

su和sudo是两个常用的切换到root超级用户命令。功能上类似,但使用上还是有不少差异。

su命令

su是切换到root用户的命令,主要用法如下:

  • su:不带参数直接输入su将切换到root用户,需要输入root密码
  • su -:等同于 su -l,切换到root用户并开启root的环境变量(等同于root身份登录)
  • su -l user-name:切换到其他用户,需要输入该用户的密码。不带其他参数时等同于su - user-name
  • su -c ‘cmd’::以root用户执行命令,类似于sudo,不同之处是需要输入root密码
    su命令主要是用来切换root身份,前提是需要知道root密码。
    sudo命令

ubuntu安装过程中不会设置root密码,默认使用普通账户登录,sudo便是普通账户获取root权限的命令。

sudo和su的区别点

su可以不带参数执行,sudo不行。

  • sudo命令获取root权限时输入的是用户密码,二su要求输入root密码。
  • 只有/etc/sudo/sudoers文件中的用户才能使用sudo命令,任何人都可以使用su命令
  • 当root密码未设置时,sudo能获取root权限,su不行
  • su可以切换到其他用户登录,sudo只能切换到root用户,sudo su -l user-name的方式可以,但这是su的能力

有了sudo,可以在不泄露(不设置) root密码的前提下让用户执行特权命令,并且sudo提供命令历史记录,能大大提高系统的安全性。

sudo命令

sudo命令:以root身份执行命令,需要注意的是命令需要默认PATH路径下,否则会出现 sudo: xxx command not found 的错误

  • sudo -l:列出可用的命令
  • sudo -i: 以root身份登录
  • sudo -s: 一般等同于sudo bash,进入root环境,不改变工作目录
  • sudo su: 以sudo方式执行su命令,此时输入用户密码就可以了

Ubuntu、MacOS默认没有设置root密码,谷歌云、AWS的VPS默认是普通用户密钥登录,要想切换到root环境,sudo
-i,然后输入用户密码便进入到了root环境。

http://www.lryc.cn/news/14964.html

相关文章:

  • 【ChatGPT】使用ChatGPT进行51单片机程序编程体验
  • Docker之路(1.Docker概述、组成以及特点)
  • 非对称加密算法在android的应用
  • 51单片机——定时器中断实验,小白讲解,相互学习
  • 什么是循环依赖,spring是如何去解决循环依赖问题的?什么是三级缓存?【spring】
  • Cron表达式
  • JavaScript 作用域
  • Hive内部表与外部表的区别具体说明
  • Java流程控制
  • I.MX6ULL_Linux_系统篇(17) uboot分析-启动linux
  • C/C++每日一练(20230221)
  • 用Python采集热门城市景点数据并简单制作数据可视化图
  • 论文阅读:pixelNeRF: Neural Radiance Fields from One or Few Images
  • C++项目——高并发内存池(1)--介绍及定长内存池
  • 网络有线无线配置
  • 阅读笔记——Feature-Point Matching for Aerial and Ground Images方法
  • 前端工程师面试题10条必会笔试题
  • 【技术分享】Web自动化之Selenium安装
  • 【Linux】进程状态的理解
  • 打游戏哪种蓝牙耳机比较好?适合玩游戏的无线蓝牙耳机
  • Fortinet推出新一代自研安全芯片,跨所有网络边缘加速网络与安全融合
  • ChatGPT爆火背后的真相:学编程已经成为必选项
  • Unity UI框架
  • vue2提取vue-router的title单独存放,使用i18n实现
  • 【Linux操作系统】【综合实验三 用户帐号、文件系统与系统安全管理】
  • sqlite3数据库-sqlite语句1(五)
  • 【图像分类】卷积神经网络之LeNet5网络模型实现MNIST手写数字识别
  • 前端开发环境搭建
  • 学习Flask之四、网页表单
  • CenterMask paper笔记