처음 라즈베리파이 관련해서 포스팅을 시작할 때 화면 캡쳐 하는 것을 찾아보다가 찾아지지 않아서 그냥 사진기로 화면을 찍고 찍은 화면을 자르고 보정해서 올리는 식으로 작업을 해왔다. 하지만 아무래도 사진 선명도도 떨어지고 매번 사진 찍고 수정하는 일도 귀찮았다. 방법이 없진 않을텐데 하며 다시 한번 구글에서 영문으로 검색을 하니 쉽게 찾을 수 있어서 조금 허탈한 마음을 가지고 콘솔화면을 캡쳐하는 방법을 포스팅 하기로 한다.

 

1. fbgrab 설치

  fbgrab은 FB(Frame Buffer)에 윤창중씨로 인해 전국민이 알게된 국민 단어 'grab'을 붙여서 프레임 버퍼에 있는 내용을 움켜 쥔다는 뜻의 콘솔 스크린샷 프로그램이다. 설치는 매우 간단하다. 'sudo apt-get install fbgrab'만 입력하면 끝!

 

2. 기본 사용법

  가장 기본적인 사용법은 'sudo fbgrab [파일이름]' 이다. 이때 파일이름은 bmp, jpg, png등의 그림파일로 저장할 수 있다. 하지만 마지막 줄에보면 화면 캡쳐를 위해서 입력한 'sudo fbgrab screen1.jpg'도 포함된 것이 보인다. 뭐 있어도 그만 없어도 그만이고, 보기 싫으면 잘라버리면 되니까 신경 쓰지 않아도 되지만 그렇게 하지 않아도 되는 방법이 있다.

 

3. 원격 터미널에서 캡쳐하기

  SSH를 통해서 원격으로 접속한 경우 fbgrab을 하면 터미널의 화면이 캡쳐가 되는 것이 아니라 라즈베리파이가 출력하는 화면이 캡쳐된다. 그러므로 당연히 캡쳐를 위해서 입력한 명령어 라인이 포함되지 않는다.

 

 

 

4. 콘솔 스위칭 이용하기

  원격 접속을 하지 않아도 위와 같이 캡쳐를 위해서 입력한 명령어 라인이 포함되지 않도록 하는 방법이 있다. 바로 콘솔 스위칭을 이용하는 것이다. 라즈비안은 6개의 가상 텍스트 콘솔과 하나의 그래픽 콘솔을 가지고 있고 Alt+오른쪽/왼쪽 방향키로 가상 콘솔을 선택 할 수 있는데 이를 콘솔 스위칭이라고 한다. 따라서 독립된 작업을 다른 콘솔에서 할 수 있는 것이다. 이를 이용하면 1번 콘솔에서 어떤 작업을 하고 있고 2번 콘솔에서 1번 콘솔을 화면 캡쳐 할 수 있는 것이다.

 

  2번 콘솔으로 스위칭을 하면 아래와 같이 로그인 하는 화면이 나온다. 로그인을 해서 2번 콘솔의 화면을 캡쳐하기위해 'sudo fbgrab -c 1 [filename]'을 입력한다. 여기서 -c 1이 추가된 것을 확인 할 수 있는데 이것이 2번 콘솔에서 1번 콘솔 화면을 캡쳐하는 옵션이다.

 

 

 

 

 

5. 스크립트 이용해서 조금 더 편하게 사용하기

  앞에서 설명한 것만으로도 충분히 편하게 화면을 캡쳐 할 수 있지만 매번 이름을 다르게 지정해주는것이 조금 귀찮다. 타임스탬프로 이름을 지정하는 옵션이 있었으면 좋겠는데 없어서 Bash 쉘 스크립트로 간단하게 짜봤다. DIR을 스크린샷을 저장하기 원하는 디렉토리로 변경하고 써야한다. screenshot으로 스크립트 이름을 저장했을 경우 './screenshot -c 2 -s 1 -i' 이런식으로 fbgrab의 옵션 형식을 따라서 사용하면 된다. 혹시나 몰라서 덧붙이자면 쉘 스크립트를 실행하기 위해서는 스크립트를 저장한 파일의 권한을 777로 변경해줘야 한다. 'sudo chmod 777 filename'을 입력하면 파일 권한이 777로 변경된다.

#!/bin/bash DATE=$(date +"%Y%m%d%H%M%S") DIR=/home/pi/Screenshots #sudo fbgrab /home/pi/Screenshots/$DATE.png OPT= while getopts ":c:C:s:i" opt; do case $opt in c) OPT="$OPT -c $OPTARG" ;; C) OPT="$OPT -C $OPTARG" ;; s) OPT="$OPT -s $OPTARG" ;; i) OPT="$OPT -i" ;; \?) echo "Invalid option: -$OPTARG" >&2 exit 1 ;; :) echo "Option -$OPTARG requires an argument." >&2 exit 1 ;; esac done echo "fbgrab $OPT $DIR/$DATE.png" sudo fbgrab $OPT $DIR/$DATE.png

  다음 포스트에서는 XBMC의 화면을 캡쳐하는 방법에 대해서 알아보자.

 

참조 : Bill Agee's blog

블로그 이미지

작은 조약돌

공돌이 형과 글쟁이 동생 쌍둥이 형제의 낙서장

,

  지난 포스트까지 라즈비안에 XBMC를 설치부터 XBMC 리모컨 사용하기까지 라즈베리파이를 미디어 엔터테인먼트 센터로 사용할 수 있는 기본적인 부분들을 알아보았다. 하지만 XBMC를 라즈베리파이의 주 기능으로 사용하기 위해서는 부팅시에 자동 실행되도록 하는 것이 필요하다. 자동실행되지 않을때 가장 문제점이 키보드가 항상 연결되어 있어야 한다는 점이다. 부팅시 XBMC가 자동실행 되면 마우스만 있거나, XBMC 리모컨을 사용하면 마우스도 필요 없이 XBMC의 모든 기능을 사용할 수 있게되고 다른 작업을 위해서 필요할 때만 연결해서 사용할 수 있다. 이를 위해서는 우선 라즈비안에 자동로그인을 할 수 있어야 하는데 이는 지난 포스트 [라즈베리파이 기초] (5) 라즈비안 자동 로그인 를 참조하면 된다.

 

  XBMC를 자동 실행 시키기 위해서는 '/etc/default/xbmc' 파일을 변경해야 한다. ENABLED=1로 변경하면 부팅할 때 XBMC를 실행시킨다.

 

  USER를 알맞게 변경하지 않으면 아래와 같은 화면이 표시되고 XBMC가 시작되지 않는다. 아래에 빨간 줄이 그어진 부분을 보면 'xbmc'라는 사용자가 없기 때문에 XBMC를 실행하려 하였지만 실패한 것이다.

 

  라즈비안을 사용하는 경우 가장 쉽게 할 수 있는 방법은 USER를 라즈비안 기본 사용자인 pi로 설정하는 것이다. (USER=pi) 하지만 어떠한 이유로 pi가 아닌 다른 사용자로 XBMC를 실행시키려 한다면 그 사용자는 적절한 그룹의 멤버여야 한다. 새로운 사용자 xbmc를 추가하고 적절한 그룹의 멤버로 추가하는 것은 아래 프로세스를 참조 하면 된다.

  

sudo adduser xbmc


sudo adduser xbmc adm

sudo adduser xbmc audio
sudo adduser xbmc video
sudo adduser xbmc input
sudo adduser xbmc audio
sudo adduser xbmc dialout
sudo adduser xbmc plugdev
sudo adduser xbmc tty

 

블로그 이미지

작은 조약돌

공돌이 형과 글쟁이 동생 쌍둥이 형제의 낙서장

,

사진 출처 = 중앙선거관리위원회


  교육감 선거 투표용지가 달라졌다. 추첨으로 결정된 게재순서에 따라 후보자의 이름을 왼쪽부터 오른쪽으로 열거하여 기재하되, 그 순위가 공평하게 배열될 수 있도록 자치구․시․군의회의원지역선거구별로 순차적으로 바꾸어 가는 순환배열 방식으로 변경된 것이다. 이를 통해 이른바 '로또 선거'(기호 배정에 따라 득표율에 영향이 크다는 의미)의 문제를 해결할 수 있을 것으로 기대된다.


  하지만 2006년 12월 교육감 직선제가 도입된 이후 계속 제기된 '깜깜이 선거'(선거 당일까지 후보자도 모르고 투표소에 들어간다는 의미)라는 비판은 이번에도 피하기 쉽지 않을 것으로 보인다. 기초·광역 단체장에 비해 주목도가 떨어지는 현실 때문이다. 지역의, 더 나아가서 국가의 미래를 위한 교육 정책 결정에 큰 영향력을 끼치는 중요한 선거지만 치열한 정책 토론은 사라졌다.


  심지어 기존 정치권의 네거티브 선거를 답습하는 모습까지 보이고 있다. 고승덕 서울시 교육감 후보의 딸이 SNS를 통해 '아버지는 교육감 후보의 자격이 없다'고 비난 논란이 일었다. 문용린 후보는 '패륜'이라며 고승덕 후보 부녀의 갈등에 대해 비난했다. 고승덕 후보 측에서는 문용린 후보의 '정치 공작'이라 주장하며 맞섰다. 이에 문용린 후보를 추대한 '대한민국올바른교육감전국회의'는 고승덕 후보를 허위사실공표 혐의로 서울중앙지검에 고발하는 상황까지 벌어졌다.


  상황이 이렇게 되자 보수언론에서는 교육감 직선제를 폐지해야한다고 주장하고 나섰다. 중앙일보는 6월 2일 '막장 드라마로 치닫는 교육감 선거'라는 제목의 사설을 통해 '교육감 직선제는 이번이 마지막이 되어야 한다. 이번 선거가 끝난 후 교육정책의 일관성을 감안해 시·도지사와 교육감 러닝메이트제나 과거처럼 교육감 임명제로 돌아가는 대안 등을 반드시 논의할 필요가 있다'고 주장했다. 매일 경제 역시 6월 3일 사설 '교육감 직선제 이번을 끝으로 폐지돼야 한다'를 싣고 비슷한 주장을 했다.


  과연 교육감 직선제는 폐지하는 것이 정답일까? 폐지를 주장하기엔 시기상조라고 생각한다. 직선제로 바뀐 뒤 이제 겨우 세 번째 선거를 치루고 있을 뿐이다. 폐지를 주장하는 쪽에서는 낮은 투표율과 선거에 소모되는 막대한 비용, 비리 등을 이유로 들고 있다.


  낮은 투표율 이야기부터 해보자. 투표율이 저조한 것은 대통령 선거나 지방 단체장 선거와 달리 수요자가 한정된 때문이라 생각한다. 학생 자녀를 둔 부모들의 경우 실제 투표율보다 높은 관심을 가질 수 밖에 없다. 필자는 교육감 직선제가 국민 전체의 의사를 묻는 것 도 중요하지만 교육 서비스의 소비자들의 목소리를 반영하는 것이 더 중요하다고 생각한다. 물론 전 사회적으로 교육에 관심을 갖는다면 이상적이겠지만. 만약 중앙일보의 주장처럼 임명제로 돌아갔을 때, 교육감들이 교육 소비자들의 목소리에 귀 기울일 것인가에는 의문이 든다.


  비용에 대해서도 한마디 하자. 민주주의 실현에는 필연적으로 비용이 들어간다. 중요한 것은 지불한 비용보다 더 많은 가치를 창출하는가 하는 점이다. 그렇기에 우리가 5년마다 엄청난 비용을 들여 대통령 선거도 하는 것이다. 교육감 직선제 이후 우리 사회는 많은 가치를 창출해냈다고 생각한다. '무상 급식'이나 '혁신 학교' '학생 인권' 같은 의제들이 공론화 되는 것, 또한 실현 되는 것을 우리는 지켜 봤다. 아직도 많은 문제들이 산적해있다. 교육감 선거를 통해 교육 소비자들의 목소리가 반영되고 그로 인해 더 나은 사회가 된다면, 교육감 선거의 중요성을 국민들이 깨달으면 투표율 문제도 일정 부분 해결 될 것이라고 본다.


  비리 문제는 어느 제도하에서나 있을 수 밖에 없다. 그것을 막기 위해 법이 존재하는 것 아니겠나. 철저히 감사하고, 비리와 부패에 대해 엄정하게 처벌하면 될 일이다. '구더기 무서워 장 못 담근다'는 선인들의 속담이 들어맞는 상황이다.


  분명 교육감 직선제는 수정 보완돼야 하는 제도다. 이번에 투표 용지를 바꾼 것처럼. 하지만 선거 자체를 폐지하기엔 이르다.

블로그 이미지

Colorless.

공돌이 형과 글쟁이 동생 쌍둥이 형제의 낙서장

,