뭐 새로운 배울꺼 없나 싶어 찾아 보다가. github.com 을 통해서 page 를 만들 수 있다는 사실을 알게 되었다. 그래서 한번 그냥 만들어 보자 싶어 만들어 본다.

시작

tistory 블로그를 적을 때에도 markdown 을 사용해서 HTML 로 컨버팅을 해서 문서 작업을 하고 있었는데, Jekyll을 사용하면 반복적인 작업을 할 필요가 없다.

의문점

  1. 구글에서 검색이 잘될까?

장점

  • 호스팅 서비스가 필요없다.
  • 설치가 쉽다.(그런데 이상하게 안됨)
  • markdown 언어로 간편하게 적을 수 있다.
  • 어디서든지 git 을 사용할 줄 알면 글을 적을 수 있다.

단점

여기서에서 github page 에대한 제한 사항이 있습니다.

  • 페이지늬 소스는 1GB 아래여야 합니다.
  • Github Pages sites 는 매달 100GB 전송량 제한이 있습니다.
  • Github Pages sites 대 시간 빌드를 10번으로 제한 합니다.
  • github 을 사용할 줄 알아야 한다.
  • markdown 문법을 배워야 한다.
  • 설치가 반영되기까지가 좀 시간이 걸린다. 테마 설치를 하려고 하는데, 늦게 반영이 되더라
    theme 을 적용하고 난 뒤에 메인 페이지가 나오지 않아서 왜 이러지하고 찾아봤는데, 시간이 좀 지나고 난 뒤에 접속을 하니 되더라.

설치하기

구글링하면 많이 나온다 에서 많은 사람들에 이에 관한 문서들을 남겨놓았다. 굳히, 나까지 이런 문서를 남겨놓을 필요는 없을 것 같다.

반응형

web, sql 서버를 윈도우로 사용하고 있습니다. 그런데, 저는 리눅스 서버가 더 안정적이라고 생각해서 리눅스 서버로 backup 서버를 구축하고자 했습니다.

아크로닉스는 윈도우와 리눅스를 동시에 제공하고 있습니다.

설치하고 난 뒤에 알게 된 문제점

  1. 백업 서버 방화벽(firewalld)
  2. 백업 파일 배포방법(smb server 를 통한 파일 복제)

순서

install acronis 12 for CentOs 7

Imgur

저는 CentOs 7 로 구성하고 잇어서 Linux 64 버전을 다운 받았습니다.

설치프로그램 실행

# ./AcronisBackup_12.5_64-bit.x86_64

여기서 알아둬야 할 점은 설치 마지막에 두가지 포트를 설정해 주는 점입니다. 아래 방화벽을 세팅할때 사용합니다.

  • 관리 서버에 액세스하기 위해 웹 브라우저 포트기본값 9877
  • 제품 컴퍼넌트 간 통신에 사용될 포트 7780

방화벽

Centos 7 부터는 firewalld 라는 프로그램이 기본으로 내장 되어 있어서 방화벽을 제어 할 수 있습니다.
저는 여기를 참조해서 세팅을 했습니다.

네트워크 형태에 따라 다양한 방화벽 룰을 적용할 수 있습니다.

public zone 의 설정 파일은 XML형식로 저장이 됩니다. /etc/firewalld/zones/public.xml 에 저장이 됩니다.

Acronis backup 를 사용하기 위해서는 9877, 7780 포트를 개방해 줘야합니다. 아래와 같이 입력 해서 포트를 개방해 줍니다.

# firewall-cmd --permanent --zone=public --add-port=9877/tcp
# firewall-cmd --permanent --zone=public --add-port=7780/tcp
포트제거 방법
# firewall-cmd –permanent –zone=public –remove-port=포트

또는, 설정파일에 접근해서 수정을 합니다.

수정을 했으면, 다시 방화벽을 재실행 합니다.

# firewall-cmd --reload

ip 주소를 입력하면, 다음과 같은 접속 화면을 볼 수 있습니다. (이 화면은 한번 백업을 실행한 모습)

Imgur

에이전트 연결하기

백업할 컴퓨터에 AcronisBackup 프로그램을 설치합니다. 윈도우용 백업 프로그램을 실행합니다. 게다가 SQL 서버를 백업할 예정이어서 Agent for SQL 을 지정 했습니다.

Imgur

설치할 항목을 정하고 난뒤에 관리서버에 접속할 주소를 지정해 주면 됩니다.

백업 계획 만들기

문제점

로컬디스크(SQL 이 설치가 되어 있는 곳)에 백업은 간단합니다. 그러나 제가 원하는 방법은 백업서버에 저장을 하는 것이었습니다. 그래서 백업 저장되는 곳을 네트워크 드라이브를 만들어 주는 방법을 선택 했습니다.

관리서버가 있으면, 자동으로 관리서버의 디렉토리에 자동으로 인식 저장할 수 있는 줄 알았는데, 그게 아니라, acronis backup 프로그램 외적으로 연결통로를 만들어서 사용해야 했습니다. 이럴 꺼면, 기본적인 스케줄로 SQL 백업 스케줄을 만들어서 사용해도 괜찮지 않을까 싶습니다.

centos 7 에 samba 설치

yum 을 통해서 삼바를 설치

# yum install samba

사용자를 만들어 줍니다.

# useradd acronis -g acronis

useradd acronis 라고 입력 했더니, 이미 있는 그룹이라면서 만들어지지 않습니다. 그래서 그냥 이렇게 만들었습니다.

삼바사용자 생성

# smbpasswd -a acronis
New SMB password:
Retype new SMB password:

공유할 폴더를 만들고, 사용자 권한을 연결합니다.
저는 사용자 폴더를 통째로 권한을 주려고 합니다. 어차피 이거를 위해서만 사용할 꺼니까요

# chown -R acronis:acronis /home/acronis
# chmod -R 770 /home/acronis
$ chron -t samba_share_t /home/acronis

chron 은 seLinux 때문에 사용합니다.

삼바 설정 변경

# vi /etc/samba/smb.conf

아래와 같이 추가했습니다.

[acronis]
path = /home/acronis
valid users = @acronis, acronis
guest ok = no
writable = yes
browsable = yes

설정을 저장하고 삼바를 재실행 합니다.

# systemctl restart smb
# systemctl restart nmb

아크로닉스에서 위치추가

이제 SQL 서버에서 Cent Os 서버의 파일 저장소에 접근할 수 있게 되었습니다.

접속 아이디와 비밀번호는 위에 설정한 대로 입력하면 접근할 수 있습니다.

리눅스도 초보고 윈도우 서버도 초보이다 보니 맨땅에 열심히 헤딩하고 있습니다.
윈도우 라이센스 비용이 많이 들어서, 이렇게 했지만, 돈 많으신 분들은 직접 라이센스 구매해서 하시기 바랍니다. 참고로 아크로닉스는 서버 대당비용을 지불해야 합니다. 더 구입해야 하네요.

반응형

HP 서버를 하나 새로 들어오면서 RAID1 구성으로 Centos를 설치하려고 하는데, 이게 B140i통해서 구성을 해야 되는 문제가 있다. 이를 사용하려면 이에 받는 드라이버를 로드해서 인스톨해야 한다.

ahci 로 그냥 설치하면 생기는 문제점

  1. RAID 구성을 사용할 수 없다.
  2. 팬이 55% 로 자동 조정

ahci 로 간편하게 설치가능하지만, 서버부팅시점에 나는 만큼의 서버팬이 돌아가는 것을 경험할 수 있다. 반드시 B140i드라이버를 통해서 OS 설치 하여야 합니다.

반드시 드라이버 dd 로드 하셔서 사용하세요

B140i 드라이버 다운로드

드라이버는 매번 업글되니 확인하기 바란다.

Centos 와 Redhat enterprise 드라이버는 동일하므로 여기서 다운받으면 된다. 드라이버 다운로드

다운로드하신 드라이버 hpxxx.dd.gz 압축 풀면 hpxxx.dd 파일 확인되며, 확장자명에 .iso를 추가합니다

예시
hpdsa-1.2.6-115.rhel7u0.x86_64.dd.iso

USB에 저장을 해 놓습니다.

OS 설치

OS 설치이미지 장치와 DD USB 메모리 모두 서버에 연결하고, OS 이미지로 부팅합니다.

아래 설치 메뉴에서 'e'를 눌러서 편집모드로 들어 갑니다.

Imgur

linuxefi 라인의 제일 마지막 줄에 커서를 옮기고 quiet 뒤에 아래 문장을 이어서 작성합니다.

modprobe.blacklist=ahci inst.dd

일정시간이 지나고 난 뒤에 아래 화면이 나옵니다.
‘r’ 를 입력해서 저장되어 있는 USB를 선택합니다.
여기서는 2번으로 되어있습니다.
‘c’ 를 입력하고 계속 진행 합니다.

Imgur

그리고, 안에 있는 dd.iso 파일을 선택합니다. 파일이 제대로 들어있다면 아래와 같은 화면을 확인할 수 있습니다.

Imgur

확장자가 rpm으로 되어있는 드라이버를 찾을 수 있습니다.
1번을 눌러서 드라이버를 입력하고, ‘c’를 입력하고 다음으로 진행합니다.

Imgur

선택한 드라이버가 [x] 표시 된 것을 확인할 수 있습니다.
‘c’를 눌러서 다음으로 진행합니다.

Imgur

그럼 이제 설치가 진행되는 것을 확인 할 수 있습니다.

반응형

ac66 에 transmission-daemon-openssl 을 설치하려고 하는데 엔트웨어 설치가 안될때…

jffs 설정을 끝내고 난뒤에, 엔트웨어를 설치하려고 하는데, 하드가 ext 로 포맷이 안되어 있으면 설치가 되지 않는다.

엔트웨어 설치명령어

entware-setup.sh

usb 하드 연결을 하려고 하는데 이상하게 ntfs 로 연결이 잘 안 될때가 있다. 그럴때 ext3 로 포맷을 해서 인식하게 하는 방법이 있다

format

ac66, ac68 등 asus 공유기에서 하드를 직접 포맷하는 방법입니다. mk명령어를 통해서 여러가지 포맷방식으로 포맷을 할 수 있습니다.

mkfs.ext2, mkfs.ext3, mkfs.vfat, mkntfs 등을 통해서 사용할 수 있습니다.

우선 fdisk -l을 통해서 어디를 포맷해야 할지 찾아야 합니다

# fdisk -l
admin@ac66:/tmp/home/root# fdisk -l
Found valid GPT with protective MBR; using GPT

Disk /dev/sda: 1953458176 sectors,  931G
Logical sector size: 512
Disk identifier (GUID): ccd00cb0-427e-40c3-b428-cdb12fe3bba0
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 1953458142

Number  Start (sector)    End (sector)  Size       Code  Name
   1              34          262177        128M   0700  Microsoft reserved partition
   2          264192      1953456127        931G   0700  Basic data partition

일단 저는 포맷을 해 놓은 상태이기 때문에 위와 같은 화면이 나옵니다. number 에 나오는 숫자를 잘 보고 실행해야 합니다.
아래와 같이 입력을 하게 되면 빠른 포맷을 실행할 수 있습니다.

# mkfs.ext3 -E lazy-itable_init=1 /dev/sda2
반응형

방수방진에 대해서

물놀이하는 아이 촬영을 위해 엑스페리아를 구매했습니다. 그런데 이게 어느정도 방수방진을 지원하는지 알수가 없는데, 소니 엑스페리아 홈페이지에 친절하게 설명이 되어있습니다.

그래서, 개인 저장용 하나 정리해 놓습니다.

IP 등급

IP(Ingress Protection) 등급은 장치의 방진 및 방수 수준을 측정하는 국제 표준입니다. 두 자리 IP 등급의 첫 번째 숫자는 먼지를 포함한 고체에 대한 보호 수준을 나타내고, 두 번째 숫자는 장치의 방수 정도를 나타냅니다.

IP57
첫번째자리(5)
먼지로부터 보호하는 정도
두번째자리(7)
액체로부터 보호하는 정도

먼지에 대한 보호 정도

IP○○ 보호정도
IP0X 특별한 보호 기능 없음
IP1X 고체로부터 보호됨 (직경 50mm 초과)
IP2X 고체로부터 보호됨 (직경 12.5mm 초과)
IP3X 고체로부터 보호됨 (직경 2.5mm 초과)
IP4X 고체로부터 보호됨 (직경 1mm 초과)
IP5X 먼지로부터 보호됨, 제한된 유입(유해하지 않은 침전물)
IP6X 방진

물에 대한 보호 정도

IP○○ 보호정보
IPX0 특별한 보호 기능 없음
IPX1 떨어지는 물로부터 보호됨
IPX2 정상 위치에서 최대 15도 기울여져 떨어지는 물로부터 보호됨
IPX3 분사되는 물로부터 보호됨
IPX4 튀는 물로부터 보호됨
IPX5 최소 3분간 저압으로 분출되는 물로부터 보호됨
IPX6 최소 3분간 강력하게 분출되는 물로부터 보호됨
IPX7 30분간 최대 수심 1미터에서 침수로부터 보호됨
IPX8 수심 1미터 이상에서 지속적 침수로부터 보호됨
정확한 조건은 제조업체가 각 장치에 대해 명시합니다

- 소니 엑스페리아 방수방진에 대한 페이지

A/S 문제

소니나 삼성에서 방수방진 기능을 지원한다고 하지만, 실제로 물이 들어옴으로 인한 A/S 는 어렵다는 평입니다.
소비자 과실로 몰고가는 것은 무지기수라고 합니다.
그래서, 소니는 방수방진 테스트를 끝내고 난 기기는 방수에 대한 지원 서비스를 제대로 받을 수 있다고 합니다.

복불복 기능입니다!

반응형

sgminer 에서 다른 GPU를 못 잡을 때

2개이상의 GPU 를 못잡을 떄

마이너를 작동에 있어서 GPU를 두개 꼽았는데 하나만 인식을 할 떄가 있씁니다. 이를 문제는 여러가지 이유 때문인데, 대게 아래와 같은 이유라고 생각 합니다.

  • 내장 그래픽카드가 켜진 상태

sgminer 의 기본 옵션은 제일 처음 검색되는 그래픽카드를 인식하고 작동을 합니다.
만약 인텔 내장 그래픽칩을 사용하고 있다면, 그래픽 카드를 하나만 잡고 있을 겁니다.

# sgminer --ndevs

를 통해서 자신의 그래픽카드의 정보를 파악 할수 있습니다.

[10:39:09] ATI ADL Overdrive6 API found.
[10:39:09] Found 11 logical ADL adapters
[10:39:09] ADL index 0, id 1343002048 - BIOS partno.: 113-2E366FU-O53, version: 015.050.002.001, date: 2017/03/23 23:12
...
...
[10:39:09] Failed to ADL_Overdrive5_ODPerformanceLevels_Get
[10:39:09] 1 GPU devices max detected

저는 현재 RX 570 두개를 크로스로 끼고 사용하고 있습니다. 그런데 제일 밑단에 보면 기본 그래픽카드 옵션이 적용되는 카드를 확인할 수 있습니다.

[10:39:09] 1 GPU devices max detected

1개의 GPU만 확인이 되었습니다.
기본옵션을 사용해서 마이닝을 하면 CPU내장의 GPU를 사용하게 됩니다.

이제 아래와 같은 옵션을 사용해 봅니다.

# sgminer --gpu-platform 1 --ndevs
[10:42:37] CL Platform vendor: Advanced Micro Devices, Inc.
[10:42:37] CL Platform name: AMD Accelerated Parallel Processing
[10:42:37] CL Platform version: OpenCL 2.0 AMD-APP (2442.8)
[10:42:37] Platform devices: 2
[10:42:37]      0       Ellesmere
[10:42:37]      1       Ellesmere
[10:42:37] Number of ADL devices: 2
[10:42:38] ATI ADL Overdrive5 API found.
[10:42:38] ATI ADL Overdrive6 API found.
[10:42:38] Found 11 logical ADL adapters
...
...
ADL_Overdrive5_ODPerformanceLevels_Get
[10:42:38] 2 GPU devices max detected

역시 마지막 밑단을 보시면 아시겠지만, 변화가 있습니다.

[10:42:38] 2 GPU devices max detected

제가 원하는 모델을 찾았다는 말입니다.
이제 마이닝할때 --gpu-platform 1 옵션을 포함해서 작성해야 된다는 것을 아셨을 겁니다.

--gput-platform 0은 기본 내장 GPU 카드를 의미하는 것을 아셨을 겁니다.

반응형

도로명 주소를 한국GPS 로 받으려고 합니다.

구글 API 를 사용해서 좌표를 GPS 로 변경 할 수 있지만, 이렇게 하면, 몇몇 주소들은 undefined 되는 값이 나온다. 이 사실을 인지했을 때에는 이미 늦어버린 후였고. 어쩔수 없이 다른 방법을 통해서 GPS 좌표를 구해서 DB에 구해서 작업을 하려고 한다.

내가 개발자는 아니어서 개인적으로는 네이버나 다음 API 를 이용해서 GEOCODER를 통해서 해결하면 되는 일이겠다 생각하지만, 개발사입장에서는 그게 쉬운일이 아닌가 보다. (왜 어려운지 모르겠다.)

아무튼 google spreadsheet 로 도로명 주소를 gps 좌표로 보려고 합니다.

준비물

  • 네이버 or 다음 개발자 등록
  • 구글 계정

순서

(네이버 개발자)를 기준으로 작업을 하려고한다.

네이버 API 를 사용하기 위해서는 개발자 등록을 해야한다.

네이버에 애플리케이션 등록(API 이용신청)을 합니다.

Imgur

애플리케이션 정보는 보는 곳에서 위의 정보를 얻어올 수 있습니다.

Imgur

스프레드시트를 불러서 스크립트 작성을 시작 합니다.

Imgur

저는 주소를 좌표로 변환하는 API 를 사용해서 하려고 합니다.

주소 -> 좌표 변환 API GET https://openapi.naver.com/v1/map/geocode (json) https://openapi.naver.com/v1/map/geocode.xml (xml) JSON / XML 주소를 좌표로 변환

JSON 를 사용해서 하려고 햇는데, google spreadsheet API 문서를 보니 jsonParse 기능이 이제 지원을 안한다는 문구가 있어서 부득이 XML을 사용했습니다.

function getXML(addr) {
  var point = {};
  var apiURL = 'https://openapi.naver.com/v1/map/geocode.xml?query='+addr;
  var option = {
    'method' : 'get',
    'headers' : {
      'X-Naver-Client-Id' : '네이버 클라이언트 아이디',
      'X-Naver-Client-Secret' : '네이버 시크릿'
    }
  };
  var xml = UrlFetchApp.fetch(apiURL,option).getContentText();
  var doc = XmlService.parse(xml);
  var root = doc.getRootElement();
  Logger.log(xml);

  var lng = root.getChild('items').getChild('item').getChild('point').getChild('x').getText();
  var lat = root.getChild('items').getChild('item').getChild('point').getChild('y').getText();

  point = { lng : lng, lat : lat};

  return point;
}

function myFunction() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var cell = sheet.getActiveCell(); // active cell
  var addr = cell.getValue(); 
  Logger.log(addr);
  var point = getXML(addr);

  // 오른쪽 두개에 입력하기
  var cellright2 = cell.offset(0, 2);
  var cellright3 = cell.offset(0, 3);

  // 입력
  cellright2.setValue(point.lat);
  cellright3.setValue(point.lng);
}

네이버 클라이언트 아이디와 시크릿 코드를 코드에 삽입합니다.

주소를 입력해 둔 시트에 가서 커서를 올려둡니다.

Imgur

스크립트 입력 페이지에서 스크립트를 실행합니다.

커서 오른쪽 두칸뒤애 좌표가 추가되는 것을 확인 할 수 있습니다.

Imgur

조금편하게 사용하게 GUI 를 추가를 하고 잇는 중입니다만, 금방 때려칠 꺼 같은 귀찮음!

반응형

Hyper-v 에 Centos 를 설치 및 네트워크 설정

hyper-v 를 통해서 Centos를 설치해서 서버를 운용해 볼 계획이었다. 그래서 설치와 네트워크 세팅을 조금 해 보려고 햇는데, 시작이 좀처럼 쉽지 않았다.

Hyper-v 에 Centos 설치

hyper-v 에 Centos 설치는 너무 간단하므로 넘어갑니다.
다른 글에서 설치하는 방법들을 무수히 찾을 수 있습니다.

주의할점
가상서버를 두려고 하는 파일 시스템을 NTFS로 한다.
1세대로 설치한다. (2세대 가능하지만 번거롭습니다.)

Hyper-v 스위치 구성

저는 다음과 같이 네트워크 구성을 하려고 합니다.

Created with Raphaël 2.1.2이더넷(Ethernet)외부 스위치(External)내부 스위치(Internal)CentOS(OS)

가상 스위치 설정

가상스위치를 설정합니다.

외부로 하나를 만듭니다.

내부 스위치를 하나 만듭니다.

네트워크 어댑터 설정

외부 네트워크 (External) 어댑터 설정

제어판네트워크 연결에 들어가면 아래와 같은 어댑터들이 추가 된 것을 확인 할 수 있습니다.

외부스위치(External)을 더블클릭해서 속성정보에 들어가서 공유에 들어가 아래와 항목들을 체크 합니다.

□ 다른 네트워크 사용자가 이 컴퓨터의 인터넷 연결을 통해 연결할 수 있도록 허용(N)
□ 다른 네트워크 사용자가 공유 인터넷 연결을 제어하거나 중지시킬 수 있도록 허용(O)

여기까지하고 확인을 누릅니다.

내부 네트워크( Internal) 어댑터 설정

외부 네트워크를 설정 했던 방식그대로 아래와 같이 설정합니다.

외부 네트워크에서 공유항목을 체크하고 오면, 인터넷 프로토콜 버전4(TCP/IPv4)에 IP 주소와 서브넷 마스크가 자동으로 입력되어 있는 것을 확인 할 수 있습니다.

ip주소 : 192.168.137.1
서브넷마스크 : 255.255.255.0

그러나 저는 사진과 같이 설정 했습니다. 이 부분은 마음대로 정해도 되지만, 처음 하시는 분이라면 사진을 따라서 테스트 하는 것을 추천합니다. 어느정도 원리를 파악하면 그 때에 마음대로 수정하시기 바랍니다.

그래서 저는 아래와 같이 수정 했습니다.

ip주소 : 10.0.1.1
서브넷마스크 : 255.255.255.0

이제 내부 스위치까지 인터넷이 도착할 수 있게 되었습니다. Hyper-V 와 윈도우에서 설정하는 작업은 끝났고, 이제 CentOS에서 내부 IP 설정을 해주면 됩니다.

CentOS 설정

CentOS 는 기본적으로 네트워크 어댑터가 작동하지 않게 되어있습니다. 이부분을 설정으로 부팅시 동작하게 설정하고 DHCP로 자동설정 하는 방식이 아닌 직접 잡아서 사용하도록 하겠습니다.

저는 이곳을 참고 해서 CentOS 네트워크 설정 작업을 했습니다.

/etc/sysconfig/network-scripts/ifcfg-eth0

vi, nano 를 이용해서 위의 파일을 변경합니다.

[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
  1. BOOTPROTO=dhcp부분을 static으로 변경합니다.
  2. ONBOOT=no 부분을 yes 로 변경합니다.
  3. ip,netmask,gateway설정을 합니다.

다음과 같이 설정 했습니다.

IPADDR=10.0.1.100
NETMASK=255.255.255.0
GATEWAY=10.0.1.1

모두 대문자로 입력해야 합니다.
게이트웨이에 대한 설명

/etc/resolv.conf

네임서버 설정을 합니다.

    # Generated by NetworkManager
    nameserver 10.0.1.1
테스트
게이트웨이가 제대로 연결이 되어있나 검사합니다.
어디서 에러가 났는지 파악 할 수 있는 게 중요합니다.
# ping 10.0.1.1

service network restart

[root@localhost ~]# service network restart
Restarting network (via systemctl):                        [  OK  ]

다음 메세지와 함께 설정이 완료되었다는 것을 확인할 수 있습니다.

[root@localhost ~]# ifconfig

ifconfig가 없다면
# yum install net-tools -y
를 입력해서 설치하세요

PS
그런데, 이상하게 컴퓨터를 재부팅하면 내부 스위치가 죽어버린다.
외부 어댑터의 공유 기능을 껏다가 다시 키고, 설정을 다시 하면 되는데, 무엇이 문제 인지 잘 모르겟다.
이 떄문에 이틀을 날림.
지금은 hostname 설정을 하고 있는데, 경험이 없으니 맨땅에 헤딩을 하고 있는 중.

반응형

adblock 이나 ublock 을 사용하는 중인데, 이상하게 네이터 카페에서 글을 클릭해도 오류가 나는 상황이 발생한다. 이를 해결하기 위해서는 ublock option에서 my filter에서 하나만 추가 하면 된다..

@@cc.naver.com

다음과 같은 메뉴를 추가한다.

반응형

주의사항

  • 유선랜을 통해서 이용하시기 바랍니다. (1920x1080 화질을 이용하기 위해서는 엄청난 데이터를 사용합니다. 무선으로는 화면이 깨질 수 있습니다.)

일단 brew 를 설치해야 합니다.
컴파일을 해야하는데 이 소스들을 brew를 통해서 설치하기 때문입니다.

homebrew 설치

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

컴파일을 위한 library 설치

brew install gstreamer 
brew install gstreamer gst-plugins-base  
brew install gstreamer gst-plugins-base gst-plugins-good 
brew install gstreamer gst-plugins-base gst-plugins-good ​gst-plugins-bad gst-plugins-ugly 
brew install ffmpeg
brew install ffmpeg --with-fdk-aac --with-ffplay --with-freetype --with-libass --with-libquvi --with-libvorbis --with-libvpx --with-opus --with-x265
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install automake fdk-aac git lame libass libtool libvorbis libvpx opus sdl shtool texi2html theora wget x264 xvid yasm

설치가 끝나고 난 뒤에

mkdir compile
cd compile
git clone https://bitbucket.org/ohhara/ohmulticastvideoscanner.git 
cd ohmulticastvideoscanner/
./configure
./make

이상 커파일이 끝났습니다.
이제 주소를 얻어오기로 합니다.
이미 kt, btv, u+ 주소들은 다 공개가 되어 있기 때문에 검색을 통해서 얻어오시면 됩니다.
저는 btv 를 사용하고 있기 때문에 아래와 같이 사용했습니다.
- http://www.netmanias.com/ko/?m=view&id=oneshot&no=7536

랜카드 확인하기

$ sudo omvs -l
dev_idx(0) dev_name(en0) dev_desc((null))
dev_idx(1) dev_name(p2p0) dev_desc((null))
dev_idx(2) dev_name(utun0) dev_desc((null))
dev_idx(3) dev_name(en1) dev_desc((null))
dev_idx(4) dev_name(lo0) dev_desc((null))
dev_idx(5) dev_name(gif0) dev_desc((null))
dev_idx(6) dev_name(stf0) dev_desc((null))
dev_idx(7) dev_name(bridge0) dev_desc((null))

위와 같은 화면이 나오면 자신의 랜카드가 뭔지 헷깔릴 수 있습니다.
아래 명령어를 통해서 자신이 현재 사용하고 있는 그래픽카드를 확인합니다.

$ ifconfig 
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
en1: flags=963<UP,BROADCAST,SMART,RUNp2p0: flags=8843<UP,BROADCAST,RUNNING,bridge0: flags=8822<BROADCAST,SMART,SIMPL

주소 따기

#!/bin/bash
for i in {1..254}
do
sudo ./omvs -i 2 -j 16 -u -s 1000 -t 5000 239.192.$i.0/27 >> ip_list.log
done

명령어를 통해서 주소를 얻어올 수 있습니다. 상당한 시간이 소요됩니다. 검색이 끝나고 난 뒤에는 ip_list.log파일을 생성합니다.
그리고 omvs_out폴더에 m3u 파일이 생성이 됩니다. 그런데 파일으 보면 내용이 없습니다.
omvs_out 폴더는 신경 안 쓰셔도 됩니다. jpg 파일도 같이 생성이 되어야 하는데, 이 또한 제대로 작동하지 않습니다. ip_list.log파일에서 주소를 추출해 봅니다.

$ cat ip_list.log | grep udp > list.txt

이제 list.txt 파일에 보면 ip 주소들이 나와있습니다.

[0x7fc4aa80d000] trying to save udp://239.192.xxx.19:49220 to omvs_out/239.192.xxx.19-49220.png

위와 같은 라인들이 많이 작성되어 있습니다. 원래는 omvs_out에 제대로 영상의 jpg 파일이 나와야 하지만 저는 동작이 안되네요.
이제 VLC를 통해서 제대로 작동이 되는지 확인을 해 봅니다. 일일히 하니씩 주소를 넣어서 어떤 채널이 등록되어 있는지 확인해야 합니다.

플레이가 잘 되시나요?

반응형

+ Recent posts