![Fastboot가 장치를 인식하지만 Ubuntu 기반 시스템에서 플래시에 실패함(멈춤, 출력 없음)](https://linux55.com/image/200295/Fastboot%EA%B0%80%20%EC%9E%A5%EC%B9%98%EB%A5%BC%20%EC%9D%B8%EC%8B%9D%ED%95%98%EC%A7%80%EB%A7%8C%20Ubuntu%20%EA%B8%B0%EB%B0%98%20%EC%8B%9C%EC%8A%A4%ED%85%9C%EC%97%90%EC%84%9C%20%ED%94%8C%EB%9E%98%EC%8B%9C%EC%97%90%20%EC%8B%A4%ED%8C%A8%ED%95%A8(%EB%A9%88%EC%B6%A4%2C%20%EC%B6%9C%EB%A0%A5%20%EC%97%86%EC%9D%8C).png)
fastboot
Ubuntu 기반 Pop!_OS를 사용하여 Android 스마트폰에서 맞춤 ROM을 플래시하려고 합니다. 플래시 복구를 시도하면 명령이 아무 것도 출력하지 않고 중단됩니다. 하지만 동일한 하드웨어로 Windows 10을 사용하면 이 문제가 발생하지 않습니다.
./fastboot flash recovery recovery.img
환경:
- ROM:PixelExperience 11(Plus)(X00TD 공식)
- 복구: ROM과 함께 제공
- 스마트폰: Asus Zenfone Max Pro M1(X00TD / ZB601KL 변형)
- 개인용 컴퓨터:
///////////// user@pop-os
///////////////////// -------------
///////*767//////////////// OS: Pop!_OS 20.04 LTS x86_64
//////7676767676*////////////// Host: 80F6 Lenovo B40-80
/////76767//7676767////////////// Kernel: 5.15.8-76051508-generic
/////767676///*76767/////////////// Uptime: 54 mins
///////767676///76767.///7676*/////// Packages: 1896 (dpkg), 27 (flatpak)
/////////767676//76767///767676//////// Shell: bash 5.0.17
//////////76767676767////76767///////// Resolution: 1366x768
///////////76767676//////7676////////// DE: GNOME
////////////,7676,///////767/////////// WM: Mutter
/////////////*7676///////76//////////// WM Theme: Pop
///////////////7676//////////////////// Theme: Pop-dark [GTK2/3]
///////////////7676///767//////////// Icons: Pop [GTK2/3]
//////////////////////'//////////// Terminal: gnome-terminal
//////.7676767676767676767,////// CPU: Intel i5-5200U (4) @ 2.700GHz
/////767676767676767676767///// GPU: Intel HD Graphics 5500
/////////////////////////// Memory: 2679MiB / 7865MiB
/////////////////////
/////////////
(이전 버전에서도 성공하지 못했습니다.쿠바 화 18.04, 결과는 동일)
fastboot
시스템 제공(Ubuntu 저장소) 버전 과 함께 제공되는 버전을 사용해 보았습니다.Android 플랫폼 도구. 설치된 시스템 버전은 입니다 sudo apt install android-tools-adb android-tools-fastboot
.
fastboot
버전:
user@pop-os:~$ fastboot --version
fastboot version 1:8.1.0+r23-5ubuntu2
Installed as /usr/lib/android-sdk/platform-tools/fastboot
user@pop-os:~/Android/platform-tools$ ./fastboot --version
fastboot version 31.0.3-7562133
Installed as /home/user/Android/platform-tools/fastboot
전제 조건:
udev
아래 표시된 규칙 은 구성되었습니다 ( fastboot
없이 실행할 때 "권한 없음" 오류를 방지하기 위해 sudo
).
#/etc/udev/rules.d/51-android.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", MODE="0666", GROUP="plugdev"
현재 사용자를 "plugdev" 그룹에 추가합니다.sudo usermod -aG plugdev $LOGNAME
질문:
하드웨어 키(볼륨 + 전원) 또는 명령을 통해 fastboot 모드로 재부팅한 후 ./adb reboot bootloader
내 장치가 fastboot에서 인식됩니다.
user@pop-os:~/Android/platform-tools$ ./fastboot devices
XXXXXXXX04HP fastboot
하지만 복구를 플래시하려고 하면 명령이 출력되지 않고 중단됩니다.
user@pop-os:~/Android/platform-tools$ ./fastboot flash recovery recovery.img
컴퓨터에서 장치를 분리하면 오류가 발생합니다.
user@pop-os:~/Android/platform-tools$ ./fastboot flash recovery recovery.img
Sending 'recovery' (21517 KB) FAILED (Write to device failed (No such device))
fastboot: error: Command failed
결론적으로:
하이퍼링크 가이드 및 기타 여러 리소스에서 제안한 대로 다양한 USB 포트(2.0 및 3.0), 다양한 케이블, 위에서 언급한 대로 다양한 PC 및 Ubuntu 버전을 사용해 보았습니다. 문제가 해결되지 않았습니다.
그러나 Windows 10과 동일한 PC(이중 부팅), USB 포트, 케이블 및 모바일 장치를 사용하여 복구를 성공적으로 플래시하고 나중에 ROM을 플래시할 수 있었습니다.
다른 StackExchange 사이트에도 이와 유사한 질문이 있으며, 허용된 답변 중 일부는 별로 도움이 되지 않으며 대부분은 오래되었습니다. 게다가 추천에 따르면@alecxs 여기, 이 문제는 Linux 기반 시스템에만 해당되는 것 같습니다. 도움을 주시면 정말 감사하겠습니다.
귀하의 의견에 미리 감사드립니다.
부록:
답변1
apt install android-tools-fastboot
Google의 fastboot(플랫폼 툴킷)를 사용하든 apt()에서 제공되는 fastboot를 사용하든 Pop!_OS 22.04를 새로 설치할 때 동일한 문제가 발생했습니다. 그런 다음 Ubuntu 22.04를 사용해보기로 결정했고 동일한 성능을 발휘했습니다. 의 제안이 답변Ubuntu에서 나를 위해 일했으므로 Pop에서도 작동할 것이라고 가정합니다.
- 케이블을 뽑거나 케이블을 전화기에 연결하지 않은 채로 두십시오.
- fastboot...명령 실행
- "`>장치 대기 중"이 표시될 때만 전화를 연결하십시오.
- 명령이 예상대로 작동합니다(적어도 나에게는).
도움이 되었기를 바랍니다!
답변2
syslog를 봅니다 fwupd errors
.
귀하의 상황이 다음과 같은 경우:
나는 fwupd를 검색하기 시작했고 이것이 펌웨어 업데이트를 위한 도구이며 "fastboot 모드"로 연결된 새 장치를 수신하는 데몬이 있다는 것을 깨달았습니다.
이유
최신 버전의 fwupd에서는 Motorola를 인수한 Lenovo와 같은 특정 공급업체의 펌웨어 업데이트에 대한 지원이 도입되었습니다.
따라서 Motorola 전화(내 경우에는 G7 Play)를 연결할 때 fwupd 데몬은 명령을 통해 해당 공급업체의 장치 부트로더를 식별하려고 시도 하지만 android don version -bootloader ` 변수 getvar version-bootloader
때문에 fastboot 모드는 fwupd에서 지원하는 유형이 아닙니다. t have the
, 여기서 오류가 시작되었습니다.
따라서 fwupd는 오류를 발생시키고 failed to add device ...: failed to getvar version-bootloader: no response to read
장치 포트를 중단할 수 없습니다. 이제 Android의 fastboot CLI는 fastboot 모드에서 장치를 인식할 수 있지만 장치에 명령을 보내면 fastboot CLI는 fwupd가 정지할 때까지 기다리지만 결코 그런 일이 발생하지 않습니다. ("동결 명령")
이에 대한 자세한 내용은 여기에서 읽을 수 있습니다.https://github.com/fwupd/fwupd/issues/3187
솔루션(내 솔루션)
방금 모든 패키지 fwupd를 제거했지만 질문에서 말한 것처럼 비활성화하지 않고 제거했습니다.https://github.com/fwupd/fwupd/issues/3187
아마도 이러한 공급자를 추가하지 않는 버전으로 다운그레이드하면 문제가 해결될 수도 있습니다.
이제 모든 버전의 fastboot CLI를 Ubuntu 및 Pop 운영 체제에서 실행할 수 있습니다!