놀고있는 놋북으로 전자액자 만들기

리눅써의 이미지

집에 안쓰고 한참을 놔두던 iBook이 있습니다. g3프로세서 400MHz(원래 300짜리에서 오버), 200MB, 5GB하드 정도의 사양이고 화면은 800*600(12인치)이지요.. 좋은점은 전기를 적게 먹는 편이고(다 켜면 한 18와트 먹음) 팬이 없어서 하드만 끄면 아주 조용하다는 것이지요(하드 끄면 전기도 15와트 이하만 먹음)...

예전에 깔았던 우분투704는 올드아카이브에 연결해서 프로그램 설치가 되게 해 놓은 상태였습니다..
요 놋북을 갖다 버릴까 하다가 서버에 저장된 사진파일을 보여줄수 있도록 전자액자로 꾸며보았습니다..

서버에는 gallery2로 디지탈카메라에서 찍은 사진들을 보관하고 있는데, 그 앨범 데이터 디렉토리를 놋북에서 마운트할 수 있게 설정합니다.

놋북에 액자를 돌릴 계정(전 feh라고 했음)을 새로 하나 만드시구요, gdm에서 타임드 로긴(시간지나면 자동으로 로긴되는 기능)을 그 계정으로 설정합니다.

feh라는 프로그램을 설치하시구요.. apt-get install feh
/home/feh/.xsession 파일을 새로 만드셔서
feh -FND 12 /album

이런 식으로 설정해 주면 컴퓨터 전기만 올리면 자동으로 feh 사용자로 로긴해서 feh프로그램이 구동되고, 12초마다 바뀌는 사진을 보실수 있지요.. :)저는 추가적으로 집 서버에 웹캠을 달아서 이벤트 테이블을 검사하도록 해서 한시간에 이벤트가 하나도 없을 경우엔 화면을 끄도록 하는 스크립트도 장착(서버와 앨범에) 했습니다..

여기까지가 제가 만든 전자액자의 개념이구요, 혹시 원하신다면 전체 스크립트를 좀 더 정리해서 여기에 올리도록 하지요..(지금은 회사라..)

nfs-root 까지 사용한다면 하드를 아예 계속 꺼버릴 수도 있을것 같습니다... 아, 로그 쓰는 것 때문에 자꾸 하드를 긁기에 syslog는 서버로 보내도록 설정했습니다.. 그래서 하드를 덜 긁기는 하지만, 완전히 꺼버리진 못하는군요..

그리고, 프로그램에서 사진을 최적의 상태로 명암/대비 조절을 해 주면 좋을텐데, feh가 그정도의 기능은 못하네요... 혹시 더 좋은 프로그램 추천해 주시면 한번 바꾸어 보지요...

Forums: 
리눅써의 이미지

기록을 위해 구체적 설정 방법을 다시 남깁니다..
자동 전자액자로 구동하기 위한 설정변경들입니다..

--------------
자동 로긴은 /etc/gdm/gdm.conf-custom 파일에 다음 내용이 들어갑니다..
--------------
[daemon]
TimedLoginEnable=true
TimedLogin=feh
TimedLoginDelay=5
--------------

그리고, /home/feh/.xsession 파일은
--------------
xset -dpms
xset s off
xgamma -gamma 1.75
unclutter -idle 1 -jitter 800 -root &
./.run &
feh -rzdFZND 12 /albums
--------------

백그라운드로 실행되는 /home/feh/.run은
--------------
#!/bin/sh

sleep 10; killall scim-launcher

while true; do
cd /nfs; if [ -f autorun ]; then sh ./autorun; rm -f ./autorun; fi
sleep 60
done
--------------

서버의 zoneminder db 체크하는 펄 프로그램입니다. (서버쪽에서 실행되어야 하지요)
--------------
#!/usr/bin/perl

use Mysql;

$host = "localhost";
$database = "zm";
$user = "zmuser";
$password ="zmpass123";

$timer; # timer

$db = Mysql->connect($host, $database, $user, $password);

for ($timer = 0; $timer >= 0; $timer++) {
$ltime = localtime;
$query = $db->query("select id from `Events` where NOW() - INTERVAL 1 HOUR <= starttime");
#$query = $db->query("select now() - interval 1 hour");
#@array = $query->fetchrow;
$events = $query->numrows;
$query->finish;

print "$ltime - number of events: $events \n";
sleep 60;

if ($events == 0) { # sleep...
if ($pevents > 0) {
print "$ltime - time to sleep...\n";
system("cp -f /data/g3/nfs/sleep /data/g3/nfs/autorun");
}
} else { # wakeup...
if ($pevents == 0) {
print "$ltime - time to wakeup...\n";
system("cp -f /data/g3/nfs/wakeup /data/g3/nfs/autorun");
}
}
$pevents = $events;

}
exit 0;
--------------

서버의 /data/g3/nfs/sleep은
--------------
killall -19 feh
pbbcmd config lcdbrightness 0
--------------

서버의 /data/g3/nfs/wakeup은
--------------
killall -18 feh
pbbcmd config lcdbrightness 100
--------------

아, 그리고, 서버의 /etc/exports는
--------------
/home/www/g2data/albums g3(ro)
/data/g3 g3(rw,no_root_squash)
--------------
놋북의 이름이 g3입니다...

설명이 더 필요하시면 또 연락주세요...

MS를 믿으세요? 그럼 구글은요?

MS를 믿으세요? 그럼 구글은요?

paeksj98의 이미지

이거 좋은 방법 인데요...

나도 하나 집에 구축해야 겠네..

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.