본문 바로가기

대학교 2학년 1학기/리눅스 프로그래밍

리눅스 부팅과 종료

728x90

리눅스 시스템의 부팅 과정

전원 ON -> 바이오스 단계 -> 부트 로더 단계 -> 커널 초기화 단계 -> systemd 서비스 단계 -> 로그인 프롬프트 출력

 

바이오스 단계: PC에 장착된 기본적인 하드웨어의 상태를 확인한 후 부팅 장치를 선택하여 로딩

부트 로더 단계: 여러 운영체제 중에서 부팅할 운영체제를 선택할 수 있도록 메뉴를 제공하고 리눅스 커널을 메모리에 로딩

커널 초기화 단계: 시스템에 연결된 장치들을 검사

systeemd 서비스 단계: 기존의 init 스크립트를 대체한 것으로 다양한 서비스를 동작

 

init 프로세스: 처음 생성되는 프로세스로서 PID 1번이다. 디렉터리들의 관리 정보를 통해서 순차적으로 필요한 프로세스들을 생성한다.

- systemd로 대체된다.

 

리눅스를 종료하는 방법

- shutdown 명령 사용

- half 명령 사용

- poweroff 명령 사용

- 런 레벨을 0이나 6으로 전환

- reboot 명령 사용

- 전원을 끔

 

shutdown 명령어: 리눅스를 종료한다.

ex) sudo shutdown -h +2 “system is going down in 2 min" // -h 옵션과 함께 2분 뒤로 지정

 

데몬 프로세스

데몬: 리눅스의 백그라운드에서 동작하며 특정한 서비스를 제공하는 프로세스

 

데몬의 동작 방식

독자형: 시스템의 백그라운드에서 서비스별로 항상 동작

슈퍼 데몬:, 서비스 요청이 오면 슈퍼 데몬이 해당 데몬을 동작 시킴.

- 유닉스에서 슈퍼데몬의 이름은 inetd이며 우분투에서는 보안 기능이 포함된 xinetd를 사용

 

데몬의 조상: systemd와 커널 스레드 데몬

systemd 데몬: 대부분 프로세스의 조상 프로세스이며 pstree 명령으로 확인 가능

 

주요 데몬

atd: 특정 시간에 실행하도록 예약한 명령 실행 (at 명령으로 예약)

crond: 주기적으로 실행하도록 예약한 명령 실행

httpd: 웹 서비스 제공

sshd: 원격 보안 접속 서비스 제공

ftpd: 파일 송수신 서비스 제공

 

 

 

 

 

 

 

 

 

728x90

'대학교 2학년 1학기 > 리눅스 프로그래밍' 카테고리의 다른 글

원격 접속과 FTP  (0) 2022.06.23
소프트웨어 관리  (0) 2022.06.23
프로그램 개발 도구  (0) 2022.06.23
사용자 관리  (0) 2022.05.20
쉘 스크립트 프로그래밍 (2)  (0) 2022.05.19