[RK3288][Android6.0] 调试笔记 --- 修改默认system/bin/下可执行程序权限
2017-04-26 13:33
381 查看
Platform: Rockchip
OS: Android 6.0
Kernel: 3.10.92
需求:
新增一个可执行文件放在system/bin/下,并且只有root和system权限才可以使用.
调试:
一开始在init.rc中修改发现失败,以为是放在开机挂载文件系统前了,
所以又放在了init.rc的on post-fs-data 阶段, 测试了还是失败.
后来发现是因为编译release版本的system文件系统是只读的,需要重新挂载才行.
解决方法:
找到默认编译system/bin/可执行程序赋予权限的地方,在
system/core/libcutiles/fs_config.c中.
[kris@:~/rk3288/system/core]$ g df
diff --git a/libcutils/fs_config.c b/libcutils/fs_config.c
index c72cb29..5224b79 100644
--- a/libcutils/fs_config.c
+++ b/libcutils/fs_config.c
@@ -135,6 +135,8 @@ static const struct fs_path_config android_files[] = {
{ 00700, AID_SYSTEM, AID_SHELL, (1ULL << CAP_BLOCK_SUSPEND), "system/bin/inputflinger" },
{ 00750, AID_ROOT, AID_ROOT, 0, "system/bin/uncrypt" },
+ /*Kris, 170426, only system or root can use socat.*/
+ { 00755, AID_ROOT, AID_SYSTEM, 0, "system/bin/socat" },
{ 00750, AID_ROOT, AID_ROOT, 0, "system/bin/install-recovery.sh" },
{ 00755, AID_ROOT, AID_SHELL, 0, "system/bin/*" },
{ 00755, AID_ROOT, AID_ROOT, 0, "system/lib/valgrind/*" },
OS: Android 6.0
Kernel: 3.10.92
需求:
新增一个可执行文件放在system/bin/下,并且只有root和system权限才可以使用.
调试:
一开始在init.rc中修改发现失败,以为是放在开机挂载文件系统前了,
所以又放在了init.rc的on post-fs-data 阶段, 测试了还是失败.
后来发现是因为编译release版本的system文件系统是只读的,需要重新挂载才行.
解决方法:
找到默认编译system/bin/可执行程序赋予权限的地方,在
system/core/libcutiles/fs_config.c中.
[kris@:~/rk3288/system/core]$ g df
diff --git a/libcutils/fs_config.c b/libcutils/fs_config.c
index c72cb29..5224b79 100644
--- a/libcutils/fs_config.c
+++ b/libcutils/fs_config.c
@@ -135,6 +135,8 @@ static const struct fs_path_config android_files[] = {
{ 00700, AID_SYSTEM, AID_SHELL, (1ULL << CAP_BLOCK_SUSPEND), "system/bin/inputflinger" },
{ 00750, AID_ROOT, AID_ROOT, 0, "system/bin/uncrypt" },
+ /*Kris, 170426, only system or root can use socat.*/
+ { 00755, AID_ROOT, AID_SYSTEM, 0, "system/bin/socat" },
{ 00750, AID_ROOT, AID_ROOT, 0, "system/bin/install-recovery.sh" },
{ 00755, AID_ROOT, AID_SHELL, 0, "system/bin/*" },
{ 00755, AID_ROOT, AID_ROOT, 0, "system/lib/valgrind/*" },
相关文章推荐
- [RK3288][Android6.0] 调试笔记 --- 修改浏览器默认地址
- [RK3288][Android6.0] 调试笔记 --- 开机语言默认为简体中文
- [RK3288][Android6.0] 调试笔记 --- 录音apk无权限录音问题
- [RK3288][Android6.0] 调试笔记 --- Recovery执行脚本方法
- [RK3288][Android6.0] 调试笔记 --- 打开相机提示无权限
- [RK3288][Android6.0] 调试笔记 --- 开机默认选择24小时制时间格式
- [RK3288][Android6.0] 调试笔记 --- 设置系统默认显示为竖屏
- [RK3288][Android6.0] 调试笔记 --- 替换默认Launcher
- [RK3288][Android6.0] 调试笔记 --- 默认允许安装未知来源apk
- [RK3288][Android6.0] 调试笔记 --- date命令无法修改日期和时间
- [RK3288][Android6.0] 调试笔记 --- Camera没有权限打开问题
- [RK3288][Android6.0] 调试笔记 --- 设置中文为默认输入法
- [RK3288][Android6.0] 调试笔记 --- 修改系统按键
- [RK3288][Android6.0] 调试笔记 --- 如何修改/dev/ttySx后面的数字号
- [RK3288][Android6.0] 调试笔记 --- 无法安装需系统权限的apk问题
- [RK3288][Android6.0] 调试笔记 --- CPU默认调度策略
- [RK3288][Android6.0] 调试笔记 --- user版本默认显示开发者选项【转】
- [RK3288][Android6.0] 调试笔记 --- X264测试程序无法使用
- [RK3288][Android6.0] 调试笔记 --- 修改boot.img后进入Recovery模式问题
- [RK3288][Android6.0] 调试笔记 --- user版本默认显示开发者选项