오경석의 개발노트

Linux_서버 기동 관련 명령어(shutdown, reboot, halt, poweroff) 본문

소프트웨어, 운영체제/Linux

Linux_서버 기동 관련 명령어(shutdown, reboot, halt, poweroff)

OHSAYU 2024. 9. 15. 21:58

    서버 기동 관련 명령어는 shutdown, reboot, halt, poweroff, init 등이 있다. init은 0과 6 레벨이 기동 관련된 명령으로 알고 있는데, 현재 사용 중인 OS에서 자세한 매뉴얼을 못 찾아서 추후 업데이트를 하겠다. 서버 기동 관련 명령어가 다양한 만큼 비슷하면서도 조금씩 차이가 있다.

    shutdown을 제외한 reboot, halt, poweroff는 세 가지의 매뉴얼이 halt 매뉴얼로 통일되어 있다. 각각의 용도를 살펴보자.

 

shutdown

    shutdown이 다른 명령어들과 다른 가장 큰 특징은 시간을 지정할 수 있고, 다른 사용자들에게 메시지를 보낼 수 있다.

리눅스에서 shutdown을 하게 되면 다소 복잡한 과정을 거치는데, 이는 다중운영체제의 필수요건인 다중사용자와 멀티태스킹, 멀티스래드등의 이유로 인하여 실행되고 있는 프로세스들을 중지하고 로그인되어 있는 사용자들이 모두 로그아웃해야 하며 메모리에 저장되어 있는 데이터를 디스크로 저장해야 하는 것 등의 작업에 많은 시간과 과정이 안전하게 이루어져야하기때문이다.

 

 shutdown 명령 시, 커널에서 내부적으로 이루어지는 작업

1. shutdown 하기 전 sync 작업 수행

2. 접속 한 사용자들에게 시스템 종료 메시지 전송

3. 새로운 사용자의 로그인 금지

4. 지정된 시간 내에 종료되지 않은 프로세스를 강제종료

5. 지정된 시간 내에 로그아웃하지 않은 사용자를 강제종료

6. 메모리에 남아있는 데이터를 디스크에 저장(디스크 동기화)

7. 시스템 종료에 관한 정보를 시스템 로그파일에 기록

8. mount 되어 있는 디바이스들을 umonut

9. 시스템 종료

 

 shutdown 명령어 예시

## 시스템을 종료하고 전원 끄기(poweroff 명령어와 동일)
[root@101 ~]# shutdown now

## 시스템을 종료하고 전원 끄기(poweroff 명령어와 동일)
[root@101 ~]# shutdown -h now

## 시스템 종료 후 명시적으로 하드웨어의 전원 끔(poweroff 명령어와 동일). 하드웨어의 전원이 꺼지도록 보장하도록 내부적으로 poweroff 명령어 호출
[root@101 ~]# shutdown -P now

## 시스템을 종료하지만 전원은 끄지 않은 상태(halt 명령어와 동일)
[root@101 ~]# shutdown -H now

## 5분 뒤 시스템 reboot. '5' 대신 '+5' 로도 작성 가능
[root@101 ~]# shutdown -r 5

## 진행 예정인 shutdown 명령을 취소
[root@101 ~]# shutdown -c

5분 뒤 shutdown을 진행, 사용자들에게 'shutdown test'라는 메시지 전송. WALL 메시지는 큰따옴표 또는 작은따옴표로 감싸거나 그냥 써도 무방
[root@101 ~]# shutdown 5 shutdown test
>>>
[user1@101 ~]$
Broadcast message from root@101 on pts/0 (Sun 2024-09-15 20:05:40 KST):

shutdown test
The system is going down for poweroff at Sun 2024-09-15 20:10:40 KST!

 

 shutdown 매뉴얼

 

■ NAME

                    shutdown - Halt, power-off or reboot the machine

 

  SYSNOPSIS

                    shutdown [OPTIONS...] [TIME] [WALL...]

                       * WALL : WRITE ALL

  DESCRIPOTION

                    shutdown은 시스템을 정지, 전원 끄기 또는 재부팅하는 데 사용.

 

                    첫 번째 인수는 시간 문자열(보통 "now") 일 수 있다. 옵션으로 로그인한 모든 유저들에게 메시지를 전송.

 

                    시간 문자열은 24시간 제로 지정된 종료 실행 시간을 지정하는 hour/minutes을 나타내는 "hh:mm" 형식.

                    또는 지금부터 지정된 지정된 분 단위로 나타나는 "+m" 구문을 사용.

                    "now"는 "+0"의 별칭이고, 즉시 종료를 실행. 시간 인수가 지정되지 않으면 "+1"이 암시.

 

                    wall 메시지를 지정하려면 시간 인수도 지정.

 

                     시간 인수를 사용하는 경우 시스템이 다운되기 5분 전에 /run/nologin 파일이 생성되어 추가 로그인 불가.                    

  OPTIONS 

                   --help

                        짧은 도움말 텍스트를 보여주고 종료

 

                    -H, --halt

                        시스템을 중지(전원은 켜져 있는 상태)

 

                    -P, --power

                        시스템의 전원을 종료(기본값)

 

                    -r, --reboot

                       시스템을 재기동

 

                    -h

                        --halt가 지정되지 않은 경우 --poweroff와 동일

 

                    -k

                        halt, power-off, reboot 하지 않고 wall 메시지만 전송

 

                    --no-wall

                       halt, power-off, reboot 수행 전, wall 메시지를 전송하지 않는다

 

                    -c 

                        shutdown을 취소한다. "+0" 또는 "now"가 아닌 시간 인수를 사용하여 종료 호출 효과를 취소하는 데 사용

 

 

halt

    halt는 시스템을 중지하는 명령어다. 옵션별로 halt, poweroff 및 reboot 기능 등이 있지만 앞의 명령어들과 겹치기 때문에 주로 사용하는 명령어는 문자 그대로 'halt'이며, 일반적으로 시스템을 완전히 종료하지 않고, OS는 중지시키되 하드웨어의 전원은 끄지 않으려는 유지보수나 특정 상황에서 시스템의 상태를 관리할 때 사용된다(shutdown -H now 명령어와 동일).

 

 

poweroff

    poweroff는 시스템 전원을 끄는 명령어다. 옵션별로 halt, poweroff 및 reboot 기능 등이 있지만 앞의 명령어들과 겹치기 때문에 주로 사용하는 명령어는 문자 그대로 'poweroff'이며, 시스템의 전원을 종료한다. 

 

 

 reboot

    reboot는 서버 재기동 명령어다. 옵션별로 halt, poweroff 및 reboot 기능 등이 있지만 앞의 명령어들과 겹치기 때문에 주로 사용하는 명령어는 문자 그대로 'reboot'이며, 시스템을 재기동한다.

 

 

halt, poweroff, reboot 매뉴얼

 

■ NAME

                    halt, poweroff, reboot - Halt, power-off or reboot the machine

 

  SYSNOPSIS

                     halt [OPTIONS...]

                     poweroff [OPTIONS...]

                     reboot [OPTIONS...]

 

  DESCRIPOTION

                    halt, poweroff, reboot를 사용하여 시스템을 중지, 전원 끄기, 리부팅.

                  

  OPTIONS 

                   --help

                        짧은 도움말 텍스트를 보여주고 종료

 

                    --halt

                        세 가지 명령 중 어느 명령이 호출되는지에 관계없이 시스템을 정지

 

                    -p, --power

                       세 가지 명령 중 어느 명령이 호출되는지에 관계없이 시스템을 정지

 

                    -r, --reboot

                       세 가지 명령 중 어느 명령이 호출되는지에 관계없이 시스템을 재기동

 

                    -f, --force

                        즉시 강제 종료, 전원 끄기 또는 재부팅을 수행.

                        한 번 지정하면 시스템 관리자가 즉시 종료하지만 완전히 종료.

                        두 번 지정하면 시스템 관리자에게 연락하지 않고 즉시 종료.

 

                    -k

                        halt, power-off, reboot 하지 않고 wall 메시지만 전송

 

                    --no-wall

                       halt, power-off, reboot 수행 전, wall 메시지를 전송하지 않는다

 

 

출처 : Rocky Linux release 8.9

출처 : https://withcoding.com/110

Comments