왜 "즉시 종료"(다른 인수 없이)가 init 스크립트를 실행하지 않습니까?

왜 "즉시 종료"(다른 인수 없이)가 init 스크립트를 실행하지 않습니까?

저는 Pi에서 Rasbpian을 실행하고 있으며 사용자에게 전원을 끌 수 있음을 알리기 위해 GPIO 출력을 수행하는 스크립트 /etc/rc0.d(더 정확하게는 심볼릭 링크 )가 있습니다./etc/init.d/myscript.sh

을 실행하면 sudo shutdown -h now스크립트가 실행되고 시스템이 충돌합니다.
을 실행하면 sudo shutdown now스크립트가 실행됩니다.아니요실행되지만 시스템이 충돌합니다.

shutdown now추가 인수 없이 실행하면 실제로 어떤 일이 발생하는지 에 대한 문서를 찾을 수 없습니다 .

-h이 경우 차이점은 무엇입니까? 실행 중이 shutdown now실제로 runlevel을 호출하지 않습니까 0?

업데이트: 알아냈어요이 문서(unixhelp.ed.ac.uk)이는 매개변수가 없는 기본 동작이 실행 수준으로 들어가는 것임을 나타냅니다 1. 하지만 에도 스크립트가 있지만 /etc/rc1.d에서는 작동하지 않습니다 shutdown.

요청에 따라 처음 몇 줄은 다음과 같습니다 last -x(화살표는 제가 쓴 것입니다).

pi       pts/3        vidar-ramdals-ma Fri Jan  9 18:07   still logged in   
runlevel (to lvl 2)   3.12.28+         Fri Jan  9 18:04 - 18:07  (00:02)    
reboot   system boot  3.12.28+         Fri Jan  9 18:04 - 18:07  (00:02)    
shutdown system down  3.12.28+         Fri Jan  9 18:04 - 18:04  (00:00)    
runlevel (to lvl 0)   3.12.28+         Fri Jan  9 18:04 - 18:04  (00:00) <- shutdown -h now   
pi       pts/3        vidar-ramdals-ma Fri Jan  9 18:02 - down   (00:01)    
runlevel (to lvl 2)   3.12.28+         Fri Jan  9 18:01 - 18:04  (00:02)    
reboot   system boot  3.12.28+         Fri Jan  9 18:01 - 18:04  (00:02)    
pi       pts/3        vidar-ramdals-ma Fri Jan  9 17:57 - crash  (00:04) <- shutdown now   
pi       pts/3        vidar-ramdals-ma Fri Jan  9 01:30 - 01:34  (00:03)    
pi       pts/3        vidar-ramdals-ma Fri Jan  9 01:29 - 01:29  (00:00)    
runlevel (to lvl 2)   3.12.28+         Fri Jan  9 01:23 - 18:01  (16:38)    
reboot   system boot  3.12.28+         Fri Jan  9 01:23 - 18:04  (16:41)   

runlevel (to lvl 0)줄이 나와 의 다음 줄에 표시됩니까 shutdown -h now? crash이로 shutdown now인해 shutdown now"충돌"이 발생하고 초기화 스크립트가 실행되지 않게 됩니까?

답변1

폴더에 있는 파일 이름은 rc.d중요하며 .txt 파일에 대한 심볼릭 링크 이름을 무엇으로 지정했는지 명확하지 않습니다 /etc/init.d/myscript.sh.

다음의 예 /etc/rc1.d:

  lrwxrwxrwx 1 root root 25 Nov  3  2011 K99readahead_early -> ../init.d/readahead_early
  lrwxrwxrwx 1 root root 25 Nov  3  2011 K99readahead_later -> ../init.d/readahead_later
  lrwxrwxrwx 1 root root 22 Nov  3  2011 S02lvm2-monitor -> ../init.d/lvm2-monitor
  lrwxrwxrwx 1 root root 18 Nov  3  2011 S13cpuspeed -> ../init.d/cpuspeed

startS가 제공되면 다음을 사용하여 스크립트를 실행합니다. K가 제공되면 stop. 이 정수 값은 실행되어야 하는 우선순위입니다.

관련 정보