본문 바로가기

라즈베리파이 부팅 시 자동실행 스크립트

|||||||||||||| 2023. 2. 10.

이번 글에서는 라즈베리파이가 부팅될 때 프로그램이나 파이썬 코드가 자동실행될 수 있도록 하는 방법에 대해서 알아보도록 하겠습니다. 최근 라즈베리파이를 가지고 몇몇 가지를 만들어 보고 있는데 너무 어려운 것 같습니다. 리눅스는 처음이고 코딩도 거의 초보라 너무 어려운 것 같습니다. 하지만 모르는 것은 찾아보며 하나하나 차근차근 진행하고 있습니다. 

저는 라즈베리파이가 부팅이 되었을 때 파이썬 코드가 자동으로 실행되도록 구현을 해 보았고 이것을 이 글에서 설명해 보도록 하겠습니다.

 

 

라즈베리파이 부팅 시 자동실행 방법

우선 셀 스크립트를 파일을 만들어 줍니다. 셀 스크립트는 라즈베리파이의 터미널 창에 입력되는 커맨드를 나열해서 실행하는 파일이라고 생각하시면 됩니다.

 

위 사진과 같이 명령어를 입력해서 셀 스크립트 파일을 생성합니다.

 

그러면 위 사진과 같이 빈 파일입니다. 이곳에 아래 사진과 같이 입력을 합니다.

 

위 사진과 같이 입력을 합니다. 셀 스크립트 파일 안에 입력된 내용이 차근차근 터미널에 입력이 된다고 생각하시면 됩니다. 위 내용의 셀 스크립트가 실행이 되면 터미널 창에 "run_autostart.sh"라는 메시지가 나오고 "python/example"경로로 이동후 "HelloTelegram_echo.py"을 실행을 하게 됩니다.

 

이 셀 스크립트 안에 부팅 시에 실행이 되기를 원하는 커맨드를 입력하시면 됩니다. ctrl+X 눌러 저장하고 나옵니다.

 

위 사진과 같은 명령어를 입력해서 생성된 셀 스크립트 파일에 권한을 부여합니다.

 

 

생성된 셀 스크립트가 정상적으로 동작을 하는지 한번 실행해 보겠습니다. 위 사진과 같이 입력을 해서 생성한 셀 스크립트를 실행합니다.

 

저는 위 사진과 같이 정상적으로 동작하는지 확인을 했습니다. 꼭 셀 스크립트가 정상동작 하는지 확일 해보시기를 바랍니다.

 

ctrl+C를 눌러서 프로그램을 종료하고 위 사진과 같이 입력을 합니다. 위 경로의 "autostart" 파일을 수정을 해서 우리가 생성했던 셀 스크립트를 추가해 줘야 부팅이 될 때 실행이 됩니다. 명령어는 아래와 같습니다.

sudo nano /etc/xdg/lxsession/LXDE-pi/autostart

 

autostart를 열면 위 사진과 같습니다. 여기에 우리가 생성했던 셀 스크립트 파일을 추가해야 합니다.

 

위 사진과 같이 실행하기를 원하는 셀 스크립트를 입력합니다. 입력해야 할 명령어는 아래와 같습니다.

lxterminal -e ~/run_autostart.sh

lxterminal로 run_autostart.sh를 실행하라는 명령입니다. 본인이 실행하기를 원하는 명령어를 입력해도 됩니다. 작성을 완료했으면 ctrl+X를 눌러 저장하고 나옵니다.

 

이제 라즈베리파이가 부팅될 때 원하는 프로그램이 동작할 수 있도록 셀 스크립트가 실행이 될 것입니다. 위 사진과 같이 sudo reboot을 입력해서 라즈베리파이를 재부팅을 해보고 정상적으로 실행이 되는 확인 해 봅시다.

 

위 사진과 같이 라즈베리파이가 부팅이 되고 터미널 창에서 run_autostart.sh라는 셀 스크립트가 실행이 되는 것을 확인할 수 있었습니다.