라즈베리파이에 코드를 짜서 실행시키고 싶은데...... 검은색은 바탕이요. 흰색은 글씨라.....
어떻게 하면 라즈베리파이를 이용하여 쉽게 개발 할 수 있을까?! 라고 많은 사람들이 고민했더랬죠.
그 덕분에 다양한 방법들이 있고 그 방법들을 한 번 소개해 보려고 해요.
한 번 개발을 위해 어떤 방법들이 있나 알아보죠
개발 방법들!!!
WinSCP 프로그램을 이용하기 이 친구는 설치 방법이 아주 간단하답니다. 사용법도 간단하고. 무엇보다!! Putty와 연동이 되서 접속하는 것도 개꿀 ㅋ 근데 사실상 개발 목적이라기 보다는 리눅스와 윈도우 간의 파일 전송 목적이 큰 프로그램이라 코딩 목적에는 약간 벗어난 프로그램이죠 ㅎ
Samba 서버 이용하기 요 놈은 라즈베리파이에 삼바라는 서버를 개설해서 윈도우에서 폴더 공유 형태로 파일을 확인할 수 있는 놈입니다. 따라서! 윈도우에 깔려있는 editor들(vs Code, Atom ....)을 이용하여 손쉽게 코드를 작성하고, 수정할 수 있는 놈이죠.
Visual Studio(vs) Code의 ftp-simple 이용하기 vs Code를 사용해 보신적이 있으신가요? 요놈은 프로그래밍을 배울 때 보통 가장 먼저 사용하는 툴인 Visual Studio에서 경량화해서 나온 개발도구인데, 다양한 확장 도구들을 지원합니다. (C, C++, Java, JavaScript, Python 등등등) 뿐만 아니라 원격 제어를 통한 개발 관련 툴들도 지원을 해주고 있어 한 번쯤 사용해볼만한 개꿀템!
라즈베리파이를 살펴보면 랜 포트가 있고, USB 포트가 4개, HDMI 포트가 하나 있습니다.
라즈베리파이 구매 모델에 따라 LCD가 달려있는 모델도 있고 다양한데 가격이고, 크기도 크고....
보통 이런거 하나 사서 개발을 진행하게 됩니다....ㅋㅋ
컴퓨터랑 연결하는 다양한 방법(유선랜으로 연결해서 개발하기, HDMI로 외부 모니터 연결하고, USB로 키보드 마우스 연결해서 개발하기 등등등)이 있지만 가장 베스트는 그냥 내 컴퓨터에서 직접 개발하는 것이 아니겠습니까?!!! 하하하하하
그래서 WiFi만 있다면!(요즘 Wifi 안되는 곳이 없지 말입니다..ㅎㅎ) Wifi를 이용하여 개발하는 방법을 소개해드릴까합니다.
각설하고
필요한 프로그램들을 한 번 확인해볼까요??
준비물
라즈베리 파이3 + 라즈비안이 설치된 microSD카드
전원 공급 장치
microSD 카드를 컴퓨터와 연결하기 위한 카드 리더기
Putty 임베디드 프로그래밍에 빠져서는 안될 꼭 필요한 완소 프로그램이죠..ㅎㅎ SSH를 이용하여 원격으로 다른 기기에 접속하여 개발을 진행할 수 있게 해주는 프로그램이랍니다.
SSH란 ? Secure Shell은 네트워크 상의 다른 컴퓨터에 로그인하거나 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해 주는 응용 프로그램 또는 그 프로토콜
+알파 xrdp
Putty와 동일하게 원격으로 라즈베리파이 개발을 도와주는 프로그램인데 라즈베리 파이의 GUI를 사용할 수 있는 프로그램입니다. 실제 개발할 때는 Putty를 사용하게 되지만 처음 개발하시는 분들은 GUI(Graphic UI, ex)Windows )에 익숙하실 것 같아 소개해드리려고 합니다.
3. 위와 같은 내용이 뜨는데 여기서 위에서 설정한 Wifi 이름과 비밀번호를 입력하고 저장을 합니다.
4. 그리고 SSH 파일과 wpa_supplicant.conf 파일을 라즈비안을 설치한 microSD 카드 안에 붙여넣어 줍니다.
자, 이제 모든 설정이 완료가 되었습니다!!!!
Wifi 연결 확인하기
자 이제 microSD 카드를 컴퓨터와 제거한 다음 라즈베리파이에 꼽아주고 전원을 연결해줍니다.
라즈베리 파이는 우리가 알고 있는 일반적인 컴퓨터와 다르게 전원을 공급해주면 알아서 부팅이 됩니다 ㅎㅎ 개꿀
그리고 아까 핫스팟 설정할 때 들어갔던 곳으로 들어가 기다리다 보면
짜자잔 이렇게 라즈베리파이가 내 컴퓨터의 핫스팟에 연결된 것을 확인할 수 있습니다.
이제 라즈베리 파이를 내 컴퓨터와 연결할 수 있는 모든 조건이 마련되었습니다.
여기서 라즈베리파이가 연결된 IP 주소를 잘 기억해두세요~ 위에서 설치한 Putty를 이용하여 라즈베리파이와 연결할 때 필요합니다.
Putty와 라즈베리파이 연결하기
1. Putty를 실행시켜줍니다.
session에 여러가지가 많이 보이는 건 제가 다 저장해놓은 거고 처음 실행시키면 Default Settings 밖에 없을거에요 ㅎㅎ
2. 각 창에 필요한 정보들을 기재하고 해당 정보를 저장해놓습니다!(그래야 나중에 편하게 들어가죠 ㅎㅎ)
여기서 가장 중요한 것은 Host Name!!!! 라즈베리파이가 연결된 IP 주소를 그대로 Host Name에 적어주면 됩니다.
3. 모든 정보를 다 저장했으면 오픈할 Session(라즈베리파이_핫스팟)을 선택하고 open 클릭!
4. 처음 연결 할 때 신뢰할수 없는 host라고 뜰텐데 신경쓰지 않고 예를 눌러줍니다. ㅎㅎㅎ
5. 웬 까만 창이 뜨면 처음에 id와 비밀번호를 쳐야합니다. 라즈베리파이의 초기 id는 pi 비밀번호는 raspberry입니다.
linux 기반 os들은 비밀번호를 칠때 비밀번호 표시가 안됩니다. 안쳐진다고 당황하지 마시고 그냥 비밀번호 치고 엔터 누르시면 됩니다 ㅎㅎ
자, 이제 라즈베리파이에 연결이 모두 완료되었습니다!!!!! 와~~ 짝짝짝
연결이 되었으니 가장 기본적인 설정을 해주겠습니다.
라즈베리파이 root 비밀번호 설정하기
Linux 기반의 OS는 multi-user 개념이 도입되어있습니다.
multi-user란 한마디로 다양한 사용자가 한 pc에 접속하여 사용이 가능한건데요.
그렇다면 이러한 multi-user를 총괄하는 대빵도 필요하겠지요. 그놈을 우리는 'root'라고 부를 거에요.
이 root란 놈은 처음 라즈베리파이를 켜게 되면 비밀번호가 없는 상태에요. 따라서 이 root라는 놈에게 비밀번호를 한 번 설정해보겠습니다.
간단해요.
$ sudo passwd
라고 입력을 하면 비밀번호를 입력하라고 나옵니다.
비밀번호를 입력하고 확인 입력까지 마치면 successfully라고 뜨게 되요.
그럼 한번 관리자로 접속을 해볼께요
$ su
라고 입력을 하게 되면 Password를 치라고 나옵니다.
위에서 설정한 password를 치게 되면 root 계정으로 로그인이 완료된 것을 확인할 수 있어요.
(pi@raspberrypi -> root@raspberrypi로 바뀐 것을 확인 할 수 있어요~~)
다시 이전 계정으로 돌아가고 싶을 경우
$ su pi
su [계정명]을 입력해주게 되면 해당 계정명을 가진 사용자로 돌아갈 수 있습니다!
라즈베리파이 raspi-config 명령어를 이용하여 초기 설정하기
라즈베리파이에 파일을 다운로드 받고, 업데이트를 하기 위해서는 용량을 늘려줘야 해요.
$ sudo raspi-config
1. 해당 명령어를 치게 되면
2. 아래와 같이 이상한 창이 나오는 걸 확인할 수 있어요.
3. 방향키로 위 아래 이동을 통해 메뉴를 선택할 수 있고 엔터키로 들어갈 수 있습니다.
Advanced Options 선택
4. Expand Filesystem 선택
5. 검은색 창에서 뭐가 쫘르르 뜨고 다시 되돌아와 resized가 됬다고 뜨면 OK!
6. 방향키를 좌또는 우로 누르면 Finish를 선택할 수 있습니다. Finish 선택!
7. reboot 할거야? 라고 물어보는데 과감하게 YES 눌러줍니다.
8. 그렇게 되면 갑자기 network connection이 끊겼다고 나오는데 재부팅했으니깐 당연하지..ㅎㅎ
당황하지 않고 확인 누른 후 잠시 기다렸다가 putty로 다시 접속해줍니다.
모든 설정이 끝났어요!!! 이제 정말 라즈베리파이를 이용하여 개발 하고 싶은 걸 개발하면 됩니다!!!!
아 번외로 라즈베리파이 GUI 제공되는 것을 보여드릴께요.
xrdp라는 프로그램을 이용할 거에요.
번외 : XRDP를 이용하여 윈도우 컴퓨터로 라즈베리파이 원격 제어하기
... y ...은 설치 중간에 계속 진행할 것인지 물어보기 때문에 y를 입력하라는 의미입니다.
$ sudo apt-get update
$ sudo apt-get upgrade
... y ...
$ sudo apt-get install xrdp
... y ...
1. 위의 명령어를 순차적으로 입력해줍니다.
<깨알 명령어 상식 보기>
sudo는 관리자 권한으로 실행시키겠다는 명령어이고, apt-get은 일종의 패키지 관리자입니다.
패키지 관리자가 뭐냐면 윈도우같은 경우는 내가 어떤 프로그램을 설치하고 싶으면 그 홈페이지에 들어가서 직접 설치 프로그램을 다운받아 설치해야 하죠.
하지만 리눅스는 이러한 패키지 관리자를 이용하여, 설치하고 싶은 프로그램을 패키지 관리자를 통해 쉽게 설치할 수 있습니다. 그리고 이러한 패키지 관리자는 /etc/apt/sources.list 위치에 있는 리스트 목록을 통해 내가 원하는 프로그램을 손쉽게 다운받을 수 있게 도와줍니다.
update는 해당 리스트를 업데이트 시켜주는 명령어이고, upgrade는 설치되어있는 패키지를 모두 최신 버전으로 업그레이드시켜주는 것입니다. (설치되어있는 패키지들을 업그레이드 시켜주는 거라 시간이 조금 오래 걸려요 ㅎㅎ)
그렇게 list와 설치된 패키지를 모두 업데이트, 업그레이드하고 난 후 install 명령어를 이용하여 xrdp를 설치하여줍니다.
2. 이제 윈도우로 되돌아가서 "원격 데스크톱 연결"을 찾아 클릭해줍니다.
3. 라즈베리파이가 연결되어 있는 ip 주소를 입력하고 연결 클릭!
4. 과감히 예를 눌러줍니다.
5. 그렇게 되면!!! 이런 창이 뜹니다. 혹시 창이 그냥 청록색만 보이는 경우 전체 화면 해주세요 ㅎㅎ
6. username : pi
password : raspberry
입력해주시고 ok를 누르면!
7. 아래와 같이 GUI 환경이 뜨게 됩니다.
8. 완성~~
GUI 환경이 윈도우 환경처럼 익숙하기 때문에 더 편해 보일 수 있지만 TUI 환경보다 느립니다.....
따라서 TUI 환경에서 개발을 진행하는 것을 적극! 권장드립니다~~~
고생 많으셨어요!!! 이제 라즈베리파이 개발을 위한 1차적인 작업은 모두 마무리가 되었습니다.
만약 리눅스를 처음 사용해보신다면 리눅스 관련 명령어라던가, editor 등 처음 보는 것들 투성일텐데요.
하나하나 차근차근 해보면 어느순간 막막 개발하고 있는 여러분을 보게 될 거에요 ㅎㅎㅎ
앞으로도 라즈베리파이를 포함한 리눅스 개발에 도움이 되는 꿀팁 등을 하나하나 소개해드릴께요~