su命令

  switch user的缩写, 意为切换至指定用户执行命令

常用选项

  -c<指令>或--command=<指令>:执行完指定的指令后,即恢复原来的身份;

  -f或——fast:适用于csh与tsch,使shell不用去读取启动文件;

  -l或——login:改变身份时,也同时变更工作目录,以及HOME,SHELL,USER,logname。此外,也会变更PATH变量;

  -m,-p或--preserve-environment:变更身份时,不要变更环境变量;

  -s或--shell=:指定要执行的shell; --help:显示帮助; --version;显示版本信息。

示例

1.切换至root用户,创建user1用户

[centos@localhost root]$useradd user1          # 使用centos用户创建用户失败
bash: /usr/sbin/useradd: Permission denied
[centos@localhost root]$su -c 'useradd user1' # 切换至root用户下,创建用户
Password:                       # 输入root用户的密码
[centos@localhost root]$tail - /etc/passwd # 确认是否创建成功
centos:x::::/home/centos:/bin/bash
user1:x::::/home/user1:/bin/bash

2.切换至root用户

[centos@localhost root]$su -              # 切换至root用户, - 表示改变工作目录,且重新载入环境变量
Password:
Last login: Mon Jun :: CST on pts/
Last failed login: Mon Jun :: CST on pts/
There was failed login attempt since the last successful login.
[root@localhost ~]#su centos # 切换至centos用户

sudo命令

  execute a command as another user, 以其他用户身份临时性地执行命令。可以让获得授权的用户以另一个身份(一般为root用户,或者属组为root)执行命令。

  授权文件/etc/sudoers,只能使用visudo命令,编写该文件

常用选项

  -b    以后台进程的方式运行命令

  -g group  以属组为group的身份运行程序

  -h      查看帮助想你想

  -k    让认证文件失效

  -l     显示当前用户能执行的sudo命令

  -u user    以user的身份运行命令

授权文件的配置

1.别名配置

A.主机别名

  Host_Alias     FILESERVERS = fs1, fs2

B.用户别名

  User_Alias ADMINS = jsmith, mikem

C.命令别名

  Cmnd_Alias NETWORKING = /sbin/route, /sbin/ifconfig

注意:命令必须为二进制文件全路径

2.给用户授权

A.向centos用户授权,可以进行所有操作

    centos   ALL=(ALL)   ALL

  B.wheel组中的用户可以执行所有操作,且不需要输入密码

    %wheel        ALL=(ALL)       NOPASSWD: ALL

  C.允许centos用户,以无密码地方式执行SOFTWARE中的命令

    Cmnd_Alias SOFTWARE = /bin/rpm, /usr/bin/up2date, /usr/bin/yum

    centos  ALL=(ALL)       NOPASSWD: SOFTWARE  

sudo命令的更多相关文章

  1. linux sudo 命令

    简单的说,sudo 是一种权限管理机制,管理员可以授权于一些普通用户去执行一些 root 执行的操作,而不需要知道 root 的密码.严谨些说,sudo 允许一个已授权用户以超级用户或者其它用户的角色 ...

  2. Linux sudo 命令的应用

    .note-content { font-family: "Helvetica Neue", Arial, "Hiragino Sans GB", STHeit ...

  3. 在脚本中使用sudo命令,将密码保存在脚本中,不需要手动输入密码

    在脚本中使用sudo命令,将密码保存在脚本中,不需要手动输入密码. #!/bin/bash echo 'xxx密码xxx'|sudo -S service mysql start echo 'xxx密 ...

  4. sudo 命令情景分析

    Linux 下使用 sudo 命令,可以让普通用户也能执行一些或者全部的 root 命令.本文就对我们常用到 sudo 操作情景进行简单分析,通过一些例子来了解 sudo 命令相关的技巧. 情景一:用 ...

  5. LINUX 如何开放端口和关闭端口/jps/sudo命令

    1 在java的根目录下用java的jps查看:============================================================================ ...

  6. sudo命令使用的几个场景

    在linux系统下,普通用户无法直接执行root用户权限下的命令,如果想让普通用户执行只有root用户才能执行的操作命令.下面罗列下经常使用sudo命令的几个场景: 1.用户无权限执行root命令普通 ...

  7. Linux su和sudo命令的区别,并获得root权限

    su(superuser) su表示切换用户,如: 输入:su命令后回车表示切换当前的用户到root用户,或者: 输入:su - root(或者其他用户名)这里加了"-"后表示也切 ...

  8. 【转】sudo命令情景分析

    文章转自:http://www.cnblogs.com/hazir/p/sudo_command.html Linux 下使用 sudo 命令,可以让普通用户也能执行一些或者全部的 root 命令.本 ...

  9. linux sudo命令

    Sudo”是Unix/Linux平台上的一个非常有用的工具,它允许系统管理员分配给普通用户一些合理的“权利”,让他们执行一些只有超级用户或其他 特许用户才能完成的任务,比如:运行一些像mount,ha ...

  10. Ubuntu 下误修改用户组导致sudo命令无效

    1.手贱地修改了当前用户的权限组,导致sudo命令无法使用,且root用户的密码尚未修改,登陆不了root用户. 2.切换到recoverymode ,使用root用户登陆 3.执行mount -o ...

随机推荐

  1. Go 初体验 - 错误与异常处理

    错误处理是学习任何编程语言都需要考虑的一个重要话题 go 内置的 error 接口是这样的: 先上代码: 输出: 释义: 我们首先定义9行的自定义错误类型 30行再实现 error 接口 34定义打开 ...

  2. log4net 写入 mongodb+Mongodb记录日志

    项目里面需要记录大量的日志,为了方便分析,也是为了方便开发人员远程查询日志,可以把日志写入MongoDB. 1.先上Log4net配置 <?xml version="1.0" ...

  3. Python之jinja2

    jinja2简介 python的模板引擎,设计思想来自与django的模板引擎,和其非常相似 pip install jinjia2 pip install MakeupSafe #模块加载 from ...

  4. Dataguard配置总结

    Dataguard配置总结 本例情形 在主库存在运行的情况下,增加配置dataguard备库,实现双机热备,高可用性. 主库要求,归档模式,强制归档. 主库idty 备库idty_st 1.密码文件 ...

  5. Docker学习资源

    Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口. ...

  6. python爬取指定新闻

    作业的要求来自于:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2894 给定一篇新闻的链接newsUrl,获取该新闻的全部信息 标题 ...

  7. IP通信基础学习第六周(下)

    硬件地址又称物理地址或MAC地址 以太网的MAC帧格式开始的标志是有11出现时,没电时自动结束 适配器的重要功能:进行串行/并行转换:对数据进行缓存:在计算机的操作系统安装设备驱动系统:实现以太协议 ...

  8. 【.NET】 HTTP协议之webrequest

    零——简介 一.GET 二.POST emmm在post这里在了很多跟头,记忆很深刻. 2.1 传json的Post:简单粗暴的两个参数 一个是网址(接口),一个是json数据 分为了六个步骤  : ...

  9. PyTorch in Action: A Step by Step Tutorial

    PyTorch in Action: A Step by Step Tutorial   PyTorch in Action: A Step by Step Tutorial Installation ...

  10. js的常见的三种密码加密方式-MD5加密、Base64加密和解密和sha1加密详解总结

    写前端的时候,很多的时候是避免不了注册这一关的,但是一般的注册是没有任何的难度的,无非就是一些简单的获取用户输入的数据,然后进行简单的校验以后调用接口,将数据发送到后端,完成一个简单的注册的流程,那么 ...