어떤 위치에 라즈베리가 있고 파이썬 스크립트를 "영구적으로"실행해야하는 경우 (1 년, 2 년, 내가 위치에 있지 않은 경우) 얼마나 자주 재부팅해야합니까? 나는 사람들이 1 년 이상 그들을 살아있게한다는 것을 알고 있지만 주어진 시간에 재부팅 할 수있는 간단한 스크립트를 작성했습니다. + 라즈베리는 부팅시 파이썬 스크립트를 자동으로 실행합니다.
어떤 위치에 라즈베리가 있고 파이썬 스크립트를 "영구적으로"실행해야하는 경우 (1 년, 2 년, 내가 위치에 있지 않은 경우) 얼마나 자주 재부팅해야합니까? 나는 사람들이 1 년 이상 그들을 살아있게한다는 것을 알고 있지만 주어진 시간에 재부팅 할 수있는 간단한 스크립트를 작성했습니다. + 라즈베리는 부팅시 파이썬 스크립트를 자동으로 실행합니다.
답변:
하드웨어 측면 에서 ARMHF-y 보드를 재부팅해야하는 유일한 이유는 펌웨어 변경, ROM에 대한 필수 변경 또는 부팅시 존재해야하는 새 장치 일 수 있습니다.
예를 들어 드라이버 또는 금속에 가까운 커널 모듈과 해당 드라이버를 구현하는 장치를 추가하면 CPU와 커널 메모리 매퍼에 변경 사항을 알리기 위해 재부팅해야 할 수도 있습니다. 재부팅하지 않고 Linux 커널을 업데이트 할 수 있습니다 .
의 관점에서 소프트웨어 , 파이에 사용할 수있는 모든 주요 컴퓨팅 환경은 * nix에서 스크립트처럼 1 에서 그들이이있는 거 사실 유닉스 ™, 또는 그들이 따라서 리눅스 나 리눅스가 파생 사용하고있는 점에서 (U) nix에서 스크립트-Y.
유닉스와 그 파생물은 부트 로더에서 사용자 영역까지 완벽하게 확장 가능하고 휴대 가능하며 안정적으로 설계되었습니다. 이 서버는 하드 리셋 (일명 처음부터 완전히 종료 및 콜드 부팅)을하지 않거나 거의하지 않는 서버를 위해 설계되었으며, Raspberry Pis와 같은 내장 장치는 그 정도가 적습니다. 결과적으로 이러한 목표는 실제로 Pi에 적용됩니다.
이는 실제로 기본적으로 Pi (또는 * nix 데스크톱 PC)를 재부팅 할 필요가 없음을 의미 합니다.
1 잠시 동안, Microsoft Windows 10 : Pi 용 Internet Edition 에디션 (Pi 용)은 무시하고 싶지만 실제로는 농담이 아닙니다.
나는 이전에 쓰여진 것들에 동의합니다. 완벽한 오류 처리, 메모리 누수없는 우수한 작성 소프트웨어를 갖춘 이론적 인 상황에서는 재부팅이 필요하지 않습니다.
사이트에 50 개 이상의 PI (모든 PI 3)가 있고 일부는 매주 재부팅되고 다른 일부는 절대 재부팅되지 않습니다 ... 거의 모든 PI는 키오스크 모드에서 비디오 재생, 웹 사이트 표시, 스크립트 실행 등에서 사용됩니다. 사용자 경험은 나에게 중요하며 PI에 실패 할 여유가 없습니다. 나는 그들 모두에 감시견이 설치되어 있습니다.
내 사이트에서 다음 접근법을 사용하고 있습니다 (이것은 과학적 배경이없는 내 자신의 경험 만 사용합니다 :-)).
서버 (Apache, SIP 등)를 실행하고 이더넷 케이블로만 연결된 PI : 재부팅하지 않으며 일부 서버의 가동 시간은 거의 2 년입니다 (실제로 업그레이드하지 않았습니다)!
반대로, 비디오 루프를 실행하는 PI (OMXPlayer 사용) : 매주 해당 장치를 재부팅합니다. 나는 그것들을 전혀 재부팅하지 않으려 고 시도했지만 가끔씩 감시조차도 비디오가 멈추는 것을 발견했습니다. 화면에 정지 영상이 나타납니다. 한 달 동안 각 장치마다 비디오가 한 번 정지 될 가능성이 대략 50 %라고 말하고 싶습니다. 이러한 위험을 최소화하기 위해 일주일에 한 번 재부팅하기로 결정했으며 그 결과는 수용 가능합니다. 지금까지 1 주일에 한 번 재부팅 한 후에는 2 번의 동결 만있었습니다 (이미지 동결, PI 동결 없음). 물론 그것들도 제거하고 싶지만 이것은 또 다른 주제입니다. SD 카드에 재부팅이 미치는 영향은 신경 쓰지 않습니다. SD 카드가 새로워지면 새로운 SD 카드를 넣고 템플릿을 올바른 비디오로 업데이트하기 때문입니다.
클라이언트 모드에 있고 사용자 상호 작용 (주로 터치 스크린 및 / 또는 버튼)을 사용하여 웹 기반 사용자 콘텐츠 (Chromium, KWeb 등 ...)를 표시하는 PI : 매월 다시 부팅하므로 지금까지 아무런 문제가 없었습니다. 어쩌면 그것들을 재부팅 할 필요는 없었지만 ... 그 장치가 스크립트 (Java, Node.js)를 실행하고 다른 장치에서 입력을 받으면 언젠가 재부팅이 필요할 것이라고 생각했기 때문에 매월 가기로 결정했습니다. 재부팅하십시오.
이것이 귀하의 질문에 대한 직접적인 대답이 아니라는 것을 알고 있지만, 개인적인 경험을 공유하고 싶기 때문에 다른 답변과 함께 귀하의 프로젝트에 가장 적합한 방법을 판단 할 수 있습니다.