Ubuntu 시스템이 종료되기 전에 스크립트 실행

Ubuntu 시스템이 종료되기 전에 스크립트 실행

스크립트를 실행하기 전에 스크립트를 실행하고 싶습니다.우분투시스템이 종료됩니다. 그래서 이를 위해 디렉토리 내부에 스크립트를 생성 /etc/init.d하고 실행 가능하게 만들었습니다 chmod +x K99pr.sh.

또한 내부에 또 다른 스크립트를 생성 /etc/rc0.d하고 위와 같이 실행 가능하게 만듭니다. 그리고 그 스크립트에 내 논리를 작성하세요.

/etc/rc0.d/K99prak.sh이제 from 에 대한 심볼릭 링크를 원합니다.init.d/K99pr.sh

위 스크립트에 대한 심볼릭 링크를 작성하는 방법을 알려주십시오. 나는 스크립팅을 처음 접했습니다.

이것은 내 스크립트 파일입니다.

 /etc/init.d/K99pr.sh

  #!/bin/bash
  I want add here the symbolic link

이것은 또 다른 스크립트입니다:

/etc/rc0.d/K99pra.sh

  #!/bin/bash
  my logic

감사해요.

답변1

추가해야합니다K99pr.sh스크립트:

Start scripts S##<base script name>

##은 이 스크립트가 실행 레벨에서 실행되어야 하는 순서를 나타냅니다.

다음을 통해 주문을 볼 수 있습니다.

`ls /etc/rc#.d/K*` change # to the number of the runlevel .

답변2

이를 가장 잘 수행하는 방법은 /etc/init.d/폴더에 "myscript.sh" 스크립트를 두는 것입니다.

/etc/rc0.d/그런 다음 을 가리키는 심볼릭 링크를 만듭니다 /etc/init.d/myscript.sh. ln링크를 만들려면 이 명령을 사용합니다 . 원하는 심볼릭 링크의 명령 형식은 다음과 같습니다.

ln -s < target> < link name>

또는

ln -s /etc/init.d/myscript.sh /etc/rc0.d/S05pra.sh

그런 다음 종료가 시작되면 "myscript.sh"의 내용이 실행됩니다.

스크립트는 숫자 순서로 실행되므로 05는 99 이전에 실행됩니다. 또한 myscript.sh 서비스를 종료하는 것이 아니라 종료 시 새로운 작업을 수행하는 것이므로 S##myscript.sh라고 부르는 것이 좋습니다.

관련 정보