라즈베리 파이(Raspberry Pi)와 같은 싱글 보드 컴퓨터나 모니터 없이 운영하는 헤드리스(headless) 컴퓨터를 사용하고 있다면, 전원 코드를 물리적으로 뽑지 않고도 시스템을 안전하게 종료하고 재시작하는 방법을 알아두는 것이 매우 중요합니다. 이 글에서는 리눅스 터미널에서 shutdown 명령어를 활용해 컴퓨터를 종료하고 재부팅하는 다양한 방법을 소개합니다.
리눅스 터미널로 컴퓨터 종료하기
컴퓨터를 종료하는 기본 명령어는 다음과 같습니다.
shutdown
shutdown 명령어는 상승된 권한(root 권한)이 필요한 경우가 대부분이므로, 실제로는 다음과 같이 sudo 명령어와 함께 사용하는 것이 일반적입니다.
sudo shutdown
명령어를 실행하면 "종료가 예약되었습니다. shutdown -c로 취소할 수 있습니다(shutdown scheduled for..., use shutdown -c to cancel)"와 같은 메시지가 출력됩니다.
종료 시간 지정하기
일반적으로는 컴퓨터가 언제 종료될지 시간을 명시하는 것이 좋습니다. 컴퓨터를 즉시 종료하려면 다음 명령어를 사용하세요.
sudo shutdown now
시간은 여러 가지 방식으로 지정할 수 있습니다. 예를 들어 다음 명령어로도 컴퓨터를 즉시 종료할 수 있습니다.
sudo shutdown 0
여기서 숫자는 시스템이 종료를 시도하기 전까지 대기하는 시간을 '분' 단위로 나타낸 것입니다.
참고로, 시간 옵션 없이 sudo shutdown만 실행하면 다음 명령어와 동일하게 동작합니다.
sudo shutdown 1
즉, 기본 대기 시간은 1분입니다.
시와 분을 지정해 특정 시각에 종료되도록 설정할 수도 있습니다.
sudo shutdown 22:00
종료까지 남은 시간이 5분 미만이 되면, 시스템은 더 이상 새로운 사용자의 로그인을 허용하지 않습니다.
기타 shutdown 옵션 활용하기
여러 사용자가 함께 사용하는 시스템이라면, 모든 사용자의 화면에 표시될 메시지를 지정해 종료 예정 사실을 알릴 수 있습니다.
sudo shutdown 5 "save your work, system going down"
완성도를 위해 아래와 같은 옵션도 알아두면 좋습니다.
sudo shutdown -P now
엄밀히 말하면 -P 파라미터는 필수는 아닙니다. -P는 power off(전원 끄기)를 의미하며, shutdown 명령어의 기본 동작 자체가 이미 전원 끄기이기 때문입니다. 다만 시스템이 단순히 멈추는(halt) 것이 아니라 확실하게 전원까지 꺼지도록 보장하고 싶다면 -P 옵션을 사용하는 것이 좋습니다.
옵션 문자보다 단어를 기억하는 것이 편한 분이라면 다음과 같이 입력할 수도 있습니다.
sudo shutdown --poweroff now
리눅스 명령줄로 컴퓨터 재부팅하기
재부팅에도 동일하게 shutdown 명령어를 사용합니다. 실제로 reboot이라는 전용 명령어도 존재하지만, 이는 하위 호환성을 위해 유지되는 레거시 명령어입니다. 논리적으로는 reboot이 더 직관적으로 보이지만, 실제로는 대부분의 사용자가 다음 명령어로 재부팅합니다.
sudo shutdown -r
재부팅에도 shutdown 명령어와 같은 규칙이 적용됩니다. 즉, shutdown -r을 단독으로 실행하면 기본값인 1분 후에 컴퓨터가 재부팅됩니다.
즉시 재부팅하려면 다음 명령어를 사용하세요.
sudo shutdown -r 0
5분 후에 재부팅하고 싶다면 다음과 같이 지정할 수 있습니다.
sudo shutdown -r 5
시와 분으로 재부팅 시각을 지정하는 것도 가능합니다.
sudo shutdown -r 22:00
마지막으로, 종료 절차와 마찬가지로 시스템이 재시작된다는 사실을 모든 사용자에게 알리는 메시지를 함께 지정할 수 있습니다.
sudo shutdown -r 22:00 "the system is going to bounce. Boing!!!"
-r 옵션 대신 다음 명령어를 사용할 수도 있습니다.
sudo shutdown --reboot now
시스템 halt(정지) 상태로 만들기
운영체제는 종료하지만 실제로는 컴퓨터의 전원을 끄지 않는 명령어도 있습니다. 서버 관리 등 특정 상황에서 유용하게 사용할 수 있습니다.
sudo shutdown -H
다음 명령어도 동일한 동작을 수행합니다.
sudo shutdown --halt
예약된 종료 취소하기
미래의 특정 시점으로 종료를 예약해 두었다면, 다음 명령어로 취소할 수 있습니다.
shutdown -c
단, shutdown now 또는 shutdown 0을 실행한 경우에는 취소할 시간 자체가 없으니 주의하세요.
우분투에서 종료·재부팅 키보드 단축키 만들기
우분투를 사용 중이라면 키보드 단축키를 간단히 등록해 컴퓨터를 종료하거나 재부팅할 수 있습니다. 다음 순서로 진행하세요.
키보드에서 슈퍼 키(윈도우 로고가 있는 키)를 누르고 "keyboard"를 입력합니다. 키보드 아이콘이 나타나면 클릭해 애플리케이션을 실행합니다. 여기에는 입력(Typing)과 바로 가기(Shortcuts) 두 개의 탭이 있습니다.
바로 가기(Shortcuts) 탭을 선택한 뒤 화면 하단의 플러스(+) 버튼을 클릭해 새 단축키를 추가합니다. 이름에 Shutdown Computer를 입력하고, 명령어에는 다음을 입력한 후 적용(Apply)을 누릅니다.
gnome-session-quit --power-off --force
단축키를 지정하려면 Shutdown Computer 항목 옆의 disabled를 클릭하고, 사용할 키 조합을 누릅니다. (예: Ctrl + PgDn)
재부팅 단축키를 추가하려면 다시 플러스(+) 버튼을 누르고, 이번에는 이름에 Reboot Computer를, 명령어에는 다음을 입력한 후 적용(Apply)을 누릅니다.
gnome-session-quit --reboot --force
Reboot Computer 항목 옆의 disabled를 클릭하고 원하는 키 조합을 눌러 단축키를 지정합니다. (예: Ctrl + PgUp)
단축키를 누르면 어떤 작업을 수행할지 확인하는 작은 창이 뜨기 때문에, 사실상 하나의 단축키만으로 두 명령어를 모두 처리할 수도 있습니다.
참고로 로그아웃에는 이미 기본 단축키가 지정되어 있습니다. 예상하셨겠지만 Ctrl + Alt + Delete이며, 윈도우와 동일한 조합입니다.
마무리 정리
더 자세한 내용이 궁금하다면 다음과 같은 레거시 명령어들의 매뉴얼 페이지(man page)도 확인해 보시기 바랍니다.
- halt
- poweroff
- reboot