Raspbian “Falha de segmentação” após funcionar por meses

0

Eu tenho o Raspberry Pi 3 rodando o Raspbian GNU / Linux 8 (jessie)

Linux version 4.1.18-v7+ (dc4@dc4-XPS13-9333) (gcc version 4.9.3 (crosstool-NG crosstool-ng-1.22.0-88-g8460611) )

Existe o Apache, PHP e MySQL em execução. Ele lê dados de outro dispositivo de LAN, registra no MySQL DB e envia para o servidor remoto. As linhas na tabela MySQL são excluídas 7 dias depois de serem gravadas, mas somente se forem enviadas com sucesso ao servidor.

Na inicialização, um serviço inicia o arquivo loop_send.sh , que chama o script PHP a cada 10 segundos:

#!/bin/bash
COUNTER=0
WAITTIME=10
while [ $COUNTER -lt 5 ]; do
    /usr/bin/php /var/www/send.php
    sleep $WAITTIME
    #let COUNTER=COUNTER+1
done

send.php verifica se há novos registros no MySQL e os envia para o servidor remoto.

Existe um serviço similar, o arquivo .sh e PHP para leitura de dados da LAN e gravação na tabela MySQL.

Isso funcionou bem desde junho de 2016. Em 31 de agosto, ele parou de se reportar ao servidor remoto, mas permaneceu ligado e conectado à rede até o momento.

Em /var/log/sendservice.err existem milhares de:

loop_send.sh: line 9:  3702 Segmentation fault      /usr/bin/php /var/www/send.php
loop_send.sh: line 9:  3708 Segmentation fault      /usr/bin/php /var/www/send.php
loop_send.sh: line 9:  3711 Segmentation fault      /usr/bin/php /var/www/send.php
loop_send.sh: line 9:  3716 Segmentation fault      /usr/bin/php /var/www/send.php
loop_send.sh: line 9:  3722 Segmentation fault      /usr/bin/php /var/www/send.php
loop_send.sh: line 9:  3725 Segmentation fault      /usr/bin/php /var/www/send.php
loop_send.sh: line 9:  3728 Segmentation fault      /usr/bin/php /var/www/send.php
loop_send.sh: line 9:  3735 Segmentation fault      /usr/bin/php /var/www/send.php

Seguido de muitos:

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php5/20131226/curl.so' - /usr/lib/php5/20131226/curl.so: symbol steerr, version GLIBC_2.4 not defined in file libc.so.6 with link time reference in Unknown on line 0
PHP Fatal error:  Call to undefined function curl_init() in /var/www/communication.php on line 71

e depois:

PHP Warning:  PHP Startup: curl: Unable to initialize module
Module compiled with build ID=aPI2013q226,NTS
PHP    compiled with build ID=API20131226,NTS
These options need to match
 in Unknown on line 0
PHP Fatal error:  Call to undefined function curl_init() in /var/www/communication.php on line 71

e depois:

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php5/20131226/curl.so' - /usr/lib/php5/20131226/curl.so: symbol steerr, version GLIBC_2.4 not defined in file libc.so.6 with link time reference in Unknown on line 0
PHP Fatal error:  Call to undefined function curl_init() in /var/www/communication.php on line 71
    invalid subsection length 4194340, max allowed 36

Este arquivo de log é de 45MB, cada uma dessas mensagens se repete muito antes da próxima.

Eu acho que a "falha de segmentação" é a razão para todo o resto, mas não consigo encontrar a razão para isso. Não havia monitor e dispositivos de entrada no Pi antes que isso acontecesse.

    
por Todor 26.09.2016 / 00:33

1 resposta

1

Está claro, a partir de sua saída, que os dados que estão sendo carregados na memória não correspondem ao que deve estar saindo da sua mídia. Por exemplo:

ID=aPI2013q226,NTS

Isso está mostrando vários erros de um único bit. As outras entradas de log que você postou também sugerem que os programas que estão sendo carregados estão similarmente corrompidos.

Verifique se o seu cartão SD ou outra mídia não está falhando.

    
por 26.09.2016 / 01:41