Team Win Recovery Project (TWRP)는 안드로이드(Android)-기반 장치에 대해 오픈-소스 소프트웨어(open-source software) 사용자-지정 복구 이미지입니다. 그것은 사용자에게 타사 펌웨어(firmware)를 설치하고 제품 복구 이미지에 의해 종종 지원되지 않는 기능인 현재 시스템을 백업을 허용하는 터치스크린(touchscreen)-활성화 인터페이스를 제공합니다. 따라서 비록 설치 전에 루팅되는 장치에 의존하지 않을지라도, 안드로이드 장치를 플래싱, 설치, 또는 루팅(rooting)할 때 종종 설치됩니다.
Installation
Download
TWRP 홈페이지에서 릴리즈 정보를 볼 수 있습니다. 가장 최근에 3.2.3-0 버전이 출시되었으며, 각 디바이스에 맞는 twrp를 설치하는 것을 권장합니다.
샤오미 디바이스에 대한 twrp 정보를 보시고, 자신의 디바이스를 선택합니다. 여기서는 Xiaomi Mi6에 대한 최근 twrp를 받고, 해당 파일의 md5를 받아서 변조 여부를 확인할 것입니다.
- https://dl.twrp.me/sagit/twrp-3.2.3-0-sagit.img
- https://dl.twrp.me/sagit/twrp-3.2.3-0-sagit.img.md5
- md5sum twrp-3.2.3-0-sagit.img
2075241985bfb8cdeabe6cb077997d2f twrp-3.2.3-0-sagit.img
- more twrp-3.2.3-0-sagit.img.md5
2075241985bfb8cdeabe6cb077997d2f twrp-3.2.3-0-sagit.img
두 값이 반드시 같아야 합니다.
TWRP Install (Requires TWRP 2.8.4 or higher already installed)
디바이스(스마트폰, 태블릿 등)에 이전 버전의 twrp가 설치되어 있을 때, 사용하는 방법입니다.
Download the latest TWRP image file (.img) from the download link and boot TWRP. Go to install and find and select the Images... button. Browse to the image that you downloaded and select it. Choose recovery and swipe to flash.
Fastboot Install Method (No Root Required)
Under Windows 10
처음 설치할 때 사용하는 방법입니다.
여기서 소개되는 몇 가지 방법이 있지만, 여기서는 윈도우 10 64비트에서 진행할 것입니다. 먼저 필요한 파일은 File:Adb.zip과 File:FASTBOOT.zip입니다.
여기서 관련 툴을 받을 수 있습니다.
또한, VMware에서 진행할 예정입니다. 윈도우에서 명령어 실행은 PowerShell에서 확인할 수 있습니다. 아래 명령은 명령 프롬프트에서 실행한 것입니다.
- 윈도우 10으로 부팅합니다.
- 미6에서 USB debugging을 켭니다.
- 윈도우에서 adb 디렉토리로 이동합니다.
- adb shell
- error: device unauthorized
- This adbd's $ADB_VENDOR_KEYS is not set; try 'adb kill-server' if that seems wrong. Otherwise check for a confirmation dialog on your device.
- 위와 같이 출력되면 스마트폰에서 나오는 메시지 창에서 OK를 눌러줍니다.
- adb shell
- sagit:/ $
- 위와 같은 프롬프트가 나와야 정상입니다. exit를 입력해서 adb를 종료합니다.
- 윈도우에서 fastboot 디렉토리로 이동합니다.
- 스마트폰을 종료합니다.
- 볼륨 다운을 누른 채 파워 버튼을 함께 켜질 때까지 눌러줍니다.
- fastboot라는 메시지가 나와야 합니다.
- 윈도우 fastboot 디렉토리에서
- fastboot flash recovery twrp-3.2.3-0-sagit.img
- sending 'recovery' (27128 KB)...OKAY
- writing 'recovery'... OKAY
- 위와 같이 2줄이 출력되면 정상적으로 설치가 된 것입니다.
- 스마트폰에서 볼륨 업을 누른 채 파워 버튼을 함께 켜질 때까지 눌러줍니다. MI가 나올 때까지 누릅니다.
- 잠금화면 패턴이 나올 수 있습니다. 풀어줍니다.
- 맨 아래쪽에 있는 Swipe to Unlock을 오른쪽으로 밀어서 잠금해제합니다.
Under Ubuntu
언락 툴은 아직 지원하지 않지만, 그 이후, TWRP부터는 우분투 20.04에서 모두 가능합니다.
우분투에도 툴이 있습니다. 저장소에서 설치합니다.
- sudo apt install adb android-tools-adb android-tools-fastboot
실행 시에는 권한의 문제가 발생하니, 다음과 같이 실행할 수 있습니다. 물론 이 명령을 입력하기 전에 Developer options에서 USB debugging은 켜야 합니다. 또한, USB 단자에 스마트폰을 연결해야 합니다.
- sudo adb shell
error: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
위의 메시지가 나오면, 스마트폰에서 OK버튼을 눌러줍니다.
- sudo adb shell
sagit:/ $
sagit:/ $ exit
이제 스마트폰을 종료하고, 볼륨 다운을 누른 채 파워 버튼을 함께 켜질 때까지 눌러줍니다. 패스트부트로 접근이 되면, 아래와 같이 twrp를 설치할 수 있습니다.
- sudo fastboot flash recovery twrp-3.2.3-0-sagit.img
target reported max download size of 536870912 bytes
sending 'recovery' (54888 KB)...
OKAY [ 1.452s]
writing 'recovery'...
OKAY [ 0.396s]
finished. total time: 1.848s
Information
스마트폰에서 USB debugging을 켜지 않았을 때 나오는 메시지입니다.
- adb shell
error: device '(null)' not found
스마트폰에서 USB debugging을 허용할 것인지를 확인 버튼을 누르지 않았을 때 나오는 메시지입니다.
- adb shell
error: device unauthorized This adbd's $ADB_VENDOR_KEYS is not set; try 'adb kill-server' if that seems wrong. Otherwise check for a confirmation dialog on your device.
Mi Pad4
미패드4는 twrp를 설치하고 처음에만 twrp로 진입이 되고, 다시 접근하면 샤오미 리커버리로 진입됩니다.
또한, 처음 twrp를 설치하고 진입해서 Format Data를 실행하면, data 영역이 마운트되어 있기 때문에, 포맷을 하지 않고, 초기화를 진행합니다.
확인할 사항: 처음 twrp를 진입해서, Wipe->Advanded Wipe에서 다음을 삭제하고 롬을 설치할 예정입니다.
- Dalvik/ART Cache
- System
- Data
- Cache
China-ROM data to EU-ROM
EU-롬에 내장된 미-무버는 버전이 달라서 데이터를 옮길 수 없기 때문에, 이전 기계에서 같은 버전을 옮기든지, 스캐너로 읽어서 미-앱스트어에서 설치해야 합니다.
중국롬의 미유아이에서 EU-롬의 미유아이로 데이터를 옮기는 방법 중에 가장 쉽고 강력한 것이 미 무버(Mi Mover)를 이용하는 것입니다.
확인해 보니, 구글 플레이스토어에서는 미 무버 앱을 찾을 수 없습니다.
미-무버를 설치하는 방법은
- 다른 미-무버가 설치되어 있는 폰에서 미-무버를 눌러서 Share-> Bluetooth로 앱을 복사할 수 있는데, base.apk라는 이름으로 옯겨집니다.
- 옮기려는 폰에서 미-무버를 실행하면, QR-코드가 생기고, 그것을 스캐너를 읽으면, 같은 버전을 샤오미 앱 스토어에서 찾아서 설치해 줍니다.
어쨌든, 설치된 미-무버에서 데이터를 옯길 수 있는데, 카카오톡 대화 내용은 카카오톡 내부의 백업 기능을 이용할 수 있습니다.
유심 인식
간혹 유심이 인식되었다가 끊어졌다가 반복하는 기이한 현상을 만나는 경우가 있습니다.
보통 리부팅을 두세 번 하면, 유심이 정상적으로 인식되는 경우가 일반적이지만, 그래도 같은 현상이 발생하시면, 비행기 모드를 실행했다가 꺼주세요.
Usage
TWRP의 사용법을 간단히 알아보겠습니다.
Install
롬 설치와 다른 앱들 설치를 합니다. 롬과 같이 img 확장자는 파일을 선택한 후에, 같은 화면의 Install Image를 눌러줍니다.
- Select Storage: External Storage가 있을 때, internal storage와 둘 중에 선택하기 위해서 사용됩니다.
반면에 앱과 같이 zip 확장자의 파일은 화면이 바뀌면서, 새로운 화면이 생깁니다. 이미지 파일과는 다르게 여러 개의 앱을 동시에 설치할 수 있습니다.
- Zip signature verification: 설치하려는 zip 파일 내부에 시그너쳐가 없을 때에는 설치할 때 오류가 생깁니다. 일반적으로 공인된 곳에서 zip파일을 받는 것을 추천하며, 선택하지 않는 것이 좋습니다.
- Reboot after installation is complete: 설치 후에 자동으로 재시작합니다. 사용을 권장하지 않습니다.
- Add more Zips: 이전 화면으로 복귀해서 zip 파일을 선택할 수 있습니다.
- Clear Zip Queue: 잘못 선택되었을 때, 선택한 zip 파일 목록을 지웁니다.
- 선택이 완료되면, 아래쪽의 Swipe to confirm Flash를 오른쪽으로 밀어서 실행합니다.
Wipe
공장 초기화를 수행합니다. Miui의 공장 초기화와는 다르게 Internal Storage는 초기화하지 않습니다. 즉, 개인 데이터는 보존되며, Data, Cache, Dalvik만 초기화됩니다.
- Advanced Wipe: 개별적인 영역을 지정해서 초기화를 수행합니다. system을 초기화하면 부팅이 되지 않습니다. 반드시 롬을 새로 설치해야 합니다.
- Format Data: Internal Storage를 완전히 초기화합니다. 보통 깨끗이 밀고 새롭게 롬을 설치할 때 이용합니다. 이전에 백업을 받아두시는 것을 권장합니다.
Backup
Case1: font install
샤오미 폰들은 보통 한글 폰트를 내장해서 배포합니다. 이 폰트는 Settings->Display->System font에서 확인을 할 수 있으며, Mi Lanting (Defalut)로 표시됩니다.
샤오미에서 사용하는 패키지는 mtz 확장자를 가지고 있습니다. 예를 들어, iso9 폰트는 여기서 받을 수 있습니다. 어쨌든, 샤오미 패키지의 장점은 설치를 했을 때, 별도의 폰트로 관리가 됩니다. 즉, 위의 폰트와 별도로 폰트 이름이 존재하고 그것을 선택할 수 있습니다. 그러나, 이런 상용 폰트는 라이선스의 문제로 더 이상 설치가 되지 않습니다.
어쨌든, 이런 종류의 폰트를 twrp에서 설치하기 위해서는 별도의 파일을 구해야 합니다. 검색 시에는 ios9 fonts twrp zip정도의 키워드로 가능하며, 여기서 구할 수 있습니다.
우선, twrp 리커버리로 부팅을 해야 합니다. 하드웨어 키를 사용하지 않고, 쉽게 리커버리로 부팅하는 방법은 Updater 앱을 이용하는 것입니다. 오른쪽 위의 세로로 정렬된 점 3개를 눌러서, Reboot to Recovery mode로 부팅합니다. Yes를 누르면, 리커버리로 부팅이 됩니다.
- 리커버리 메뉴에서 Install을 누릅니다.
- 다운로드한 zip 파일을 선택합니다.
- 아래쪽의 Swipe to confirm Flash를 오른쪽으로 밀어서 실행합니다.
- 순식간에 설치가 되고, done이 출력됩니다.
- Reboot System을 누릅니다.
폰트 설치가 끝났습니다. 이것의 단점은 기존의 폰트 이름을 유지하면서 내용만 바꾸기 때문에 별도로 선택이 불가능하다는 점입니다.