Linux权限管理--su与sudo

1、su用来切换登录的用户,比如当前用户为chen,可以用su zhu,并输入用户zhu的登录密码,就可以切换到用户zhu。
如果一个普通用户想切换到root用户,以root用户执行某些程序和查看文件,就必须知道root用户的密码。同理,如果切换到其他的用户,也需要知道其他用户帐号密码。
如果一个用户想拥有root权限,可以直接把该用户的id改为0,0是root用户的id。另外可以采用xia面的sudo方法,获取root权限。这种方式不要只知道root密码。

2、sudo,受限的su
如果系统管理员sa不想其它的普通用户知道root密码,而又希望其他用户能够拥有root用户部分权限或者全部权限。这是最好的选择方式是使用sudo。
sudo需要通过/etc/sudoers文件来管理用户权限,或者直接输入visudo来编辑/etc/sudoers 文件,最好使用visudo命令。

sudo运行程序时,输入自己的登录密码即可。

/etc/sudoers权限管理的通用格式为:
user  host  =run_as  command
user:一位或几位用户,在/etc/group中可以用一个%代替它,组对象的名称一定要用百分号%开头。
host:一个或几个主机名;
run_as:作为哪个用户运行,常见选项是root和ALL
command:想让用户或组运行的一个或几个根级别命令。
eg:root    ALL=(ALL) ALL
root表示被授权的用户,这里是根用户;
第一个ALL表示所有计算机;
第二个ALL表示所有用户;
第三个ALL表示所有命令;

全句的意思是:授权根用户在所有计算机上以所有用户的身份运行所有文件。

$sudo su - 可以由一般用户切换到普通用户

eg:%zhang  ALL=(ALL)  NOPASSWD:useradd,userdel

授权zhang组全部成员在所有计算机上以所有用户的身份运行useradd,userdel命令;且运行时不必输入密码。

区分su、su root、su -、 su - root

su  后面不加用户是默认切到 root
su  是不改变当前变量
su - 是改变为切换到用户的变量 
也就是说su只能获得root的执行权限,不能获得环境变量
而su -是切换到root并获得root的环境变量及执行权限

su - root  is   the same as su -
just like login as root, then the shell is login shell,
which mean it will expericene a login process,
usually .bash_profile and .bashrc will be sourced
su  root    is    the same as su
like you open an interactive shell in root name,
then only .bashrc will be sourced.

CentOS用户权限管理--su与sudo的更多相关文章

  1. Linux 服务器用户权限管理改造方案与实施项目

    Linux 服务器用户权限管理改造方案与实施项目 在了解公司业务流程后,提出权限整改方案改进公司超级权限root泛滥的现状. 我首先撰写方案后,给boss看,取得boss的支持后,召集大家开会讨论. ...

  2. Ubuntu Linux---控制用户权限:root特权/sudo

    借了本<Ubuntu Linux指南>开始学学乌邦图吧,熟悉之后再下个红帽来玩玩,现在说说我们一直提到的root,但是在Linux中,这个root有所不同...大多数Linux系统都为一个 ...

  3. linux 用户管理,用户权限管理,用户组管理

    linux 用户管理,用户权限管理,用户组管理 一:ls -l 命令 解释 第个d表示是目录,如果是文件是-,如果是连接是l 第2到4个 rwx 表示创建者的操作权限 r 读,w 写,x 执行 第5到 ...

  4. Linux_CentOS用户管理 和 用户权限管理 chmod、ACL、 visudo

    一.用户管理 Linux 系统同时可以支持多个用户,每个用户对自己的文件设备有特殊的权利,能够保 证用户之间互不干扰.就像手机开了助手一样,同时登陆多个 qq 账号,当硬件配置非常高 时,每个用户还可 ...

  5. 练习:python 操作Mysql 实现登录验证 用户权限管理

    python 操作Mysql 实现登录验证 用户权限管理

  6. django 基于proxy实现用户权限管理

    项目中经常会遇到用户权限管理的问题,django adminsite已经提供非常实用的用户权限管理机制.不过有些时候,我们希望根据相关用户属性来过滤adminsite中显示的内容.下文将结束如何实现: ...

  7. RDIFramework.NET ━ 9.8 用户权限管理 ━ Web部分

    RDIFramework.NET ━ .NET快速信息化系统开发框架 9.8 用户权限管理 -Web部分 在实际应用中我们会发现,权限控制会经常变动,如:需要调整角色的分配,需要收回与授予某些角色.用 ...

  8. Python 学习 第十篇 CMDB用户权限管理

    Python 学习 第十篇 CMDB用户权限管理 2016-10-10 16:29:17 标签: python 版权声明:原创作品,谢绝转载!否则将追究法律责任. 不管是什么系统,用户权限都是至关重要 ...

  9. Oracle 用户权限管理方法

    Oracle 用户权限管理方法 sys;//系统管理员,拥有最高权限 system;//本地管理员,次高权限 scott;//普通用户,密码默认为tiger,默认未解锁 sys;//系统管理员,拥有最 ...

随机推荐

  1. [ActionScript 3.0] AS3 拖拽混动效果之一

    package { import flash.display.Loader; import flash.display.Sprite; import flash.events.Event; impor ...

  2. 浅析JAVA_HOME,CLASSPATH和PATH的作用

    1,设置JAVA_HOME:  java的目录一.为了方便引用,比如,你JDK安装在C:\ProgramFiles\Java\jdk1.7.0目录里,则设置JAVA_HOME为该目录路径, 那么以后你 ...

  3. javascript闭包的一个例子

    <html> <head> <title>elementFromPoint</title> <script type="text/jav ...

  4. Dubbo的Maven打包

    Maven项目的依赖,我们可以通过下面命令看到,打包时,会按照这个依赖编译进去对应模块. 参考:http://www.cnblogs.com/ghj1976/p/5336923.html mvn de ...

  5. datetime时区转换

    http://www.dannysite.com/blog/122/ Python标准库中的datetime模块提供了各种对日期和时间的处理方法.从本文的主题着手,首先利用datetime中提供的ut ...

  6. [SQL] 不合并重复数据 union all

    select * from A union select * from B --不合并重复行 select * from A union all select * from B --如果要对字段进行排 ...

  7. C++primer 练习15.15

    // 15_15.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include<iostream> #include< ...

  8. 浅谈Java的包装类

    一.什么是Java包装类 所谓Java包装类,就是将Java中的8种基本数据类型分别包装成为类的形式.包装类与基本数据类型的对应关系如下表所示. 基本数据类型 包装类 byte Byte short ...

  9. FusionCharts for Flex报错

    1.昨天,我新建了一个Flex项目,并将FusionCharts组件添加进去了,但是Flex应用程序还是报错 具体错误如下: 2.但是,Flex项目已经导入FusionCharts.swc

  10. PostMessage与SendMessage的区别(二)

    在做基于窗口的Windows程序的时候,我们避免不了要向窗口发送消息,有两种方式,一种是PostMessage,另外一种是SendMessage.关于这两个宏,我是通过狠狠的看MSDN才搞明白的,那里 ...