先复习一下上节内容:

  1. 用户组添加groupadd
  2. 用户组修改groupmod
  3. 用户组删除groupdel
  4. 作业创建一个id为501的组group1,然后改成group2, 同时id变为502,最后删除这个组,命令分别如下:

groupadd –g 501 group1

groupmod –g 502 –n group2 group1

groupdel group2

这一节,我们来说一下用户切换相关命令

为什么要进行用户切换?

在操作过程中需要使用特定的用户进行特定的操作,多数情况下是因为权限,比如要修改一个文件,只有root用户有权限修改,那么就要切换到root用户下进行操作。切换用户一般有两个命令:

1. su命令

su命令不加参数,默认切到root用户,需要输入root用户密码进行验证,

exit命令可退出root用户。

su命令可以加一个“-”再加上用户名,此时,不但身份变化了,同时也拥有了此用户的“用户环境”,比如用户家目录以及此用户的其它个性化设置。

普通用户切换其它用户需要知道其它用户的密码,root用户使用su命令切换其它用户,不需要知道用户密码

2. sudo命令

sudo的用法是,在sudo后面加上要执行的命令,表示用root身份执行此命令,比如

sudo useradd user1,表示用root身份执行添加用户的操作。

此命令在系统中的动作流程是

  1. 检查当前用户是否有sudo的权限,通过检查/etc/sudoers文件

比如我们用user1执行sudo useradd命令,会报错

  

  2. 在用户输入自己的密码后,验证用户密码

  3. 密码正确后,如果当前用户有权限用sudo执行对就的命令,系统就会以root用户身份执行相关命令

基于以上流程,我们需要先给用户sudo的权限,此权限存储在/etc/sudoers这个文件中,可以用vi或vim进行编辑(这两个命令以面会讲到),或是用sudoers文件的专用命令visudo,这里我们用visudo进行编辑,可以看到root用户的sudo权限:

这一行表示的意思是,root用户(第一列),从任何地方登录(第二列的ALL),可以执行任何人(第三列的ALL)的任何命令(第四列的ALL),根据这个定义,我们把user1的权限也加上

保存后退出,再次在user1中执行sudo useradd命令,此时要求输入user1的密码,证明权限生效了

还可以通过 %组名称 的方式给用户组分配权限,比如

%users ALL=(ALL) ALL

表示所有users组中的用户都可以执行sudo命令。

如何不想每次都输入密码,可以使用NOPASSWD进行配置,如下:

再次执行sudo useradd命令

已不再要求输入密码。

再进一步,可以设置用户有权限执行哪些命令,比如我们让user1只能执行shutdown命令,可以做如下配置

保存退出后,在user1中再次执行sudo useradd命令

已没有执行权限

更多文章关注微信公众号“挨踢学霸”

linux系统命令学习系列-用户切换命令su,sudo的更多相关文章

  1. linux系统命令学习系列-定时任务crontab命令

    上节内容复习: at命令的使用 作业:创建一个任务10分钟后关机 at now+10 minutes at>shutdown at><EOT> 本节我们继续来说例行任务管理命令 ...

  2. linux系统命令学习系列-例行任务管理at命令

    先来复习一下上节内容: 切换用户身份命令su 以root身份执行操作命令sudo 作业:给user1配置sudo权限,不用密码,可执行useradd命令 在/etc/sudoers文件中添加如下配置项 ...

  3. linux系统命令学习系列-用户组管理

    先复习一下上节内容: 设置密码命令passwd 用户信息修改命令usermod 用户删除命令userdel 作业:修改user1的用户id为505,家目录到admin,用户组为admin,最后删除us ...

  4. linux系统命令学习系列8-文件相关操作touch,rm,mv,cat,head,tail命令

    上节内容: 系统和目录管理 Pwd命令 .和..目录 相对路径和绝对路径 作业:进入opt路径,分别使用相对路径方法和绝对路径方法进入到其实任意一个子目录 cd /opt 相对路径 cd rh 绝对路 ...

  5. Linux学习之用户管理命令与用户组管理命令(十五)

    Linux学习之用户管理命令与用户组管理命令 目录 用户管理命令 用户添加命令useradd 修改用户密码passwd 修改用户信息usermod 修改用户密码状态chage 删除用户userdel ...

  6. Linux学习笔记——切换并取代用户身份命令——su

        再次从头好好的学习Linux,本着以免轻易忘记,以备后用的原则,将我觉得常用或者好玩的linux命令记录在这,注意:我的实验环境是 Ubuntu 14.04.1 su 这个命令我经常使用,因为 ...

  7. Linux 系统中用户切换(su user与 su - user 的区别)

    1. Linux系统中用户切换的命令为su,语法为: su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]] 参 ...

  8. Linux学习系列--用户(组)新增、查看和删除

    在实际的工作中,在接触Linux的用户组管理的时候,一般来说都是在系统开建设的时候设置好,root权限由特定的负责人保管用户密码,避免误操作带来不必要的麻烦. 在具体使用的时候,会利用相关的命令设置一 ...

  9. Linux 超级用户和普通用户切换命令

    默认登录的是普通用户权限显示$符 tree@ubuntu:/usr$ 从普通用户切换超级用户权限: sudo su tree@ubuntu:/usr$ sudo su 输入密码 [sudo] pass ...

随机推荐

  1. 解决Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project autotest_fchtgl: Compilation failure的方法

    在碰到maven install 发现报错 Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.2:comp ...

  2. python 时间模块time,datetime详细介绍

    模块(module)是 Python 中非常重要的东西,你可以把它理解为 Python 的扩展工具.换言之,Python 默认情况下提供了一些可用的东西,但是这些默认情况下提供的还远远不能满足编程实践 ...

  3. 初探Electron

    Electron是什么? 官网是这么描述的:Build cross platform desktop apps with JavaScript, HTML, and CSS 翻译一下:使用JavaSc ...

  4. python迭代和切片

    from collections import Iterable #切片************************ # #取一个list或tuple的部分元素是非常常见的操作 ,Python提供 ...

  5. Go实现短url项目

    首先说一下这种业务的应用场景: 把一个长url转换为一个短url网址 主要用于微博,二维码,等有字数限制的场景 主要实现的功能分析: 把长url的地址转换为短url地址 通过短url获取对应的原始长u ...

  6. BZOJ1493 NOI2007 项链工厂 线段树模拟

    提交地址:http://www.lydsy.com/JudgeOnline/problem.php?id=1493 题目大意:给一个数列,进行一系列操作.包括旋转,翻转,改变等操作,以及查询颜色段数. ...

  7. APIcloud 移动端常用事件

    1.监听按键事件 返回键 api.addEventListener({ name:'keyback' }, function(ret, err){ if( ret ){ alert( JSON.str ...

  8. EOS 上线前,先搞懂这两个基本概念

    如果你曾经尝试在本地运行 EOS 测试节点,会发现编译.运行并不是特别复杂,但官方教程里两个概念很容易把人搞晕: Account(账户)和 Wallet (钱包). EOS 的 Wallet 跟其他区 ...

  9. iTerm2设置及使用

    1. 安装 iTerm2 下载地址:https://www.iterm2.com/downloads.html 下载的是压缩文件,解压后是执行程序文件,你可以直接双击,或者直接将它拖到 Applica ...

  10. 选择排序—简单选择排序(Simple Selection Sort)

    基本思想: 在要排序的一组数中,选出最小(或者最大)的一个数与第1个位置的数交换:然后在剩下的数当中再找最小(或者最大)的与第2个位置的数交换,依次类推,直到第n-1个元素(倒数第二个数)和第n个元素 ...