在 Linux  系统中,由于 root 的权限过大,一般情况下都不使用它。只有在一些特殊情况下才采用登录root

执行管理任务,一般情况下临时使用 root 权限多采用 su 和 sudo 命令。

1.su 和  sudo 命令对比:

在普通用户下输入 su 命令后,会提示输入 root 账户的密码,然后进入特权模式(和使用 root 登录完全一样),输入 exit 退出:

[xiaoming@VM_81_181_centos home]$ clear
[xiaoming@VM_81_181_centos home]$ su
Password:
[root@VM_81_181_centos home]# exit
exit
[xiaoming@VM_81_181_centos home]$

还有一种方法可以切换到 root 用户:运行 su - 命令,如下:

[xiaoming@VM_81_181_centos home]$ su -
Password:
[root@VM_81_181_centos ~]#

那么,su 命令和  su - 命令之间有什么区别吗?前者在切换到 root 用户之后仍然保持旧的(或者说原始用户的

环境)环境,而后者则是创建一个新的环境,相当于使用 root 用户正常登录(从登录屏幕登录)

su 命令手册很清楚地说明了这一点:

可选参数 - 可提供的环境为用户在直接登录时的环境

当采用 sudo 命令,只需要输入当前用户的密码即可执行需要 root 权限执行的命令,可以发现使用 sudo 命令普通用户不需要知道

root 的密码即可执行 root 权限的命令

sudo su 命令:

大概是因为使用 su 命令或者以 root  用户身份登录有风险,所以,一些 Linux 发行版本(如:Ubuntu)默认禁用 root 用户账户。鼓励

用户在需要 root 权限时使用 sudo 命令。

然后,你还是可以成功执行 su 命令,而不用输入 root 账户的密码。运行以下命令:

[xiaoming@VM_81_181_centos root]$ sudo su
[sudo] password for xiaoming:
[root@VM_81_181_centos ~]#

由于使用的是  sudo  运行命令,只需要输入当前用户的密码。所以,一旦操作完成,su 命令将会以 root 用户身份运行

如何配置普通用户有使用 sudo 命令的权限可以参考我的这篇文章:

https://www.cnblogs.com/leeyongbard/p/9513960.html

2.作为 root 这种拥有很强大权限的,切换到普通用户下是不需要输入验证的

可以使用 su 用户名 或 sudo su 用户名

[root@VM_81_181_centos home]# su xiaoming
[xiaoming@VM_81_181_centos home]$ [root@VM_81_181_centos home]# sudo su xiaoming
[xiaoming@VM_81_181_centos home]$

Linux命令之sudo的更多相关文章

  1. N天学习一个Linux命令之sudo

    前言 新项目打算采用运维搭建的发布系统发代码,发布后生效前需要做一些处理,因为发布系统登录目标机器使用的是非root账号,所以需要使用sudo来提升权限.当执行sudo cd /xxx/xx时会提示报 ...

  2. linux命令su,sudo 使用和区别

    1- sudo 与 su 两个命令的最大区别是: sudo 命令需要输入当前用户的密码,su 命令需要输入 root 用户的密码.另外一个区别是其默认行为.sudo 命令只允许使用提升的权限运行单个命 ...

  3. Linux系统管理员不可不知的命令:sudo

    对Linux系统管理员或高级用户而言,sudo是必不可少的最重要的命令之一.当我们想要运行重要任务时,sudo提供了安全的提升权限.请耐心读本文,看看sudo能为你做些什么. sudo是个统管一切的命 ...

  4. (6)sudo命令详解(每周一个linux命令系列)

    首先说句抱歉,最近事情比较复杂,停更了一阵子.我又回来啦 多用户管理 我们常用的windows个人系统虽然可以设置多用户,但是实际上是不可以多用户同时登陆的(这个我实验过,我以前用windows服务器 ...

  5. Linux系统管理员命令:sudo

    sudo是个统管一切的命令.它的字面意思是代表“超级用户才能做!”(super user do!)对Linux系统管理员或高级用户而言,它是必不可少的最重要的命令之一.你可曾有过这样的经历:在终端中试 ...

  6. Linux系统不可不知的命令:sudo

    转自:http://www.embeddedlinux.org.cn/html/xinshourumen/201308/05-2608.html sudo是个统管一切的命令.它的字面意思是代表“超级用 ...

  7. Linux 系统中 sudo 命令的 10 个技巧

    概览 sudo 表示 "superuser do". 它允许已验证的用户以其他用户的身份来运行命令.其他用户可以是普通用户或者超级用户.然而,大部分时候我们用它来以提升的权限来运行 ...

  8. 用大写字母输入 Linux 命令,实现以 sudo 用户权限运行

    我们知道,一些 Linux 命令是要通过 sudo 权限才能运行的,这需要我们每次使用这些命令时在前面加一个 sudo ,十分繁琐.今天给大家介绍一个好用的工具 SUDO ,它只需要我们用大写字母键入 ...

  9. Linux命令-sudo

    sudo命令用于给普通用户提供额外权利来完成原本只有超级用户才有权限完成的任务, 格式:sudo [参数] 命令名称 sudo命令与su命令的区别是,su命令允许普通用户完全变更为超级管理员的身份,但 ...

随机推荐

  1. Hive中如何快速的复制一张分区表(包括数据)

    Hive中有时候会遇到复制表的需求,复制表指的是复制表结构和数据. 如果是针对非分区表,那很简单,可以使用CREATE TABLE new_table AS SELECT * FROM old_tab ...

  2. PHP框架CI CodeIgniter 的log_message开启日志记录方法

    PHP框架CI CodeIgniter 的log_message开启日志记录方法 第一步:index.php文件,修改环境为开发环境define(‘ENVIRONMENT’, ‘development ...

  3. linux 文件压缩与解压缩

  4. [转载]Oracle PL/SQL之LOOP循环控制语句

    在PL/SQL中可以使用LOOP语句对数据进行循环处理,利用该语句可以循环执行指定的语句序列.常用的LOOP循环语句包含3种形式:基本的LOOP.WHILE...LOOP和FOR...LOOP. LO ...

  5. 实用的 图片上传 html+css

    html <form id="mainForm"> <div class="content"> <div class=" ...

  6. MyEclipse非正常关闭问题

    问题:电脑突然断电,myeclipse非正常关闭,“Package Explorer”非正常显示,出现错误“Could not create the view: An unexpected excep ...

  7. mxnet 查看 Sym shape

    import mxnet as mximport numpy as npimport randomimport mxnet as mximport sysdata_shape = {'data':(6 ...

  8. STM32L476应用开发之六:电池SOC检测(转)

    源: STM32L476应用开发之六:电池SOC检测

  9. 如何最快速的找到页面某一元素所绑定的点击事件,并查看js代码

    https://blog.csdn.net/jmd88888888/article/details/70919378

  10. mysql5.5被django抛弃,安装mysql5.7记录

    安装: https://www.jb51.net/article/123004.htm 问题解决: https://blog.csdn.net/zztingfeng/article/details/8 ...