Fastboot가 장치를 인식하지만 Ubuntu 기반 시스템에서 플래시에 실패함(멈춤, 출력 없음)

Fastboot가 장치를 인식하지만 Ubuntu 기반 시스템에서 플래시에 실패함(멈춤, 출력 없음)

fastbootUbuntu 기반 Pop!_OS를 사용하여 Android 스마트폰에서 맞춤 ROM을 플래시하려고 합니다. 플래시 복구를 시도하면 명령이 아무 것도 출력하지 않고 중단됩니다. 하지만 동일한 하드웨어로 Windows 10을 사용하면 이 문제가 발생하지 않습니다.

./fastboot flash recovery recovery.img

환경:

                 /////////////                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. dmesg grep USB
  2. dmesg 경고, 심각, 오류, 경고

답변1

apt install android-tools-fastbootGoogle의 fastboot(플랫폼 툴킷)를 사용하든 apt()에서 제공되는 fastboot를 사용하든 Pop!_OS 22.04를 새로 설치할 때 동일한 문제가 발생했습니다. 그런 다음 Ubuntu 22.04를 사용해보기로 결정했고 동일한 성능을 발휘했습니다. 의 제안이 답변Ubuntu에서 나를 위해 일했으므로 Pop에서도 작동할 것이라고 가정합니다.

  1. 케이블을 뽑거나 케이블을 전화기에 연결하지 않은 채로 두십시오.
  2. fastboot...명령 실행
  3. "`>장치 대기 중"이 표시될 때만 전화를 연결하십시오.
  4. 명령이 예상대로 작동합니다(적어도 나에게는).

도움이 되었기를 바랍니다!

답변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 운영 체제에서 실행할 수 있습니다!

관련 정보