/etc/init.d/networking restart와 Invoke-rc.d의 차이점 네트워킹 재시작

/etc/init.d/networking restart와 Invoke-rc.d의 차이점 네트워킹 재시작

/etc/init.d/networking restart와 (데비안) invoke-rc.d networking restart사이에 실제 차이점이 있나요 ?

답변1

해당 내용은 invoke-rc.d매뉴얼 페이지에 문서화되어 있습니다. 이는 init 스크립트를 직접 실행하는 래퍼이지만 현재 런레벨과 데몬이 해당 런레벨에서 실행되어야 하는지 여부에 따라 명령이 실행되지 않도록 하는 정책도 적용합니다.

기본적으로 데비안은 런레벨 2-5를 구분하지 않지만, 로컬 관리자는 각 런레벨에서 실행되는 것을 변경할 수 있습니다. invoke-rc.d실행 수준이 잘못된 경우 이러한 로컬 정책이 존중되고 데몬이 시작되지 않습니다.

답변2

실제 차이는 없습니다[1]. 이 invoke-rc.d명령은 단순히 init.d 스크립트를 실행하기 위한 편리한 인터페이스를 제공하므로 실행하려는 스크립트의 전체 경로를 입력해야 하는 부담을 덜어줍니다! 두 호출 모두 동일한 최종 결과를 얻습니다.

[1] 이 invoke-rc.d명령은 요청된 서비스 스크립트를 호출하기 전에 검사를 수행하여 실행되어야 하는지 확인합니다. 이는 스크립트가 잘못된 런레벨 등에서 호출되는 것을 방지하므로 그런 의미에서 차이가 있습니다. 발에 약간 총을 맞았습니다. 매뉴얼 페이지는 이와 관련하여 유익해야 합니다.

답변3

네트워크를 다시 시작하는 또 다른 쉬운 방법은 내 경우에는 [net]이라는 bash 파일을 만드는 것입니다: /etc/init.d/net

스크립트:

#!/bin/sh -e
invoke-rc.d networking stop ;  invoke-rc.d networking start ; ifup eth0 

#Add whatever interfaces you have installed. ie: ifup eth0 wlan0 etc 

생성 후 chmod 711 'filename' [net]

관련 정보