파이캠을 이용한 웹스트리밍 서버

Posted by 백창
2015. 11. 8. 10:20 리눅스/라즈베리파이
반응형

# 개요


 라즈베리파이에 사용되는 전용 카메라 파이캠(pi-cam)와 mjpg-streamer를 이용하여 손쉽고 빠르게 웹 스트리밍을 해보자.


# 파이캠 장착


 처음 파이캠을 들었을 때 어디에 꼽아야하는지 막막했다. 


 다음 사진과 같이 해당 부분을 눌러 파이캠의 연결선을 넣고 다시 닫아주도록 하자.





# mjpg-streamer 컴파일 및 설치


 mjpg-streamer를 설치하기에 앞서 영상관련 라이브러리와 컴파일에 필요한 cmake 패키지를를 설치하자


 sudo apt-get install git cmake libjpeg8-dev imagemagick -y


 mjpg-streamer 컴파일 시 필요한 헤더파일을 링크한다.


 sudo ln - s /usr/include/linux/videodev2.h /usr/include/linux/videodev.h


 mjpg-streamer를 설치하고자 하는 폴더로 이동하여 다음 명령을 통해 mjpg-streamer를 다운 받는다. 


 해당 패키지는 오픈소스 프로젝트로 다양한 버전의 mjpg-streamer가 존재한다. 


 본 포스팅에서는 적절한 fps 조절을 위해 다음 프로젝트를 사용하였다. 

 (fps 20~25 일 때 거의 동영상으로 느낄 수 있다)


 git clone https://github.com/jacksonliam/mjpg-streamer


 다운받은 폴더로 이동하여 컴파일.. 꽤 오랜 시간이 걸린다


 make -clean all


# 실행


매번 명령어를 사용하여 실행하기 어렵기에 실행 스크립트를 작성하도록 하자.


export LD_LIBRARY_PATH=.

export mjpg_PATH=/home/pi/godHands/mjpg-test/mjpg-streamer/mjpg-streamer-experimental

$mjpg_PATH/mjpg_streamer -i "$mjpg_PATH/input_raspicam.so -x 640 -y 360 -fps 20" -o "$mjpg_PATH/output_http.so -w $mjpg_PATH/www"


해당 소스를 그대로 붙여넣기를 하면 "가 제대로 안들어갈수도 있다.


환경변수 mjpg_PATH에 mjpg streamer가 설치된 폴더를 지정하고 mjpg_streamer를 실행한다.






# 결과





# 참조


http://www.rasplay.org/?p=7174


https://github.com/jacksonliam/mjpg-streamer/blob/master/README.md


반응형

'리눅스 > 라즈베리파이' 카테고리의 다른 글

[방범 DIY] CCTV를 만들어보자 #1  (0) 2017.05.10
GPIO 및 웹 서버를 이용하여 라즈베리파이 제어  (5) 2015.11.14
WiringPi 설치  (0) 2015.11.08
SSH 연결 구축  (0) 2015.09.24
라즈비안 설치  (0) 2015.09.23

[tomcat] 웹서버 설치

Posted by 백창
2014. 10. 4. 23:12 리눅스/서버 구축
반응형


 개요

 

우분투에서 개발용 Tomcat을 설치해보자.



 다운로드

 

http://tomcat.apache.org/download-70.cgi


위 사이트에서 Tomcat을 다운받는다.




 설치

 

 원하는 경로에 압축을 해제한다.



startup 하면





반응형

[samba] 외부 네트워크에서 접속하기 - ssh 터널링

Posted by 백창
2014. 9. 13. 13:12 리눅스/서버 구축
반응형


 개요


ISP에서 막혀있는 삼바포트를 SSH 터널링을 사용하여 외부 네트워크에서 접속해보자


 루프백 어뎁터 설치


내 컴퓨터에 관리를 클릭



장치관리자에 네트워크 어뎁터를 선택한다.



동작메뉴에 레거시 하드웨어 추가를 클릭한다.



다음 과정을 따라하여 루프백 어뎁터를 설치한다.







 루프백 어뎁터 설정


네트워크 센터에서 새로추가된 어뎁터의 속성에 들어간다


다음 두 가지를 체크 해제 한다.



루프백 네트워크의 IP와 서브넷마스크를 등록하고 고급버튼을 누른다.



다음 항목을 체크한다.



 445포트 개방


Samba의 포트 445는 넷바이오스 포트로 먼저 windows에서 그리고 ISP에서 포트를 막아놨다. 그래서 먼저 다음 파일을 받아 관리자 모드로 실행하여 windows의 포트를 개방한다.


localsmb.exe





 ssh 터널링


다음 putty 프로그램을 다운받아 ssh 연결을 한다.(ssh 설치 편 참조)


HangulPuTTY-0.60h.setup.exe



다음 포워드 포트 부분에 다음과 같이 추가해준다.


원포트 : 139

대상 : Host - IP : 139


원포트 : 10.0.0.1:139

대상 : 127.0.0.1: 139


원포트 : 445

대상 : Host - IP : 445


원포트 : 10.0.0.1:445

대상 : 127.0.0.1445



Putty에 접속하고 테스트를 해보자



 테스트





반응형

'리눅스 > 서버 구축' 카테고리의 다른 글

[tomcat] 웹서버 설치  (0) 2014.10.04
[samba] 공유 디스크 설치  (0) 2014.09.12
[openssh-server] 원격접속 설치  (0) 2014.08.04
[vsftpd] FTP 서버 설치  (0) 2014.08.04
[apache2] 웹서버 설치  (0) 2014.08.04

[samba] 공유 디스크 설치

Posted by 백창
2014. 9. 12. 18:26 리눅스/서버 구축
반응형


 samba 설치



 유저 생성


먼저 samba 에 유저를 할당하기 위해 유저 생성을 한다.



그 유저를 삼바에 할당해주는데 원격 접속으로는 안된다. 


연구실로 쫄래쫄래가서 삼바유저를 추가 완료




 설정



다음 파일을 다음과 같이 수정한다



[~]는 외부에서 접속하였을때 보이는 공유 이름이다.

path  는 공유 디스크의 경로

guest ok 는 누구나 접속 가능하다

writable 은 쓰기 가능하다

write list 는 쓰기 권한을 부여하는 것이다.


 사용




반응형

[vyatta] 라우터 기본설정

Posted by 백창
2014. 9. 3. 17:43 컴퓨터네트워크/etc
반응형


 라우터 설정


  • 라우터 R1
    • 인터페이스
    • 프로토콜
  • 라우터 R2
    • 인터페이스
    • 프로토콜
  • 라우터 R3
    • 인터페이스
    • 프로토콜
  • 라우터 R4
    • 인터페이스
    • 프로토콜


 설정방법


(라우터 R2의 설정과정으로 vyatta 설정 방법을 배워보자)


 먼저 인터페이스에 대한 설정을 한다.


eth0은 192.0.30.0/24의 네트워크 (이전 포스트 환경도 참고)

eth1은 192.0.40.0/24의 네트워크

eth2는 R1 라우터

eth3는 R3 라우터와 연결되어 있다.


 인터페이스에 대한 설정을 완료하면 eth0과 eth1간의 통신은 문제없이 될 것이다.


 여기서 문제는 만약 R1라우터에 연결된 192.0.20.0/24의 네트워크에 있는 노드와 통신을 하기 원한다면 라우터 R2가 가진 정보만으로는 통신이 불가능하다. 그래서 라우팅 테이블이 필요하다.


그럼 OSPF 프로토콜을 설정해 보자.


그리고 loopback 10.0.0.2/32로 설정해 준다.

이렇게 OSPF 프로토콜을 설정해주면 라우터 R2가 가지지 못한 정보에 대해서는 라우터 R1 또는 라우터 R3로 전달한다.


 테스트



반응형

가상 네트워크 환경 설계도

Posted by 백창
2014. 9. 3. 17:31 컴퓨터네트워크/etc
반응형


 설계도




 Virtual Box 네트워크 설정





반응형

[phpMyAdmin] db관리

Posted by 백창
2014. 9. 3. 17:26 리눅스/Ubuntu
반응형

아파치 서버가 구축되어 있다는 전제.


 패키지 설치



 apache2 설정 수정


 /etc/apache2/apache2.conf 파일 제일 하단에 다음 내용을 추가

 아파치 서비스 재시작 후 IP/phpmyadmin 으로 접속하면 다음과 같은 화면이 나온다.


 결과



반응형

'리눅스 > Ubuntu' 카테고리의 다른 글

[vim] 내장 스크립트 설정 (man page 사용)  (0) 2014.10.08
[xrdp] 우분투 GUI 원격제어 설정  (4) 2014.10.07
우분투 한영키  (0) 2014.10.04
우분투 설치 USB 만들기  (0) 2014.10.04
[vim] 에디터 설치  (0) 2014.08.26

[용어] ARP

Posted by 백창
2014. 8. 11. 11:29 컴퓨터네트워크/개념
반응형

 ARP 란?


 Address Resolution Protocol 의 약어이다. 통신을 하기 위해서는 IP address를 Mac address로 바꾸는 절차가 필요하며, 이때 사용되는 프로토콜이 ARP이다. ARP는 32 bit IP주소를 48bit 네트워크 카드 주소(Mac)로 대응시켜주는 프로토콜이다.


- 윈도우에서는 arp -a 명령으로 확인 가능하다.



- 우분투에서도 arp -a 명령으로 확인 가능하다.



반응형

'컴퓨터네트워크 > 개념' 카테고리의 다른 글

OSI 7계층  (0) 2015.04.24
[용어] 터널링  (0) 2014.10.02
[용어] DHCP  (0) 2014.08.01

[openssh-server] 원격접속 설치

Posted by 백창
2014. 8. 4. 16:56 리눅스/서버 구축
반응형


 개요

 openssh-server 패키지를 사용하여 ssh 접속이 가능한 리눅스 환경을 구축하자

 ssh 설치

sudo apt-get install openssh-server

 포트변경

/etc/ssh/sshd_config 에서 접속 포트를 변경할 수 있다. 
 ssh는 포트를 변경하는 것 만으로도 보안성이 높아진다.


 테스트


윈도우에서 Putty프로그램으로 접속하는 화면이다.




반응형

'리눅스 > 서버 구축' 카테고리의 다른 글

[samba] 외부 네트워크에서 접속하기 - ssh 터널링  (0) 2014.09.13
[samba] 공유 디스크 설치  (0) 2014.09.12
[vsftpd] FTP 서버 설치  (0) 2014.08.04
[apache2] 웹서버 설치  (0) 2014.08.04
[bind9] DNS 서버 설치  (0) 2014.08.01

[vsftpd] FTP 서버 설치

Posted by 백창
2014. 8. 4. 15:46 리눅스/서버 구축
반응형

 개요

 vsftpd 패키지를 설치하여 리눅스에 FTP 서버를 운영하기


 vsftpd 설치


 vsftpd 설정

/etc/vsftpd.conf 파일을 수정


 상세 설정
  • anonymous_enable = NO
        anonymous 사용자의 접속 허용 여부 (default = YES)
  • local_enable = YES
        로컬 계정 사용자의 접속 허용 여부 (default = NO)
  • write_enable = YES
        write 명령어 허용 여부 (default = NO)
  • local_unmask = 022
        로컬 계정 사용자용 unmask (default = 077)
  • ftpd_banner = Welcome to blah FTP service.
        FTP 서버 접속할 때 환영 메시지 (default = vsFTPd 버전번호)
  • chroot_local_user = YES
        사용자의 홈 디렉토리를 벗어나지 못하도록 제한하기 위한 설정 (default = NO)


 vsftpd 재시작


 filezilla 설치 [ftp 프로그램]


 filezilla 접속

호스트에 접속을 시도한다. 포트는 기본포트(21)이므로 작성하지 않는다.

접속성공


 업로드 / 다운로드

파일 업로드 (클라이언트 -> 서버)

호스트에 업로드가 잘 되었는지 확인

다운로드 (서버 -> 클라이언트)

다운로드 확인


 기타

timeout 에 의한 종료

타임아웃 시간은 /etc/vsftpd.conf 에서 변경 가능하다.

반응형

'리눅스 > 서버 구축' 카테고리의 다른 글

[samba] 공유 디스크 설치  (0) 2014.09.12
[openssh-server] 원격접속 설치  (0) 2014.08.04
[apache2] 웹서버 설치  (0) 2014.08.04
[bind9] DNS 서버 설치  (0) 2014.08.01
[isc-dhcp-server] DHCP 서버 설치  (0) 2014.08.01