몇 달 동안 실행한 후 Raspbian "분할 오류" 발생

몇 달 동안 실행한 후 Raspbian "분할 오류" 발생

Raspbian GNU/Linux 8을 실행하는 Raspberry Pi 3이 있습니다(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) )

Apache, PHP 및 MySQL이 실행 중입니다. 다른 LAN 장치에서 데이터를 읽어 MySQL DB에 기록하고 원격 서버로 보냅니다. MySQL 테이블의 행은 작성된 후 7일이 지나면 삭제되지만 서버에 성공적으로 전송된 경우에만 해당됩니다.

부팅 시 서비스는 loop_send.sh10초마다 PHP 스크립트를 호출하는 파일을 시작합니다.

#!/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는 MySQL에 새로운 레코드가 있는지 확인하고 이를 원격 서버로 보냅니다.

LAN에서 데이터를 읽고 MySQL 테이블에 쓰기 위한 유사한 서비스인 .sh 및 PHP 파일이 있습니다.

이는 2016년 6월부터 제대로 작동했습니다. 8월 31일에 원격 서버에 대한 보고가 중단되었지만 지금까지 전원이 켜져 있고 네트워크에 연결된 상태를 유지했습니다.

거기 에는 /var/log/sendservice.err수천 가지가 있습니다:

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

다음은 다음과 같습니다.

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

그런 다음:

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

그런 다음:

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

이 로그 파일은 45MB이며, 이러한 메시지는 모두 다음 메시지 이전에 많이 반복됩니다.

나는 "분할 오류"가 다른 모든 것의 이유라고 생각하지만 그 이유를 찾을 수 없습니다. 이 일이 발생하기 전에는 Pi에 모니터와 입력 장치가 없었습니다.

답변1

출력에서 메모리에 로드되는 데이터가 무엇과 일치하지 않는 것이 분명합니다.~해야 한다당신의 미디어에서 나올 것입니다. 예를 들어:

ID=aPI2013q226,NTS

여러 개의 단일 비트 오류가 표시됩니다. 귀하가 게시한 다른 로그 항목에서도 로드 중인 프로그램이 유사하게 손상되었음을 나타냅니다.

SD 카드나 기타 미디어에 문제가 없는지 확인하세요.

관련 정보