通过bash编辑build.prop后的Bootloop

问题描述 投票:0回答:2

build.prop文件是一个定义了许多系统选项的文件,可以在Android上以root用户身份进行编辑。它放在/system/build.prop中我使用android root执行命令库(通过sed)以root用户身份从我的Android应用程序通过bash编辑它。

该应用程序用于调整设备,因此它修改了一些道具以使设备更好,但在执行sed和echo后,设备将启动循环(在网络重启时)。

sed -i '/$prop/d' /system/build.prop
echo $prop=$value >> /system/build.prop

此代码将生成此输出(在下次重新启动时)https://gist.github.com/AndreaCioccarelli/ad4f90bc4af5a7b24776a87febd4b55b

我不知道,它似乎与SurfaceFlinger和gpu服务有关,但我找不到build.prop和这些服务之间的链接。

在这种情况下,$propnet.ipv4.tcp_congestion_control,而$valuetcp

附:在/system/etc/sysctl.conf上使用相同的过程将不起作用。

Nougat 7.0 NEMESIS /三星Galaxy S6 Edge / MagicSU

android bash sed
2个回答
1
投票

关于启动等的idk,但是你的shell命令应该正确引用:

sed -i "/$prop/d" /system/build.prop
echo "$prop=$value" >> /system/build.prop

因为现在$prop不会被你的sed命令扩展,因为它在单引号内,而$prop行中的$valueecho都容易受到单词拆分,通配,文件名扩展等的影响,因为它们不在任何引号内。

看看纠正是否可以解决您的其他问题。


0
投票

问题已修复,如您所见:

-rw-r--r-- 1 root root u:object_r:system_file:s0 6607 2017-04-30 16:44 build.prop
-rw-rw-r-- 1 root root u:object_r:system_file:s0 6643 2017-05-26 14:22 build.prop

我将build.prop权限从644更改为664,并且它可能会引发异常弹出系统启动,然后设备无法正常完成startuo

© www.soinside.com 2019 - 2024. All rights reserved.