Computer >> 컴퓨터 >  >> 문제 해결 >> Android

안드로이드 폰에 프로젝트 트레블(Project Treble) ROM 설치하는 완벽 가이드

프로젝트 트레블(Project Treble)은 안드로이드 오레오(Android Oreo)와 함께 구글이 도입한 아키텍처 개선 프로젝트입니다. 핵심 안드로이드 업데이트를 제조사의 커스텀 펌웨어에 더 쉽게 통합하고, 사용자에게 더 빠르게 배포할 수 있도록 만든 것이 목적이었습니다. 이것이 필요했던 이유는, 그동안 많은 제조업체들이 구글의 최신 보안 업데이트 적용에 뒤처져 소비자들이 보안 위험에 노출되어 있었기 때문입니다.

하지만 이것이 전적으로 폰 제조사들의 잘못이라고 볼 수는 없습니다. 소프트웨어 업데이트는 여러 단계의 절차를 거치기 때문입니다. 구글이 업데이트를 출시하면 먼저 칩셋 제조사(퀄컴, 미디어텍, 삼성/엑시노스 등)에 전달되어야 하고, 해당 업데이트를 폰의 내부 하드웨어 관련 코드 전반에 적용해야 합니다. 그 후에야 비로소 폰 제조사들이 구글의 업데이트를 자사 소프트웨어에 통합하고 취향에 맞게 다듬는 작업을 시작할 수 있습니다.

즉, 프로젝트 트레블은 폰 제조사가 구글로부터 직접 최신 안드로이드 업데이트를 손쉽게 사용자에게 제공할 수 있도록 만들기 위한 것입니다. 물론 실제 산업계에는 큰 변화가 없었다는 평가도 받습니다. 대부분의 폰 제조사들이 최신 안드로이드 업데이트 제공에 크게 신경 쓰지 않으며, 판매 이후의 업데이트는 우선순위에서 밀려나는 경우가 많기 때문입니다.

커스텀 ROM 커뮤니티에는 게임 체인저

그러나 프로젝트 트레블은 커스텀 ROM과 안드로이드 모딩 커뮤니티에 상당한 이점을 가져다주었습니다. 프로젝트 트레블이 지원되는 기기의 사용자는 /vendor 파티션을 건드리지 않고도 ROM을 플래시할 수 있으며, 이는 커스텀 ROM 개발자가 기기의 독점 드라이버나 HAL(Hardware Abstraction Layer)을 신경 쓸 필요가 없다는 의미입니다. 간단히 말해, 프로젝트 트레블 도입 이후 커스텀 ROM 개발과 설치가 훨씬 간편해졌습니다.

안드로이드 기기에 GSI(Generic System Image) 방식의 프로젝트 트레블 ROM을 설치하고 싶다면, 이 가이드를 주의 깊게 읽어보세요. 생각보다 간단하지만 몇 가지 알아두어야 할 사항이 있습니다.

준비물

  • 부트로더 언락(Unlock)된 기기
  • 프로젝트 트레블 호환 기기
  • 순정 boot/ramdisk 상태 (Xposed, SuperSU, Magisk 등이 설치되어 있지 않은 상태). 설치 작업 후에는 다시 설치할 수 있습니다.

공식적으로 프로젝트 트레블을 지원하는 기기의 경우

  1. 아직 부트로더가 언락되지 않았다면 먼저 부트로더를 언락해야 합니다. 인터넷에서 기기별 언락 및 루팅 가이드를 검색하면 인기 있는 안드로이드 기기 대부분에 대한 방법을 찾을 수 있습니다.
  2. PC에서 원하는 GSI ROM을 다운로드합니다. 순수 AOSP ROM이나 LineageOS, Resurrection Remix 같은 인기 커스텀 ROM의 GSI 버전을 거의 자유롭게 설치할 수 있습니다. 단, 다운로드하는 ROM이 GSI 지원 버전인지 반드시 확인하세요.
  3. 또한 기기의 아키텍처 유형과 파티션 유형에 맞는 올바른 ROM을 다운로드했는지 확인해야 합니다. 예를 들어 기기가 시리리스(seamless) 업데이트(A/B 파티션)를 지원한다면 A/B 호환 이미지를, 아니라면 A-only 이미지를 다운로드해야 합니다.

비공식적으로 프로젝트 트레블을 지원하는 기기의 경우

  1. 기기의 부트로더를 언락합니다.
  2. 비공식적으로 프로젝트 트레블을 지원하는 기기 목록을 확인합니다. 자신의 기기가 목록에 있다면 해당 (Source) 링크를 클릭하여 기기별 지침을 따릅니다.
  3. 원하는 GSI ROM을 PC에 다운로드합니다.

TWRP로 GSI 이미지 설치하기

GSI 이미지를 설치하는 가장 쉬운 방법은 TWRP를 사용하는 것입니다. 기기에 TWRP가 없다면, 해당 기기의 루팅 가이드를 검색해서 함께 설치하는 것을 추천합니다.

  1. GSI 이미지를 PC에서 기기로 전송합니다.
  2. 기기를 TWRP로 재부팅한 후 메인 메뉴에서 'Install'을 누릅니다.
  3. 전송한 파일이 보이지 않으면 파일 형식 필터를 "zip"에서 "Image"로 변경하세요.
  4. system 파티션에 이미지를 플래시하도록 선택합니다. 완료되면 기기를 재부팅합니다.
  5. 기기가 몇 분간 내부 정리 작업을 진행한 뒤 새로운 ROM으로 부팅될 것입니다.

TWRP 없이 GSI 이미지 설치하기

진행하기 전에 기기를 공장 초기화해야 합니다. 일반적으로 안드로이드 시스템의 설정 메뉴(보통 설정 > 백업 및 초기화)에서 할 수 있으며, 순정 리커버리(진입용 버튼 조합은 제조사/기기마다 다름)에서도 가능합니다. ADB 명령(adb reboot recovery)으로 리커버리에 진입할 수도 있습니다.

  1. 공장 초기화를 마친 후, 기기의 버튼 조합 또는 adb reboot bootloader 명령으로 부트로더 모드로 재부팅합니다.
  2. 부트로더 모드에서 안드로이드 기기를 USB로 PC에 연결하고, PC에서 ADB 터미널을 실행합니다. 플래시할 GSI 이미지도 ADB 경로(플랫폼 도구 폴더 등)에 미리 넣어둡니다.
  3. 명령 프롬프트나 터미널 창에서 다음 명령을 입력합니다: fastboot erase system
  4. 그다음 다음 명령을 입력합니다: fastboot -u flash system name_of_system.img
  5. "name_of_system.img"는 다운받은 GSI 이미지의 실제 파일명으로 바꿔서 입력합니다.
  6. 플래시가 성공적으로 완료되면 'fastboot reboot' 명령으로 기기를 재부팅할 수 있습니다. 기기가 정상적으로 안드로이드 시스템으로 부팅되어야 합니다.

문제 해결(Troubleshooting)

  • 구글 픽셀 2 / 2 XL 같은 기기에서는 AVB(Android Verified Boot)를 비활성화해야 합니다. ADB 명령 fastboot flash vbmeta name_of_vbmeta.img로 vbmeta 이미지를 플래시하면 됩니다.
  • 일부 폰에서는 DM-Verity가 GSI 이미지 부팅을 차단할 수 있습니다. GSI 이미지를 설치한 후 Magisk를 추가로 플래시하면 부팅이 가능해질 수 있습니다. 예를 들어 레이저 폰(Razer Phone)의 경우 이 과정이 필수입니다.
  • 마지막으로, 기기가 부트로더 모드일 때 ADB 창에서 'fastboot -w' 명령을 입력하여 데이터 파티션을 완전히 포맷해야 하는 경우도 있습니다.