나를위한 대답에는 여러 가지가 관련되어 있지만, 이것이 실제로 핵심이라고 생각합니다.
"복구"명령을 사용하십시오. bro
CyanogenMod / AOSP의 recovery
프로그램을 사용하여 사용자 데이터를 지우고 암호화를 비활성화합니다. ( 스택 오버플 로 에서이 답변에 있음 ) 복구로 부팅 한 다음 컴퓨터에서 실행하십시오.
adb shell recovery --wipe_data --set_filesystem_encryption=off
휴대 전화가 시스템으로 재부팅되고 정상적으로 작동합니다.
휴대 전화 자체에서 실행해야하는 경우 (예 : 주변에 컴퓨터가없는 경우 adb
) :
recovery --wipe_data --set_filesystem_encryption=off
시스템을 지우고 암호화를 비활성화하고 재부팅해야합니다.
다른 모든 것이 실패하면
위의 방법으로 작동하지 않거나 시나리오에 적용되지 않는 한이 방법을 사용하지 마십시오.
파일 시스템 암호화를위한 LUKS 헤더 제거
- 으로 쉘에 드롭 할 수있는 복구가 필요
root
하므로 TWRP가 제 경우에는 작동합니다.
userdata
에서 둘러보고 파티션을 찾으십시오 /dev/block/platform/*/by-name/userdata
.
LUKS 헤더를 지우려면 해당 파티션의 시작 부분에 0을 적어 두십시오.
dd if=/dev/zero of=$PATH_TO_YOUR_USERDATA bs=4096 count=512
나는 당신이이 명령으로 무엇을하는지에 대해 책임을지지 않습니다. 이 문제를 해결하면 부트 로더 나 기타 중요한 파티션을 덮어 써서 휴대 전화를 손상시킬 수 있습니다. $PATH_TO_YOUR_USERDATA
실제 userdata
파티션 을 가리키는 지 확인하십시오 . 해당 파티션의 크기를 확인하여 올바른 것을 지우고 있는지 확인하십시오. 나는 16GB 전화를 가지고 있으며 userdata
10.4GB이며 나머지는 전용 system
이지만 전화는 다를 수 있습니다.
를 ext4
사용하여 해당 파티션을 다시 포맷하십시오 make_ext4fs $PATH_TO_YOUR_USERDATA
.
오류가있을 수 있지만 일반적으로 내부 "sdcard"를 찾을 수없는 것과 관련이 있습니다. 이것은 괜찮습니다.
이 후 복구를 다시 재부팅 한 다음 안전을 위해 공장 재설정을 실행하십시오.
왜 이것이 작동합니까?
단순히 공장 초기화를 수행해도 아무런 효과가없는 것처럼 보였지만 전화에는 여전히 LUKS 파티션이 표시됩니다. 나는 이것이 LUKS 헤더가 여전히 디스크 레벨에 존재하고 ext4 파티션이 그 위에 겹쳐져 있기 때문이라고 가정합니다. 어떤 이유로 안드로이드는 ext4 파티션에서 LUKS 파티션을 우선적으로 감지하고 마운트를 시도합니다 (성공합니다).
여기서 갈 곳
(무엇을하고 있는지 아는 경우 system
ROM을 처음부터 닦아서 설치 하고 싶을 수도 있습니다 . 다시이 게시물에 포함 된 정보로 수행 한 모든 것에 대해 책임을지지 않습니다. )
klte
G900T (Samsung Galaxy S5 T-Mobile) 에서 저를 위해 일했습니다 . 귀하의 마일리지가 다를 수 있습니다.