시스템 관리자가 자주 하는 활동 중 하나는 서버를 재부팅하거나 전원을 끄는 것입니다.

이는 OS 패치와 같은 정기적인 유지 관리 활동 때문이거나 유지 관리를 위해 시스템 전원을 꺼야 하는 일부 하드웨어 오류 때문일 수 있습니다.

Linux 시스템은 서버를 재부팅하거나 종료하는 여러 가지 방법을 제공합니다. 정상적인 시스템은 모든 명령에 응답해야 하지만 성능이 저하된 서버는 강제로 재부팅해야 할 수 있습니다. 시스템 재부팅은 관리 작업이고 다중 사용자 시스템이나 중요한 프로세스를 실행하는 서버의 경우 재부팅 또는 종료는 파괴적인 활동.

이 기사에서는 Linux 재부팅/종료 활동에 도움이 될 수 있는 몇 가지 방법을 다룹니다.

GUI 방식

Gnome, KDE, Mate, XFCE 등과 같은 Linux용 GUI 데스크탑 환경을 사용하는 경우 시스템/응용 프로그램 메뉴에서 로그아웃, 재부팅, 최대 절전 모드 또는 전원 끄기와 같은 작업을 제공하는 전원 버튼을 찾을 수 있습니다. 사용 가능한 옵션은 배포판, 데스크톱 환경 및 사용 중인 OS 버전에 따라 약간 다를 수 있습니다. 그러나 시스템의 전원 상태를 변경하기 위해 사용 가능한 메뉴에서 전원 관련 설정을 확실히 찾을 수 있습니다.

예를 들어 Ubuntu Mate 데스크탑에서 화면 오른쪽 상단의 전원 메뉴에서 시스템 종료 옵션을 찾을 수 있습니다.

“종료…” 옵션을 선택하면 일시 중단, 다시 시작, 취소 및 시스템 종료와 같은 여러 옵션이 있는 대화 상자가 표시됩니다. 오른쪽 버튼을 클릭하여 다시 시작 또는 종료를 계속하거나 취소하고 데스크탑 환경으로 돌아갈 수 있습니다.

제공되는 GUI 및 옵션은 사용 중인 배포판 및 데스크탑 환경에 따라 약간 다를 수 있지만 시스템의 전원 상태를 변경하는 옵션이 있으므로 안심하십시오. GUI를 사용하면 전원 메뉴에서 몇 번만 클릭하면 됩니다.

systemctl 명령

systemd를 init 시스템으로 실행하는 Linux 상자에서 systemctl 명령을 사용하여 시스템을 재부팅할 수 있습니다.

$ sudo systemctl start reboot.target

또는 다음과 같이 재부팅과 같이 필수 옵션과 함께 systemctl을 사용할 수 있습니다.

$ sudo systemctl reboot

종료를 시작하기 위해 systemctl 명령은 다음과 같습니다.

$ sudo systemctl shutdown

시스템을 중지하려면 다음을 사용하십시오.

$ sudo systemctl halt

종료 명령

shutdown 명령을 사용하여 Linux 시스템의 전원을 끄고 재부팅할 수 있습니다. 시스템을 즉시 재부팅하려면 다음을 사용하십시오.

$ sudo shutdown -r now

또는 기다리지 않고 시스템의 전원을 끄려면 -h 또는 -P 플래그를 사용하십시오.

$ sudo shutdown -P now 

지정된 간격 후에 시스템을 재부팅/전원 끄기 위해 종료 명령에 지연을 추가할 수 있습니다. 이것은 다음과 같이 달성할 수 있습니다.

$ sudo shutdown -r 10

하드웨어에 전원을 끄도록 요청하지 않고 시스템을 중지하려면 -H 플래그를 사용할 수 있습니다.

$ sudo shutdown -H now

단순히 shutdown 명령을 지정하면 1분 후에 종료가 예약됩니다. 특정 시간에 종료하려면 다음을 사용하십시오.

$ sudo shutdown 22:30

많은 경우 시스템이 다운되는 동안 로그인한 사용자의 콘솔에 메시지를 브로드캐스트합니다. 이 브로드캐스트에 사용자 지정 메시지를 추가하려면 다음과 같이 종료 명령과 함께 메시지를 지정할 수 있습니다.

$ sudo shutdown 23:00 "Powering off system for maintenance...save your work"

예약된 종료를 취소하려면 -c 플래그를 사용할 수 있습니다.

$ sudo shutdown -c

일부 시스템에서는 종료 명령이 백엔드에서 systemctl을 호출하여 원하는 재부팅/종료 작업을 수행합니다.

재부팅 명령

시스템을 정상적으로 재부팅하려면 재부팅 명령을 사용할 수도 있습니다(sudo와 함께 사용해야 할 수도 있음).

$ sudo reboot

재부팅 명령으로 시스템 전원을 끄려면 -p 플래그를 사용하십시오.

$ sudo reboot -p

재부팅을 강제하려면(시스템이 일반 재부팅 명령에 응답하지 않는 경우) 다음과 같이 -f 플래그를 시도할 수 있습니다.

$ sudo reboot -f

중지 명령

시스템을 중지하려면 간단히 halt 명령을 사용할 수 있습니다.

$ sudo halt

전원 끄기 명령

시스템 전원을 끄려면 poweroff 명령을 사용하는 옵션이 있습니다.

$ sudo poweroff

초기화 명령

systemd에서 실행되지 않는 시스템의 경우 init(telinit도 작동함) 명령은 시스템의 실행 수준을 변경하는 옵션을 제공합니다. init를 사용하여 시스템을 재부팅하려면 다음을 사용할 수 있습니다.

$ sudo init 6

시스템을 중지하는 것과 유사하게 사용할 init 명령은 다음과 같습니다.

$ sudo init 0

init를 사용하여 특정 실행 수준을 호출하면 시스템의 초기화 프로세스가 특정 순서로 일련의 초기화 스크립트를 실행하여 시스템이 원하는 실행 수준에 도달하도록 합니다. 실행 수준 6은 재부팅에 대해 정의되고 실행 수준 0은 시스템 정지에 대해 정의됩니다.

전원 버튼

데스크탑이나 랩탑에서 실행되는 Linux의 경우 기본적으로 전원 버튼을 누르면 시스템을 절전 모드로 전환하거나 종료 신호를 보내 전원을 끕니다. 이 옵션은 시스템의 전원 설정에서 조정할 수 있습니다. 일반 명령이 작동하지 않는 경우 이상적으로는 마지막 옵션으로 사용해야 합니다.

Linux를 실행하는 원격 서버의 경우 일반적으로 전원 버튼은 시스템의 전원을 끕니다. 그러나 원격 데이터 센터에 있는 데이터 센터에는 해당 서버 공급업체에서 제공하는 원격 조명 관리 CLI/GUI 도구에서 재부팅하거나 전원을 끌 수 있는 추가 옵션이 있습니다.

Alt + SysRq 조합

응답하지 않는 정지된 시스템의 경우 재부팅 또는 전원 끄기 상태로 전환하기가 어렵습니다. 다른 옵션이 없고 최후의 수단으로 Alt + PrintScreen + 일련의 키를 눌러 시스템을 즉시 재부팅할 수 있습니다. 선호하거나 권장하는 옵션은 아니지만 최후의 수단으로 사용할 수 있습니다.

다른 비정상적 강제 재부팅 또는 종료 옵션과 마찬가지로 이 방법을 사용하면 데이터 손실 및 손상 가능성이 있음을 항상 기억하십시오. 백업 및 이중화에 대한 시스템 모범 사례를 확인하고 이 옵션을 사용할 때 주의하십시오.

이 옵션이 작동하려면 Linux 커널에서 활성화되어야 합니다. 아래 명령을 사용하여 이를 확인할 수 있습니다.

$ cat /proc/sys/kernel/sysrq

1의 출력은 완전히 활성화되었음을 나타내고 보다 큰 숫자는 일부 기능과 함께 부분적으로 활성화되었음을 나타냅니다. 명시적으로 활성화하려면 다음을 사용할 수 있습니다.

$ sudo echo “1” > /proc/sys/kernel/sysrq

이 방법을 사용하여 시스템을 재부팅하려면 Alt + SysRq(PrintScreen)를 누른 상태에서 각 키 사이에 몇 초 간격을 두고 다음 키를 순서대로 누릅니다.

R E I S U B

또는 종료하려면 끝에 B 대신 O를 누르십시오.

R E I S U O

여기서 키의 의미는 다음과 같습니다.

  • R: 키보드를 원시 모드에서 XLATE 모드로 전환
  • E: 초기화를 제외한 모든 프로세스에 SIGTERM 신호를 보냅니다.
  • I: 초기화를 제외한 모든 프로세스에 SIGKILL 신호를 보냅니다.
  • S: 마운트된 모든 파일 시스템 동기화
  • U: 마운트된 모든 파일 시스템을 읽기 전용으로 다시 마운트

마지막으로 다음을 나타내는 B 또는 O가 있습니다.

  • B: 파티션을 마운트 해제하거나 동기화하지 않고 시스템을 즉시 재부팅합니다.

또는

  • O: 파티션을 마운트 해제하거나 동기화하지 않고 시스템을 즉시 종료합니다.

요약

여기에서 Linux 시스템을 재부팅하거나 종료할 수 있는 다양한 방법을 살펴보겠습니다. 간단한 GUI 인터페이스에서 생활을 쉽게 하거나 심지어 자동화할 수 있는 비교적 복잡한 터미널 명령에 이르기까지 다양한 옵션을 제공합니다. 이런저런 이유로 멈춘 시스템의 경우 이상적인 방법은 아니지만 드문 경우에 사용해야 하는 재부팅 또는 종료 상태를 달성하는 강제 방법에 대해 논의했습니다.

이 문서에서 설명하는 명령은 시스템 상태에 영향을 미치고 엔터프라이즈 서버의 경우 여러 사용자와 서비스에 영향을 줄 수 있으므로 사용하는 동안 예방 조치를 취하십시오. 이 기사에서 제안하는 명령의 매뉴얼 페이지에서 명령에 대해 자세히 알아보고 명령이 제공하는 모든 옵션을 확인하십시오.

여기에서 종료하는 동안 암호 요청을 중지하도록 WAS를 구성하는 방법을 알아보세요.