一台android终端(可能是手机、可能是平板,也可能是其它),很多功能是要取得Root权限后才能使用的。那我们就来Root它。

取得root权限只要在机器里放两个文件就可以了

/system/bin/su(取得root权限的命令)
/system/xbin/su(同上,只不过是有些软件只认这个路径)
/system/app/SuperUser.apk(Root权限管理器)

上面明明是三个文件,为什么说两个呢?其实前面两个文件就是同一个文件,熟悉linux等系统的就知道,用ln做个软连接就可以了。
说实在的Android就是Linux的一个分支。不信就看看你机器的内核版本就懂了。

ln -s /system/bin/su /system/xbin/su
在android设备上运行以上命令可以在/system/xbin路径中生成/system/bin/su的软连接文件(可以理解为windows下的“快捷方式”)

除了放上面讲的两个文件,即:
/system/bin/su
/system/app/SuperUser.apk
还需要设置/system/bin/su可以让任意用户可运行,有set uid和set gid的权限。即要在android机器上运行下面的命令:
chmod 4755 /system/bin/su
貌似做到这些都比较简单。在android市场中安装一个connectbot,把su和SuperUser.apk拷贝到SD卡上,然后用ConnectBot在本机上开命令窗口,cp ln chmod一下就可以了。但实际是不行的。
为什么呢?原因有三:
1、/system路径是只读权限,不能简单写入
2、 chmod需要Root权才能运行(死循环了)
3、有些系统在启动时会自动将su的4755权限设成755,甚至直接删除su
那怎么办呢?

既然走正常程序,行不通,就要换个思路,走走后门了。

后门在哪里呢?
    Google还是很厚道的,Android有个用于开发的后门,供Android系统和应用软件的开发者调试程序用的。

如何打开后门?有三项工作:
    1、用数据线连接android设备到PC
    2、在PC上安装android设备的驱动程序。
    3、在android设备上设打开发调试模式(settings->applications->development->USB debugging)
怎么用?
    google的android SDK包里面有两个小程序:1、adb 2、fastboot。fastboot用来刷机,adb可以以Root的身份让android设备执行一些命令。
用法:
    把附件下载到电脑。
    解压附件到电脑
    参考上文,打开android设备的后门
    用资源管理器打开附件数据包解压出来的文件夹
    不要选择任何文件或文件夹,按住Shift键鼠标右击资源管理器空白部分,在弹出菜单中选择“在此处打来命令窗口”。
        (也可以先大开命令窗口,用cd等命令将当前路径切换到附件数据包解压出来的文件夹)
    在命令窗口敲命令,然后重启android完成Root
        adb remount
        adb push su /system/bin
        adb push SuperUser.apk /system/app
        adb shell ln -s /system/bin/su /system/xbin/su
        adb shell chmod 4755 /system/bin/su

部分遗留问题:
    1、少数Android设备运行adb remount时会报错,显示/system不能被remount成可读写模式
    2、重启后/system/bin/su文件的权限被改写,失去setuid setgid的权限(即重启后不能正常取得Root权),甚至/system/bin/su直接被删除

该怎么解决呢?呵呵,偶还留了一层备用,大家知道会怎样了吧?!

书接上文

现在要解决重启丢失Root权和 adb remount不能让/system目录转成可读写的问题。
造成这些问题基本都是系统在启动内核的时候设置的锁。
如何解锁呢?我们先要说说Android终端的启动。

一般来说Android终端能启动到三种不同的模式
1、正常启动
2、bootloader模式
3、revocery模式

正常启动Android终端,系统会自动调用boot镜像中的内核,然后是到system中加载配置和启动预定程序,最后到userdata中继续加载用户配置和用户预装的程序。
一般一个新的Android终端拿来,第一次启动时,只有boot和system中有数据,userdata中是空的,我们安装软件、修改配置等操作只能影响userdata。所以没有ROOT的Android终端是很安全的,实在是系统装的很乱、软件冲突、死机,只要清除userdata中的数据(回出厂状态)就好了。(内置的用户存储空间和外加存储都属于userdata的一部分)

既然boot中有锁,不能取得Root权,我们就只好放弃原版boot,去寻找第三方开发的boot(简单的用“一键root”之类的软件是解决不了问题的),然后刷机...

bootloader模式就提供了通过USB线刷机的接口。用android SDK中提供的小工具fastboot就可以完成刷机(线刷)

recovery模式也提供了通过Android终端上的数据存储刷机的办法(卡刷),只是原版Andriod终端自带的recovery会识别刷机包的数字签名,非官方发布的刷机数据包是不太可能通过这种办法刷机的。所以玩Android终端的老鸟是不会用原版的Recovery的。

第三方开发的recovery基本上是采用文本菜单方式操作,识几个E文的应该操作起来不会有问题,只要找到自己机器型号对应的刷机包就可以了。本楼主就不多废话了。

重点讲bootloader模式刷机
【如何进入bootloader】
大家还记得顶层的adb吗? 不记得就上楼复习。
命令窗输入
adb reboot bootloader
可进入重启系统进入bootloader模式
(附:命令窗输入adb reboot recovery 可中起进入recovery模式)
注意复习顶楼课程,输入adb命令前必须的几部操作(接数据线、装驱动、andriod终端设为usb debug模式、在adb文件夹开命令窗口)

当然还有其他方法:比如已经Root的机器可以装个小软件,一键重启切换到bootloader或者recovery
还有一种方法很重要,掌握了可以让你的机器永远不会因为刷机变砖,或者将砖机救回来。
1、关机
2、按住特定键(大部分是“上”键,不同的机型不一样)开机,或者开机,按特定键

进入bootloader以后用fastboot刷机,当然首先要找到自己Android终端对应的刷机数据包(boot.img,revocery.img,system.img )
当然要把刷机数据*.img放在fastboot同一文件夹(除非你喜欢敲很多相对或绝对路径)
fastboot flash boot boot.img
(刷boot)
fastboot flash recovery recovery.img
(刷recovery)
fastboot flash system system.img
(刷Android系统)
fastboot flash userdata data.img
(刷用户数据)
fastboot reboot
(重启到正常模式)

各位刷成砖机的,只要能进bootloader砖机就能救回来
现在google、百度这么强,相信各位找个自己设备对应的*.img不是什么难事。

写到这里该结束了,为了方便新鸟,请大家跟帖,说一说自己机器进bootloader的方法。
或者哪位大侠开个集合贴,讨论各种机型进bootloader的方法,造福四方。

[讨论] 通用(任何android机型)Root教程(完整版!附砖机自救方法)相关推荐

  1. 通用(任何android机型)Root教程(完整版!附砖机自救方法)转自安卓网

    通用(任何android机型)Root教程(完整版!附砖机自救方法)转自安卓网 2012年01月02日 一台android终端(可能是手机.可能是平板,也可能是其它),很多功能是要取得Root权限后才 ...

  2. ASCII码表 0-255完整版 附详细注释

    信息在计算机上是用二进制表示的,这种表示法让人理解就很困难.因此计算机上都配有输入和输出设备,这些设备的主要目的就是,以一种人类可阅读的形式将信息在这些设备上显示出来供人阅读理解.为保证人类和设备,设 ...

  3. AVD Android虚拟设备root教程

    AVD Android虚拟设备root教程 准备工作 superSUAPK文件 自行百度 xposed installerAPK文件 下载地址 superSUZIP文件 下载地址提取码cg08 与an ...

  4. android+客户端+教程,Android新浪客户端开发教程完整版.pdf

    Android新浪客户端开发教程完整版 Android 新浪客户端开发教程新浪客户端开发教程 (完整版(完整版)) 新浪客户端开发教程新浪客户端开发教程 ((完整版完整版)) android开发我的新 ...

  5. python入门教程完整版(懂中文就能学会)-Python入门教程完整版(懂中文就能学会)...

    不过小编的内心是强大的,网友虐我千百遍,我待网友如初恋,因为今天又给大家带来了干货,Python入门教程完整版,完整版啊!完整版! 言归正传,小编该给大家介绍一下这套教程了,希望每个小伙伴都沉迷学习, ...

  6. React-高级教程完整版

    React 高级教程完整版 这标题可能有点不太贴切或符合内容,从官方上来区分这部分内容确实属于高级部分,只是由于个人原因,在后面的一些章节并没有记录在列. 也为了承接上一篇,因此勉强将标题定位:&qu ...

  7. eclipse安装教程完整版

    eclipse安装教程完整版 安装Java教程 安装eclipse教程 安装Tomcat教程 安装MySQL数据库教程 安装Java教程 到官网下载Java,这里推荐下载Java SE 8 下载完成后 ...

  8. Jedis使用教程完整版

    2019独角兽企业重金招聘Python工程师标准>>> 摘要:概述Jedis是Redis官方推荐的Java连接开发工具.要在Java开发中使用好Redis中间件,必须对Jedis熟悉 ...

  9. python3入门与进阶笔记_16_变量进阶 — 黑马程序员《Python入门教程完整版》笔记...

    变量进阶(理解) - 黑马程序员<Python入门教程完整版>笔记 目标变量的引用 可变和不可变类型 局部变量和全局变量 01. 变量的引用变量 和 数据 都是保存在 内存 中的 在 Py ...

最新文章

  1. 建立FPGA深度学习加速生态圈,为人工智能赋能
  2. C语言do...while语句的妙用(包裹宏替换多句代码)(代替go to语法)(隔绝外部变量)
  3. WebSSH2安装过程可实现WEB可视化管理SSH工具
  4. Vijos 1603 ----迷宫(矩阵乘法,矩阵快速幂)
  5. C语言中指针的基类型,c – 将指针从一种基类型转换为另一种基类型
  6. html如何隐藏盒子的边框线,用DIV和CSS做一个实线边框的红色盒子
  7. MathType 的使用
  8. 蠕虫病毒通过什么侵入计算机系统,注意!蠕虫病毒入侵!我区已有单位个人计算机中招!...
  9. 图像处理之opencv---mat、cvmat、IplImage之间的转换
  10. visio素材:安防监控visio素材图库
  11. 手把手教你R语言CIBERSORT计算免疫浸润+Rproject的使用
  12. ivr cti_简而言之,网络威胁情报(CTI)— 1
  13. 基于Python pdfplumber实现PDF转WORD
  14. 智能时代为什么需要区块链技术?
  15. linux的cut命令详解
  16. Unity3D: 给字符串中的部分字体添加颜色突出显示
  17. 【毕业设计】答 辩 技 巧 一(以一个过来人的身份,祝各位答辩 过 过 过)
  18. 【财富空间】将门CEO高欣欣、顺丰首席科学家刘志欣、图灵机器人联合创始人杨钊、中国人民大学向松祚等——AI应用落地:用产品说话
  19. Visual studio未能正确加载“Microsoft.VisualStudio.Editor.Implementation.EditorPackage”包等问题解决
  20. dell服务器安装系统不识别键鼠,戴尔电脑八代CPU装win7鼠标键盘不能用|win10改win7鼠标键盘用不了...

热门文章

  1. C语言|鼠标点击开始
  2. 若依微服务版部署到IDEA(超详细,小白看了也能会)
  3. 流媒体播放器播放h264编码视频与h265编码视频哪个更清晰?
  4. 用Python自动生成Excel报表
  5. 乐视电商云的整体架构与技术实现
  6. C++ 基础知识throw的用法
  7. 楼盘字典为什么能成为贝壳的超级护城河?
  8. B站这个视频我是跪着看完的
  9. 养龟者,养心也(浅析巴西龟的饲养方法)
  10. 巴西龟饲养日志----七月底巴西龟状况