루팅

일본의 성우에 대해서는 루 팅 문서를 참조하십시오.

1 Looting

화재, 폭동 등이 났을때 건물, 상점 등에서 물건을 훔치거나 약탈하는 행위를 뜻하는 말로 일반적으로 이 단어는 게임에서 많이 쓰인다. RPG에서 적을 쓰러트리고나서 그 적이 지닌 물건을 가져가는 행동 또는 보물상자를 발견하고 이를 열어 내용물을 획득하는 것을 루팅이라 부른다. 일단 Loot 자체가 약탈품, 전리품등을 가리키는 명사이자 그것들을 얻는 행동을 가리키는 동사이기도 하니...

울티마 온라인 등 초기 MMORPG에서는 PK로 척살하고 아이템을 싸그리 벗겨가는 사실적인 약탈도 있었으나 인간적으로 너무해서 요즘에는 없다.(....) 당하는 입장에선 공들여 구비한 장비들이 한순간에 날라가버리니 심하게 멘붕해서 게임을 접기 십상이고, 하는 입장에서도 언제나 뛰는 놈 위에 나는 놈 있기 마련인 MMORPG의 특성상 언젠간 같은 꼴을 당하지 않으리란 보장도 없어서 결국 만만한 사냥감(?)인 저렙들만 상대로 약탈짓.. 그리고 신규유저 유입이 급감하고 기존 유저들도 멘붕하고 접는 식으로 줄어서 종국에는 게임이 망한다. GTA 시리즈도 어찌보면 약탈게임의 대표적인 예라고 할수있다.(...)

MMORPG에서는 다수의 인원이 몰려가 보스 몬스터를 공략하는 레이드 시스템을 많이 채용하는데, 모든 인원이 나눠 가질만큼 충분히 아이템이 나오는 것은 아니다. 그러므로 적절한 분배 규칙이 필요하다. 월드 오브 워크래프트의 경우는 주사위파티, 골드팟, 개인 루팅등의 방법이 존재하며, 여타의 MMORPG 에서도 유사한 분배방식을 사용한다.

1.1 MMORPG의 루팅 방식

1.2 관련 문서

2 Rooting

root + ~ing. 루트 권한[1]이 원래 허가되지 않은 기기에서 루트 계정 권한을 취득하는 것이다. 유닉스 계통의 운영체제에서는 루트권한 취득이 기본적으로 가능하지만,[2] 이러한 루트권한을 획득하는 것을 막아놓아서 시스템에 함부로 접근할 수 없게 만든 기기에 대해서는 시스템의 보안 구멍 등을 통한 해킹을 통해 루트 권한을 획득하는 절차가 필요하게 된다. 내가 휴대전화 관리자인데 내가 관리자 권한이 없다니 억울하기 짝이 없다. 이러한 루팅이라는 말이 매우 잘 알려진 것은 안드로이드를 통해서일 것이다.[3]

iOS탈옥(jailbreaking)도 넓은 의미의 루팅이라 할 수도 있다. 그런데 iOS의 경우에는 루트 권한을 얻지 않고 일부 시스템 파일의 조작이 가능한 경우가 많다. 물론 루트 권한이 필요한 경우에는 유닉스 계열과 마찬가지로 루트 권한 없이는 조작이 불가능하며 보안상의 구멍을 통해 루트 권한의 취득이 필요하게 된다. 그러나 실제로 탈옥한 애플 기기로 할 수 있는 작업들은 루트 권한이 필요 없는 경우가 많기 때문에 루팅이라 불리지 않고 이를 구별해서 탈옥이라 불리는 것이다.

2.1 안드로이드에서의 루팅

안드로이드에서의 루팅은 위의 설명대로 시스템의 권한을 얻는 것이다. 루팅'만' 한다고 해서 변하는 것은 슈퍼유저 권한을 획득할 수 있다는것 하나이지만, 안드로이드의 특성상 이것 하나가 큰 위력을 발휘하게 된다.

유닉스 이후 현대의 OS에서는 여러 계정을 만들어서 여러 명이 같이 쓸 수 있다. 보통 말하는 웹사이트의 ID와 같은 개념이다. 그런데 윈도우나 리눅스에서는 이 개념을 원래 목적대로 웹사이트 ID 비슷하게 사용하고 있으나, 안드로이드는 리눅스의 이것을 마개조하여 각 프로그램마다 하나의 ID를 갖게 하는데 이를 써먹었다. 이 때문에 안드로이드의 각 프로그램끼리의 상호작용에는 엄연히 한계가 존재한다. 어느 네이버 계정이 서로이웃된 블로그의 서로이웃공개 글은 볼 수 있을지 몰라도 그 사람의 이메일까지 볼 수는 없을 것이다. 루팅을 하면 관리자의 권한을 모두 얻을 수 있긴 하지만, 상기한 내용 때문에 안드로이드에서는 프로그램을 순정 상태보다 조금 더 주무르는 것에도 루팅이 필요한 상황이 존재할 수 있게 된다.

이렇게 얻는 권한으로 조작할 수 있는 것은 다음과 같다.

2.1.1 루팅으로 할수있는것들

  • 하드웨어의 성능 조절 - 오버클럭을 생각하면 된다. 다만 커널이 지원해야 하고 순정커널이면 그런 거 없다. 실제로 스마트폰의 CPU의 클럭을 올려서, 본래 가진 성능보다 더 높게 쓰는 방법이 있고 반대로 클럭을 낮춰서 배터리 소모를 줄이는 방법이 있다. 오버클럭을 한다고 해서 휴대폰이 항상 최대클럭으로 도는 것은 아니기 때문에 배터리타임에는 큰 차이가 없다고 볼 수 있다. 화면 OFF시 클럭다운 등 설정만 잘해준다면 고성능이 필요한 게임같은 경우 더 원활하게 사용하면서도 배터리타임은 더 좋을 수도 있다. 실제로 화면이 꺼졌을 때의 최대클럭을 낮게 잡아주면 대기시간의 배터리소모를 체감할 수 있을정도로 크게 줄일 수 있다. 또, CyanogenMod같은 커스텀 롬에는 시스템 I/O 스케쥴러를 설정할 수 있는데, 이 설정을 통해서도 최적화된 성능을 내게 할 수 있다. 클럭별로 걸리는 전압을 낮춰 배터리 소모를 줄일 수도 있는데 너무 낮출 경우 프리징이 걸리거나 휴대폰이 그대로 뻗을 수 있으니 주의.
  • 제작사나 통신사의 필수 프로그램 삭제[4] - 통신사나 제조사에서는 현지화나 자신들의 이익을 앞세워 느린 프로그램을 지울 수 없게 설치하는 경우가 많다. 옵티머스 Q의 한국형 프로그램이나 디자이어 HD의 마켓 프로그램 등이 이에 해당한다. 루팅을 하면 시스템의 모든 권한이 생기기 때문에 이러한 프로그램들을 지우고 기기를 좀 더 최적화를 시킬 수 있다. 심지어는 구글에서 안드로이드에 끼워주는 기본 프로그램들도 삭제가 가능하다. 쓸모 없는 시스템 앱은 비활성화 하더라도 램을 좀먹는데, 이를 지워줌으로써 최적화를 이룰 수 있다. 초창기 안드로이드 기기에서 그 효과가 극적으로 나타났으나, 신형 안드로이드 기기에서도 체감이 가능하다.
  • 각종 알림음이나 폰트의 교체 - 몇몇 기본으로 여러 폰트가 내장되어 있는 폰을 제외하면 나머지 폰들은 루팅을 하지 않으면 폰트 교체가 불가능하다. 폰트 교체를 위해 루팅하는 유저도 많은 편.(다만 갤럭시 S 이후에 국내에 나온 몇몇 안드로이드 폰들은 자체적으로 폰트 변경을 지원한다. 게다가 갤럭시S7 은 Samsung sans밖에없다. 하지만 다른 글씨체들이 워낙 가독성이 구려서 그냥 기본으로 쓴다.) 안드로이드는 기본적인 알림음, 문자음 등은 기본적으로 바꿀 수 있지만, 카메라 셔터음 같은 경우 국내법에 의해 도촬 등을 막고자 셔터음이 강제로 난다. 이것도 루팅 후에 자유롭게 바꿀 수 있다.
  • 외장메모리의 내장메모리화 - 외장메모리의 파티션을 나누고 나눈 파티션의 일부를 내장메모리에 쓰이는 포맷[5]으로 바꾸면 외장메모리를 내장메모리처럼 사용할 수 있다. 더구나 안드로이드는 프로요 이전기준으로 개발된 프로그램의 외장메모리 설치가 지원되지 않는다. 위젯 프로그램같은 경우는 아예 내장에만 설치해야 한다. 그래서 이런식으로 파티션을 나눠쓰면 용량문제 해결에 큰 도움이 된다. 하지만 app2sd를 쓸 일이 거의 없다. 내장메모리 용량이 작은 폰들의 경우 외장메모리와 바꿔치기 해서 쓰는 경우도 있다.
  • 커스텀롬 설치[6] - 안드로이드는 오픈소스라 자유로운 롬 제작이 가능하기 때문에, 자신이 쓰는 안드로이드 폰의 롬이 마음에 안든다면 교체가 가능하다. 커스텀 롬의 종류는 통신사 기본롬에 최적화만 한 것, 다른 제조사의 Ui를 모방한 것, 그리고 아예 아이폰처럼 만들어 버리는 롬등이 있다. 해외에 많이 팔린 폰의 경우 커스텀롬의 종류가 많아지며, 넥서스 원 같은 경우는 구글이 포기해도 XDA가 포기하지 않아서 계속 쓸 수 있는 폰이라는 우스갯소리도 나올 정도였다. 안드로이드의 버젼이 올라갔음에도 그에 맞춰 펌업이 되지 않은 기기의 경우. 이러한 커스텀롬을 설치해서 강제로 업그레이드를 할 수도 있다. 이게 잘 되면 수명이 1년가까이 연장되기도 하기 때문에 제조사들이 가한 커스텀때문에 업그레이드에 끙끙대면서 이쪽으로 루팅에 입문하는 이들도 적지 않은 편이다. 이것이야말로 생명연장의 꿈 다만 커스텀롬을 다루는 것은 부트로더 혹은 리커버리의 영역이다. 루팅은 여기 손대기 위한 수단 중 하나일 뿐이며 루팅이 필요없음을 장점으로 내세우는 커스텀롬도 존재한다.
  • 각종 키 맵핑/기타 - 예를들어 전원 버튼 말고 다른 버튼으로도 화면이 켜지게 할 수 있으며, 화면이 꺼졌을 때 볼륨키를 두번 누르면 다음곡으로 넘어가게 할 수 있다든가, 트랙볼로 재생 중인 노래를 변경할 수 있게 하는 등등 각종 키 맵핑으로 인해 많은 것을 할 수 있다. 또한 host 파일을 수정해 특정 광고를 차단한다거나, 부팅애니메이션의 변경, 마켓의 국가별 차단 프로그램 해제,[7] 각종 하드웨어 봉인 해제,[8] 화면 녹화,[9] 휴대폰 디스플레이의 색온도 조정, 스피커의 최대볼륨 부스팅, 라디오 모듈이 있는 모델의 경우 FM라디오 기능 설정, 하드웨어 키를 비활성화시키고 소프트웨어 키를 활성화, DNS조정으로 인한 각종 웹사이트/동영상 스트리밍의 속도향상 등 많은 것을 할 수 있다. 예를 들어 HTC의 태블릿 플라이어 4G의 경우 통화기능이 없지만 build.prop의 수정으로 전화기능을 활성화시킬 수 있다. 홈 버튼과 관련된 문제도 해결할 수 있는데 가장 많이 쓰이는 경우는 안드로이드 계열 폰에서 많이 보이는 터치 버튼과 홈 버튼의 속도 차이,[10][11] 일명 홈딜레이를 해결하기 위해 쓰이는 경우. 루팅 후 시스템 내부를 직접 수정할 수 있는 프로그램을 이용해서 작업을 하는데[12] 대부분은 인식을 담당하는 파일을 교체하는 수준에서 끝나지만 해당 모델의 패치된 파일이 없어서 직접 코드를 손대야하는 경우도 있다. 전자의 경우는 그나마 좀 쉽지만 후자의 경우 짤없이 주변에 있는 안드로이드 관련 개발자의 손을 빌려야 한다. 함부로 코드 건들다가는 모든 게 맛이 가기 때문. 이러면 AS센터 가도 답이 없다.
보안을 우회하는 것이지만 OS차원에서 기본적으로 제공하지 않는 보안을 위해서도 사용된다. 예를 들면 안드로이드 백신어베스트의 방화벽 기능에 필수이며, 도난방지 기능의 무력화를 완벽히 막는데도 필요하다. 또한 특수한 프로그램을 통해 프로그램이 갖는 권한을 제작자가 정해준 그대로가 아니라 직접 통제해서 필요없어 보이거나 보안상 위협이 되는 권한을 차단할 수도 있다. 안드로이드용 Tor가 모든 인터넷 연결에 대해 작동하게 할때도 필요하다. 부팅시에 추가적인 파일을 시스템에 불러올 수 있게 하는 Xposed framework의 등장으로 루팅만 되어있다면 롬 수준에서 갈아엎어야 추가가 가능했던 기능들의 추가가 가능해졌다. 작게는 소소한 UI의 커스텀부터 모든 애플리케이션에 적용가능한 소형 창(멀티윈도우), 한손모드, 애플리케이션별로 UI, DPI, 클럭설정을 바꾼다든가 등 중에서 골라잡아 추가하는게 가능해진다.
  • 외장 SD 카드 쓰기 권한 부여 - 킷캣 이전의 안드로이드 버전 혹은 의견을 받아들여 정책이 개선된 것으로 알려진 롤리팝 이후 버전을 사용하는 유저들은 이게 무슨 소리냐고 받아들이겠지만, 킷캣 업데이트 이후 구글 기본앱을 제외한 서드파티 앱에서 외장 SD카드의 쓰기 권한이 박탈되었다. 기본 앱 '내 파일'외의 다른 파일관리자 툴(ES 탐색기 등)에서 외장 SD의 파일을 삭제조차 불가능하며, 브라우저의 기본 다운로드 및 토렌트 등의 경로를 외장 SD로 설정하면 다운로드가 완전히 불가능하다. 어떤 식으로든 외장 SD 카드의 쓰기 권한을 요구하는 모든 작업 즉 파일을 옮길 때도, 사진 뷰어에서 사진을 지울 때도, 동영상 플레이어에서 폴더간 동영상 복사를 할 때도 극소수의 구글 공식 앱이 아니면 작동하지 않는다. 사실상 기본앱 사용 강제+클라우드로 어서오세요. 하지만 유저들이 착각하지 말아야 할게 애초에 안드로이드를 만드는 구글은 SD카드를 추가용량으로 활용하는 것을 지원한 적이 없다. 안드로이드 유저들이 그걸 지원했다고 생각하는 이유는, 대개 제조사 커스텀으로 우회돼서 가능케 된 일종의 꼼수를 구글이 공식 지원한 것처럼 여기고 있기 때문이다. 구글이 원래 지원해 왔는데 킷캣에 와서 막았다고 생각하는건 틀린 것이다. 넥서스원은 레퍼런스 폰으로 안 친다. 하여튼 순정을 쓰고 싶었으나 이 문제 때문에 울며 겨자 먹기로 루팅을 하게 되는 경우가 흔하다. 루팅 후에는 시스템 구역의 xml 파일을 수정함으로서 간단히 해결. 젤리빈 장기 투숙 만세!

2.1.2 루팅하는 법

루팅을 하는 방법은 크게 리커버리를 통하는 방법과 취약점을 이용하는 방법 두 가지로 나뉜다. 리커버리를 통하는 방법은 아예 안드로이드를 꺼 버리고 별도의 OS인 리커버리를 구동시켜서 저장장치에 접근한 뒤 슈퍼유저 바이너리를 설치하는 것으로, 부트로더 락만 걸려있지 않다면 안드로이드버전과 관계없이 가장 확실하게 루팅이 가능하나 약간 번거롭다는 단점이 있다. 취약점을 이용하는 방법은 OS와 함께 켜져 있는 보안시스템을 휘저어서 뚫어버린 뒤 슈퍼유저 바이너리를 설치하는 것으로,[13][14] 안드로이드의 버전에 따라 통하는 방법이 달라져서 루팅 이전에 사전지식이 약간 필요하며, 최신 버전의 안드로이드의 경우 취약점이 알려지기 전에는 이 방법으로 루팅하는 것이 불가능하다는 단점이 있다. 최신 OS를 탑재하고 부트로더 락이 걸려 있지 않은 넥서스 계열의 폰은 전자의 방법이 주로 사용되며, 부트로더 락을 걸고 나오는 제조사의 폰은 OS버전이 어떻든 간에 후자의 방법을 사용할 수 밖에 없다.[15] 그렇기 때문에 제조사에서 취약점을 막아놓으면 일단 화부터 내고, 루팅툴이 개발되면 일단 좋아하고 보는 경우가 많은데, 위 내용을 다시 한 번 읽어보자. 루팅에 사용되는 취약점은 근본적으로 OS의 보안체계를 휘저어 놓는 취약점이다. 다시 말해, 루팅툴이 개발됐다는 것은 그 기기의 보안이 완전히 날아갔다는 것과 다름없는 말이다. 어떤 앱이 취약점을 이용해서 사용자 모르게 루트 권한에 접근하고 시스템을 휘저어 놓는다면 OS 입장에서 그보다 더한 재앙은 없다. 그러므로 구글과 제조사는 취약점을 막을 수 밖에 없는 것이다. 가장 이상적인 경우는 제조사에서 부트로더를 락을 걸지 않으면서 OS를 최신으로 맞춰 주면 루팅을 원하는 사용자는 루팅을 하고 그렇지 않은 사용자는 OS의 보안에 의해 보호받는 것이겠으나 현실은 루팅하다 벽돌되서 AS센터를 찾는 사람이 한둘이 아니라 기업 입장에서는 손해만 보는 일이다.

2.1.3 주의점

하기전에 정말 루팅이 필요한지 잘 생각해보고 신중하게 결정하자. 일단 보안상의 허점이 매우 많아진다.(백신을 사용하면 되긴 하지만 사용자에 따라 보안수준은 달라진다 사실 루팅 안해도 이상한 앱을 설치하면 다 뚫린다) 따라서, 터치한번 잘못해서 바로 핸드폰이 고장나는 경우가 있다. 여러 스마트폰 커뮤니티에 가보면 대개 루팅을 하지 않고 사용한다. 혹시 위에 써진 장점만 보고 호기심에 루팅할 생각을 하는 초보자들은 하지 않는 것을 권한다. 윈도우에서 최고 관리자 권한에 맘대로 접근 할 수 있던 정책때문에 여러 악성 프로그램에 허약했다는 것을 명심하라. 슈퍼유저 앱과 바이너리를 꼭 제때 업데이트 하고, 루트 권한 허가 창이 뜰 때 마다 그냥 넘기지 말고 과연 이 앱이 정말로 루트 권한이 필요한 상황이라 띄우는 것인지 한번씩만 생각해주고 넘어가자.

또한 루팅을 하면 제조사의 무상 AS가 불가능해진다. 심지어 구입한지 1달이 채 지나지 않더라도 루팅을 했다는것이 발견되면 바로 무상AS가 불가능해지며 심지어 일부 제조사는 유상AS마저 거부한다. 모토로라가 이런 케이스.[16] 특히 커스텀롬을 설치하고 AS센터를 찾는 호갱님들은 망했어요. 심지어 루팅하면 충전기 AS도 거부하는 경우도 있다.그냥 충전기 사 하지만 이는 케바케가 좀 심한게 같은 기종을 수리받아도 루팅을 이유로 AS를 거부하는 경우와 루팅 여부에 별 관심없는 경우가 나뉘며, 심지어 루팅검사를 해보고도 주의만 주고 쿨하게 무상수리해주는 수리기사도 있다. AS를 장점으로 미는 삼성은 루팅에 관대한 경우가 많은 편. CyanogenMod깔고 갔는데도 AS받았다. CyanogenMod쓰던 폰이 고장난 채 AS센터에 가면 순정롬+공장초기화해 준다 카더라 럭키금성아재들은 무한부팅도 풀어준다 전에 순정기반 커스텀롬 설치하고 이거 부팅이 안돼요 했더니 게임 같은거 인터넷에서 받지말고 스토어에서 받으라면서 순정 + 루팅기록 지웠다 카더라

또한 기기에 따라 OTA를 받을 수 없다. 공장초기화를 해도 루팅흔적이 남아있어 받을 수 없기 때문에 루팅흔적을 잘 지우지 못하겠다면 루팅 전 잘 생각해보자. 물론 pc에 연결하면 업데이트 할 수 있긴 하다.

루팅자체는 하드웨어의 수명에 영향이 절대로 없다. 영향있으면 기본적으로 루트권한을 *nix 서버나 데스크톱은 전부 단명하게? 루트권한에 대한 지식이 없는 유저가 처음에는 폰트나 알림 음을 바꾸는 수명에 영향이 없는 소극적인 커스터마이징을 하다가 갈수록 오버클럭같은 행위를 위험성조차 숙지하지 않고 시도하는 등 말 그대로 휴대폰을 혹사한다면 하드웨어 수명에 영향을 줄 수 있다. 실제로 스마트폰을 어리숙하게 아는 좆문가들은 오버클럭 자체에 대한 이해가 없는 상태로 어? 속도가 빨라진다네? 오,좋은 거네?라는 식의 마인드로 오버클럭을 시도하는 경우가 많은데, 이 경우 휴대폰의 내부 기기 자체의 수명을 갉아먹을 수 있는 위험부담이 큰 행동이고, 성능이 좋은 컴퓨터도 권장하지 않는 방법이다. 게다가 검증되지 않은 프로그램들과 잘못된 오버클럭 방법을 쓰다 보니 오류가 범람하고 온갖 악질 프로그램들이 판을 치고 있다.[17]

간혹 루팅하면 기기의 속도가 빨라진다고 착각하는 사용자도 존재한다. 루팅은 관리자 권한을 획득하는 것으로 하드웨어의 속도와는 직접적인 관련이 없다. 빨라지는 경우, 혹은 느려지는 경우는 루팅을 한 후에 시스템을 직접 변형한 이후, 예를 들자면 기본 앱을 지웠다거나, init.d/스크립트를 적용했다거나, 커스텀 리커버리를 통해 커스텀 커널을 올리는 등의 시스템 변형을 하는 경우에 생기는 일이다. 그러니 쓸데없이 루팅해서 곤란한 일에 처하지 말자.

그리고 은행, 금융앱 등 보안에 극히 민감한 앱이나 주로 메이저한 게임회사의 앱들 중 상당수가 앱들이 루팅을 한 기기는 실행이 되지 않도록 방지하고 있어 언루팅 혹은 루팅 숨김을 하지 않는 이상 루팅 실행 방지 처리된 앱은 사용하지 못한다.[18]

2.1.4 제어용 프로그램

안드로이드에서 루팅여부를 확인할수 있는 가장 간단한 방법은 SuperUser 프로그램[19]이 설치되어 있는지를 보는것이다. 이 프로그램이 루트권한의 획득을 제어하기 때문에 사실상 루팅 그 자체라고 생각하는 경우가 많으나 사실은 그렇지 않다. SuperUser 프로그램은 su 바이너리와 같이 연동되어서 루트 권한을 취득하는데, su가 설치되기 위해서는 반드시 루팅툴이나 기타 보안 구멍을 통한 해킹을 통해 루트 권한을 획득하고 나서야 su를 설치할 수 있기 때문이다. 또는 리커버리에서 설치하여 루팅+바이너리 설치를 동시에 하는 방식도 있지만 의외로 이 방법을 모르는 사람이 많다. 이 프로그램이 없다고 하더라도 기술적으로 얼마든지 루트권한을 획득하고 파일을 조작하는 것이 가능하지만, SuperUser 프로그램은 다른 프로그램들로부터 요청되는 루트 권한을 보다 손쉽게 컨트롤 할 수 있게 도와준다. 이렇게나 중요한 프로그램임에도 불구하고 특유의 아이콘 생김새때문에 바이러스로 오해하는 경우도 많고 실제로 백신 프로그램들은 SuperUser 프로그램을 바이러스라고 알려준다... 한동안 관련 프로그램은 하나였다가 2011~2012 사이에 SuperSU가 새로 등장했는데, 안정성 향상 및 수시로 언루팅 상태로 바꿔줄 수 있는 기능에, 유료버전의 경우는 UAC와 같은 암호를 통한 권한제어를 최초로 제공하기 시작한 프로그램이다. 언젠가부터 유료기능을 간단한 설정변경으로 개방하는 것을 공식적으로 지원하고, CM팀과 XDA 사이의 문제로 인해, 2015년 현재 커스텀롬 기본 탑재 프로그램의 주류다. 국내의 경우는 국내 은행앱을 사용하기 위해 변경된 SPAPASU가 존재한다.

ClockworkMod 개발자로 알려진 Koush가 또 다른 프로그램 Superuser를 만들었다. 플레이스토어 링크. 이 프로그램은 오픈소스[20]이며, 소스는 github에 공개했다. 그래서 그런지는 몰라도 CyanogenMod롬과 대부분의 롬에는 아예 설정 자체에 Superuser가 메뉴로 넣어져있는 경우가 많다.

이러한 루팅 제어용 프로그램들은 각종 루팅 비권장 프로그램들의 좋은 타겟이 되곤 한다. 즉 핸드폰의 루팅 여부를 이 프로그램이 있느냐 없느냐만으로 확인하는것으로 이 프로그램이 있다면 루팅폰으로 판단하여 서비스 제공을 거부하는 형식이다. 주로 단말기 인증이 필요한 몇몇 프로그램과, 돈이 오가는 금융 프로그램 및 인터넷 쇼핑 프로그램등이 이런 방법을 사용하는데, 이건 말 그대로 프로그램의 유무만 체크하는 것이라서 루팅 없이 제어 프로그램만 있어도 루팅폰으로 취급하여 서비스 제공을 거부한다. 그러나 우리는 답을 찾을 것이다. 늘 그랬듯이 위에서 언급했듯이 국내 은행앱을 사용하기 위해 변경된 SPAPASU를 이용한 임시 언루팅으로 많은 유저들이 인터넷 뱅킹을 이용하고 있다.

2.1.5 기타

안드로이드의 루팅은 SDK등의 개발도구나 프로그램을 통해서 이뤄진다. Bootloader를 언락하지 않았다면, 약관을 어긴것은 아니고 자국도 안남기 때문에 언루팅하여 일반 폰 처럼 A/S를 받는 것이 가능하다.[21] 그렇다 하더라도 루팅의 절차가 간단한 것은 아니며,[22][23] 소위 말하는 벽돌이 될 확률도 있다. 루팅 전에 충분히 절차를 숙지하고, 복구 방법을 정확히 알아둔 후, 중요한 데이터의 백업이 이뤄진 상태에서 할 수 있도록 하자. 되도록 첫 루팅 시도는 주변의 경험자에게 부탁하여 같이 해보는게 좋지 않을까.

혹시 루팅을 한 위키러라면 xda-developers를 자주 들어가보자. 자료를 매우 많이 찾을 수 있다. 다만 모든게 영어로 이루어져 있다는게...[24]

2.1.6 잘못 알고 있는 것

2.1.6.1 안드로이드 루팅이 불법?

안드로이드 루팅자체가 불법이라고 오해하는 사람들이 있는데, 결론부터 말하면 루팅은 불법 행위가 아니다.

우선 안드로이드 자체가 오픈소스이며[25] 제조사별로 커널소스나 부트로더소스 같은 중요 영역을 공개하고 있는 상태다. 모든 루팅은 이 영역의 허점을 이용한다. 라이센스의 특성상 오픈소스를 뚫어서 바꾸는 것은 저작권법에도 아무런 문제가 없다.

루팅은 불법이라고 아는 사람들이 아직도 있다. 우선 저작권법 제124조 제2항을 보면 알겠지만 안드로이드오픈소스이고 그것을 변경하는 것이기 때문에 <저작권 그 밖에 보호되는 권리의 기술적 보호조치>가 아니다는 것이다. 즉, 법적으로는 아무 문제가 없다

네이버 지식in
루팅(네이버캐스트)

다시 한 번 말하지만 안드로이드 루팅이 불법이 아니다!

그렇지만, 약관 위반은 맞기 때문에[26], 루팅을 하다가 벽돌폰이 되는 등의 문제가 발생되었을때, 정식 A/S를 받을 수 없다.

2.1.7 루팅 프로그램 목록

  • CF Auto Root
  • framaroot[27]
  • gingerbreak[28]
  • kingoroot[29] #
  • lg one click root[30]
  • nexus root toolkit[31]
  • stump root
  • superoneclick[32]
  • tegrak kernel[33]
  • towelroot #
  • z4root[34]
  • Baiduroot[35]
  • iroot
추가바람.
  1. 시스템의 모든 것을 허가 과정 없이 만질 수 있다.
  2. sudo나 su 등으로 때에 따라서 루트 권한을 잠시 빌려 쓸 수도 있는데 sudo의 경우 윈도의 '관리자 계정'정도의 느낌으로 루트 계정의 비밀번호를 몰라도, 관리자 계정으로 지정된 특정 계정의 비밀번호 입력 만으로 잠깐 루트 권한을 사용할수 있다. 반면 su의 경우 루트 계정이 비밀번호를 알아야 한다.
  3. 최적화 작업이 거의 루팅을 필요로 한다.
  4. 다만 안드로이드 4.0 이상 버전에서는 루팅을 하지 않고 환경설정에서 비활성화가 가능하다. 그러나 이마저도 막아놓은 경우가 있으며, 이렇게 해도 백그라운드에서 램을 먹는다.
  5. 리눅스 포맷인 ext2, 3, 4.
  6. 커스텀롬을 설치를 위해 항상 루팅이 필요한 것은 아니다. 갤럭시류의 경우에는 Odin을 통해 간단하게 리커버리만 교체하면 루팅 없이 가능하다. 이 항목은 루트권한을 이용해 Android 시스템에서 리커버리를 플래싱 하는 등의 경우에 해당한다.
  7. 2012년 초 이전엔 게임카테고리가 게등위때문에 차단이었다. 현재도 카테고리는 개방이 되었지만 특정 프로그램의 검색 및 결제가 차단된 경우가 존재한다.
  8. 동영상 재생이나 소프트웨어적으로 봉인되어 있는 램 등등을 해제하는 것. 대표적인 예로 옵티머스 Q의 5대봉인.
  9. 5.0 롤리팝에서 공식적으로 지원하기 시작했다.
  10. 갤럭시 시리즈를 예로 들면 전면에서 양옆의 터치버튼은 터치스크린과 거의 같은 반응 속도를 보여주지만 정작 가운데의 홈버튼을 담당하는 물리 버튼은 누르고 0.5초-1초 가량의 딜레이를 보여준다.
  11. 기본으로 깔려있는 S 보이스 프로그램의 '홈키로 열기(홈 버튼을 두번 눌러 호출하는 기능)' 때문에 딜레이가 생기는 경우도 있다고 한다. 한번 꺼 보자.
  12. 물론 이 프로그램은 사용할 시 매~~우 조심해야 한다. 사실상 컴퓨터 레지스트리 코드에 손대는 것과 동급의 위험한 일이기 때문.
  13. 보통은 이때 슈퍼유저 앱도 함께 설치하지만 앱 자체는 루팅 여부와 관계없이 설치 가능하다. 따라서 엄밀하게 따지면 루팅 과정에 포함되지는 않는다.
  14. 루팅앱에서 백신이 바이러스로 탐지하는 경우가 있다.
  15. 단, XDA버프로 먹고사는 HTC는 이걸 알았는지 One시리즈 발매쯤부터 강제로 공장초기화를 거치긴 하지만 공식적으로 부트로더 언락을 지원한다.
  16. 모토로라에서는 루팅을 만악의 근원이라고 보고있다. 물론 다른 제조사도 마찬가지지만, 모토로라처럼 루팅을 발견하고 전산망에 루팅유저 기록을 남기는 제조사는 사실상 없다. 전산망에 등록하므로 당연히 모든 AS센터에서의 AS자체가 불가능해진다. 유상AS마저도 거부당할 수 있다. 그런데 KT테크도 그런 짓을 했다.
  17. 하드웨어 쪽만 안 건드리면 하드웨어 수명에 영향이 갈 일은 없다. 소프트웨어 데미지야 순정롬으로 재설치 해버리면 된다. 그러나 현실은 시궁창. 일단 RUU라는 프로그램으로 하면되는데 일단 빌드번호와 똑같은 RUU를 설치해야 된다. 그리고 RUU로 순정으로 교체 하는 도중 오류가 뜨면 망했어요. 넥서스는 걍 팩토리밀면 끝난다
  18. SuperSU 등 루팅 관리 앱에 숨김 기능이 있지만 이마저 잡아내는 앱 또한 적지 않다. 또한 곰돌라이트 커스텀 롬의 경우 컴퓨터 없이도 루팅/언루팅을 할수 있다.
  19. 대표적으로 Superuser, Supersu가 있다.
  20. 아파치 라이센스를 따른다. LICENSE
  21. 예를들어 이미 삼성에는 기존루팅여부를 판가름할 수 있는 툴이 있으며, 갤럭시S2, 갤럭시 노트등 삼성 스마트폰의 경우에는 다운로드 모드에 아예 기록이 남지만(이는 카운터 리셋 JIG를 사용해서 지울 수 있다) 결국 삼성 AS 직원들이 대인배인것. 그리고 무엇보다 CPU를 극한으로 오버클럭하거나, 맞지도 않는 타 기기의 롬/펌을 강제로 올려 보드를 날려먹는 정도가 아닌이상 다른 문제들은 리커버리 모드 등의 소프트웨어만으로 고칠 수 있기때문에 AS를 거부할 이유가 없다. 하지만 표면적으로 루팅을 권장하면 안되기에 공식적으로는 루팅시 AS가 거부될 수 있다고 말하고 있다. 카메라에 먼지가 들어가거나 기타 다른 문제로 AS센터 방문했는데 새 폰을 주더라, 메인보드를 통채로 갈아주더라, 디스플레이를 통째로 바꿔주더라 등등 삼성의 황당할 정도의 묻지마 AS는 이미 유명하다. 수리하는게 귀찮은건가? 뭐 좋은 게 좋은 거다
  22. 요즘은 전용 프로그램이나 framaroot, Baiduroot, Towelroot, Kingroot 등 컴퓨터 없이 앱 형태로 설치 후 몇 번의 터치로 쉽게 루팅 가능한 툴이 있지만 모델이 한정되어있다.
  23. Kingroot의 경우 안드로이드 5.1이하 기기에서만 사용가능하다
  24. 초중등 영어만 알아도 사용가능하다. 어차피 서술되어있는 대부분의 영어는 다 그쪽사람들만 알아들을만한 용어라서...
  25. 여기에서 소스 코드가 공개되어 있다.
  26. 루팅은 각종오류가 일르킬수도 있으므로 몇몇 제조사에서는 루팅하지 말라고 한다. 약관에서도 들어가 있다. 만약 이를 어긴채 루팅을 하면 A/S 무료 수리가 박탈당한다. 그 이유은 제조사에서는 루팅하지 말라고 했는데. 루팅을 했기 때문.
  27. 4.0과 4.1 대부분 기종 지원.
  28. ~2.3.6까지 지원.
  29. 보안적 우려가 많은 만큼 supersume또는 별도의 sh파일로 Kingroot를 삭제 하고 SuperSU와 같은 프로그램으로 갈아 탈 수 있다.
  30. LG기종만 가능.
  31. 사실 이 프로그램은 넥서스 기종을 대상으로 루팅뿐만이 아닌 다른 기능들을 제공한다. 백업과 복구는 물론 커스텀 리커버리 설치 등등 한마디로 fastboot와 adb 명령어를 클릭만으로 조작할 수 있게 만든 편리한 프로그램이다.
  32. ~2.3.6까지 지원.
  33. 구형 갤럭시 기종만 가능.
  34. 2.2 대부분 및 2.3 일부 기종 지원.
  35. 거의 대부분의 구형 기종들을 지원. 다만 이걸 사용하면 자체 SU 관리자가 깔리며, 없애기가 조금 힘드니 주의하자.