라즈베리파에는 외부에 물리적인 종료버튼 없이 명령어 입력을 통해서 종료해야하는데,
어떻게 종료하는게 좋을지 궁금해서 찾아보다가 아래의 컨텐츠를 바탕으로 작성해보았다.
우선 코드를 바로 꼽는 행위는 적합하지 않다. 시스템이 동작중일 때 코드를 바로 뽑아 버리게되면 SD카드에 무리가 갈 우려다고 한다. 그리고 실행중인 프로그램들이 종료되기 전에 충분한 시간을 줘야한다.
종료시 사용되는 명령어는 아래와 같다.
sudo shutdown -h now
이 명령어를 실행하면 아래와 같은 현상이 순차적으로 발생한다.
- 실행되는 프로그램에 sigterm 신호가 전달된다. sigterm을 받은 프로세스는 프로그램을 종료하기 전에 프로그램을 종료하는 처리(환경설정을 파일에 기록한다던지...)를 수행하는 것이 가능하다.
- 그 뒤에 sigkill 신호가 전달되어 프로세스를 멈취게한다.
- 모든 파일 시스템을 장치로 부터 제거된다. 이걸 unmount됬다라고 한다.
- 스크린이 연결되어있다면 'system halted'라고 나올것이다.
- 그리고 파워 플러그를 제거할 수 있는 상태이다.
다시 시작할 경우에는 파워플러그를 꼽으면된다.