如何使编译的ROM能使所有程序获得root权限执行
来源:互联网 发布:网络聚众赌博怎么处罚 编辑:程序博客网 时间:2024/04/30 11:23
之前提到的修改ro.secure设为0后,只是adb获得root权限了,但是其他程序也可能需要使用Root权限
一般程序使用Root权限的方法都是调用 /out/.../system/bin/或/xbin/目录下的 su程序;
只是,在Android下,这个su程序被做了很多限制,首先是访问权限,不让普通程序执行 su,这个需要修改;
其次,即使可以执行su,Android下这个su也会判断谁调用了su,不是特定用户,不让执行,因此需要修改su;
注释掉su.c中的
if (myuid != AID_ROOT && myuid != AID_SHELL) {
fprintf(stderr,"su: uid %d not allowed to su\n", myuid);
return 1;
}
关键的是android\system\extras\su模块有没有被编入,一般eng版本会编译出su模块,因为android\system\extras\su\Android.mk中LOCAL_MODULE_TAGS := debug
如果要在user版本也编入su模块的话,修改android\system\extras\su\Android.mk中LOCAL_MODULE_TAGS := optional,再在device\(product_path)\base\core.mk中PRODUCT_PACKAGES添加su
即可在out/.../system/xbin/下生成su供程序调用
一般程序使用Root权限的方法都是调用 /out/.../system/bin/或/xbin/目录下的 su程序;
只是,在Android下,这个su程序被做了很多限制,首先是访问权限,不让普通程序执行 su,这个需要修改;
其次,即使可以执行su,Android下这个su也会判断谁调用了su,不是特定用户,不让执行,因此需要修改su;
注释掉su.c中的
if (myuid != AID_ROOT && myuid != AID_SHELL) {
fprintf(stderr,"su: uid %d not allowed to su\n", myuid);
return 1;
}
关键的是android\system\extras\su模块有没有被编入,一般eng版本会编译出su模块,因为android\system\extras\su\Android.mk中LOCAL_MODULE_TAGS := debug
如果要在user版本也编入su模块的话,修改android\system\extras\su\Android.mk中LOCAL_MODULE_TAGS := optional,再在device\(product_path)\base\core.mk中PRODUCT_PACKAGES添加su
即可在out/.../system/xbin/下生成su供程序调用
- 如何使编译的ROM能使所有程序获得root权限执行
- 如何使Android应用程序获得root权限
- 如何使Android应用程序获得root权限
- 如何使Android应用程序获得root权限
- 如何使Android应用程序获得root权限
- 如何使Android应用程序获得root权限
- 如何使Android应用程序获得root权限
- 如何使Android应用程序获得root权限
- 如何使Android应用程序获得root权限
- 如何使Android应用程序获得root权限
- 如何使Android应用程序获得root权限
- 如何使Android应用程序获得root权限
- 如何使Android应用程序获得root权限
- 如何使Android应用程序获得root权限
- 如何使Android应用程序获得root权限
- 如何使Android应用程序获得root权限
- 如何使Android应用程序获得root权限
- 读<如何使Android应用程序获得root权限>有感
- 模拟一下goldengate中断后,重新同步操作
- 在Virtools中实现尾焰效果
- 【ORACLE基础一】oracle日期加减
- 解决java的Long.getLong(str)的NullPointerException错误
- WIN7 任务栏 chrome 显示为QQ图标问题
- 如何使编译的ROM能使所有程序获得root权限执行
- JNDI配置原理详解
- oracle user-managed backups
- WinCE中和Win32中CreateProcess API函数的使用
- 全局变量定义, error C2374: 'g_aaaaa' : redefinition; multiple initialization
- 各种不足
- 【ORACLE基础二】oracle中跨服务器同步表数据
- dm365的i2c总结最终版(菜鸟入门,欢迎拍砖)
- Uboot的使用(二)