转自:http://634871.blog.51cto.com/624871/1325907

在实际工作中,公司不会将root用户直接给员工使用,而是通过员工自己的账号临时获得系统的root权限。

1.我现在测试的环境是:red hat linux 6

1
2
[root@rhel1 xcg]# uname -a
Linux rhel1.kongzhong.com 2.6.32-279.el6.x86_64 #1 SMP Wed Jun 13 18:24:36 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux

2.创建两个普通用户,分别为kongzhong,xcg ;并设置密码

[下面只演示一个账号的创建]

1
2
3
4
5
6
[root@rhel1 ~]# useradd xcg
[root@rhel1 ~]# passwd xcg
Changing password foruser xcg.
New password: 
Retype new password: 
passwd: all authentication tokens updated successfully.

3.下面有兴趣的可以切换到刚才创建的账号下,安装一些只有root权限才可以安装的软件,看普通用户是否有权限

4.赋予root权限,有三种方式,如下:

在修改时,我们发现此文件只读,所以,我们需要在root用户下,将权限改成可修改的权限,修改完后,记得将权限改为原来的440

1
2
3
4
5
6
7
[root@rhel1 ~]# cd /etc/
[root@rhel1 etc]# ll sudoers
-r--r-----1 root root 4002 Mar  2  2012 sudoers
[root@rhel1 etc]# chmod 755 sudoers
[root@rhel1 etc]# ll sudoers
-rwxr-xr-x. 1 root root 4002 Mar  2  2012 sudoers
[root@rhel1 etc]# chmod 440 sudoers      # 此步,在修改好/etc/sudoers里面的内容后,将权限还原

(1).方法一:修改 /etc/sudoers 文件,找到下面一行,在root下面添加两行,如下所示:

1
2
3
4
[root@rhel1 ~]# vim /etc/sudoers
root    ALL=(ALL)       ALL  
xcg     ALL=(ALL)       ALL                # 这个在切换时,是需要输入密码的,密码是当前普通用户的密码
kongzhong ALL=(ALL)     NOPASSWD:ALL       # 这个在切换时,不需要输入密码

修改完毕,用xcg,kongzhong帐号登录,

然后,执行sudo 命令,即可执行相应的命令;

或者 执行sudo su ,临时切换到root用户下,获取root权限。

(2).方法二:修改 /etc/sudoers 文件,去除下面这一行的注释,然后修改普通用户默认组为wheel

1
2
3
4
[root@rhel1 ~]# vim /etc/sudoers
%wheel    ALL=(ALL)    ALL    
然后,修改普通用户,使其属于wheel 组,命令如下:
[root@rhel1 etc]# usermod -g wheel kongzhong1

修改完毕,用kongzhong1帐号登录;

然后,执行 sudo 命令,即可执行相应的命令;

或者 执行sudo su ,临时切换到root用户下,获取root权限

(3).方法三:修改 /etc/passwd 文件,找到如下行,把用户ID修改为 0 ,如下所示:

1
2
3
4
[root@rhel1 ~]# vim /etc/passwd
kongzhong2:x:504:504:kongzhong2:/home/kongzhong2:/bin/bash
修改后如下
kongzhong2:x:0:500:kongzhong2:/home/kongzhong2:/bin/bash

保存,用kongzhong2账户登录后,直接获取的就是root帐号的权限。

以上三种方法,建议使用 第一种,第三种强烈不建议使用,企业也不会去使用。

普通用户如何临时获取root权限的更多相关文章

  1. [root]既然sudo 可以暂时获取root权限,那么为何还需要root这个用户呢

    既然sudo 可以暂时获取root权限,那么为何还需要root这个用户呢 sudo 非root用户可以临时行使root权限,也就是非root用户可以操作该系统下的任何文件,仍然存在安全风险,怎么解释? ...

  2. Debian普通用户获取root权限|sudo的安装与配置

    Debian系统的普通用户需要安装软件时,往往会收到“Permission denied”的提示,这时候需要root权限.那么如何在不登陆超级管理员账户的前提下拥有root权限呢?对于大多数Linux ...

  3. 华为U8810的用户如何获取ROOT权限详细教程

    由于在论坛里看到有人在找这个手机的详细的root教程,所以刷机啦小编在这里整理了一下方便新手来操作,其实这个手机root起来还是蛮简单的,只需要一个root软件就可以了,相当于一键root了,在这里整 ...

  4. ubuntu 获取root权限

    实验环境: ubuntu 13.04 背景:现在有一台装有 ubuntu 的电脑,如何获取root权限? 方案一:进入单用户维护模式,重置root密码. 方案二:U盘挂载原根分区,修改/etc/pas ...

  5. [Android Pro] Android fastboot刷机和获取Root权限

    参考文章: https://developers.google.com/android/nexus/images 转载自:    http://www.inexus.co/article-1280-1 ...

  6. ADB工具 获取ROOT权限及复制文件方法

    adb push d:\tm3_sqlit.db data/zouhao/tm3_sqlit.dbadb pull data/zouhao/tm3_sqlit.db d:\tm3_sqlit.db a ...

  7. Android -- 程序判断手机ROOT状态,获取ROOT权限

    判断手机是否具有ROOT权限                                                            /** * 判断手机是否ROOT */ public ...

  8. Delphi编写的Android程序获取Root权限实现(2015.4.15更新,支持Android 4.4)

    借助谷歌,并经过本大侠施展坑.蒙.拐.骗.偷五大绝技,终于成功实现在Delphi下获取Root权限并将其扩展为一个完整功能更加完整的TQAndroidShell记录,在华为荣耀2(Android 4. ...

  9. android中获取root权限的方法以及原理(转)

    一. 概述 本文介绍了android中获取root权限的方法以及原理,让大家对android 玩家中常说的“越狱”有一个更深层次的认识. 二. Root 的介绍 1. Root 的目的 可以让我们拥有 ...

随机推荐

  1. Android 6.0 SDK 找不到HttpClient的解决方法

    一.情况描述 在eclipse或Android Studio开发时(笔者目前只用过Android Studio),设置Android SDK的编译版本为23时,且使用了httpClient相关类的库项 ...

  2. 《Linux内核设计与实现》 Chapter4 读书笔记

    <Linux内核设计与实现> Chapter4 读书笔记 调度程序负责决定将哪个进程投入运行,何时运行以及运行多长时间,进程调度程序可看做在可运行态进程之间分配有限的处理器时间资源的内核子 ...

  3. Python面试题 —— 获取列表中位数

    中位数是一个可将数值集合划分为相等的上下两部分的一个数值.如果列表数据的个数是奇数,则列表中间那个数据就是列表数据的中位数:如果列表数据的个数是偶数,则列表中间那2个数据的算术平均值就是列表数据的中位 ...

  4. IE firefox 兼容性整理

    1.尽量用jquery操作. 2.jquery取值时要用准确的方法,attr(), val(), text(), html(). 例如: <span value="a"> ...

  5. EF实体框架之CodeFirst四

    在EF实体框架之CodeFirst二中也提到数据库里面一般包括表.列.约束.主外键.级联操作.实体关系(E-R图).存储过程.视图.锁.事务.数据库结构更新等.前面几篇博客把表.存储过程.视图这些算是 ...

  6. Java基础-ArrayList和LinkedList的区别

    大致区别:  1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构. 2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为Lin ...

  7. Java基础-String 存储机制管理

    JVM运行的时候,将内存分为两个部分,一部分是堆,一部分是栈.堆中存放的是创建对象,而栈中存放的则是方法调用过程中的局部变量或引用.在设计JAVA字符串对象内存实现的时候,在堆中又开辟了一块很小的内存 ...

  8. BZOJ1046 [HAOI2007]上升序列

    Description 对于一个给定的S={a1,a2,a3,…,an},若有P={ax1,ax2,ax3,…,axm},满足(x1 < x2 < … < xm)且( ax1 < ...

  9. 洛谷P2320 [HNOI2006]鬼谷子的钱袋

    https://www.luogu.org/problem/show?pid=2320#sub 题目描述全是图 数学思维,分治思想 假设总数为n 从n/2+1到n的数都可以用1~n的数+n/2表示出来 ...

  10. 代码注册广播接收者&利用广播调用服务的方法服务声命周期(混合开启)

    1)说明文档: 2)效果演示: 3)代码演示: