Computer >> 컴퓨터 >  >> 소프트웨어 >> 소프트웨어

루트 액세스란 무엇인가? PC와 스마트폰에서 중요한 이유

컴퓨터나 기타 기기에서 "더 높은 권한이 필요합니다"라는 메시지를 본 적이 있다면, 이미 '루트 액세스(Root Access)'의 필요성을 마주한 것입니다.

운영체제는 사용자가 필요한 작업을 자유롭게 수행하면서도 전체 시스템을 망가뜨리지 않도록 균형을 잡아야 합니다. 좋든 싫든, 컴퓨터에 대한 '루트 액세스' 권한을 갖게 되면 시스템의 모든 열쇠를 쥐게 됩니다.

운영체제는 양파와 같다

운영체제(OS)는 양파처럼 여러 층으로 이루어져 있습니다. 다만 양파와 달리 운영체제에는 '커널(Kernel)'이 존재합니다.

커널은 운영체제의 가장 아래쪽 핵심 계층으로, 컴퓨터 하드웨어와 직접 통신하는 부분입니다. 컴퓨터가 운영체제를 불러올 때 가장 먼저 로드되는 것이 커널이며, 항상 RAM에 상주합니다. 커널에 문제가 생기면 컴퓨터는 곧바로 다운됩니다. 즉, 커널은 운영체제에서 가장 중요한 부분이라 할 수 있습니다.

루트 액세스란 무엇인가? PC와 스마트폰에서 중요한 이유

커널 주위에는 파일 시스템, 디바이스 드라이버, 응용 프로그래밍 인터페이스(API), 사용자 인터페이스(UI) 등 다양한 OS 구성 요소들이 배치되어 있습니다. UI는 사용자인 우리와 백그라운드에서 작동하는 이 모든 구성 요소들을 연결해 주는 역할을 합니다.

대부분의 사용자는 일부 OS 구성 요소에만, 그것도 제한된 범위 내에서만 접근하면 되기 때문에 운영체제에는 '권한(Privilege)' 수준이라는 개념이 존재합니다.

OS 권한의 기본 이해

현실 세계와 마찬가지로, 운영체제에서 특정 권한을 갖는다는 것은 낮은 권한의 사용자가 접근할 수 없는 영역에 접근할 수 있음을 의미합니다. 접근은 여러 방식으로 제한될 수 있는데, 가장 흔한 예가 파일 시스템 접근입니다. 특정 데이터에 대해 '읽기(Read)' 권한만 있다면 해당 파일을 열어 볼 수는 있지만 수정할 수는 없습니다. 수정하려면 '쓰기(Write)' 권한이 필요합니다.

일부 데이터는 '읽기' 권한조차 아예 주어지지 않습니다. 예를 들어 공용 컴퓨터에서 직원만 열람해야 하는 데이터에 일반 사용자가 접근하도록 허용해서는 안 되겠죠.

루트 액세스란 무엇인가? PC와 스마트폰에서 중요한 이유

또 다른 일반적인 제한은 컴퓨터 설정과 소프트웨어 설치와 관련이 있습니다. 서로 다른 권한 수준을 활용하면 사용자가 응용 프로그램을 설치·제거하거나 시스템 배경화면을 변경하는 행위를 차단할 수 있습니다.

루트 액세스는 최고 권한

'루트 액세스'를 갖고 있다는 것은 컴퓨터에서 가능한 최고 수준의 권한을 갖고 있다는 뜻입니다. 숨겨진 파일이나 데이터는 하나도 없으며, 루트 사용자는 운영체제의 모든 측면을 변경할 수 있습니다.

루트 사용자가 실행하는 응용 프로그램도 동일한 권한으로 동작하기 때문에 루트 사용자가 할 수 있는 모든 작업을 수행할 수 있습니다. 루트 액세스는 다양한 문제 해결과 일상적인 컴퓨터 유지보수에 필수적입니다.

루트 사용자를 다른 말로 '관리자(Administrator)'라고 표현하기도 합니다. 다만 경우에 따라 관리자 계정이 루트 계정보다 약간 낮은 권한을 가질 수 있으며, 이는 운영체제와 구체적인 설정 방식에 따라 달라집니다. 대부분의 경우 관리자 권한과 루트 권한은 같은 의미로 사용됩니다.

Linux의 사용자 권한 체계

Linux를 비롯한 'Unix 계열' 운영체제는 루트 계정에 대해 독특한 접근 방식을 취합니다. Linux에는 항상 최소 하나의 루트 계정이 존재하며, 이는 운영체제를 처음 설치할 때 생성됩니다. 기본적으로 이 계정은 일상적인 용도로 사용하는 계정이 아닙니다. 대신 일반 사용자가 루트 권한이 필요한 작업을 수행해야 할 때마다 사용자 이름과 비밀번호를 입력해 일시적으로 권한을 상승시키고, 작업이 끝나면 다시 일반 사용자 권한으로 돌아갑니다.

텍스트 기반 인터페이스인 Linux 터미널에서는 'sudo'(superuser do의 줄임말) 명령어를 사용할 수 있습니다. sudo 뒤에 오는 명령은 루트 권한으로 실행되며, 이때 비밀번호를 다시 한번 입력해야 합니다.

Windows와 macOS의 사용자 권한 체계

오랫동안 Microsoft Windows는 루트 권한에 대해 다소 느슨한 태도를 유지했습니다. 기본 사용자 계정이 곧 관리자 계정이었기 때문에 Linux 방식과 같은 수준의 보안성을 원한다면 사용자가 직접 설정을 변경해야 했습니다.

루트 액세스란 무엇인가? PC와 스마트폰에서 중요한 이유

최신 버전의 Windows에서는 관리자 권한이 필요한 작업을 수행하려고 하면 UAC(사용자 계정 컨트롤) 창이 나타나고, 관리자 비밀번호를 입력해야 합니다. 또한 특정 응용 프로그램을 관리자 권한으로 실행할 수도 있습니다. 예를 들어 명령 프롬프트나 Windows 터미널을 관리자 권한으로 실행하면 세션이 유지되는 동안 비밀번호를 반복해서 입력할 필요가 없습니다.

Apple의 macOS는 Linux와 마찬가지로 Unix 계열 운영체제로서, 일반적인 사용 범위를 벗어난 작업을 시도할 때마다 작업 단위로 권한 상승이 필요합니다. macOS에서는 자물쇠 아이콘을 자주 볼 수 있는데, 클릭하면 루트 사용자 비밀번호로 시스템 설정을 잠금 해제하고 작업이 끝나면 다시 잠글 수 있습니다.

루트 액세스란 무엇인가? PC와 스마트폰에서 중요한 이유

기본적으로 macOS는 Windows보다 권한 관리가 좀 더 엄격합니다. 예를 들어 어떤 앱이 외부 드라이브의 데이터에 접근해야 하는 경우, macOS는 처음 시도할 때 사용자에게 허용 여부를 묻습니다.

안드로이드 스마트폰의 루트 액세스

시스템 관리자가 아닌 대부분의 사람들은 안드로이드 스마트폰과 태블릿을 통해 '루트 액세스', 즉 '루팅(Rooting)'이라는 개념을 처음 접하게 됩니다. 안드로이드는 오픈소스 운영체제지만, 삼성이나 OnePlus 같은 거의 모든 제조사는 고객에게 폰의 루트 권한을 제공하지 않습니다. 대신 폰 하드웨어에 대한 저수준 접근이 불가능한 특수 사용자 계정을 사용합니다. 따라서 PC와 달리 안드로이드 폰의 운영체제를 마음대로 교체하거나, 제조사가 명시적으로 허용하지 않은 시스템 변경을 할 수 없습니다.

많은 폰에서는 루팅 앱을 실행하는 것만으로 루트 권한을 얻을 수 있지만, 일부 기기는 컴퓨터와 ADB(Android Debug Bridge)를 활용하는 다소 복잡한 루팅 과정이 필요합니다. 다양한 원클릭 루팅 방법이나 튜토리얼을 참고하면 폰에 대한 루트 액세스를 확보할 수 있습니다.

루트 액세스란 무엇인가? PC와 스마트폰에서 중요한 이유

루팅에 성공하면 사실상 기기의 모든 측면을 변경할 수 있게 됩니다. 통신사가 미리 설치한 블로트웨어(Bloatware) 제거, 제조사가 사용자의 손이 닿지 않게 해둔 기능의 활성화 또는 비활성화 등이 가능합니다. 안드로이드 폰을 루팅하는 것은 운영체제를 완전히 교체하고자 할 때의 첫 번째 단계이기도 합니다. 여기에는 최신 버전의 안드로이드, 커스텀 ROM, 심지어 제조사 고유 인터페이스가 없는 순정 안드로이드까지 포함될 수 있습니다. 기기를 루팅하고 부트로더의 잠금을 해제하면 대체 펌웨어의 세계가 열립니다.

대표적인 루팅 도구로는 SuperSU와 Magisk가 있으며, 사용에 따른 책임은 본인에게 있습니다. 아니면 안드로이드 포럼에서 같은 기종을 사용하는 다른 사용자들의 루팅 후기를 충분히 읽어본 뒤 진행하는 것이 좋습니다.

iOS 기기의 '탈옥(Jailbreaking)'

안드로이드 폰은 기본적으로 루트 액세스를 제공하지 않지만, 루트 권한이 없는 상태에서도 일반적으로 iOS보다 훨씬 덜 제한적입니다. 예를 들어 안드로이드에서는 서드파티 앱 스토어에서의 설치를 손쉽게 허용할 수 있으며, Google Play 스토어에 없는 앱도 자유롭게 설치할 수 있습니다.

루트 액세스란 무엇인가? PC와 스마트폰에서 중요한 이유

반면 iOS에서는 Apple이 승인하지 않은 앱은 접근 자체가 불가능합니다. 바로 여기서 '탈옥(Jailbreaking)'이 등장합니다. 탈옥의 결과는 안드로이드 루팅과 거의 같지만, 차이점은 iOS의 보안 장치를 익스플로잇(보안 취약점 공격)을 통해 깨야 한다는 점입니다.

루트 액세스의 위험성

iPhone이나 안드로이드 스마트폰을 루팅할 때 가장 먼저 고려해야 할 문제는 보증이 무효화될 수 있다는 점입니다. 더욱 우려되는 것은, 실패한 루팅이나 탈옥으로 인해 기기가 영구적으로 벽돌(Brick, 완전 먹통)이 될 수 있으며, 제조사가 수리를 거부할 수도 있다는 점입니다. 비용을 지불하더라도 말입니다.

개인용 컴퓨터에서는 문제의 양상이 조금 다릅니다. 잘못된 사용자나 프로그램에 실수로 루트 권한을 넘겨주는 상황을 피해야 합니다. 폰이든 컴퓨터든 멀웨어(악성코드)에 루트 권한이 넘어가면 재앙이 될 수 있고 시스템 파일이 위험에 노출됩니다. 이 때문에 루팅된 기기에서는 백신 소프트웨어 사용이 필수적입니다.

루트 액세스란 무엇인가? PC와 스마트폰에서 중요한 이유

루트 권한을 얻어 커스텀 ROM을 설치하면 기기의 일부 특수 기능을 잃거나, 발열 관리와 배터리 수명이 나빠질 수 있습니다. 커스텀 ROM이 탑재된 루팅 기기에는 제조사의 다양한 최적화가 적용되지 않기 때문입니다. 일부 사용자는 루팅한 기기에서 오버클럭킹을 시도하는데, 이는 CPU와 GPU를 제조사 권장 사양 이상으로 밀어붙이는 것이므로 기기 손상 위험도 함께 커집니다.

기기 언루팅(Unrooting) 방법

루트 액세스를 제거하고 싶다면 어떻게 해야 할까요? 기기가 아직 정상 작동한다면 '언루팅(Unroot)' 또는 '탈옥 해제(Un-jailbreak)'를 통해 원래 상태로 되돌릴 수 있으며, 여기에는 OEM 순정 ROM을 기기에 다시 플래싱하는 작업이 포함됩니다. 기기를 판매하거나 양도하기 전, 그리고 가능하다면 보증 수리를 요청하기 전에 이 작업을 먼저 수행하는 것이 현명합니다.

루팅된 폰은 강력한 자유와 편의를 선사하지만, 그만큼 많은 위험과 주의사항이 따릅니다. 정말 가치가 있는 선택인지 신중하게 판단해 볼 필요가 있습니다.