런레벨

From Hidden Wiki
Jump to navigation Jump to search
필독 사항 유닠스 계열 저작물, 성인물, 도박 웹 써버 보안 프로그래밍 그래핔 파싱
필독 사항 고스트BSD 표면 웹 싸이트 제작 리눅스 마스터 파이썬 트킨터 뷰티펄 숲
수학 아이투피 마약, 아청물, 해킹 웹 싸이트 보안 웹 프로그래밍 데이터 분석 게임 제작
통계학 뮤와이어 다크넽 싸이트 제작 정보 보안 기사 쟁고우 팬더즈 파이게임

개요

실행수준(runlevel)


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

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

2015년 12월 18일

https://idchowto.com/?p=20095

Run Level(런레벨)이란?

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

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



유닉스는 하나의 물리적 컴퓨터에 네트워크로 연결된 다 수의 사용자가 동시에 사용이 가능한 운영체제의 총칭으로 교육 및 연구기관 등에서 사용되고 있다. 대표적인 운영체제로 유닉스 표준 인증을 받은 솔라리스(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)을 공통적으로 사용하고 있다.

런레벨의 종류

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

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

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


유닠스

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

쏠라리스

유닠스의 일종인 쏠라리스(Solaris)는 런레벨을 사용한다.


런레벨 설명
0 정지
s 또는 S 싱글 유저
1 관리
2 멀티유저
3 멀티유저(+NFS 자원 공유)
4 커스텀 멀티유저[1]
5 정지[2]
6 재시작[3]


BSD

비에스디(BSD)는 유닠스 계열이지만 런레벨이 존재하지 않는다.

리넠스

서버용으로 자주 사용되는 레드 햍(Red Hat) 기반 쎈트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는 사용자의 목적에 따라 직접 구성하여 사용하는 것도 가능하다. 이러한 런레벨 구성의 차이는 두 운영체제가 지향하는 목표가 다르기 때문이며 또한, 데스크탑으로 사용되는 운영체제에 여러 종류의 런레벨 – 운영 환경 – 이 필요하지 않기 때문이기도 하다.

같이 보기

참조

  1. 원래 안쓰지만, 필요에 따라 사용 가능
  2. 안전하게 shutdown
  3. http://docs.oracle.com/cd/E23824_01/html/821-1451/hbrunlevels-13026.html