当前位置: 首页 > article >正文

RK3562编译Android13 ROOT固件教程,触觉智能开发板演示

本文介绍编译Android13 ROOT权限固件的方法,触觉智能RK3562开发板演示,搭载4核A53处理器,主频高达2.0GHz;内置独立1Tops算力NPU,可应用于物联网网关、平板电脑、智能家居、教育电子、工业显示与控制等行业。

关闭selinux

修改此文件("+"号为修改内容)

device/rockchip/common/BoardConfig.mk

BOARD_BOOT_HEADER_VERSION ?= 2BOARD_MKBOOTIMG_ARGS :=BOARD_PREBUILT_DTBOIMAGE ?= $(TARGET_DEVICE_DIR)/dtbo.imgBOARD_ROCKCHIP_VIRTUAL_AB_ENABLE ?= false-BOARD_SELINUX_ENFORCING ?= true+BOARD_SELINUX_ENFORCING ?= false

注释用户组权限检测

修改此文件("+"号为修改内容)

system/extras/su/su.cpp

void extract_uidgids(const char* uidgids, uid_t* uid, gid_t*gid, gid_t* gids, i}int main(int argc, char** argv) {
  
  - uid_t current_uid = getuid();- if (current_uid != AID_ROOT && current_uid != AID_SHELL) error(1, 0, "notallowed");+ //uid_t current_uid = getuid();+ //if (current_uid != AID_ROOT && current_uid != AID_SHELL) error(1, 0, "notallowed");

 

给su文件默认授予root权限

修改此文件("+"号为修改内容)

system/core/libcutils/fs_config.cpp​​​​​​​

static const struct fs_path_config android_dirs[] = {
  
       { 00751, AID_ROOT,         AID_SHELL,        0, "system/bin" },     { 00755, AID_ROOT,         AID_ROOT,         0, "system/etc/ppp" },     { 00755, AID_ROOT,         AID_SHELL,        0, "system/vendor" },-    { 00750, AID_ROOT,         AID_SHELL,        0, "system/xbin" },+    { 00755, AID_ROOT,         AID_SHELL,        0, "system/xbin" },     { 00751, AID_ROOT,         AID_SHELL,        0, "system/apex/*/bin" },     { 00751, AID_ROOT,         AID_SHELL,        0, "system_ext/bin" },     { 00751, AID_ROOT,         AID_SHELL,        0, "system_ext/apex/*/bin" },static const struct fs_path_config android_files[] = {
  
       // the following two files are INTENTIONALLY set-uid, but they     // are NOT included on user builds.     { 06755, AID_ROOT,      AID_ROOT,      0, "system/xbin/procmem" },-    { 04750, AID_ROOT,      AID_SHELL,     0, "system/xbin/su" },+    { 06755, AID_ROOT,      AID_SHELL,     0, "system/xbin/su" },

然后修改此文件("+"号为修改内容)

frameworks/base/core/jni/com_android_internal_os_Zygote.cpp

    最后修改此文件("+"号为修改内容)

    kernel-5.10/security/commoncap.c

    
    int cap_task_setnice(struct task_struct *p, int nice)
    static int cap_prctl_drop(unsigned long cap)
    {
        struct cred *new;
    +/*
        if (!ns_capable(current_user_ns(), CAP_SETPCAP))
        return -EPERM;
        if (!cap_valid(cap))
        return -EINVAL;
    -
    +*/
    new = prepare_creds();

    源码编译并验证固件是否ROOT

    修改完上面三个步骤的文件后,重新编译内核和安卓源码,执行以下命令:

    # make -j4

    下载RootChecker测试APK软件包(自行下载),可通过ADB命令或者U盘安装,安装后按照提示点击按钮检查root。

    图片

    root成功如图:

    图片

     

    产品简介

    触觉智能RK3562开发板(型号EVB3562),基于瑞芯微新一代Soc RK3562/RK3562J设计,可用于轻量级人工智能应用。EVB3562开发板配备了PCIe2.1/USB3.0 OTG/千兆网口等各类型接口,支持4G/5G通信、多摄像头及多种视频接口,可应用于物联网网关、平板电脑、智能家居、教育电子、工业显示、工业控制等行业领域。

    图片


    http://www.kler.cn/a/487558.html

    相关文章:

  • 2025年01月09日Github流行趋势
  • 行情系统用什么数据库好
  • ArrayList和HashMap区别
  • 单片机实现模式转换
  • 数仓建模:如何判断一个数仓模型的好坏?
  • 力扣经典题目之219. 存在重复元素 II
  • 用python实现烟花代码,完整代码拿走不谢
  • Vue开发系列——VUE入门?
  • Vue.js组件开发-Vue CLI如何配置浏览器兼容性
  • 《机器学习》——贝叶斯算法
  • 洛谷 P3435 [POI2006] OKR-Periods of Words(扩展KMP+线段树做法)
  • Servlet与JSP:Java的秘密花园入口
  • 基于深度模型的印章检测(c++)
  • 【什么是MVCC?】
  • 智慧防洪平台:构建城市安全的数字防线
  • java中日期如何比大小
  • OSPF - 2、3类LSA(Network-LSA、NetWork-Sunmmary-LSA)
  • Mysql--基础篇--SQL(DDL,DML,窗口函数,CET,视图,存储过程,触发器等)
  • Mysql--基础篇--约束(主键,外键,唯一,检查,枚举及复合约束等)
  • FinGPT:通过传播意识和上下文增强的LLM提升基于情感的股票走势预测
  • 设计模式 行为型 观察者模式(Observer Pattern)与 常见技术框架应用 解析
  • 欧拉公式和傅里叶变换
  • SpringcloudAlibaba黑马笔记(部分)
  • WebSocket监听接口
  • 【读书笔记/源码】How Tomcat Works 笔记- c11~c13
  • 基于Django的个性化餐饮管理系统