Linux 서버를 재시작하는 방법 systemctl 재부팅간단해 보입니다. 명령어 하나, sudo 암호 하나만 입력하면 컴퓨터가 재시작됩니다. 하지만 문제는 이 재시작 과정에서 열려 있던 세션, SSH 연결, 실행 중인 프로세스, 심지어 사용자가 사용 중이던 서비스까지 모두 종료된다는 점입니다.
그러므로 개인용 컴퓨터든 VPS든 재부팅은 간단한 유지보수 작업처럼 생각하시길 바랍니다. 목표는 기본적인 명령어를 복잡하게 만드는 것이 아니라, 현재 실행 중인 프로세스를 확인하고 필요한 경우 경고를 표시한 다음, 작업이 진행 중이었다는 사실을 너무 늦게 알아차리지 않도록 깔끔하게 재시작하는 것입니다.

systemctl reboot이 실제로 하는 일
systemd가 포함된 최신 배포판에서는, systemctl 재부팅 시스템에 컴퓨터를 재시작하라고 요청하는 것입니다. 일종의 명령과 같습니다. 재부팅하지만 당신은 명시적으로 통과합니다 체계화된이는 재시작 전에 서비스 종료를 조정하는 역할을 합니다.
sudo systemctl reboot
혼동하지 마세요 systemctl 전원 끄기기계를 끄는 것, 또는 systemctl 정지하드웨어에 따라 전원을 차단하지 않고 시스템을 종료하는 기능입니다. 커널 업데이트를 적용하거나, 네트워크 스택을 다시 로드하거나, 부팅 시 서비스를 확인하기 위해 재부팅하는 것이 목적이라면 이 기능을 사용할 수 있습니다. systemctl 재부팅 이는 직접 명령입니다.
파일을 단순히 수정했을 경우 .서비스완전한 재부팅이 항상 필요한 것은 아닙니다. 그런 경우에는 재부팅 대신 이해부터 시작해 보세요. systemctl daemon-reload 명령어를 언제 사용해야 할까요?그런 다음 해당 서비스만 다시 시작하십시오.
로그아웃하기 전에 열려 있는 세션을 확인하세요.
서버를 재시작하기 전에 먼저 누가 접속해 있는지 확인합니다. 사소해 보일지 모르지만, 동료의 세션을 실수로 끊거나, SCP 전송을 중단하거나, 터미널에서 실행된 명령을 방해하는 것을 방지할 수 있습니다.
WHO
승
loginctl 세션 목록
WHO 연결된 사용자를 빠르게 확인할 수 있습니다. 승 그들이 하는 일을 덧붙입니다. loginctl 세션 목록 systemd 시스템에서 유용하며, 특히 로컬 세션, SSH 세션 또는 그래픽 세션을 식별하려는 경우에 유용합니다.
운영 서버에서는 재시작하기 전에 경고 메시지를 표시합니다. 간단한 안내 메시지면 충분합니다.
sudo wall "서버가 10분 후 점검을 위해 재시작됩니다."
VPS를 혼자 사용하는 경우라면 이 단계가 불필요해 보일 수 있습니다. 하지만 계정이 여러 개 있거나, 클라이언트가 액세스하거나, 장시간 실행되는 작업이 있거나, 외부에 노출된 애플리케이션이 있는 경우에는 항상 이 단계를 염두에 둡니다.
모니터링 서비스 및 진행 중인 작업
재부팅만으로 모든 문제가 해결되는 것은 아닙니다. 재부팅 전에 이미 문제가 있던 서비스는 재부팅 후에도 같은 상태로 되돌아갈 수 있습니다. 따라서 재부팅 전에 미리 문제를 확인하고 재부팅 후에 비교하는 것이 좋습니다.
systemctl --실패
systemctl list-jobs
systemctl is-system-running
systemctl --실패 실패한 장치 목록을 보여줍니다. systemctl list-jobs 보류 중인 systemd 작업을 표시합니다. systemctl is-system-running 예를 들어 전반적인 상태를 나타냅니다. 달리기, 타락한 또는 시작.
중요 서비스에 오류가 발생하면 재시작하기 전에 해당 서비스의 이름을 기록해 두십시오.
systemctl status service-name
journalctl -u 서비스 이름 -b --no-pager
더 자세한 서비스 목록을 확인하고 활성화된 서비스와 오류가 있는 서비스를 구분하려면 다음 가이드를 참조하세요. 임의 재부팅 전에 유용한 systemctl 명령어이것이야말로 원인과 결과를 혼동하지 않도록 하는 검증 방식입니다.
즉시 종료하는 대신 재시작을 계획하세요.
systemctl 재부팅 즉시 재시작됩니다. 지연 시간을 두려면 대신 를 사용하세요. 일시 휴업 옵션으로 -아르 자형. 그만큼 -아르 자형 재부팅을 의미합니다.
sudo shutdown -r +10 "10분 후에 재부팅될 예정입니다."
예정된 재시작을 취소하려면:
sudo 종료 -c
조금이라도 의심스러울 때는 이 방법을 선호합니다. 백업을 완료하거나, 세션을 종료하거나, 사용자에게 알림을 보내거나, 모니터링 시스템을 확인하는 데 몇 분 정도 시간을 할애할 수 있습니다.
문서화 일시 휴업 통용되는 시간 형식을 이해하고 싶다면 여전히 유용합니다. systemctlsystemd 참조 문서는 다음에서 확인할 수 있습니다. systemctl 공식 페이지.
SSH 사례: 안전장치 없이 재시작하지 마십시오
SSH로 연결된 경우 재부팅으로 인해 세션이 끊어집니다. 서버가 정상적으로 재시작되면 문제가 되지 않지만, 네트워크, 방화벽, 디스크 또는 기타 문제로 인해 문제가 발생할 수 있습니다. SSH 위로 다시 올라가지 마세요.
- 가능하다면 콘솔, KVM, IPMI, iDRAC, iLO 또는 벤더 콘솔에 대한 액세스 권한을 유지하십시오.
- 컴퓨터에 이미 오류가 발생한 경우, 재시작하기 전에 디스크 공간을 확인하십시오.
- 검증되지 않은 네트워크 변경 후에는 즉시 재시작하지 마십시오.
- 방화벽을 수정했다면, 반환 규칙이나 로컬 루트 세션을 유지하십시오.
VPS를 사용하는 경우, 명령어를 실행하기 전에 제공업체의 웹 콘솔이 제대로 작동하는지 확인합니다. 30초 정도밖에 걸리지 않지만, 번거로운 고객 지원 요청을 피할 수 있습니다.
재부팅 후 기기가 정상 작동 상태로 돌아왔는지 확인하십시오.
다시 연결되었다고 해서 SSH가 응답한다고 해서 모든 것이 정상이라고 생각하지 마십시오. 먼저 마지막 부팅 시간을 확인하십시오.
가동 시간
systemctl is-system-running
systemctl --실패
그런 다음 현재 부팅 과정에서 오류가 있는지 확인하십시오.
journalctl -b -p 경고..알림 --페이지 없음
이전 시작 사례와 비교하려면 다음을 사용하세요.
journalctl -b -1 -p 경고..알림 --페이지 없음
가이드 journalctl과 마지막 Linux 부팅 이 섹션에서는 부팅 속도 저하, 서비스 오류 또는 하드웨어 오류 메시지가 발생했을 때 조사해야 하는 경우에 대한 자세한 내용을 제공합니다.
리눅스 재부팅 전 체크리스트
WHO또는승공개 세션을 보려면.systemctl --실패이미 오류가 발생한 서비스를 기록합니다.systemctl list-jobs현재 실행 중인 systemd 작업을 중단하지 않도록 하기 위함입니다.종료 -r +10지연을 허용하고 싶다면.- 원격 근무 시 콘솔 액세스가 가능합니다.
journalctl -b오류를 확인하기 위해 재시작했습니다.
테스트 스테이션에서, sudo systemctl reboot 그 정도면 충분한 경우가 많습니다. 서버에서는 응답하지 않는 기기를 쫓아다니느라 10초를 허비하는 것보다 세션과 서비스를 확인하는 데 2분을 투자하는 게 훨씬 낫습니다.