
Linux 시스템이 부팅되면 기본 런레벨로 들어가 해당 런레벨과 관련된 시작 스크립트를 실행합니다. 런레벨 사이를 전환 할 수도 있습니다. 예를 들어 복구 및 유지 관리 작업을 위해 설계된 런레벨이 있습니다.
전통적으로 Linux는 System V 스타일의 init 스크립트를 사용했지만 새로운 init 시스템은 기존의 런레벨을 더 이상 사용하지 않지만 아직은 그렇지 않습니다. 예를 들어, Ubuntu의 Upstart 시스템은 여전히 기존 System V 스타일 스크립트를 사용합니다.
런레벨이란 무엇입니까?
Linux 시스템이 부팅되면 초기화 프로세스. init는 시스템에서 다른 프로세스를 시작합니다. 예를 들어 Linux 컴퓨터를 시작할 때 커널은 init를 시작하고 init는 시작 스크립트를 실행하여 하드웨어를 초기화하고 네트워킹을 시작하며 그래픽 데스크탑을 시작합니다.
그러나 하나의 단일 시작 스크립트 세트 만 실행되는 것은 아닙니다. 시작 스크립트가 여러 개인 실행 레벨이 있습니다. 예를 들어 한 실행 레벨은 네트워킹을 시작하고 그래픽 데스크탑을 실행할 수있는 반면 다른 실행 레벨은 네트워킹을 사용하지 않고 그래픽 데스크탑을 건너 뛸 수 있습니다. 즉, 다른 서비스를 수동으로 시작 및 중지하지 않고도 단일 명령으로 “그래픽 데스크탑 모드”에서 “네트워킹없는 텍스트 콘솔 모드”로 전환 할 수 있습니다.
보다 구체적으로, init는 실행 레벨에 해당하는 특정 디렉토리에있는 스크립트를 실행합니다. 예를 들어, Ubuntu에서 runlevel 3을 입력하면 init는 /etc/rc3.d 디렉토리에있는 스크립트를 실행합니다.

최소한 이것이 전통적인 System V init 시스템과 작동하는 방식입니다. Linux 배포판이 기존 System V init 시스템을 대체하기 시작했습니다. Ubuntu의 Upstart는 현재 SysV init 스크립트와의 호환성을 유지하지만 향후 변경 될 수 있습니다.
런레벨
일부 런레벨은 Linux 배포판에서 표준이며 일부 런레벨은 배포판마다 다릅니다.
다음과 같은 런레벨이 표준입니다.
- 0 – 정지 (시스템을 종료합니다.)
- 1 – 단일 사용자 모드 (시스템은 데몬이나 네트워킹을 시작하지 않고 수퍼 유저 모드로 부팅합니다. 복구 또는 진단 환경으로 부팅하는 데 적합합니다.)
- 6 – 재부팅
실행 수준 2-5는 배포판에 따라 다릅니다. 예를 들어, 우분투와 데비안에서 런레벨 2-5는 동일하며 네트워킹 및 그래픽 로그인으로 완전한 다중 사용자 모드를 제공합니다. Fedora 및 Red Hat에서 런레벨 2는 네트워킹없이 다중 사용자 모드를 제공하고 (콘솔 로그인 만 해당), 런레벨 3은 네트워킹을 통해 다중 사용자 모드를 제공하고 (콘솔 로그인 만), 런레벨 4는 사용되지 않으며, 런레벨 5는 다중 사용자 모드를 제공합니다 네트워킹 및 그래픽 로그인.
다른 런레벨로 전환
시스템이 이미 실행중인 동안 다른 런레벨로 전환하려면 다음 명령을 사용하십시오.
sudo telinit #
#을 바꾸려는 런레벨의 번호로 바꾸십시오. sudo를 사용하지 않는 배포를 실행중인 경우 sudo를 생략하고 명령을 루트로 실행하십시오.

특정 런레벨로 직접 부팅
예를 들어 부트 로더 – Grub에서 부팅 할 런레벨을 선택할 수 있습니다. 부팅 프로세스 시작시 키를 눌러 Grub에 액세스하고 부팅 항목을 선택한 다음 e를 눌러 편집합니다.

추가 할 수 있습니다 단일 끝에 리눅스 단일 사용자 실행 레벨 (실행 레벨 1)을 입력하십시오. (후에 부팅하려면 Ctrl + x를 누르십시오.) 이는 Grub의 복구 모드 옵션과 동일합니다.

전통적으로 숫자를 커널 매개 변수로 지정할 수 있으며 예를 들어 다음을 사용하여 해당 런레벨로 부팅합니다 삼 대신에 단일 그러나 최신 버전의 Ubuntu에서는 작동하지 않는 것으로 보입니다. Upstart에서 허용하지 않는 것 같습니다. 마찬가지로 기본 런레벨을 변경하는 방법은 배포판에 따라 다릅니다.
Ubuntu의 Upstart 데몬은 여전히 SystemV init 시스템을 에뮬레이트하지만이 정보의 대부분은 나중에 변경 될 것입니다. 예를 들어, Upstart는 이벤트 기반입니다. 이벤트가 발생할 때 서비스를 중지하고 시작할 수 있습니다 (예 : 하드웨어 장치가 시스템에 연결될 때 서비스가 시작되고 장치가 제거 될 때 중지 될 수 있음). Fedora에는 자체 후속 작업이 있습니다. 초기화, 시스템화.








