IT 기술 문서

2025.02.01 17:06

CentOS 7 유용한 명령어 시리즈 - ⑩ 시스템 종료 및 재부팅

  • it2033 4일 전 2025.02.01 17:06
  • 6
    0

alt text


CentOS 7에서 시스템을 안전하게 종료하거나 재부팅하는 것은 매우 중요합니다. 특히 서버 운영 중이라면, 예상치 못한 종료로 인해 데이터가 손실되지 않도록 주의해야 합니다. 이번 글에서는 시스템 종료, 재부팅 및 관련된 명령어들을 정리하겠습니다.


1. 시스템 종료 명령어

1.1. 즉시 시스템 종료

shutdown -h now
  • 현재 시스템을 즉시 종료합니다.

  • 실행하면 모든 사용자에게 경고 메시지가 전송되고, 프로세스가 정리된 후 종료됩니다.

1.2. 일정 시간 후 시스템 종료

shutdown -h +10
  • 10분 후 시스템을 종료합니다.

  • +숫자를 입력하면 해당 시간(분) 후 종료됩니다.

1.3. 특정 시간에 시스템 종료

shutdown -h 22:30
  • 오늘 22시 30분에 종료됩니다.

1.4. 사용자에게 메시지와 함께 시스템 종료

shutdown -h +5 "서버 유지보수를 위해 5분 후 종료됩니다."
  • 모든 사용자에게 5분 후 시스템이 종료된다는 메시지를 전송합니다.

1.5. 예약된 종료 취소

shutdown -c
  • 예약된 종료 명령을 취소합니다.


2. 시스템 재부팅 명령어

2.1. 즉시 재부팅

reboot
  • 시스템을 즉시 재부팅합니다.

2.2. 안전하게 시스템 재부팅

shutdown -r now
  • 현재 시스템을 즉시 재부팅합니다.

  • 실행하면 모든 프로세스를 정리하고 시스템을 다시 시작합니다.

2.3. 일정 시간 후 재부팅

shutdown -r +10
  • 10분 후 시스템을 재부팅합니다.

2.4. 특정 시간에 시스템 재부팅

shutdown -r 23:00
  • 오늘 23시 정각에 시스템을 재부팅합니다.

2.5. 재부팅 예약 취소

shutdown -c
  • 예약된 재부팅을 취소합니다.


3. 강제 종료 및 강제 재부팅

3.1. 강제 종료 (데이터 손실 위험)

poweroff -f
  • 강제로 전원을 끕니다.

  • 프로세스를 정리하지 않고 바로 종료되므로 데이터 손실 위험이 있습니다.

3.2. 강제 재부팅 (데이터 손실 위험)

reboot -f
  • 강제로 시스템을 재부팅합니다.

  • 파일 시스템이 정리되지 않을 수 있으므로 주의해야 합니다.

3.3. 커널을 다시 로드하며 재부팅

kexec -e
  • 커널을 다시 로드하면서 즉시 재부팅합니다.

  • 기존 부팅 과정을 생략하고 바로 새로운 커널을 실행하여 빠른 재부팅이 가능합니다.


4. 실행 레벨 변경을 통한 종료 및 재부팅

4.1. 실행 레벨(runlevel) 변경

CentOS 7에서는 systemctl을 사용하여 실행 레벨을 변경할 수 있습니다.

4.1.1. 단일 사용자 모드로 변경 (유지보수)

systemctl rescue
  • 기본 시스템만 유지하며 네트워크가 비활성화됩니다.

4.1.2. 시스템 종료

systemctl poweroff
  • 현재 시스템을 종료합니다.

4.1.3. 시스템 재부팅

systemctl reboot
  • 현재 시스템을 재부팅합니다.

4.1.4. 멀티유저 모드로 변경

systemctl isolate multi-user.target
  • GUI 없이 CLI 환경으로 전환합니다.

4.1.5. GUI 모드로 변경

systemctl isolate graphical.target
  • GUI 환경으로 전환합니다.


5. 원격 서버 종료 및 재부팅

5.1. SSH를 통해 원격 서버 종료

ssh root@remote-server "shutdown -h now"
  • 원격 서버에 접속하여 즉시 종료합니다.

5.2. SSH를 통해 원격 서버 재부팅

ssh root@remote-server "shutdown -r now"
  • 원격 서버에 접속하여 즉시 재부팅합니다.


6. 종료 및 재부팅 로그 확인

6.1. 시스템 종료 및 재부팅 기록 확인

last -x shutdown reboot
  • 최근 시스템 종료 및 재부팅 기록을 확인할 수 있습니다.

출력 예시:

reboot   system boot  3.10.0-1160.81.1  Sun Jan 28 08:30 - 14:10 (5+05:40)
shutdown system down  3.10.0-1160.81.1  Wed Jan 24 22:30 - 08:30 (5+10:00)

6.2. 부팅 로그 확인

journalctl -b
  • 마지막 부팅 후의 전체 로그를 확인합니다.

6.3. 커널 패닉 로그 확인

journalctl -k
  • 부팅 중 발생한 커널 패닉 오류를 확인할 수 있습니다.


정리

명령어

설명

shutdown -h now

즉시 시스템 종료

shutdown -h +10

10분 후 시스템 종료

shutdown -h 22:30

특정 시간(22:30)에 시스템 종료

shutdown -r now

즉시 시스템 재부팅

shutdown -r +10

10분 후 시스템 재부팅

shutdown -c

예약된 종료/재부팅 취소

poweroff -f

강제 종료 (데이터 손실 위험)

reboot -f

강제 재부팅 (데이터 손실 위험)

kexec -e

커널을 다시 로드하며 재부팅

systemctl poweroff

시스템 종료

systemctl reboot

시스템 재부팅

ssh root@remote-server "shutdown -h now"

원격 서버 종료

last -x shutdown reboot

종료 및 재부팅 기록 확인

journalctl -b

부팅 로그 확인

이번에는 CentOS 7에서 시스템 종료 및 재부팅 명령어를 정리했습니다. 다음 시리즈에서는 사용자 및 그룹 권한 관리 명령어를 다루겠습니다

  • 공유링크 복사