su(switch user)命令的作用:切换用户,一般是普通用户与root用户之间的切换。
例:
>su                #输入su命令
Password:      #提示输入密码

相关命令:su - 与sudo

一、Linux下su命令与su - 命令有什么区别?
      su是切换到其他用户,但是不切换环境变量(比如说那些export命令查看一下,就知道两个命令的区别了)
      su - 是完整的切换到一个用户环境
      所以建议大家切换用户的时候,尽量使用 su - root,否则可能发现某些命令执行不了
      从超级用户root变成普通用户,输入exit命令即可

二、Linux下su和sudo的区别
      由于su(或是su - root)切换到超级权限用户root后,权限无限制,可以使用root的所有权限
      如果多个普通用户同时切换到root用户对系统进行操作,可能会出现不同人对同一个文件进行不同操作,那很不安全
      最好是有针对性的放开权限,明确哪些工作是由哪个用户进行操作,并且约定其使用哪个命令来完成与其相关的工作,此时sudo命令可以解决该问题
      通过sudo,我们能把某些root账号拥有的权限针对性的赋权给普通用户,并且不需要普通用户知道root密码
      所以sudo 相对于权限无限制性的su来说,还是比较安全的,因此sudo被称为受限制的su或授权许可的su
      sudo 执行命令的流程是当前用户切换到root(或其它指定切换到的用户),然后以root(或其它指定的切换到的用户)身份执行命令
      执行完成后,直接退回到当前用户。而这些的前提是要通过修改配置文件/etc/sudoers来进行授权

三、配置sudo必须用超级用户使用visudo编辑/etc/sudoers文件,之所以用visudo编辑有两个原因:
      一是它能够防止两个用户同时修改它;二是它也能进行有限的语法检查

若在sudoers文件中写入以下一行:
     tomcat ALL=(ALL)    ALL
     第一个ALL是指网络中的主机,我们后面把它改成了主机名,它指明tomcat可以在此主机上执行后面的命令;(可以通过hostname命令来查看本台linux机器的主机名)
     第二个括号里的ALL是指目标用户,也就是以谁的身份去执行命令;
     最后一个ALL指命令名。
     写入以上语句后,表示tomcat和root拥有一样的权限,什么命令都可以使用,这样子的话,对于系统来说太不安全了,
     让tomcat用户可以执行某些命令(例:ifconfig和ls),在sudoers文件中写入以下一行:
     tomcat hostname=    /sbin/ifconfig,   /bin/ls

在crt上输入命令查看:
     [tomcat@localhost ~]$ sudo ls /root
     PassWord:
     此时的问题是:登录后,每次使用sudo还要输入密码。若是使用sudo命令时不想输入密码,这样修改配置文件:
     tomcat localhost=NOPASSWD:     /bin/cat, /bin/ls
     再次用sudo cat或是sudo ls命令时,就不会提示输入密码了

Linux命令--su与sudo的更多相关文章

  1. Linux 命令 su 和 sudo 比较

    su : 可以用来切换到任何用户,但是要求输入目标用户的密码 比如:su - su - root (等价 su -) su - user su root 与 su - root 的区别在于,后者不切换 ...

  2. Linux命令——su 、su -、sudo

    前言 大部分Linux发行版的默认账户是普通用户,而更改系统文件或者执行某些命令,需要root身份才能进行,这就需要从当前用户切换到root用户. 切换用户身份有两个命令 su [-] usernam ...

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

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

  4. Linux 的su 与sudo 的区别,查看所有用户

    首先,我们要知道系统当中存在哪些用户. 1.用户名和密码的存储位置 存储帐号的文件:/etc/passwd 存储密码的文件:/etc/shadow 通过/etc/shadow获取的只是密码加密后的Ha ...

  5. Linux中su和sudo的用法整理

    一.为什么会有su和sudo命令? 主要是因为在实际工作当中需要在Linux不同用户之间进行切换.root用户权限最高很多时候需要root用户才能执行一些关键命令.所以需要临时切换为root用户.工作 ...

  6. linux设置su和sudo为不需要密码

    一 设置sudo为不需要密码   有时候我们只需要执行一条root权限的命令也要su到root,是不是有些不方便?这时可以用sudo代替.默认新建的用户不在sudo组,需要编辑/etc/sudoers ...

  7. 【linux】su、sudo、sudo su、sudo -i的用法和区别

    来源:http://bbs.csdn.net/topics/390938651 sudo : 暂时切换到超级用户模式以执行超级用户权限,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码.不过 ...

  8. linux中su和sudo区别

    su切换用户,切换成root用户,要输入root用户的密码 su - 用户名 sudo  涉及到 /etc/sudoers文件 ,内容如下: # User privilege specificatio ...

  9. Linux中su、sudo、sudo -i的用法和区别

    sudo :暂时切换到超级用户模式以执行超级用户权限,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码.缺点是每次执行超级用户权限都要在命令前加上 sudo ,优点是在当前终端再使用 sud ...

随机推荐

  1. CAN信号值解析

    本文提供一种可以解析CAN信号各信号值的一种方法并进行说明. 一般情况下,高端一点的设备会计算每一个信号的值,但是接受到CAN信号的报文实际上有各种情况,如何通过设定的起始位和数据长度来获取某一信号的 ...

  2. Android系统之灯光系统--通知灯深入分析

    Android通知灯的深入分析 通知的类别 声音 振动 闪灯 APP如何发出通知灯请求 getSystemService(通知服务) 构造notification 类别 其他参数(颜色,onMS,of ...

  3. 数据库MySQL调优实战经验总结

    MySQL 数据库的使用是非常的广泛,稳定性和安全性也非常好,经历了无数大小公司的验证.仅能够安装使用是远远不够的,MySQL 在使用中需要进行不断的调整参数或优化设置,才能够发挥 MySQL 的最大 ...

  4. 快看我解决了一个Nginx的小问题

    前言 最近小编写项目的时候,需要用到Nginx服务器,对于Nginx正常安装就好了详情见[我是传送门],正当一切安好的时候问题来了,这台服务器的80端口竟然被占用了,什么鬼?怎么办,只有改端口.具体方 ...

  5. java中读取特殊文件的类型

    java中读取特殊文件的类型: 第一种方法(字符拼接读取): public static String getType(String s){ String s1=s.substring(s.index ...

  6. TI(德州仪器) TMS320C674x逆向分析之一

    一.声明 作者并不懂嵌入式开发,整个逆向流程都是根据自身逆向经验,一步一步摸索出来,有什么错误请批评指正,或者有更好的方法请不吝赐教.个人写作水平有限,文中会尽量把过程写清楚,有问题或是写的不清楚的地 ...

  7. 《深入理解java虚拟机-高效并发》读书笔记

    Java内存模型与线程 概述 多任务处理在现代计算机操作系统中几乎已是一项必备的功能,多任务运行是压榨手段,就如windows一样,我们使劲的压榨它运行多个任务,俱要high又要耍.并发则是另外一种更 ...

  8. 搭建windows环境下(nginx+mysql+php)开发环境

    搭建windows环境下(nginx+mysql+php)开发环境   1. 所需准备应用程序包        1.1 nginx 程序包nginx-1.0.4.zip或其他版本(下载地址: http ...

  9. h5标签基础 table表格标签

    一.表格的定义:用于有规范的显示数据. 二.基本组成: 行<tr>/列<td>/表头<caption>/表标题<th> eg: <table> ...

  10. C/C++学习路线图

    文章转载自「开发者圆桌」一个关于开发者入门.进阶.踩坑的微信公众号 这里整理的C/C++学习路线图包含初中高三个部分,你可以通过百度云盘下载观看对应的视频 链接: http://pan.baidu.c ...