리눅스 종료와 재부팅 및 로그아웃 명령어: shutdown, init, reboot, halt

Wookoa 2024. 4. 23.

리눅스 명령어 종료 및 재부팅
리눅스 명령어 종료 및 재부팅

 

머리말

  리눅스 시스템을 운영하다 보면 시스템을 종료하거나 재부팅 또는 계정 로그아웃을 하는 경우가 발생한다. GUI 인터페이스 시스템이라면 시스템을 재부팅하는데 어려움이 없겠지만, CUI 인터페이스라면 시스템 종료 및 재부팅을 위해 다양한 명령어가 존재한다. 본 포스팅에서는 리눅스 계열의 CUI 인터페이스 시스템에서 종료, 재부팅 및 로그아웃하는 명령어에 대해서 소개한다.

shutdown

  별도의 추가 옵션 없이 해당 명령어만으로도 리눅스 시스템 종료가 가능하다. 필요하면 예약 종료와 같은 옵션도 지정할 수 있으며 각 옵션별로 now, +30, 13:00 형태의 인자 값을 모두 지원한다. 필요한 옵션으로 원하는 형태의 시간 인자값을 넘겨주면 된다. 추가로 -r 옵션을 지정하면 시스템 종료가 아닌 재부팅을 수행할 수 있다.

#30분 후에 시스템 종료
$ shutdown -h +30

#13시 정각에 시스템 재부팅
$ shutdown -r 13:00

#예약된 shutdown 명령어를 취소
$ shutdown -c

#현재 접속자에게 종료 메시지만 전송하고 실제로 시스템이 종료되지 않음
$ shutdown -k now
shutdown 명령어 옵션
shutdown 명령어 옵션

reboot

  마찬가지로 별도의 추가 옵션 없이 해당 명령어만으로도 리눅스 시스템 재부팅이 가능하다. 다양한 옵션을 제공하지만 주로 강제 재부팅 옵션을 사용한다. 다만 특별한 상황이 아니라면 강제 재부팅은 가급적 수행하지 않는 것이 좋다.

#모든 준비를 완료하고 재부팅
$ reboot

#준비 없이 즉시 재부팅
$ reboot -f
reboot 명령어 옵션
reboot 명령어 옵션

halt

  동일하게 별도의 추가 옵션 없이 해당 명령어만으로도 리눅스 시스템 종료가 가능하다. 다양한 옵션을 제공하지만 주로 강제 재부팅 옵션을 사용하며, reboot 명령어와 동일하게 종료 및 재부팅에 대한 옵션을 각각 지원한다.

#모든 준비를 완료하고 종료
$ halt

#준비 없이 즉시 종료
$ halt -f
halt 명령어 옵션
halt 명령어 옵션

init

  해당 명령어는 시스템이 가동되는 방법을 일곱 가지 모드로 구분하며 이를 런 레벨(Run Level)이라 부른다. 예를 들어 init 0 명령어지금 즉시 런 레벨을 0번으로 전환하라는 의미이며 시스템 종료를 의미하는 런 레벨이다. 아래와 같이 다양한 목적으로 init 명령어에 옵션을 추가할 수 있다. 주로 CUI, GUI 모드를 변경할 때 사용하지만 종료와 재부팅을 위한 명령어로도 사용된다.

#시스템 종료
$ init 0

#단일 사용자 모드로써 시스템 복구 시에 주로 사용
$ init 1

#NPS 없는 CUI 단일 사용자 모드로써 시스템 복구 시에 주로 사용
$ init 2

#CUI 다중 사용자 모드로써 일반적인 명령어 모드로 전환 시 사용
$ init 3

#사용되지 않는 명령어
$ init 4

#GUI 다중 사용자 모드로써 일반적인 그래픽 모드
$ init 5

#시스템 재부팅
$ init 6
init 명령어 옵션
init 명령어 옵션

logout

  시스템 종료와는 의미가 다르다. 로그아웃 한다는 의미는 현재 사용자의 접속을 끝낸다는 의미이며 시스템을 종료한다는 의미가 아니다. 리눅스는 여러 사용자가 동시에 접속해서 사용하는 다중 사용자 시스템이므로 로그아웃 명령어가 필요하다. 윈도우 운영체제에도 동일한 개념의 로그아웃/로그오프가 존재한다. 별도의 옵션 지정 없이 바로 로그아웃이 가능하며 두 가지 방법 모두 동일하게 동작한다.

#로그아웃 명령어
$ logout

#로그아웃 명령어
$ exit -f

꼬리말

  리눅스 시스템 종료와 재부팅 명령어는 다양하게 존재하지만 각 명령어 별로 큰 차이점은 없다. 명령어 수행 시각을 지정하는 경우에만 shutdown 명령어를 사용하며, 그 외 즉시 수행을 목적으로 명령어를 사용한다. 물론 종료 명령어에도 재부팅 옵션이 있으며, 재부팅 명령어에도 종료 옵션이 제공되기 때문에 어렵지 않게 사용할 수 있다. 본인의 경우 shutdown 명령어와 init 명령어를 주로 사용한다. 리눅스 시스템의 종료와 재부팅, 로그아웃 명령어에 대해서 소개한 본 포스팅은 이로써 마무리를 짓도록 한다.

인기있는 글

소중한 댓글 (0)