45
RaspberryPi 개발환경구축III 1 제03강 개발 환경 구축 III 가상머신의 IP 주소 설정 Tool Chain(크로스 컴파일러) 설치 크로스 컴파일 및 호스트 컴파일 NFS 서비스 리눅스 명령어 보충) 한글 사용환경 구축 참조) 교재 제3장 후반부

제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 1

제03강

개발 환경 구축 III

가상머신의 IP 주소 설정

Tool Chain(크로스 컴파일러) 설치

크로스 컴파일 및 호스트 컴파일

NFS 서비스

리눅스 명령어

보충) 한글 사용환경 구축

참조) 교재 제3장 후반부

Page 2: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 2

가상머신 IP 주소 설정

* 선 조치

: Windows환경의 IP 주소와 다른 IP 주소 사용시

: VMware Player의 network adapter 설정에서

반드시 Bridged, ☑Replicate...로 선택

* 관련 앱 실행

: 앱아이콘 - Settings - Network - Wired – 해( )클릭후,

Page 3: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 3

가상머신 IP 주소 설정(계속)

* 가상머신의 IP 주소 설정 ( 192.168.0.20 )

: ipv4 탭 선택후, manual 선택

: IP 주소 정보 및 DNS 설정 후, Apply 클릭

* 재부팅

: Player - Power - Restart Guest 클릭

Page 4: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 4

가상머신 IP 주소 설정(계속)

* 가상머신의 IP 주소 확인

: 터미널 창에서 ifconfig로 ip 주소 확인

: NIC 디바이스명 ens33 유의

ifc415@ubuntu:~$ sudo su // super user 로그인

[sudo] password for ifc415:

root@ubuntu:/home/ifc415# cd

root@ubuntu:~#

root@ubuntu:~# apt install net-tools // 미설치시

root@ubuntu:~# ifconfig

ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500

inet 192.168.0.20 netmask 255.255.255.0 broadcast 192.168.0.255

inet6 fe80::2c4:b745:7608:3d0a prefixlen 64 scopeid 0x20<link>

ether 00:0c:29:af:fc:38 tx.................

Page 5: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 5

가상머신 IP 주소 설정(계속)

* 가상머신의 네트워킹 확인

: ping 명령

root@ubuntu:~# ping 192.168.0.40

: 혹은, Firefox 웹 브라우저 통해 특정 사이트 접속

Page 6: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 6

Page 7: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 7

툴 체인(tool-chain)

* 필수 패키지 설치

root@ubuntu:~# apt-get update

// 설치된 패키지를 최신버젼으로 업데이트(다운로드)

root@ubuntu:~# apt-get upgrade

// 다운로드된 최신버젼 패키지 설치(업그레이드)

: 32비트 호환 라이브러리 패키지 ( / 하부에 설치 )

root@ubuntu:~# dpkg --add-architecture i386

root@ubuntu:~# apt-get install lib32z1 // 숫자 1임

root@ubuntu:~# apt-get install lib32ncurses5

root@ubuntu:~# apt-get install lib32ncurses5-dev

: 개발을 위한 패키지 설치

root@ubuntu:~# apt-get install build-essential

Page 8: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 8

툴 체인(계속)

* 툴 체인(크로스 컴파일러) 설치

root@ubuntu:~# apt-get install gcc-arm-linux-gnueabihf

Reading package lists... DoneBuilding dependency tree Reading state information... DoneThe following package was automatically installed and is no longer required: libqpdf13.......

: /usr/arm-linux-gnueabihf 디렉터리에 설치됨

* 설치 확인(버전 정보출력 옵션)

root@ubuntu:~# arm-linux-gnueabihf-gcc --version

arm-linux-gnueabihf-gcc (Ubuntu/Linaro 7.3.0-27ubuntu1~18.04) 7.3.0Copyright (C) 2017 Free Software Foundation, Inc.This is free software; see the source for copying conditions. There is NOwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Page 9: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 9

툴 체인(계속)

* 크로스 컴파일러 경로 설정 (.bashrc 파일 편집)

root@ubuntu:~# gedit .bashrc

# 파일의 끝에 다음을 추가

# Arm Cross Compiler ... raspberry pi

export ARCH=arm

export CROSS_COMPILE=arm-linux-gnueabihf-

* .bashrc 파일 변경 반영

root@ubuntu:~# source .bashrc

root@ubuntu:~#

root@ubuntu:~# echo $ARCH // 반영 확인, ARCH만

arm

Page 10: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 10

툴 체인(계속)

* 간단한 C 소스 작성하여 툴체인 테스트

: 간단한 메시지 출력 기능

root@ubuntu:~# gedit hello.c

#include <stdio.h>

int main(void) {

printf("Hello....\n\n");

return 0;

}

Page 11: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 11

툴 체인(계속)

* 타깃용(라즈베리파이) 크로스 컴파일

root@ubuntu:~# arm-linux-gnueabihf-gcc –o t_hello hello.c

root@ubuntu:~# ls

t_hello hello.c

* 실행

root@ubuntu:~# ./t_hello

bash: ./hello: cannot execute binary file: Exec format error

root@ubuntu:~# file ./t_hello // 라즈베리파이용

./hello: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV),

dynamically linked (uses shared libs), for GNU/Linux 2.6.32,

BuildID[sha1]=605ab13e2935cea088c3bc9d91fd43718e8d02a2, not

stripped

Page 12: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 12

툴 체인(계속)

* 호스트용(가상머신) 컴파일( gcc )

root@ubuntu:~# gcc -o h_hello hello.c

root@ubuntu:~# ls

h_hello t_hello hello.c

* 호스트용을 실행

root@ubuntu:~# ./h_hello

Hello....

root@ubuntu:~# file ./h_hello // 가상머신용

./h_hello: ELF 64-bit LSB executable, x86-64, version 1 (SYSV),

dynamically linked (uses shared libs), for GNU/Linux 2.6.24,

BuildID[sha1]=6f55ff519eceb3a255ebcb3eb29620dad454ece9, not

stripped

Page 13: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 13

Page 14: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 14

NFS 서비스

* NFS(network file system)

: 네트워크상의 동종 시스템의 FS 자원을 공유하는 서비스

* NFS 패키지 설치

root@ubuntu:~# apt-get install nfs-kernel-server

Reading package lists... Done

..............

* NFS 환경 설정( /etc/exports 파일 편집)

root@ubuntu:~# gedit /etc/exports

/nfs *(rw,sync,no_root_squash,no_subtree_check)

// 괄호속 공백문자없이 작성할 것, * : 동일망내 모든시스템

Page 15: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 15

NFS 서비스(계속)

* 외부에서 공유할 디렉터리( /nfs ) 생성

root@ubuntu:~# mkdir /nfs

* 재부팅(설정정보 반영)

root@ubuntu:~# reboot

* NFS 서비스할 자료 복사

: 공유할 파일을 NFS 서비스위한 디렉터리( /nfs )로 복사

root@ubuntu:~# cp *_hello /nfs

root@ubuntu:~# ls /nfs

Page 16: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 16

NFS 서비스(계속)

* NFS 클라이언트 측에서

: 라즈베리파이 보드로 PuTTY 접속후,

: 공유영역 마운팅하여 파일 공유( 가상머신 실행중이어야 함 )

$ sudo mkdir /share ; 마운트 포인트 생성

$ sudo mount -t nfs 192.168.0.20:/nfs /share

;192.168.0.20(VM) /nfs를 타깃보드의 /share에 마운트

$ sudo ls /share ; 서버 공유영역의 공유 확인

$ sudo cd /share ; 이동

$ ./t_hello ; 공유파일 실행, 정상적 실행

$ ./h_hello ; 공유파일 실행, 실행 불가

Page 17: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 17

Page 18: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 18

라즈베리파이보드에서 개발

* 간단한 C 소스 작성

: 간단한 메시지 출력 기능

pi@raspberrypi:~ $

$ nano hello.c

#include <stdio.h>

int main(void) {printf("Hello....\n\n");

return 0;}

Page 19: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 19

라즈베리파이보드에서 개발(계속)

* 컴파일 ( gcc )

pi@raspberrypi:~ $ gcc --version // 버전정보

gcc (Raspbian 6.3.0-18+rpi1+deb9u1) 6.3.0 20170516

Copyright (C) 2016 Free Software Foundation, Inc.

This is free software; see the source for cop...

$ gcc -o hello hello.c // 컴파일

$ ls

hello hello.c

$ ./hello // 실행

Hello....

Page 20: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 20

Page 21: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 21

Linux 명령

* 다음 관련 명령

: 유용한 기능들

: 파일시스템 관련

: 검색 관련

: 네트워킹 및 기타 관련

* 실습을 진행하면서 추가 명령 숙지

Page 22: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 22

Linux 명령(계속)

* 유용한 기능

: 히스토리 기능

// 기존 사용했던 명령을 유지, 자판의 상하키 활용

: 자동 완성기능

// 긴 파일명 혹은 디렉터리 명의 자동 완성 기능

// 선두 문자 입력후 <tab> 키 활용

: 파이프 기능

// 한 명령의 표준 출력을 다음 명령의 표준 입력으로 전달

// |로 명령간 구분

$ ls -al /usr/bin | more // /usr/bin의 파일목록을 페이지단위 출력

$ ls /usr/bin | sort | less // 파일목록을 소팅하여 페이지단위 출력

Page 23: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 23

: 절대 경로 및 상대 경로

// 절대 경로는 /부터 명시

// 상대 경로는 . 혹은 .. 로 시작하여 지정

* 파일시스템 관련

: 파일 및 디렉터리 속성, ls –l로 확인

pi@raspberrypi:~ $ ls -l

drwxr-xr-x 2 pi pi 4096 Nov 13 2018 Desktop

// 첫 글자 : 파일 유형(d디렉터리, -일반파일, c문자장치, b블록장치, ...)

// 다음 3자리씩(rwx) : 접근권한 (owner, group, others 별 3자리)

: man 명령

$ man ls // ls 명령 사용법, q로 종료

: ls 명령

$ ls // 현재 디렉터리의 파일목록

Page 24: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 24

$ ls -a // 모든파일(히든파일포함)

$ ls -l // 속성까지 상세하게

$ ls -al // 모든 파일(히든파일포함)을 자세하게

$ ls /usr/bin // /usr/bin/ 디렉터리의 파일목록

$ ls *.txt // 특정파일만(파일명이 .txt로 끝나는 모든 파일)

$ ls -l /usr/bin/a*

:  pwd(present working directory) 명령

pi@raspberrypi:~ $ pwd

/home/pi

:   mkdir(make directory) 명령

$ mkdir mydir

$ mkdir -p mydir/subdir/tmp // parents, 서브디렉토리까지 생성

: cd(change directory) 명령

$ cd // 사용자의 홈디렉터리로 이동

Page 25: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 25

$ cd .. // ..은 현 디렉터리의 부모 디렉터리를 의미

$ cd mydir // 현 디렉터리내의 서브 디렉터리 mydir로

// $ cd ./mydir과 동일

$ cd /usr/bin // /usr/bin로 이동(절대경로)

$ cd ./../../usr/bin // 홈 디렉터리에서 위 명령과 동일 효과(상대경로)

: rmdir(remove directory) 명령

$ rmdir mydir

$ rmdir -p mydir/subdir // 여러 계층의 디렉터리 삭제, 비어있어야 함

: touch 명령

// 빈파일의 생성 혹은 기존 파일의 생성일시를 현시점으로 통일

$ touch test1 test2 // 빈 파일들을 생성

$ touch * // 모든 파일의 생성일시를 현재일시로 변경

: nano 명령

// 간단한 파일 편집기, 가상머신에선 이외에 gedit 제공

Page 26: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 26

$ nano test.c

: more/less 명령

// 파일의 내용을 한 화면씩(24라인) 보여줌, <space>, <b> 키활용

$ more test

$ less test // more 명령과 동일기능

: head 명령

$ head test // 기본 10라인 보기

$ head -20 test // 20라인 보기

: tail 명령

$ tail test // 기본 10라인 보기

$ tail -2 test // 끝의 2라인보기

: rm(remove) 명령

// 파일 및 디렉터리 삭제

Page 27: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 27

$ rm test // test 파일 삭제

$ rm -i test // 삭제 확인 질의후

$ rm -r mydir // 디렉터리 삭제시

$ rm -rf mydir // mydir와 그 하부를 삭제

: cp(copy) 명령

$ cp test testcopy // 파일 복사

$ cp -r mydir yourdir // 디렉터리 복사

$ cp -a /home/sample/tests . // 파일의 속성 유지한 채 복사, archive

: mv(move) 명령

$ mv aaa bbb ./mydir // ./mydir은 디렉터리로 두파일 이동

$ mv /etc/* ./mydir // /etc/하부 모든파일을 ./mydir로 이동

$ mv test mytest // test를 mytest로 변경, 파일혹은 디렉터리

$ mv mydir yourdir // mydir 디렉터리명을 yourdir로 변경

: chmod(change mode) 명령

Page 28: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 28

$ chmod go-w filedir // filedir에 group, others의 기록권한 삭제

$ chmod a+x filedir // filedir에모두에게 실행권한 설정

$ chmod 755 filedir // filedir에 octal 표현, -rwxr-xr-x 설정

$ chmod -R 777 ./filedir // 하부 디렉터리까지 설정

: chown/chgrp 명령

$ chown root /home/pi/test // owner를 root로

$ chgrp root /home/pi/test // group을 root로

$ chown root.root /home/pi/test // 소유자 및 그룹 함께 변경

: ln(link) 명령

$ ln aaa.txt atext // 하드링크, 두 파일내용 동일유지, 별도공간

$ ln -s ./mydir/subdir/test ltest // 심볼릭 링크

$ cat ltest // 다른 경로에 있는 파일을 쉽게 접근

$ ln -s /mnt/share/ share // 심볼릭 링크, 디렉터리 지정

Page 29: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 29

$ ls share // 파일목록 보기

$ cd share // /mnt/share로 이동

: unzip 명령

$ unzip tools.zip

: tar(tape archive) 명령

// 옵션시 -을 붙이지 않음

$ tar cvf my.tar ./my // ./my의 모든 파일을 my.tar파일로 묶음

$ tar tvf my.tar // 풀지않고 포함 목록만 확인

$ tar xvf my.tar // 풀기

$ tar cvfz my.tar.gz ./my // 묶기와 gzip 동시에, .gz 확장자

$ tar xvfz my.tar.gz // 압축복원과 풀기 동시에

* 검색 관련

Page 30: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 30

: grep 명령

$ grep hello abc.txt // abc.txt 파일내에 hello포함 라인 검색

$ ls -al | grep test // 파일목록중에 test 포함된 것 출력

: whereis 명령

pi@raspberrypi:~ $ whereis ifconfig

ifconfig: /sbin/ifconfig /usr/share/man/man8/ifconfig.8.gz

: find 명령

// 지정 경로하부에서 특정 패턴의 파일 검색

pi@raspberrypi:~ $ find /usr -name wiringPi*

/usr/include/wiringPiI2C.h

/usr/include/wiringPi.h

/usr/include/wiringPiSPI.h

* 네트워킹 및 기타 관련

Page 31: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 31

: ifconfig 명령

$ ifconfig // 현재 NIC의 설정정보 보기

$ ifconfig eth0 192.168.0.nn // IP 주소 변경

: ping 명령

$ ping 192.168.0.40

: hostname 명령

$ hostname

: uname 명령

// 프로세서, 커널버젼 등의 정보 확인

$ uname -a // 시스템의 모든 정보 보기

$ uname -p // 프로세서 확인

$ uname -r // 커널버젼 확인

Page 32: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 32

실습과제

[실습1] 개발환경구축

: 개발환경 구축과정에 따라 실습 진행

: 관련 리눅스 명령어 숙지

[실습2] Linux 명령

: 제시된 기본 리눅스 명령을 충분히 숙지토록 실습

[실습3] 한글 표시 및 입력 가능 환경

: 라즈베리파이 보드에서 한글 표시 및 입력가능하게

: 관련 리눅스 명령어 숙지

: 아래 내용 참조

Page 33: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 33

Page 34: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 34

한글관련 패키지 설치

* 기존 패키지 업데이트 및 업그레이드

$ sudo apt-get update

$ sudo apt-get upgrade

* 한글 폰트(한글 표시) 패키지 설치

$ sudo apt-get install fonts-unfonts-core

* 한글 입력 패키지 설치

$ sudo apt-get install ibus-hangul

* 재부팅

$ sudo reboot

Page 35: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 35

한글관련 패키지 설치(계속)

* 한글 패키지 설치 확인

: 산딸기 - Preferences - iBUS preferencs 항목 확인

: 우상단 삼태극 아이콘 등록 확인

: 웹 서핑통해 한글 깨짐현상 없어짐을 확인!!

Page 36: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 36

한글관련 패키지 설치(계속)

* 한글 입력기 등록 등 설정

: 삼태극 아이콘을 우클릭후, Preferences 선택

: 혹은, 산딸기–Preferences-iBUS preferencs 항목을 선택

: 창의 Input Method 탭에서 Add 버튼 클릭

“Korean- Hangul”항목 선택후, Add 버튼 클릭

: 내정된 한영 전환키는 Shift+Space

Page 37: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 37

시스템 환경에서 한글 표시

* 시스템의 메뉴항목 등을 한글로 보이게

$ sudo raspi-config

: 4 localisation Options 항목을 선택

: 서브화면에서 I1 Change Locale 항목을 선택

:“ko_KR.UTF-8 UTF-8”을 스페이스바 눌러 선택후, Ok

: 등록된 언어들 중 시스템 환경에 사용할 언어 선택후, Ok

Page 38: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 38

시스템 환경에서 한글 표시(계속)

* 기타 항목 (타임존, 키보드 등)

: I2 Change Timezone 항목

: Area에 Asia를, Location에 Seoul을 선택

: I3 Change Keyboard Layout 항목

: 자판 설정

: I4 Change Wi-Fi Country 항목

: 디폴트로 영국 설정되어 있음(그대로 둘 것)

: 변경시 Wi-Fi를 사용할 수 없게 되므로 유의

Page 39: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 39

시스템 환경에서 한글 표시(계속)

* 재부팅

$ sudo reboot

: 시스템 메뉴에 한글 표시 확인!!

Page 40: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 40

이하 제거!!!!

Page 41: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 41

가상머신의 IP 주소 설정(계속)

* 가상머신(Ubuntu)의 IP 주소 설정(방법2,OK,비권고)

: 터미널 창에서 ifconfig로 ip 주소 확인(디바이스명 ens33 유의)

: 이 방법의 경우, 조치후 방법1의 Wired 항목이 나타나지 않음!!!

root@ubuntu:~# gedit /etc/network/interfaces

auto lo

iface lo inet loopback

auto ens33

iface ens33 inet static

address 192.168.0.20

netmask 255.255.255.0

network 192.168.0.0

broadcast 192.168.0.255

gateway 192.168.0.1

dns-nameservers 220.68.64.1

root@ubuntu:~# gedit /etc/resolv.conf // 재부팅시 원상복구됨

nameserver 127.0.0.53

Page 42: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 42

nameserver 220.68.64.1

root@ubuntu:~# systemctl restart networking.service

root@ubuntu:~# reboot

참고)웹 서핑 불가시 아래와 같이 편집하여 저장후 웹 서핑시도할 것!!

root@ubuntu:~# gedit /etc/resolv.conf // 재부팅시 원상복구됨

nameserver 127.0.0.53

nameserver 220.68.64.1

Page 43: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 43

가상머신(Ubuntu)의 IP 주소 설정(계속)

* 가상머신(Ubuntu)의 IP 주소 설정(방법2)

: 터미널 창에서 ifconfig로 ip 주소 확인(디바이스명 ens33 유의)

root@ubuntu:~# apt install net-tools // 미설치시

root@ubuntu:~# ls /etc/netplan/

01-network-manager-all.yaml

root@ubuntu:~# gedit /etc/netplan/01-network-manager-all.yaml

# Let NetworkManager manage all devices on this system

network:

version: 2

renderer: NetworkManager

ethernets:

ens33: # 드라이버명

addresses:

- 192.168.0.20/24 # 설정할 IP 주소

Page 44: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 44

gateway4: 192.168.0.1

nameservers:

addresses: [220.68.64.1]

root@ubuntu:~# netplan apply // 변경정보 반영

root@ubuntu:~# ifconfig // 설정 IP 주소 확인

: security 탭에서 ON선택후, 망관리자계정명/암호설정

Page 45: 제03강 개발 환경 구축 III - KOREATECH · RaspberryPi 개발환경구축III 3 가상머신 IP 주소 설정(계속) * 가상머신의 IP 주소 설정 ( 192.168.0.20 ): ipv4

RaspberryPi 개발환경구축III 45