CentOS 5 Inicie um script PHP na inicialização

2

Temos um CentOS 5 VPS no slicehost. Eu tenho alguns scripts PHP que operam e-mail e outras coisas.

Eu preciso de uma maneira de iniciar esses scripts php automaticamente nas reinicializações / partidas da máquina e executá-los em segundo plano. Um bônus seria ter a capacidade de reiniciar automaticamente se o script for interrompido.

obrigado!

    
por Trident Splash 01.07.2009 / 17:35

3 respostas

2

Você pode adicionar alguns scripts de inicialização: Abaixo está o básico do que eu usaria

#!/bin/bash
# chkconfig 2345 35 80
# Description: one line description
# I'd also insert a longer description of the
# scripts here.

# set any environment variables that might be needed here, too.
su - <target_user> /path/to/php /mypath/startupscript &

De acordo com o menor privilégio, você desejará substituir pelo usuário que deseja que o script seja executado. Se você quer que seja root, então seu interpretador php precisará ser setUID e pertencer a root, mas você pode remover "su -" inteiramente.

    
por 01.07.2009 / 18:41
4

Você pode tentar adicionar o script ao /etc/rc.local que deve iniciá-lo quando você reinicializar.

php /mypath/startupscript &

Se você precisar deles para reiniciar automaticamente, provavelmente precisará escrever um arquivo pid ou algo assim e monitorá-los com um cronjob. Não tenho certeza se usar php para um longo processo de gerenciamento de sistema é uma ótima ideia.

    
por 01.07.2009 / 18:11
3

A maioria dos * nix permite @reboot como a hora / data em crontab para executar quando o servidor for reiniciado.

    
por 01.07.2009 / 20:41