“재부팅”또는“shutdown -r now”: 어떤 재시작 명령이 더 안전합니까?


49

우리 조직에는 약 500 대의 RedHat Linux 시스템이 있습니다.

모든 머신에서 애플리케이션 및 서비스를 /etc/init.dOracle RAC 서버 아래에 설치했습니다 . 모든 시스템에서 yum 업데이트를 수행 한 후 재부팅합니다.

그래서 나는 어떤 명령이 더 안전한지 궁금했습니다.

reboot

또는

shutdown -r now


1
우리는 모든 종류를 가지고 있습니다
-redhat

6
되 감자 : 안전에 차이가 있다고 생각하는 이유는 무엇입니까?
underscore_d

2
@underscore_d : 하나의 동일한 종료 프로세스를 모두 수행하지 않는 "내부 전용"명령이라고 생각하는 것은 무리가 없습니다. 예를 들어 초기 정리 종료 단계를 수행 한 후 다른 하나를 사용할 수 있습니다. 물론 매뉴얼 페이지는 reboot레거시 명령 일 뿐이며 여전히 역호 환자에게만 존재한다고 설명합니다 .
Peter Cordes

1
@knowhy 질문은 다른 사이트 에있는 질문과 중복 될 수 없습니다 .
Insane

답변:


51

Red Hat 시스템의 경우reboot 와 사이 에는 기능상의 차이가 없습니다shutdown -r now .

더 쉬운 일을하십시오.


13
그러나 하나는 당신이 더 입력하고 기본적으로 '더 시원합니다'!
Insane

하나는 수퍼 유저 액세스를 필요로하고, 다른 하나는 X 세션의 모든 사용자 (제한되지 않은 경우)에 의해 실행될 수 있습니다.
Burhan Khalid

2
@BurhanKhalid 서버에서 X 세션에 무작위로 로그인하는 사람이 있다면 두 명령 중 "safer"가 무엇인지 궁금해하는 것보다 더 큰 문제가있을 수 있습니다.
CVn

1
(나는 즉시 내가 레드햇 알지 못하는 인정 하겠지만,의 Janne Pikkarainen의 대답은 비슷하지만 다를 수 있습니다 제안하지만) 데비안에 적어도 halt, reboot그리고 poweroff미하일 T. 설명 등의 이유 메세지도 시간을 허용하지 않습니다 . 하나의 도구가 다른 도구가 "기능상의 차이"가되지 않는 것을 할 수 있다고 생각합니다.
CVn

88

종료는 과감한 행동 의 이유 를 지정할 수 있기 때문에 바람직 합니다. 항상해야 할 일입니다. 메시지는 후손을 위해 로그에 기록됩니다. 예를 들면 다음과 같습니다.

shutdown -r now 'Kernel upgrade requires reboot'

재부팅 시간 이외의 다른 것을 지정 하여 예약 된 재부팅을 수행 할 수도 있습니다 now.

shutdown -r 22:00 'Work around kernel memory leak'

그런 다음 사용자에게 정기적으로 알리는 알림 메시지가 표시됩니다. 프로세스는보다 질서적이고 전문적입니다.


13

당신은 RHEL 7 모두에서 살펴 경우 /sbin/shutdown/sbin/reboot실제로 단지의 systemd 심볼릭 링크 systemctl명령을 사용합니다. 따라서 원하는 것을 사용하십시오. 아직 시스템화를 사용하지 않은 이전 RHEL 릴리스에서도 ewwhite가 말한 기능적 차이는 없습니다.


12
나는 매우 설득력이 인수를 찾을 수 없습니다 : 그것은 그 명백 /sbin/shutdown하고 /sbin/reboot수 없습니다 모든 경우에 동일하게 동작 : (특히 /sbin/shutdown그들은 같은 실행, 그 실행에 심볼릭 링크 그래서 만약! 기본적으로 재부팅하지 않음)해야 그것을 조사하고 ARGV[0]그에 따라 행동을 조정하십시오. 이는 의도하지 않은 차이 의 위험을 확실히 줄여 주지만 OP가 알고 싶어하는 의도적 인 기능적 차이 가 없다는 증거는 아닙니다 .
ruakh

3
심볼릭 링크를 가정하면 특히 다른 이름이 관련된 경우 등가를 의미합니다.
mckenzm

ruakh 오른쪽입니다 - 잠시 동안 그것에 대해 생각, 비록 reboot에 심볼릭 링크되어 systemctl, 당신은 예를 들어, 사용할 수 없습니다 reboot status whatever.service, 당신은 것 같은 후자를 할 수 있습니까?
grawity

9

사용하는 reboot것이 더 안전합니다.

reboot의도를 사용 하는 것이 분명하고 shutdown -t now제어가 제한된 원격 서버에서 사용하는 경우 두통을 유발할 수 있는 다른 방법으로 잘못 입력 할 방법이 없습니다 .


2
IMHO는 대답을 과소 평가했다. 우리는 종종 의도를 명확하게하는 것이 얼마나 중요한지, 그리고 장기적으로 얼마나 많은 시간과 단어를 절약하는지 잊어 버립니다!
RoughTomato

1

최신 RHEL의 경우 여기에 요약 된대로 systemctl 명령을 사용하는 것이 좋습니다 . [최근] RHEL 배포는 새로운 systemctl 명령을 사용하여 전원 끄기 / 재부팅을 실행해야합니다. 재부팅 및 종료 맨 페이지에 설명 된대로 "호환성에 대해서만 사용 가능한 레거시 명령"입니다.

그러나 많은 다른 분포 또는 다양한 빈티지 분포를 사용하는 경우을 고수 할 수 shutdown -r now 'reason for shutdown'있습니다.

사용하는 주된 이유 는 원격 시스템에서 reboot사용할 때 -r을 추가하는 것을 잊어 버릴 위험을 피하기 위해 shutdown -r쉽게 다시 로그인 할 수없고 원격 관리자 (사용 가능한 경우)를 사용하여 시스템을 다시 시작해야 할 수 있습니다. 기계.


0

구형 시스템은 shutdown과 와를 확실히 구분했습니다 reboot. 후자는 서비스를 종료하지 않거나 디스크 버퍼를 동기화해야합니다. 이기종 환경에서 (또는 다른 * ix 구현을 만날 때 미래에 위험 할 수있는 선례를 피하기 위해) shutdown습관 을들이는 것이 가치가 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.