강의 PPT - 수원과학대학교 정보통신과

Download Report

Transcript 강의 PPT - 수원과학대학교 정보통신과

임베디드시스템1
7주차. 개발 환경 구축 II
(TFTP, NFS)
수원과학대학 정보통신과
7.1.1 Super daemon



데몬(서버 프로세스): 프로그램을 실행할 때부터 사용자
에 의해 직접적으로 제어 받지 않는 특별한 프로세스. 일
반적으로 백그라운드 모드로 수행하며 사건을 기다리거
나 주기적으로 주어진 작업을 수행
대부분의 데몬 프로세스는 마지막에 d라는 문자를 포함
독립적 수행 여부에 따라 독립형 데몬과 종속형 데몬으로
분류
수원과학대학 정보통신과
2
standalone daemon (독립형 데몬)



웹 서버(HTTPD), DB 서버(MYSQLD)와 같이 시스템에 독
자적으로 프로세스가 구동되어 서비스를 제공
자주 호출되는 서비스의 경우 메모리에 상주시켜 독립형
데몬으로 사용하는 것이 적절
독립형 데몬의 실행 스크립트 파일은 대부분 /etc/init.d/ 디
렉토리에 존재
수원과학대학 정보통신과
3
inetd daemon (종속형 데몬)




작은 규모의 서비스는 종속형 데몬으로 필요 시에만 수퍼 데몬이 작
동시킴
평소에는 4개의 데몬 프로세스가 잠자고 있지만, 타겟 시스템이 호스
트 시스템에 서비스를 요청하면 수퍼 데몬을 통하여 서비스 제공
수퍼 데몬 XINETD는 /etc/xinetd.d/<데몬 프로그램 이름>이라는 다수
의 설정 파일 사용
종속형 데몬 관련 설정 파일을 수정하면 수퍼 데몬을 반드시 재실행
수원과학대학 정보통신과
4
[실습7-1] super daemon 설치 및 실행
①
수퍼 데몬의 설치 여부 확인
②
수퍼 데몬이 설치되어 있지 않다면 설치
수원과학대학 정보통신과
5
[실습7-1] super daemon 설치 및 실행
③
수퍼 데몬 가동
④
수퍼 데몬 가동 여부 확인
수원과학대학 정보통신과
6
7.1.2 타깃 보드 IP 주소 설정



고정 IP 주소 배정
호스트 : 192.168.100.100/24
타깃:
 부트로더:
192.168.100.50/24
 임베디드리눅스: 192.168.100.200/24
수원과학대학 정보통신과
7
[실습7-2] 타깃 보드 IP 주소 설정
1.
호스트 시스템 주소 확인
수원과학대학 정보통신과
8
[실습7-2] 타깃 보드 IP 주소 설정
2.
VMware Network Adapter 변경: NATBridged

[Virtual Machine]-[Virtual Machine Settins]
수원과학대학 정보통신과
9
[실습7-2] 타깃 보드 IP 주소 설정
2.
호스트의 네트워크 연결 조사
[시작]-[제어판]-[네트워크 및 인터넷 연결]-[네트워크 연결]
수원과학대학 정보통신과
10
[실습7-2] 타깃 보드 IP 주소 설정
3.
네트워크 연결 속성 변경
타깃 보드와 연결 안된 인터페이스
타깃 보드와 연결된 인터페이스
수원과학대학 정보통신과
11
[실습7-2] 타깃 보드 IP 주소 설정
5.
타깃 보드의 부트로더에서 IP 주소 확인
6.
타깃 보드에서 호스트 PC로 연결 테스트
수원과학대학 정보통신과
12
페도라에 인터넷용 인터페이스 추가 [1]


Fedora Off
VMPlayer
2. 추가된 결과
1. Add를 눌러 Network Adapter 추가
수원과학대학 정보통신과
13
페도라에 인터넷용 인터페이스 추가 [2]

vmnetcfg.exe 실행
주소변경
수원과학대학 정보통신과
14
7.2 TFTP를 이용한 고속파일전송

TFTP?





TCP 를 사용하여 신뢰성있는 file 전송을 제공하는 ftp와 달리
UDP를 사용하여 file을 전송하는 protocol이다.
Data 의 전송 중에 오류가 날 확률이 극히 적은 근거리에서 빠르
게 file을 전송받고자 할 경우에 사용한다.
Embedded system 개발 중 개발한 kernel image나 ramdisk를
boot loader를 통해 target board로 전송하기 위해 많이 사용한다.
디렉터리 이동 기능이 없기 때문에 꼭 약속된 디렉터리(/tftpboot)
에 파일을 두어야 한다.
Linux용 TFTP 프로그램


www.rpmfind.net 에서 tftp로 검색하면 해당 rpm을 받을 수 있다.
또는 제공된 하이버스 CD 안에 /rpms에 있는 tftp rom을 설치하면
하면 된다.
수원과학대학 정보통신과
15
[실습 7-3] TFTP 설치
1.
설치 확인
rpm을 설치하기 전에 host에 이미 설치가 되어
있나 확인한다.
 설치가 되어 있으면 설치과정 생략.
 # rpm –qa | grep tftp
 TFTP
2.
설치
설치가 되어있지 않으면 설치한다.
 # yum –y install tftp-server
 Host에
수원과학대학 정보통신과
16
[실습7-3] TFTP 설정 [1]

3.
TFTP Server는 xinetd daemon에서 관리한다.
TFTP Server 설정을 위해 /etc/xinet.d/tftp 파일을 다음과 같이 수정
 TFTP 서버가 있는 절대경로와 서버프로그램 이름
 전송하고자하는 파일의 보관장소
 수퍼데몬 XINETD 요청시 TFTP 서버 사용
수원과학대학 정보통신과
17
[실습7-3] TFTP 설정 [2]
④
디렉토리 준비와 수퍼 데몬 재실행

파일을 전송할 때 사용하는 디렉토리를 /tftpboot 로
만든다.


TFTP 설정 파일을 편집한 후에는 xinet daemon에 적
용 시키기 위해 xinet daemon을 재시작 해주어야 한
다.


# service xinetd restart
TFTP가 현재 제대로 동작하고 있는가 확인한다.


# mkdir /tftpboot
# netstat –au | grep tftp
tftp가 포함된 행이 보인다면 제대로 동작하고 있는 것
이다.
수원과학대학 정보통신과
18
[실습7-4] TFTP를 이용한 이미지 전송
①
호스트 시스템의 /tftpboot 디렉토리에 타겟 이미지 복사
수원과학대학 정보통신과
19
[실습7-4] TFTP를 이용한 이미지 전송
②
호스트 시스템 /tftpboot에 있는 이미지의 접근 권한 변경
수원과학대학 정보통신과
20
[실습7-4] TFTP를 이용한 이미지 전송
②
타겟 시스템에서 TFTP 명령을 사용해 호스트 시스템에
있는 커널 이미지를 전송하고 플래시 메모리로 퓨징
 zImage 파일을 kernel로 지정된 RAM 영역으로 tftp 전송
100
100
 kernel로 지정된 RAM 영역을 플래시 메모리에 기록
수원과학대학 정보통신과
21
[실습7-4] TFTP를 이용한 이미지 전송
⑤
타겟 시스템에서 TFTP 명령으로 호스트 시스템에 있는
루트 파일시스템 이미지 전송하고 플래시 메모리로 퓨
징
 rootfs.img 파일을 root로 지정된 RAM 영역으로 tftp 전송
100
100
 root로 지정된 RAM 영역을 플래시 메모리에 기록
스크린샷하여 보고서에 추가
수원과학대학 정보통신과
22
7.3 NFS를 이용한 파일 공유


NFS(Network File System)를 이용하면 원격 컴퓨터의 파일이 마치
자신의 컴퓨터에 있는 것처럼 작동
타겟 시스템에서 필요한 프로그램을 호스트 시스템에서 개발하고
NFS를 사용하면 전송의 번거로움이 없이 타겟 시스템에서 사용 가능
수원과학대학 정보통신과
23
[실습 7-5] NFS 서버구축과 파일공유
①
②
호스트 시스템에서 NFS 서버 구축에 필요한 패키지 nfs-utils 설치 여
부 확인 후 미 설치시 설치
# rpm –qa nfs-utils
호스트 시스템의 NFS 관련 설정 파일 /etc/exports 편집
공유 디
렉터리
공유를 허용하
는 IP 주소
Read/
write
수원과학대학 정보통신과
Root는 아니지만 root의
권한을 가진다는 의미
24
[실습 7-5] NFS 서버구축과 파일공유
③
호스트 시스템에서 NFS 서비스를 가동시키고 공유할 디렉토리 생성
수원과학대학 정보통신과
25
[실습 7-5] NFS 서버구축과 파일공유
④
타겟 시스템에서 IP 주소 설정 → 네트워크 연결 상태 확인
수원과학대학 정보통신과
26
[실습 7-5] NFS 서버구축과 파일공유
⑤
⑥
타킷 시스템에서 빈 포트를 자동으로 찾도록 PORTMAP 실행
타겟 시스템에 마운트할 디렉토리를 생성→ 호스트 시스템의 공유
디렉토리 마운트
수원과학대학 정보통신과
27
[실습 7-5] NFS 서버구축과 파일공유
⑦
⑧
호스트 시스템의 공유 디렉토리에 파일 생성
타겟 시스템의 마운트 디렉토리에 호스트 시스템에서 생성한 파일
이 있는지 확인
스크린샷하여 보고서에 추가
수원과학대학 정보통신과
28
실습문제 1번



nfs를 사용하려면 타깃 시스템을 켤 때마다 매번 IP 주소
를 설정하고, 마운트 명령을 수행해야 한다. 이를 한꺼번
에 수행할 수 있는 배치 파일을 작성하여 타깃 시스템에
넣어두시오.
Hint) vi 에디터로 nfs.bat 파일을 작성해 타겟에 저장한다.

nfs.bat 파일의 내용

ifconfig eth0 192.168.100.200
mount –t nfs 1 92.168.100.100:/mnt/nfsHost /mnt/nfsTarget
nfs.bat을 실행가능하도록 파일의 모드를 변경한다.
보고서삽입:
 호스트의
/mnt/nfsTarget에 자기학번의 파일을 만든다
 타겟에서 nfs.bat 실행후 ls /mnt/nfsTarget 한 화면을
캡쳐해서 넣는다.
수원과학대학 정보통신과
29