모든 직업이나 취미 분야에는 복잡한 개념을 간단하게 다루기 위한 고유한 전문 용어가 생겨나기 마련입니다. 안드로이드 세계도 예외는 아닙니다.
안드로이드 스마트폰이나 태블릿의 문제를 검색하다가 루팅(rooted), 커스텀 ROM 플래싱, SIM 언락 같은 낯선 용어를 마주한 적이 있다면, 이 글이 바로 당신을 위한 안내서입니다.
안드로이드 전문가라면 이미 익숙한 내용일 수 있으니, 이 글은 안드로이드 덕후들의 세계에 숨겨진 용어들을 처음 배우고 싶은 초보자를 위해 준비했습니다.
루팅(Rooting)이란?
먼저 가장 큰 질문부터 시작해 보겠습니다. 루팅이란 무엇일까요? 기기가 '루팅됐다' 또는 '루팅되지 않았다'는 것은 어떤 의미일까요?
기본적으로 출고되는 안드로이드 기기는 루팅되어 있지 않습니다. 새로 구매한 안드로이드 기기를 그대로 사용 중이라면 루팅되지 않은 상태이며, 루트 권한이 없는 것입니다.

제조사들이 이렇게 하는 이유는 모든 사용자에게 루트 권한을 주면 수많은 문제가 발생할 수 있기 때문입니다. 루트 권한이 있으면 기기 내부 파일에 접근할 수 있는데, 이 파일들을 잘못 삭제하거나 수정하면 기기 자체가 손상될 수 있습니다. 그래서 제조사들은 일반적으로 사용자에게 이런 접근 권한을 주고 싶어 하지 않습니다.
하지만 자신이 하는 일을 잘 안다면, 루팅을 통해 정말 멋진 변화를 만들 수 있습니다. 그래서 많은 사람들이 기기를 루팅하기로 선택하는 것이죠.
루팅 방법은 기기 모델마다 완전히 다릅니다. 일부 기기는 제조사의 보안 장치를 우회해야 하는 까다로운 과정이 필요하지만, 어떤 기기는 폰을 컴퓨터에 연결하고 버튼 하나만 누르면 되는 경우도 있습니다. XDA-Developers 포럼에서 자신의 기기에 맞는 방법을 찾아볼 수 있습니다.
기기를 루팅한 직후에는 큰 변화를 느끼지 못할 수 있습니다. 진짜 재미는 루팅 후에 시작됩니다. 루트 권한이 필요한 앱을 사용하고, 커스텀 ROM을 플래싱하고, 폰의 여러 설정을 세부적으로 조정하는 등 다양한 작업이 가능해집니다.
예를 들어, 루팅 없이도 일부 블로트웨어(사전 설치 앱)를 제거할 수 있지만, 완전히 없애려면 기기를 루팅한 뒤 Titanium Backup 같은 도구를 사용해야 합니다.
탈옥(Jailbreaking)이란?
아쉽게도 이건 다른 영역의 이야기입니다. 탈옥은 아이폰과 아이패드의 전용 용어입니다. 탈옥은 사실상 안드로이드의 루팅에 해당하는 iOS 작업으로, 폰의 민감한 영역에 접근할 수 있게 해주어 커스터마이징(혹은 고장!)이 가능해집니다.

애플이 탈옥을 강력히 막으려 하기 때문에 탈옥은 고양이와 쥐 게임처럼 계속되며, 최신 iOS 버전에서 패치된 보안 취약점에 노출될 위험도 있습니다.
참고로 루팅이든 탈옥이든 본인 기기를 수정하는 행위는 합법입니다. 다만 아이폰 탈옥에 대한 자세한 내용은 다른 글에서 다루기로 하고, 다시 안드로이드로 돌아가겠습니다.
언락(Unlocking)이란?
언락은 여러 종류가 있어서 헷갈리기 쉬운 용어입니다.
네트워크/SIM 언락이 첫 번째입니다. 네트워크 잠금 기기는 대개 통신사에서 보조금을 받아 구매한 폰입니다. 통신사는 해당 폰에 잠금을 걸어 자사 네트워크에서만 사용할 수 있도록 제한합니다.
하지만 단말 할부금을 모두 납부하고 다른 통신사로 옮기고 싶다면, 통신사는 법적으로 언락 코드를 제공해야 합니다(미국과 EU 기준). 따라서 통신사에 문의해 코드를 받으면 됩니다. 때로는 SIM 언락이 더 복잡해질 수도 있지만, 반대로 보조금 없이 언락된 상태로 구매한 폰이라면 이미 어떤 통신사에서든 사용할 수 있습니다.

부트로더 언락은 또 다른 종류의 언락입니다. 이는 루팅 과정에서 거의 첫 단계로 수행됩니다. 제조사들은 대개 기기의 부트로더를 잠가두는데, 부트로더가 잠겨 있으면 기기를 루팅할 수 없습니다. 부트로더 언락 방법은 보통 각 기기의 루팅 가이드 안에 함께 설명되어 있습니다.
커스텀 ROM(Custom ROM)이란?
ROM은 Read-Only Memory(읽기 전용 메모리)의 약자지만, 요즘은 그 의미와는 관계가 없어 이름이 다소 오해를 불러일 수 있습니다. (적어도 안드로이드 세계에서) ROM은 기본적으로 기기에서 실행되는 소프트웨어를 의미합니다.
그래서 HTC 스마트폰과 삼성 스마트폰의 외관과 동작 방식이 다른 것입니다. HTC와 삼성 모두 원본 안드로이드 코드를 가져와 자체적으로 수정하고 자신들만의 ROM을 개발했기 때문입니다. 둘 다 안드로이드지만 HTC의 ROM과 삼성의 ROM은 서로 다릅니다.
커스텀 ROM은 제조사가 아닌 다른 사람이 만든 ROM을 말합니다. 때로는 시간이 남는 열정적인 개인 프로그래머가 만들기도 하고, 때로는 CyanogenMod처럼 팀을 꾸려 특정 스타일의 ROM을 의도적으로 개발하는 회사도 있습니다.
루팅이 완료되면 커스텀 ROM을 플래시(flash)할 수 있습니다. 여기서 플래시란 불러오거나 설치한다는 뜻입니다. 커스텀 ROM을 플래싱한다는 것은 기기에 새로운 ROM을 설치하고 기존 ROM을 완전히 지우는 것을 의미합니다.

기기에 맞는 커스텀 ROM을 찾다 보면 몇 가지 유명한 이름을 접하게 됩니다:
AOKP: Android Open Kang Project의 약자입니다. 오픈소스 ROM이기 때문에 이를 기반으로 살짝 변형한 ROM들이 만들어지곤 하며, 그런 ROM들이 "AOKP 기반"이라고 표시됩니다.
CM: CyanogenMod의 약자입니다. 한때 작지만 인기 있는 ROM이었던 CyanogenMod는 소프트웨어를 개발하는 본격적인 회사로 성장했습니다. 최초의 OnePlus One에도 CyanogenMod가 기본 탑재되었으며, 무료 테마가 풍부한 훌륭한 테마 엔진을 갖추고 있습니다.
AOSP: 구글이 세상에 공개한 순수 안드로이드 버전으로, 흔히 스톡(stock) 또는 순정 안드로이드라고 불립니다. 어떤 ROM이 "AOSP 기반" 또는 "스톡 안드로이드 기반"이라고 하면 AOSP 코드를 가져와 자신들의 취향대로 수정했다는 뜻입니다.
Paranoid Android: 비교적 심플하고 깔끔하며 미려한 디자인을 지향하는 ROM입니다.
PAC-man: 게임 속 노란 캐릭터를 연상시키는 이름이죠? PAC-man은 CyanogenMod, AOKP, Paranoid Android라는 인기 ROM 세 가지를 결합한 것이라 기능이 매우 풍부합니다.
물론 덜 알려진 개발자들이 만든 다른 이름의 ROM도 두려워하지 말고 시도해 보세요. 위 목록만 신뢰할 수 있는 것은 아니며, 단지 가장 널리 알려진 것들일 뿐입니다.
알아두면 유용한 기타 안드로이드 용어
커스텀 리커버리(Custom Recovery)
안드로이드 기기를 직접 만지고 싶다면 리커버리에서 많은 시간을 보내게 됩니다. ROM 플래싱, 백업 생성 등 무거운 작업들이 이곳에서 이루어지기 때문입니다.
하지만 기기에 기본 탑재된 스톡 리커버리로는 이런 작업이 불가능하므로 커스텀 리커버리가 필요합니다. 대표적으로 TWRP와 CWM 두 가지가 있습니다.
TWRP는 Team Win Recovery Project의 약자이고, CWM은 ClockworkMod의 약자입니다. 원하는 ROM이 특정 리커버리를 요구하는 경우가 아니라면 어느 쪽을 사용해도 큰 차이가 없습니다.
난드로이드 백업(Nandroid Backup)
루팅 없이도 안드로이드 기기를 백업하는 방법은 여러 가지가 있지만, 난드로이드 백업은 가장 완벽한 백업 방식입니다. 기기의 모든 것을 통째로 복사하여 저장합니다.
덕분에 루트 권한 때문에 뭔가 잘못 건드려 문제가 생기더라도, 난드로이드 백업을 플래싱해서 언제든 이전 상태로 되돌릴 수 있습니다.
이름은 NAND(플래시 메모리의 한 종류)와 Android를 합친 것입니다.
Xposed
기기를 크게 바꾸고 싶지만 굳이 커스텀 ROM을 플래싱하고 싶지는 않다면? 그럴 때 Xposed가 유용합니다.

Xposed는 모듈을 설치해 어떤 앱보다도 훨씬 깊은 수준에서 기기를 변경할 수 있게 해주는 프레임워크입니다. 모든 것을 바꾸지 않고도 몇 가지만 조정하고 싶을 때 매우 유용합니다.
커널(Kernel)
커널은 운영체제의 엔진과 같습니다. 눈에 잘 보이지 않지만 배경에서 모든 무거운 작업을 처리합니다.
원한다면 커스텀 커널을 플래싱할 수도 있습니다. 어떤 커널은 성능이나 배터리 수명에 최적화되어 있고, 어떤 것은 더블탭 웨이크(Double Tap To Wake) 같은 기능을 작동시키기 위해 필요하기도 합니다.
어느 쪽이든, 굳이 변경하고 싶지 않다면 스톡 커널을 그대로 사용해도 전혀 문제없습니다.
브릭(Brick)
폰을 '브릭'했다는 것은 사실상 폰을 망가뜨렸다는 뜻입니다. 폰이 더 이상 작동하지 않는다면 브릭된 것입니다. 이 단어를 마주치는 상황은 대개 기분 좋은 일이 아닙니다.
소프트 브릭(soft brick)은 대개 수리 가능한 상태를 의미합니다. 예를 들어 부트루프(bootloop)(폰이 계속 재부팅만 반복하는 현상)에 빠졌거나, 부팅은 되는데 화면 절반만 정상적으로 표시되는 경우 등이 있으며, 이런 경우는 대개 고칠 수 있습니다.
하드 브릭(hard brick)은 기기가 완전히 끝장난 상태입니다. 시스템 수준에서 되돌릴 수 없는 무언가를 건드렸고, 기기는 더 이상 사용할 수 없게 된 것입니다. 다행히 이런 일은 드물지만 발생할 수 있으며, 브릭에 대한 책임은 오직 본인에게 있다는 경고문을 곳곳에서 보게 될 겁니다.
다행히 브릭을 피하는 올바른 절차를 따른다면 기기가 망가질 일은 거의 없을 것입니다.
Superuser / SuperSU
Superuser와 SuperSU는 사실상 같은 역할을 하는 서로 다른 두 앱입니다. 루팅된 기기에는 둘 중 하나만 있으면 됩니다.

이 앱들은 어떤 앱에 루트 권한을 부여할지 관리합니다. 앱이 루트 권한을 요청하면, 해당 앱에게 권한을 줄지 물어봅니다. 이렇게 하면 사용자의 허락 없이 임의의 앱이 루트 권한을 얻는 일을 막을 수 있습니다.
어떻게 시작해야 할까?
안드로이드 기기를 직접 만져보고 싶은 사람이라면 XDA-Developers 포럼으로 가서 자신의 기기 전용 섹션을 찾아보세요. 필요한 모든 정보는 자신의 기기(심지어 통신사 버전까지)에 맞춰져 있어야 하기 때문에, 모든 기기에 적용되는 완벽한 루팅 가이드를 만들기는 어렵습니다.
물론 단점도 있습니다. 일부 앱은 기기가 루팅된 것을 감지하면 작동하지 않으며(우회 방법이 있긴 합니다), 주의하지 않으면 폰을 망가뜨릴 수도 있습니다.
하지만 충분히 가치 있는 일입니다. 루팅된 기기는 작동 방식에 대한 완전한 자유를 주며, 때로는 루팅과 ROM 플래싱 과정 자체가 즐거움이 되기도 합니다.
이 목록에 추가하고 싶은 용어가 더 있나요? 안드로이드 용어 중 무엇이 가장 헷갈렸는지(혹은 지금도 헷갈리는지) 댓글로 알려주세요!