본문 바로가기

라즈베리파이 부팅 후 자동으로 터미널 실행 및 명령어 입력 방법

|||||||||||||| 2023. 10. 13.

라즈베리파이를 사용하면서 부팅 시 자동으로 특정 프로그램이나 스크립트를 실행하고 싶었던 적이 있으신가요? 이 글에서는 바로 그 방법에 대해 상세하게 알려드리겠습니다.

안녕하세요, 여러분! 오늘은 라즈베리파이를 통해 부팅 시 자동으로 터미널을 실행하고 원하는 명령어를 입력하는 방법에 대해 함께 알아보려고 합니다. 이를 통해 여러분들도 라즈베리파이를 더 효율적으로 활용할 수 있을 것입니다. 그렇다면, 라즈베리파이를 부팅할 때마다 매번 같은 작업을 수행하고 싶다면 어떻게 해야 할까요? 이 궁금증을 가진 분들을 위해 준비한 이 글에서는 그 해결책을 찾아볼 수 있습니다. 함께 따라와 주세요!

 

라즈베리파이 부팅 후 자동으로 터미널 실행 및 명령어 입력 방법

 

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

라즈베리파이는 소형 컴퓨터로서 다양한 프로젝트에 활용되고 있습니다. 그 중에서도 많은 사용자들이 부팅 시 특정 프로그램이나 스크립트를 자동으로 실행하고 싶어합니다. 이러한 요구를 충족시키기 위한 방법은 여러 가지가 있습니다.

 

rc.local 활용하기
라즈베리파이의 기본적인 자동실행 설정 방법 중 하나는 rc.local 파일을 활용하는 것입니다. 이 파일은 시스템이 부팅될 때마다 실행되는 스크립트로, 여기에 원하는 명령어나 스크립트를 추가하면 부팅 시 자동으로 실행됩니다. 하지만 이 방법은 텍스트 기반의 명령어나 스크립트에는 적합하지만, GUI 기반의 프로그램에는 한계가 있습니다.

 

GUI 프로그램의 한계
GUI 프로그램은 그래픽 사용자 인터페이스를 가진 프로그램을 의미합니다. 이러한 프로그램은 rc.local을 통해 실행하려 할 때, 그래픽 환경이 완전히 로드되기 전에 실행되려고 시도하므로 문제가 발생할 수 있습니다. 따라서 GUI 프로그램을 부팅 시 자동으로 실행하려면 다른 방법을 찾아야 합니다.

 

autostart를 활용한 방법
라즈베리파이의 LXDE 환경에서는 autostart라는 파일을 통해 GUI 프로그램을 부팅 시 자동으로 실행할 수 있습니다. 이 파일에 원하는 프로그램의 실행 명령어를 추가하면, 그래픽 환경이 완전히 로드된 후에 해당 프로그램이 자동으로 실행됩니다.

 

결론적으로, 라즈베리파이에서 부팅 시 특정 프로그램이나 스크립트를 자동으로 실행하려면 상황과 요구에 맞는 방법을 선택해야 합니다. 텍스트 기반의 스크립트는 rc.local을, GUI 기반의 프로그램은 autostart를 활용하여 설정할 수 있습니다.

 

 

autostart를 이용한 자동실행 설정

라즈베리파이의 LXDE 환경에서 특정 프로그램이나 스크립트를 부팅 시 자동으로 실행하려면 autostart 파일을 수정해야 합니다. 이 설정을 통해 GUI 프로그램, 스크립트, 인터넷 연결이 필요한 프로그램 등 다양한 프로그램을 자동으로 실행할 수 있습니다. 아래는 autostart 파일을 이용하여 자동실행을 설정하는 단계별 방법입니다.

 

1. autostart 파일 열기

터미널을 열고 아래의 명령어를 입력하여 autostart 파일을 엽니다.

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

2. 자동실행할 프로그램의 명령어 추가

파일 내부에 자동실행하고자 하는 프로그램의 실행 명령어를 추가합니다. 예를 들어, 바탕화면에 있는 test.py 파일을 실행하려면 다음과 같이 입력합니다:

@python /home/pi/Desktop/test.py

3. GUI 프로그램 자동실행 설정

GUI 프로그램을 자동으로 실행하려면 lxterminal을 이용하여 명령어를 추가합니다. 예를 들어, my_script.sh 스크립트를 실행하려면 다음과 같이 입력합니다:

@lxterminal -e /home/pi/my_script.sh

4. 변경 사항 저장 및 종료

Ctrl + O를 눌러 변경 사항을 저장하고, Ctrl + X를 눌러 편집기를 종료합니다.

5. 라즈베리파이 재부팅

변경 사항을 적용하기 위해 라즈베리파이를 재부팅합니다.

sudo reboot

이제 라즈베리파이가 부팅될 때마다 설정한 프로그램이 자동으로 실행됩니다. 설정을 변경하거나 추가하려면 위의 단계를 반복하면 됩니다.

 

 

sh 파일을 이용한 라즈베리파이 자동실행 설정

라즈베리파이에서 특정 프로그램이나 명령어를 자동으로 실행하려면 sh 파일, 즉 쉘 스크립트를 사용하는 방법이 효과적입니다. 쉘 스크립트는 일련의 명령어를 포함하는 텍스트 파일로, 이를 통해 여러 명령어를 한 번에 실행할 수 있습니다. 이제 sh 파일을 이용한 자동실행 설정 방법에 대해 알아보겠습니다.

 

1. 쉘 스크립트(sh 파일)란?

쉘 스크립트는 UNIX 또는 Linux 시스템에서 명령어의 나열을 파일로 저장하여 한 번에 실행할 수 있게 하는 스크립트 파일입니다. .sh 확장자를 가지며, 이 파일을 실행하면 내부에 작성된 명령어들이 순차적으로 실행됩니다.

2. sh 파일 생성하기

먼저, 원하는 위치에 .sh 파일을 생성합니다. 예를 들어, my_script.sh라는 파일을 생성하려면:

라즈베리파이 부팅 후 자동으로 터미널 실행 및 명령어 입력 방법

nano ~/my_script.sh

Ctrl + O를 눌러 변경 사항을 저장하고, Ctrl + X를 눌러 편집기를 종료합니다.

3. sh 파일에 명령어 입력하기

생성한 my_script.sh 파일을 편집기로 열어 원하는 명령어나 스크립트를 입력합니다. 예를 들어, 웹 브라우저를 실행하려면:

라즈베리파이 부팅 후 자동으로 터미널 실행 및 명령어 입력 방법

echo "chromium-browser" >> ~/my_script.sh

 

or

 

라즈베리파이 부팅 후 자동으로 터미널 실행 및 명령어 입력 방법

chromium-browser

4. sh 파일 실행 권한 부여하기

스크립트 파일에 실행 권한을 부여합니다:

라즈베리파이 부팅 후 자동으로 터미널 실행 및 명령어 입력 방법

sudo chmod +x ~/my_script.sh

5. autostart 파일에 sh 파일 등록하기

/etc/xdg/lxsession/LXDE-pi/autostart 파일을 편집기로 열어, 위에서 생성한 my_script.sh 파일을 등록합니다:

라즈베리파이 부팅 후 자동으로 터미널 실행 및 명령어 입력 방법

sudo nano /etc/xdg/lxsession/LXDE-pi/autostart
  • 백그라운드 실행:
    파일 내에 다음과 같이 입력하여 스크립트를 백그라운드에서 실행합니다:이 방식은 스크립트를 백그라운드에서 조용히 실행하며, 터미널 창이 나타나지 않습니다.
  • @/home/pi/my_script.sh

라즈베리파이 부팅 후 자동으로 터미널 실행 및 명령어 입력 방법

  • 터미널 창에서 실행:
    파일 내에 다음과 같이 입력하여 새로운 터미널 창에서 스크립트를 실행합니다:이 방식은 lxterminal을 사용하여 새로운 터미널 창을 열고 그 안에서 스크립트를 실행합니다. 스크립트의 실행 과정을 실시간으로 확인하거나 사용자의 입력을 받아야 하는 경우에 유용합니다.
  • @lxterminal -e /home/pi/my_script.sh

라즈베리파이 부팅 후 자동으로 터미널 실행 및 명령어 입력 방법

6. 변경 사항 저장 및 라즈베리파이 재부팅

변경 사항을 저장하고 라즈베리파이를 재부팅하여 설정을 적용합니다.

이제 라즈베리파이가 부팅될 때마다 위 사진처럼 my_script.sh 파일 내의 명령어들이 자동으로 실행됩니다. 필요에 따라 sh 파일 내의 명령어를 수정하거나 추가하여 다양한 작업을 자동화할 수 있습니다.

 

백그라운드 실행 화면 

명령어는 백그라운드에서 실행이 되고 아래 사진처럼 브라우저만 실행된 것을 확인할 수 있습니다.

라즈베리파이 부팅 후 자동으로 터미널 실행 및 명령어 입력 방법

 

터미널 창에서 실행 화면 

아래 사진처럼 명령어가 실행된 터미널 창이 실행되어 명령어가 입력되어 브라우저가 실행된 것을 확인할 수 있습니다.

라즈베리파이 부팅 후 자동으로 터미널 실행 및 명령어 입력 방법

 

 

터미널 자동 실행 및 명령어 입력

라즈베리파이에서 터미널을 자동으로 실행하고 특정 명령어를 실행하려면, autostart 파일에 명령어를 추가하는 방법을 사용할 수 있습니다. 이를 위해 lxterminal -e 명령어를 활용하면, 터미널을 통해 원하는 스크립트나 프로그램을 자동으로 실행할 수 있습니다.

1. lxterminal -e 명령어의 이해

lxterminal -e는 LXDE 환경의 터미널에서 특정 명령어나 스크립트를 실행하기 위한 명령어입니다. -e 옵션 뒤에 오는 내용은 터미널에서 바로 실행할 명령어나 스크립트를 지정하는 부분입니다.

2. autostart 파일에 명령어 추가하기

/etc/xdg/lxsession/LXDE-pi/autostart 파일을 열어서 원하는 명령어를 추가합니다. 예를 들어, 바탕화면에 있는 test.py 파일을 실행하려면 다음과 같이 입력합니다:

@lxterminal -e python3 /home/pi/Desktop/test.py

이렇게 설정하면 라즈베리파이 부팅 시 자동으로 test.py 파일이 실행됩니다.

3. 주의사항

명령어를 입력할 때, 절대 경로를 사용하는 것이 좋습니다. 상대 경로를 사용하면 예상치 못한 문제가 발생할 수 있습니다. 또한, 실행하려는 스크립트나 프로그램에 실행 권한이 있는지 확인해야 합니다.

4. 재부팅하여 확인

설정 후 라즈베리파이를 재부팅하여 test.py 파일이 정상적으로 실행되는지 확인합니다.

이렇게 간단한 설정을 통해 라즈베리파이에서 원하는 프로그램이나 스크립트를 부팅 시 자동으로 실행할 수 있습니다. 이 방법은 다양한 환경에서 유용하게 활용될 수 있으므로, 필요에 따라 적절히 활용하시기 바랍니다.

 

 

추가 팁 및 주의사항

라즈베리파이를 사용하면서 자동실행 설정을 할 때는 여러 가지 방법이 있습니다. 그 중에서도 가장 적합한 방법을 선택하는 것이 중요합니다. 여기서는 몇 가지 추가 팁과 주의사항을 제공하려고 합니다.

1. 적합한 방법 선택하기

라즈베리파이에서는 다양한 자동실행 방법이 있습니다. 예를 들면, rc.local, crontab, systemd 등의 방법이 있습니다. 사용하려는 프로그램의 특성과 필요에 따라 가장 적합한 방법을 선택해야 합니다.

2. GUI 프로그램의 자동실행

GUI 프로그램을 자동으로 실행하려면 autostart 방법이 가장 효과적입니다. 특히 인터넷 연결이 필요한 프로그램의 경우, autostart를 사용하면 편리합니다.

3. 실행 권한 확인

스크립트나 프로그램을 자동실행 설정하기 전에, 해당 파일에 실행 권한이 있는지 반드시 확인해야 합니다. 권한이 없다면 chmod +x 파일명 명령어를 통해 권한을 부여할 수 있습니다.

4. 절대 경로 사용하기

자동실행 설정 시, 스크립트나 프로그램의 경로를 지정할 때는 절대 경로를 사용하는 것이 좋습니다. 상대 경로를 사용하면 예상치 못한 오류가 발생할 수 있습니다.

5. 테스트는 필수

설정을 마친 후에는 반드시 재부팅하여 설정이 제대로 적용되었는지 확인해야 합니다. 특히, 복잡한 설정의 경우 여러 번의 테스트가 필요할 수 있습니다.

라즈베리파이의 자동실행 설정은 매우 유용하지만, 잘못된 설정은 예상치 못한 문제를 일으킬 수 있습니다. 따라서 주의 깊게 설정하고, 필요한 경우 전문가의 도움을 받는 것도 좋은 방법입니다.

 

 

마무리

라즈베리파이는 다양한 프로젝트와 응용 프로그램에서 널리 사용되는 미니 컴퓨터입니다. 이러한 라즈베리파이에서 특정 작업이나 프로그램을 자동으로 실행하려면 여러 방법이 있습니다. 본 아티클에서는 sh 파일, 즉 쉘 스크립트를 활용하여 라즈베리파이에서 자동실행을 설정하는 방법에 대해 상세하게 설명하였습니다. 이를 통해 사용자는 라즈베리파이를 더 효율적으로 활용할 수 있게 됩니다. 특히, 여러 명령어를 한 번에 실행하거나 특정 시간에 자동으로 작업을 수행하려는 사용자에게 이 방법은 큰 도움이 될 것입니다.

 

FAQs

Q. sh 파일과 bash 파일의 차이는 무엇인가요?

A. sh와 bash는 모두 쉘 스크립트 파일입니다. bash는 sh의 확장 버전으로, bash는 sh에 비해 추가적인 기능들을 제공합니다.

 

Q. autostart 파일 위치를 잊어버렸어요. 어디에 있나요?

A. autostart 파일의 기본 위치는 /etc/xdg/lxsession/LXDE-pi/autostart 입니다.

 

Q. sh 파일 실행 권한을 주지 않으면 어떻게 되나요?

A. 실행 권한을 주지 않으면 해당 sh 파일은 실행되지 않습니다.

 

Q. sh 파일 내에서 다른 sh 파일을 호출할 수 있나요?

A. 네, sh 파일 내에서 다른 sh 파일을 호출하여 실행할 수 있습니다.

 

Q. 라즈베리파이 외에도 sh 파일은 다른 리눅스 시스템에서도 사용할 수 있나요?

A. 네, sh 파일은 리눅스 기반의 대부분의 시스템에서 사용할 수 있습니다.

 

3줄 요약

  • 라즈베리파이에서 sh 파일로 자동실행 설정
  • autostart 파일을 통한 실행 명령어 등록
  • sh 파일은 리눅스 전반에서 활용 가능

댓글