Latest web development tutorials

리눅스 시스템의 부팅 과정

리눅스가 시작되면 우리는 많은 정보를보고 시작합니다.

우리는 처리가 다섯 단계로 나누어 질 수 있고, 상상 리눅스 시스템 부트 프로세스가 복잡하지 같이

  • 커널 부팅합니다.
  • 실행 초기화.
  • 시스템 초기화.
  • 단말기의 설립.
  • 사용자 로그인 시스템.

커널 부팅

컴퓨터가 전원을 켜면, 제 BIOS POST 중, BIOS 설정 부팅 장치 (일반적으로 하드 디스크)에 따라 시작한다.

운영 시스템이 하드웨어 인계 후, 먼저 커널 파일 / 부트 디렉토리를 읽는다.

bg2013081702

실행 초기화

init 프로세스는 모든 시스템 프로세스의 출발점입니다, 당신은 우리의 조상에없는 프로세스를 모든 시스템 프로세스를 비교할 수, 시스템은 모든 프로세스를 시작하지 않습니다.

초기화 프로그램은 먼저 구성 / etc / inittab 파일을 판독 할 필요가있다.

bg2013081703

실행 레벨

대부분의 프로그램은 시작이 필요합니다. 이들은 "데몬"(데몬)라고 리눅스에서 "서비스"윈도우에서 (서비스)라고합니다.

큰 작업 초기화 과정은 부팅 프로그램을 실행한다.

바탕 화면이 필요하지 않습니다하지만, 다른 상황 같은 서버로 사용할 때와 다른 프로그램을 실행해야합니다, 당신은 아파치를 시작해야합니다.

리눅스는 다른 경우에 대해, "실행 레벨"(실행 레벨)라고 다른 시작 프로그램을 지정할 수 있습니다. 당신이 실행하려는 프로그램을 결정하기 위해 "실행 수준"에 따라 활성화 될 때 즉,.

bg2013081704

리눅스 시스템은 일곱 단계 실행 (실행 레벨)이 있습니다 :

  • 실행 레벨 0 : 시스템 종료, 시스템 기본 실행 레벨 0으로 설정할 수 없습니다, 또는 제대로 시작할 수 없습니다
  • 실행 레벨 1 : 단일 사용자 동작 상태, 시스템 유지 보수에 대한 루트 권한은 원격 액세스는 금지되어 있습니다
  • 실행 레벨 2 : 다중 사용자 상태 (하지 NFS)
  • 실행 레벨 3 : 전체 다중 사용자 상태 (NFS)와, 콘솔 명령 줄 모드로 착륙 후
  • 실행 레벨 4 : 시스템이 사용하지 않는, 보존
  • 실행 레벨 5 : X11 콘솔, 그래픽 GUI 모드로 로그인
  • 실행 레벨 6 : 시스템을 정상적으로 종료하고 다시 시작, 6가 설정되지 않은 기본 실행 수준, 또는 제대로 시작할 수 없습니다

시스템 초기화

경기도 ::하는 sysinit : 초기화 설정 파일에 이러한 라인은 실행 /etc/rc.d/rc.sysinit 시스템을 호출하고, 나 rc.sysinit는 bash 쉘 스크립트입니다 /etc/rc.d/rc.sysinit 시스템 이 시스템 초기화 작업의 숫자의 완성이고, 나 rc.sysinit는 모든 레벨이 먼저 실행되어야하는 스크립트를 실행하는 것이 중요하다.

그것은 주로 작업은 다음과 같습니다 디스크를 확인, 스왑 파티션을 활성화 하드웨어 모듈과 다른 우선 순위 작업을로드합니다.

l5:5:wait:/etc/rc.d/rc 5

이 줄은 매개 변수로 (5)를 받아들이는 쉘 스크립트도 /etc/rc.d/rc5.d/ 디렉토리를 수행 할 수있다 5 /etc/rc.d/rc,/etc/rc.d/rc 실행하는 매개 변수를 나타냅니다 /이 시작 스크립트가 실제로 오히려 실제 RC 시작 스크립트보다 연결 파일의 일부이다 / 디렉토리, 실제 RC 시작 스크립트는 사실 rc5.d rc.d와 등 이하의 모든 RC 시작 스크립트입니다 / / 를 /etc/rc.d/init.d/ 디렉토리 아래에 위치.

이 RC 시작 스크립트가 유사한 사용을 가지고, 그들은 일반적으로, 다시 시작, 상태 및 기타 매개 변수를 시작 동의를 중지 할 수 있습니다.

처음에도 /etc/rc.d/rc5.d/ RC 시작 스크립트 일반적으로 K 또는 첨부 문서의 S는 대한 스크립트를 시작하기 위해 실행할 수있는 매개 변수 S의 시작 부분에서 시작됩니다.

우리가 발견 할 경우 해당 스크립트는 첫 번째 정류장은 보호자를 시작했다 이러한 매개 변수를 중지하는 것입니다, K가 연결이 시작되고 (상징으로 아래 / 파일은 / var / 잠금 / SUBSYS)의 실행 상태에 있었다 존재 처리 한 다음 다시 실행됩니다.

이는 초기화가 수준을 변경할 때, 모든 데몬이 다시 시작되는 것을 보장하기위한 것입니다.

각 클래스의 어떤 데몬이 실행에 관해서는, 사용자는 chkconfig하거나 라인 세트에서 "시스템 서비스"에서 설정.

bg2013081705

터미널 설립

RC는 초기화로 돌아가 완료되었습니다. 그런 다음 기본 시스템 환경이 설정되어, 다양한 데몬 시작했다.

사용자 로그인 시스템 있도록 초기화는 향후 6 단자를 엽니 다. 여섯 단자를 정의하는 다음 여섯 라인 inittab 파일 :

1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6

위의이 실행 레벨에서 볼 수 있습니다에서 2,3,4,5 모드 설정, mingetty 프로그램이 터미널을 열 수 mingetty 프로그램을 다시 만들고 실행됩니다.

이 텍스트 로그인 화면을 표시한다 동시에, 인터페이스는 우리가 흔히 로그인 화면에 로그인 화면은 사용자 이름을 입력하도록 프롬프트를 확인하고, 사용자가 사용자의 신원을 확인하기 위해 로그인 프로그램 파라미터로서 사용자에 의해 입력 될 것입니다.


사용자 로그인 시스템

일반적으로, 다음 세 가지 방법으로 사용자의 로그인 :

  • (1) 명령 행 로그인
  • (2) SSH 로그인
  • (3) 그래픽 로그인
bg2013081706

그래픽 사용자 실행 레벨 5, 그들은 그래픽 로그인 화면을 통해 로그온합니다. 성공적으로 로그인 한 후 KDE, 그놈 및 다른 창 관리자로 바로 이동할 수 있습니다.

이 기사는 주로 경우 또는 텍스트 로그인에 관한 것입니다 : 우리가 mingetty 로그인 화면을 볼 때, 우리는 시스템에 로그인 할 때 사용자 이름과 암호를 입력 할 수 있습니다.

리눅스 계정 확인 프로세스는 로그인, 로그인 mingetty는 사용자 이름 매개 변수로 이름을 함께받는 것입니다.

그러면, 사용자 이름 로그인을 분석한다 : 사용자 이름은 루트 아니며, 기타 / NOLOGIN 파일 출력 NOLOGIN 로그인 파일 후 EXIT / 있으면.

이 루트가 아닌 사용자는 일반적으로 시스템 유지 보수에 사용되는 것을 방지합니다. 만 파일이 존재하지 않는 경우, 루트 사용자 로그인을 허용하도록 단말기에 등록을 / etc / securetty 파일은 루트는 터미널에서 로그인 할 수 있습니다.

/ 기타 / 파일이 존재하지 않을 경우, 다른 제한이 없습니다, 추가 액세스 제한을 할 수있는 사용자에 대한 usertty 파일입니다.


모드 그래픽 모드 및 텍스트 모드 전환

리눅스는 여섯 사전 명령 터미널 창하자 로그인을 제공합니다.

우리의 기본 로그인이 TTY1 첫 번째 창이다, 여섯 창 TTY1,에서 tty2 ... tty6을했다, 당신은 Ctrl + Alt + F1 ~ F6 그들 사이를 전환 할 누를 수 있습니다.

당신은 그래픽 인터페이스를 설치하는 경우, 디폴트는 다음 명령 창 인터페이스 중 하나를 입력 Ctrl + Alt + F1 ~ F6를 누르면, 그래픽 인터페이스를 입력하는 것입니다.

명령 창 인터페이스를 입력 한 다음 그래픽 인터페이스로 돌아 가면, 바로 뒷면에 Ctrl + Alt + F7 키를 누릅니다.

당신이 VM웨어 가상 머신을 사용하는 경우, 명령 단축키 창 Alt + 스페이스 + F1 ~ F6로 전환합니다. 명령 창에 그래픽 인터페이스에서 Alt 키 Shift + + Ctrl 키 + F1 ~ F6 키 스위치를 누르면.

bg2013081707

리눅스 종료

주로 서버에서 사용되는 리눅스 필드에 거의 종료 작업을 발생하지 않습니다. 특별한 상황에서, 강제로 종료됩니다 제외한 모든 후, 서버에서 실행되는 서비스는 무한합니다.

올바른 종료 순서는 다음과 같습니다 sysnc> 종료> 재부팅> 정지

종료 명령은 다음과 같습니다 종료, 당신은 그 사람 종료 도움말 문서를 볼 수 있습니다.

예를 들어, 다음 명령 종료를 실행할 수 있습니다 :

sync 将数据由内存同步到硬盘中。

shutdown 关机指令,你可以man shutdown 来看一下帮助文档。例如你可以运行如下命令关机:

shutdown –h 10 ‘This server will shutdown after 10 mins’ 这个命令告诉大家,计算机将在10分钟后关机,并且会显示在登陆用户的当前屏幕中。

Shutdown –h now 立马关机

Shutdown –h 20:25 系统会在今天20:25关机

Shutdown –h +10 十分钟后关机

Shutdown –r now 系统立马重启

Shutdown –r +10 系统十分钟后重启

reboot 就是重启,等同于 shutdown –r now

halt 关闭系统,等同于shutdown –h now 和 poweroff

이 시스템을 다시 시작하거나 시스템을 종료할지 여부, 요약하자면, 우리가 처음 동기화 명령을 실행해야합니다, 메모리의 데이터는 디스크에 기록됩니다.

종료 명령이 시스템이 지금의 init 6를 다시 부팅 -r으로 종료 다시 시작하면 poweroff 및 초기화 0을 중단 -h 명령으로 종료됩니다.