Talvez um martelo muito grande para o seu caso em particular, mas essa ferramenta pode realmente abrir possibilidades que você nunca imaginou antes. Dê uma olhada no Puppet . É uma ferramenta de gerenciamento de configuração que permite controlar seus clientes de maneira centralizada e independente do sistema operacional.
No Puppet, você garante que um determinado pacote seja instalado, escrevendo algo semelhante ao seguinte em um arquivo de configuração (no servidor):
$package_name = $operatingsystem ? {
debian => 'apache-for-debian',
redhat => 'apache-for-rhel',
default => 'apache',
}
package{$package_name: ensure => installed}
Quanto ao script PHP caseiro, você pode colocá-lo na árvore do Puppet no servidor e fazer com que os clientes façam o download com algo semelhante ao seguinte:
file{'my_script':
ensure => file, #as opposed to directory
path => '/path/on/client/myscript',
mode => 0755,
source => 'puppet:///path/on/server/myscript',
}
Você pode fazer com que o Puppet verifique periodicamente as alterações na configuração no servidor e espelhe-as no host local (cliente). Isso significa que manter seu script PHP após a instalação também é centralizado.