C:\Users\Test>adb remount
dm_verity is enabled on the system and vendor partitions.
Use "adb disable-verity" to disable verity.
If you do not, remount may succeed, however, you will still not be able to write to these volumes.
remount of system failed: Permission denied
remount failed
: 私が得たエラーです。しかし、ここで
は、いくつかの有用なヒントですリバースエンジニアリング/逆コンパイル時に '\ sbin \ adbd'とIDA 16進数で認識される場合 adbdこのエラーを出力するソースコードはnet:
void remount_service(int fd, void *cookie)
{
char buffer[200];
char prop_buf[PROPERTY_VALUE_MAX];
bool system_verified = false, vendor_verified = false;
property_get("partition.system.verified", prop_buf, "0");
if (!strcmp(prop_buf, "1")) {
system_verified = true;
}
property_get("partition.vendor.verified", prop_buf, "0");
if (!strcmp(prop_buf, "1")) {
vendor_verified = true;
}
if (system_verified || vendor_verified) {
// Allow remount but warn of likely bad effects
bool both = system_verified && vendor_verified;
snprintf(buffer, sizeof(buffer),
"dm_verity is enabled on the %s%s%s partition%s.\n",
system_verified ? "system" : "",
both ? " and " : "",
vendor_verified ? "vendor" : "",
both ? "s" : "");
write_string(fd, buffer);
snprintf(buffer, sizeof(buffer),
"Use \"adb disable-verity\" to disable verity.\n"
"If you do not, remount may succeed, however, you will still "
"not be able to write to these volumes.\n");
write_string(fd, buffer);
}
if (remount("/system", &system_ro)) {
snprintf(buffer, sizeof(buffer), "remount of system failed: %s\n",strerror(errno));
write_string(fd, buffer);
}
if (hasVendorPartition()) {
if (remount("/vendor", &vendor_ro)) {
snprintf(buffer, sizeof(buffer), "remount of vendor failed: %s\n",strerror(errno));
write_string(fd, buffer);
}
}
if (!system_ro && (!vendor_ro || !hasVendorPartition()))
write_string(fd, "remount succeeded\n");
else {
write_string(fd, "remount failed\n");
}
adb_close(fd);
}
http://www.contrib.andrew.cmu.edu/~rjkohler/android-tools-5.0.1+git20141213/core/adb/remount_service.c ところで私はdecomileするために使用さADBデーモンは、Android 5.1.1からです。
だからここに要点は、がをpartition.vendor.verifiedとはをpartition.system.verifiedあります。 「1」に設定すると、エラーが発生します。
次に、なぜ、どのようにこれらが設定されているかを調べることになります。これを防ぐにはどうすればいいですか?
しかしADB再マウントが何をするか、すべては/システム(そしておそらく/ベンダー)が再マウントされます。また、あなた自身もこれを行うことができます:
adb shell su mount -o remount /system
この小さな行は、通常私を助け、同じことを達成します。 su - それはやってみましょう。 (お使いのデバイスが「根ざし」されている場合しかし、はいSUコマンドのみが存在します。)