시작시 배쉬 스크립트? (리눅스)


12

재부팅시 bash 스크립트를 만들거나 실행할 수있는 방법이 있습니까 (예를 들어 데비안 / 우분투에서와 같이 집에 2 상자가 있기 때문에)

또한 cron 작업 수행에 권장되는 지침이 있습니까? 나는 그들에게 완전히 새로운 사람입니다 (그러나 그들은 큰 도움이 될 것입니다)

답변:


21

Ubuntu / Debian / Centos에서 @reboot를 실행하도록 cron 작업을 설정할 수 있습니다. 시스템 시작시 한 번 실행됩니다. crontab -e를 사용하여 crontab을 편집하고 아래 예와 같은 행을 추가하십시오.

@reboot /path/to/some/script 

cron을 찾으면 많은 리소스가 있습니다. 이 사이트 에는 몇 가지 좋은 예가 있습니다.


7

많은 * nix 플랫폼 에서 부팅시 무언가를 시작하는 또 다른 일반적인 방법 은 특정 OS / 배포판에 따라 스크립트를 디렉토리에 넣는 것입니다 (또는 대안을 참조하십시오 ) 같은 일이 /etc/rc2.d, /etc/rc3.d, /etc/rc/rc3.d, 또는 같은 (- 링크 아래를 참조 다른 배포판은 수 출처 인 다른 "실행 수준"를 사용). 종종 이들은 또한 수작업으로 /etc/init.d보다 쉽게 ​​실행하기 위해 파일로 또는 파일에서 심볼릭 링크되어 있으며 대부분의 * nix 플랫폼에서 "시작"및 / 또는 "중지"인수를 사용하고 "상태", "재시작", 많은 리눅스 플랫폼에서. 이러한 시스템에서는 일반적으로 init,inittab. * BSD 시스템 에는 비슷한 스타일의 다른 스타일이 있으며 위에 링크 된 것처럼 많은 변형이 있습니다.

위의 스타일에서, 예를 들어 /etc/rc2.d(기본 실행 수준이 2 인 시스템의 경우) 스크립트는 일반적으로 문자 S또는로 시작 K하고 두 자리 숫자로 시작합니다. S로 시작하는 스크립트는 부팅시 "시작"인수를 사용하여 레벨 2로 사전 순서 (일반적으로 숫자 순서로 변환 됨)로 실행됩니다. 종료 할 때 접두사 K가 붙은 스크립트는 "stop"인수와 함께 유사하게 실행됩니다.

파일 /etc/init.d(또는 간혹 /etc/rc/init.d다른 변형) 의 파일 이름은 S 및 K 접두사 또는 숫자없이 지정됩니다. 일반적으로 다양한 /etc/rc?.d 디렉토리의 파일은 실제 파일과 심볼릭 링크되며, 종종 상대 경로 접두어를 통해 참조됩니다 ../init.d/.

IRIX (적어도 메모리가 작동하는 경우 IRIX 4 이후)에서는이 도구를 chkconfig조작하지 않는 도구로 사용했습니다. 링크를 통해 스크립트의 실행 여부를 확인합니다. 나는 생각 IRIX 이런 식으로 뭔가를하는 최초의 OS이었다. 나중에 내가 사용했던 일부 RedHat 버전에는 동일한 이름의 도구가 있었지만 실제로는 다르게 작동하여 심볼릭 링크를 관리했습니다. chkconfig(8)내가 동일하거나 매우 유사한 버전이라고 생각하는 것을보십시오. 내가 그때 사용한 것처럼.

내가 액세스 할 수있는 Ubuntu 9.04 시스템 update-rc.d에서 스크립트가 실행되는 것처럼 보입니다 .

inittab을 사용하는 시스템을 사용하는 경우 시스템에 직접 항목을 추가 할 수도 있습니다. 부팅 할 때 한 번만 실행하는 것이 아니라 실제로 모니터링 init하는 respawn경우에 특히 유용합니다. 충돌 또는 종료 man inittab추가 정보는 시스템 의 출력 (있는 경우)을 참조하십시오. 그리고 / 또는 man init등등. 다른 풍미가 많이 있으며, 나는 현재 (현재) 데비안이나 우분투에 대해 잘 모르기 때문에 정확히 무엇을 지적 해야할지 모르겠지만, 이것이 당신에게 몇 가지 시작점을 줄 것입니다. .

crontob의 @reboot 섹션은 나에게 새로운 것이지만 유용한 옵션 인 것처럼 보입니다 .init 스크립트를 여러 가지로 선호한다고 제안합니다. 그러나 참조 man 5 crontab([참조 크론의되는 Vixie / ISC 버전을 가정을 포함하여 훨씬 더 당신이 당신의 크론 구성에 넣을 수 있는지에 대한 정보, 그리고 어떻게이 일을 실행하라고 할 수 있으며, 경우에 대한 크론 역사를 함께] @reboot).

도움이 되길 바랍니다.

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