런레벨(Run Level)의 유래와 종류

| 2015년 12월 18일 | 1 Comment

Run Level(런레벨)이란?

런레벨은 유닉스(Unix) 기반 운영체제에서 `유닉스 시스템 V 스타일(Unix System V-style)` 초기화를 구현하는 동작 모드를 뜻한다.

런레벨에 대해 설명하는 위의 문장은 위키 백과에서 제공되는 영문을 적당히 한글로 번역한 것으로, 운영체제에 관하여 전문적인 지식이 없는 경우에는 문장 자체를 이해하기가 매우 어렵다. 그러나, 몇 가지의 역사적인 이야기를 알고 보면 그리 어려운 문장도 아니다.

 

ux

유닉스는 하나의 물리적 컴퓨터에 네트워크로 연결된 다 수의 사용자가 동시에 사용이 가능한 운영체제의 총칭으로 교육 및 연구기관 등에서 사용되고 있다. 대표적인 운영체제로 유닉스 표준 인증을 받은 솔라리스(Solaris)가 있으며, 그 이후로도 AT&T를 비롯하여 여러 회사들과 버클리(Berkeley) 대학 등의 비영리 단체들에 의해 지속적인 발전을 이루고 있다.

런레벨의 유래는 유닉스의 발전 과정속에서 찾을 수 있는데, 1983년 AT&T 주도하에 개발되어 최초의 상용버전으로 세상에 선보인 `유닉스 시스템 V(Unix System V)`는 4가지의 주된 버전을 `릴리즈 1`, `릴리즈 2`, `릴리즈 3`, `릴리즈 4`라는 이름으로 출시하였고 그 중에서 `시스템 V 릴리즈 4`는 상업적으로 가장 성공한 버전이었다.

그 이후 개발되는 유닉스 기반 운영체제에는 유닉스 시스템 V의 릴리즈 버전에 따른 시스템 운영 환경을 런레벨로 설정하는 기능이 제공되기 시작했다. 이후, 시간이 지나면서 추가적인 런레벨이 등작하여 현재에 이르게 되었다.

즉, 런레벨은 하나의 물리적인 시스템에서 여러 가지의 운영 환경을 제공하는 것을 의미하며, 대표적인 예로 런레벨 1은 싱글 유저 운영환경, 런레벨 2는 다중 사용자 운영환경(콘솔 기반), 런레벨 5는 GUI 기반의 다중 사용자 운영환경을 제공한다. 이와 마찬가지로 윈도우즈(Windows) 운영체제도 안전모드, 일반모드 등과 같이 런레벨과 동일한 목적의 기능을 제공하고 있다.

물론, 런레벨에 따른 운영체제 환경 설정은 배포되는 운영체제에 따라 다르지만 유닉스 기반 운영체제에서는 일부 런레벨(0, 1, 6)을 공통적으로 사용하고 있다.

  • sdfsdf
  • sdf
  • sdfsdf
  1. sdfsdfsdf
  2. sdf
  3. sdf
  4. sdf

 

 

런레벨의 종류

대중적으로 사용되는 유닉스 기반 운영체제는 0부터 6까지 7개의 런레벨이 존재하는데, 설계상으로는 최대 9까지 선언하여 사용이 가능하다. 또한, 일부 운영체제에서는 숫자를 대신하여 문자 – 리눅스민트(Linuxmint)의 경우 S – 로 런레벨을 정의하기도 한다.

이러한 런레벨은 운영체제마다 제공되는 수와 환경 구성이 다르지만 다음의 3가지 런레벨은 공통적으로 적용되고 있으며, 이를 스탠다드 런레벨(Standard Runlevel)이라고 한다.

런레벨 명칭 설명
0 시스템 종료(Shutdown) 시스템을 종료한다.
1 단일 사용자 환경(Single user mode) 네트워크 데몬 및 인터페이스를 구성하지 않는다.
6 시스템 재시작(Reboot) 시스템을 재시작한다.

 

서버용으로 자주 사용되는 레드헷(RedHat) 기반 센트OS(CentOS)와 데스크탑으로 즐겨 사용되는 우분투(Ubuntu)의 런레벨은 서로의 개발 목적이 다른 탓에 런레벨의 구성에도 다음과 같은 차이가 있다.

런레벨 센트OS(CentOS) 우분투(Ubuntu)
0 시스템 종료 시스템 종료
1 단일 사용자 환경 단일 사용자 환경
2 다중 사용자 환경(콘솔, NFS 사용 불가) 다중 사용자 환경(GUI 및 네트워크 구성)
3 다중 사용자 환경(콘솔) 미사용 혹은 런레벨 2와 동일
4 미사용(사용자 정의 가능) 미사용 혹은 런레벨 2와 동일
5 다중 사용자 환경(GUI) 미사용 혹은 런레벨 2와 동일
6 시스템 재시작 시스템 재시작

 

표에서 나타난 바와 같이 데스트탑으로 사용되는 우분투의 런레벨은 스탠다드 런레벨을 제외하면 런레벨 2 하나만 사용되고 있다. 반면에, 서버로 사용되는 센트OS는 런레벨 4를 제외하고 1부터 5까지 4개의 런레벨이 구성되어 있으며, 심지어 런레벨 4는 사용자의 목적에 따라 직접 구성하여 사용하는 것도 가능하다. 이러한 런레벨 구성의 차이는 두 운영체제가 지향하는 목표가 다르기 때문이며 또한, 데스크탑으로 사용되는 운영체제에 여러 종류의 런레벨 – 운영 환경 – 이 필요하지 않기 때문이기도 하다.

보편적으로 유닉스 기반 운영체제는 7개의 런레벨을 제공하고 있으며, 각 런레벨의 차이는 운영체제 내부의 설계와 실행 방법에 따라 다르겠지만 보편적으로 실행되는 드라이버(driver)와 데몬(daemon)의 수에 의해 구분된다. 런레벨 0과 6을 제외하고 런레벨의 수가 낮을수록 실행되는 드라이버와 데몬의 수가 적은 것이 일반적이나, 반드시 이러한 규칙이 지켜지는 것은 아니다.

Category: 솔루션/IT기타

고 광진

About the Author ()

자신에게 남겨진 시간은 아무도 알지 못한다.
  • 이채윤 (물만두)

    잘 보고 갑니다. 감사합니다.