Não é 100% do tempo. No entanto, é um bom critério.
O CFEngine 3 usa isso em "promessas de serviços" para verificar se os serviços estão sendo executados. Se o código de saída de /etc/init.d/<servicename> status
for zero, ele pressupõe que o serviço está sendo executado.
Acabei de encontrar o descumprimento do BitBucket com esta convenção: /etc/init.d/atlbitbucket status
retorna 0 mesmo quando não está em execução. No entanto, eu consideraria isso um comportamento indesejável (um bug) no script de inicialização, que não segue a convenção.
Encontrou uma referência para isso; a Especificação da base padrão do Linux declara:
If the status action is requested, the init script will return the following exit status codes.
0 program is running or service is OK 1 program is dead and /var/run pid file exists 2 program is dead and /var/lock lock file exists 3 program is not running 4 program or service status is unknown 5-99 reserved for future LSB use 100-149 reserved for distribution use 150-199 reserved for application use 200-254 reserved
Então, sim, aplicativos compatíveis podem ser considerados para se comportarem dessa maneira.