RK2918 固件DIY 第二讲 初级修改.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
RK2918 固件DIY 第二讲 初级修改

第二讲(初级篇) 【ReaK出品】固件开发笔记,快来DIY专属定制固件吧(附带工具) /forum.php?mod=viewthreadtid=98159fromuid=218854 上一讲我们 搭建了工作环境,讲了升级 和打包解包(工具内) 这一次来做初级修改 获得ROOT权限 只要将固件解包后在打包就会自动获取ROOT (很简单吧) Q:获得ROOT能干什么? F:最简单的 就可以用一些权限软件。 可以禁用启动项和服务啦 哈哈。。。但是不能删除自带系统文件 二、获得System 读写权限。(可以删除自带程序) 以下是wendel 的方法 “核心原理: 在data分区下建一个文件夹/data/sysrw存放system原本的数据,启动时,软连接/data/sysrw为system分区 解释: 1. data分区,最终挂载为/data文件夹,默认情况下,这是ext3格式的分区,但禁用了suid 2. system分区,为不可写的cramfs格式,默认挂载在/system文件夹 步骤: 1. 在原版系统可以正常启动的前提下,将/system下的全部文件,拷贝到/data/sysrw 2. 修改boot.img,移除system文件夹(否则无法建立通往/system的软链接),对init.rc文件做以下修改: ..A. 不再挂载system分区 -- 注释掉 mount cramfs mtd@system /system -- 也就是前面加#号 ..B. 不再建立system文件夹 -- 注释掉 mkdir /system ..C. 修改data分区的挂载方式,使其支持suid -- 挂载语句改为 mount ext3 mtd@userdata /data ..D. 修改data分区的权限 -- chmod 0770 /data 改为 chmod 0777 /data ..E. 修改su文件的权限,在D步骤所修改文件后面添加 chmod 6755 /system/bin/su -- 因为data分区启用了suid,故这个程序可以调用setgid(0)和setuid(0)了 ..F. 为了提供更大自由度,修改根分区的权限 -- 注释掉 mount rootfs rootfs / ro remount ..G. 建立通往/system的软链接 --- 找到 mkdir /data ,在后面新起一行 symlink /data/sysrw /system 经验教训 1. symlink 语法,与ln一样,前面是真实地址,后面是虚拟地址 2. 如果分区不支持suid,那么setuid/setgid将无法使用” 看不懂?没关系,整理了傻瓜式方法: “具体操作: 解包后直接打包固件,备份boot.img为boot1.img,备份boot文件夹,将此时的update_new.img备份为update1.img 对init.rc文件做以下修改 找到 mkdir /system 将 mkdir /system mkdir /data 0771 system system 修改为 mkdir /sysro mkdir /data 0777 system system symlink /data/sysrw /system 找到 mount cramfs mtd@system /system #mount mtd@system /system ro remount mount ext3 mtd@userdata /data nosuid nodev noatime nodiratime 修改为 #mount cramfs mtd@system /system #mount mtd@system /system ro remount mount ext3 mtd@userdata /data 找到 mount rootfs rootfs / ro remount # We chown/chmod /data again so because mount is run as root + defaults chown system system /data chmod 0771 /data 修改为 mount rootfs rootfs / rw remount # We chown/chmod /data again so because mount is run as root + defaults chown system system /data chmod 0777 /data 然后删掉boot文件夹

文档评论(0)

pangzilva + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档