'분류 전체보기'에 해당하는 글 683건

m4655 를 쓰고 있었다.
아니 거의 방치되었다고 봐야겠지. (제대로 쓰지 못했으니)
제대로 써보기 위해 데이터정액제도 신청했다.

m4655 로 간단한 미션을 하기 위해서다.
아이팟터치에서 주로 쓰는 것들을 말이다.

1. 간단한 웹서핑
 같이 들어있는 IE 는 불편하다. 오즈용 웹서핑도 좀 이상하다.
 다른 브라우저를 찾아봐야 겠다. 일단 1순위는 오페라.

2. 간단한 트윗어플.
 포켓트윗이 있긴 한데, 썩 마음에 들지는 않는다.
 다른 것을 찾아보고, 없으면 그냥 포켓트윗.

3. 간단한 메일,일정.
 메일,일정은 구글메일,캘린더를 사용할 예정. 싱크하는 방법을 찾아야지.


윈도우 모바일 이라지만, 이런 간단한 것은 무리없겠지.

설마~~

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
기존 마운트된 파티션을 다시 마운트 하기 위해서 mount -o bind 를 쓴다.
내 경우는 FTP 의 symlink 처리시에 쓰고 있다(http://blog.1day1.org/149)

그런데, 기존 마운트의 데이터를 보호하기 위해 bind 시 readonly 옵션(ro) 를 주고 테스트를 해보니 제대로 되지 않았다.
mount -o bind,ro  /Data/userA  /DownA/UserData
아마도 기존 마운트 옵션을 변경하지 못하는 듯 하다.

내가 원하는 방향으로 하기 위해 어떻게 하면 좋을까?
로컬 데이터를 끌어(?)오기 위해 NFS, SAMBA 를 써 볼까?
퍼포먼스에는 문제가 없을까?

좀더 고민해봐야 겠다.

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
안드로이드에 관심이 있어서 여기저기 알아보고 있다.
해외에서는 안드로이드폰을 구할 수도 있지만, 이 저주받은 한국에서는 아직 아이폰도 구경하지 못하고 있다. 올해는 아마도 그냥 이렇게 넘어갈 것 같고, 내년에나 한번 기대를 해봐야 할 듯 하다.

그렇지만, 마냥 손가락만 빨고 있을 순 없고. 개발기기를 찾아다녔다.
일단 눈에 띄는 기기가 두개 보였다.

하나는 ODROID 라는 게임기기 컨셉의 기기이다.
http://www.aesop.or.kr/?document_srl=67987&mid=board_notice&cpage=1

칩셋은 ARM의 Cortex-A8 기반의 삼성 S5PC100 이다.

다른 하나는 망고보드 라고 S3C6410(ARM1176) 칩셋 기반의  라는 것이다.
http://cafe.naver.com/embeddedcrazyboys.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=4090

가격이 약간 부담이 되긴 하다. 서로간에 장단점이 있다.

ODROID 가 칩셋성능이 더 좋은 것 같긴한데, 개발 편의성은 망고보드가 조금 더 좋은 듯 하다.
ODROID 가 usb 호스트를 지원하면 딱 좋겠는데(다음버전에 고려중이라고 함) ,
망고보드는 조금만 디자인이 좋았으면 딱인데...

그밖에 Creative 에서 나온 zii egg 라는 것도 있는데, 이건 구하기가 좀 힘든듯 하다(구매대행으로 해야할 듯) , 가격도 훨씬 쎄고...

아! 적당한 개발기기 없을까?
일단 커널을 교체하기 편하고, 주변기기(usb, 카메라, GPS) 를 달 수 있는 정도면 된다.(그게 다 되는거지..)


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
드디어 야후코리아가 국내에 신경을 쓰려고 하나보다.
그동안 참 무심했었다.

야후코리아의 특성상 본사의 결재가 떨어져야 하는지 모르겠지만, 국내의 대응은 너무 느린듯 하다. 그 하나의 예를 들어본다.

다음은 국내 포털의 모바일 페이지이다.(모바일웹? mobile.OOO 과는 다른)
다음 , 네이버 , 파란 등의  모바일 페이지이다. m.OOO.OOO 이런식의 도메인을 사용한다.
(네이트는 m.nate.com 이 접속이 안된다. 원래 없나?)

그럼 야후는 어떤가?
m.yahoo.com 은 그나마 볼만하다.

그런데, 야후코리아 페이지는!! (m.yahoo.co.kr)
조금 민망하다. ( 이 페이지 말고 다른 페이지가 있는지 모르겠다)


난 야후코리아가 신경써야 하는 것은 스피드 라고 본다.
좀 빠른 대응 부탁해요!!


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
그동안 야후가 잠잠했었다. 거의 존재감이 없었다고 할까?
특히 한국에서는 한없이 추락했다고 할까?
(그래도 글로벌에서는 선전(?)하고 있기에 버틴다고 봐야지.)

그간 개인적으로는 메일서비스,YDN 등 호감을 가지고 있었다.(애증?도 함께)




이제 좀 뭔가를 보여주려고 하는가?
지금의 포털 독점구도를 깨긴 힘들겠지만, 야후가 힘을 썼으면 하는 바램이다.
경쟁자가 많아지면 서비스는 좋아진다고 보기 때문이다.


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
하드디스크를 점검하다가 윈도우7 의 부트매니저가 이상이 생겼었다.
어떻게 할까 하다가. 윈도우7 정품받은거 설치해보자 라는 생각에 이르렀다.
윈도우7 과 얼마전 출시한 우분투 9.10 을 설치하기로 했다.

그동안 이렇게 쓰고 있었다. ( 윈도우7 + 비스타 + 우분투9.04 )
윈도우7 영문판을 새로 설치하기 위해 공간정리가 필요했다.
문제는 비스타의 처리였다. 업그레이드를 할 것인가? 삭제를 할 것인가?
결론은 쉽게 내려졌다. 비스타여! 안녕~~  잘가~~  영원히...  ( 아! 비운의 비스타여... )


필요한 공간을 위해 파티션을 삭제해서 공간을 확보했다.
56 기가를 윈도우7 , 39기가를 우분투9.10 를 위한 공간으로 사용하기로 했다.

기존의 윈도우7 RC 64bit 로 부팅해서 설치해보기로 했다(32bit 라 안될 것 같긴하다)

시디의 setup 을 눌러 실행하니 다음 화면이 나왔다. 어! 되나?

그러나, 파일을 복사하는 것처럼 진행하는 듯 보이더니,
다음과 같은 에러가 났다.

그래서 부팅DVD 로 부팅해서 설치하기로 했다. 설치과정은 생략한다.(식상하다.)
다시 한번 느낀것은 확실히  설치절차도 참 쉬워졌다는 것이다.(지가 알아서 다 한다)

설치후에 부트매니저 상황을 봤다. 다시 살아났다.(비스타의 흔적은 남아있지만...)


영문판을 설치하고 잠깐 써봤는데, 원래 이렇게 빨랐었나? 설치한 어플이 없어서 그런가?
한동안 한글팩을 설치하지 않고, 그냥 써봐야 겠다. (영문판이라 빠른것인지...)


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
다음에서 다음에디터를 오픈소스로 오픈했었다.
네이버는 이미 스마트에디터를 오픈했다.
지금은 어떤지 모르겠지만, 그 당시 스마트에디터를 사용하는데, 조금 불편한점이 있었다.(많이 개선되었겠지)

이번에 다음에디터를 테스트 해보기로 했다.
http://code.google.com/p/daumopeneditor/
에서 다운받아서 사용하면 된다.

설명에 나와있는 설치/적용 을 보면.
http://uie.daum.net/openeditor/sample/1.5.1/install.html

apache 와 tomcat 을 언급하고 있다.
그렇다 보니 처음에는 저 환경만 되나? 라는 의문이 생겼다.
apache + tomcat 환경을 쓰지 않기 때문에 그만 둘까 하다가, 가만 생각해보면 웹에디터가 클라이언트 환경에 대한 것인데, 서버를 굳이 가릴 필요가 없다라는 생각에 소스를 살펴보기로 했다.

역시나 tomcat 에 대한 것은 아무 의미 없는 내용이었다.
서버부분에 대한 내용은 아예 빠져있다. 설명페이지는 아예 빼는 것이 혼란스럽지 않을 것 같다.

php 환경에 적용하기 위해 조금 수정했다.(이미지,파일 업로드 부분을 추가한 정도)
http://m.1day1.org/daumeditor/daumeditor-simple.html
소스보기를 해보면 알겠지만, 특별한 것은 없다.
마지막 부분을 보면, 이미지,파일,외부컨텐츠등을 불러오는 페이지를 따로 지정해놨다.
popPageUrl: "attache/image.php"
popPageUrl: "attache/file.php"
popPageUrl: "attache/multimedia.html"
이미지,파일 업로드는  attache 라는 폴더에 단순 저장할 뿐이다.
등록부분(register.php) 도 단순 넘어오는 _POST 값을 보여줄 뿐이다.(나머지는 직접 구현필요)

다운로드 : http://m.1day1.org/daumeditor/daumeditor-php.zip
구글코드 의 다운로드에서 daumopeneditor 를 먼저 다운받아야 한다.(추가되는 파일만 압축해놓았다)

잠깐 써보니 마음에 든다. ( 다만, install 에 대한 설명은 오히려 없는 것이 나을 듯 싶다.)

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
언제부터인가. FF 의 부가기능쪽에 접근하면 이런 에러가 난다.
말그대로 SSL 쪽에 에러가 난다는 것인데.

부가기능중에서 문제가 발생하는 것일까? 하나씩 삭제해보면서 테스트 해야 하나!


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
vi 를 쓰면서 자주쓰는 명령 이라기 보다는 설정이겠다.
:set nu
줄번호 보이기,  set nonu 는 없애기.

:set ts=4
탭 사이즈를 4 로 변경(기본 8)

기본설정으로 바꾸고 싶다.

# 우분투.

/etc/vim/vimrc.local 을 만들고
set nu
set ts=4
를 입력하고 저장하면 기본 설정이 된다.

# 센토스
vi 와 vim 이 나뉘어져 있다.  /etc/virc 와 /etc/vimrc (해당파일을 열어 직접 적어준다)

우분투도 나뉘어 있지만, 실질적으로 같다(vi = vim)


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
윈도우7 , 리눅스, 비스타 이렇게 설치되어 있는 시스템인데.
하드디스크도 4개가 설치되어 있다. IDE 2, SATA 2 ( 많긴 하군 )
SATA 하드를 테스트 하느라, 다른 하드 빼고, 시스템하드와 테스트할 하드를 연결해서 테스트하고.
(에러난 하드인줄 알았는데, 테스트 하니 이상없네? 케이블이 문제였나? 하드렉이 문제?)

그런데, 다시 원래대로 연결하고 부팅하니, 윈도우 부트 매니저가 이상하다.
아래이미지처럼,  있어야 할 저곳이 비어있다.
어찌 된 거지?
하드 연결하고, 바이오스 잡을때 순서가 바뀌었나?

리눅스 Grub 에서 윈도우부트매니저 를 찾아들어가 부팅은 되는데, 윈도우7 자체에서는 인식을 못하나 보다.
비스타로 부팅해봐도 마찬가지네. easy BCD 를 해봐도.
장치를 제대로 못 찾나보다.

일단 부팅은 되니 그냥 쓸까 했는데, 저것 때문인지.
최대절전모드 가 안된다.
이게 문제.

최대절전모드가 안되면 불편한데, 방법이 없을까?
다시 깔긴 귀찮고, 윈도우7 정품으로 업그레이드 할까? (지금은 RC 사용)


ps. 간만에 비스타 부팅했는데, 꽤 빠르잖아. 필요없는거 삭제해서 그런가?
  조금만 깔면 팍팍 느려지니. 그러고 보니 윈도우7 도 좀 많이 느려졌음.



반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
10월 22일.
두개의 다른 OS 행사를 했다.

바로 안드로이드와 윈도우7

너무 힘든 일정이었다. 하루를 꼬박. 탈진하겠다.
지향하는 시장이 다른(?) 두 OS 혹은 플랫폼.

안드로이드
 다양한 모습으로 안드로이드가 우리곁에 찾아올 듯 싶다.  핵심은 에코시스템.
 근데 언제쯤 안드로이드폰을 만져볼 수 있는거야! (SKT,KT 너희들 말이야!)
 PMP/MID 에도 접목이 될까?
 기술적으로는 가능한데, 구글이 마켓을 열어주지는 않을 것 같고, 제약을 좀 완화시켜줄려나?

윈도우7
 특별한 행사. 인상적. 보는 내내 재미있었다.
 윈도우7 은 이미 쓰고 있어서(RC) 큰 감흥은 없었다.
 그러나 미디어센터 쓸만하겠군. 앞으로 터치지원PC 많이 나오려나?
 그런데, 64비트좀 제대로 쓰려면 누구에게 호소를 해야 하나!!
 ps. 윈도우7 얼티밋 준다고 해서 '어! 통크네!' , 받고보니 영문판에 팔지마라. '어! 쪼잔해!'


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,

예전 qmail 을 설정할 때 가상계정으로 mysql 을 사용하였다.
vpopmail 에서 계정확인을 mysql 을 이용하는 방법이었다.

proftpd 도 비슷하게 가상계정으로 사용자 인증을 할 수 있다.
가상계정의 이점은 콘솔상에서 유저를 생성하지 않고, 웹에서 처리할 수 있다.
웹프로그램으로 DB 에 계정정보를 넣으면 된다.

어디를 설정해 줘야 하나?

/etc/proftpd/proftpd.conf 를 수정(추가)한다.

Include /etc/proftpd/sql.conf

그리고 sql.conf 를 생성한다.(이미있는 경우 수정)

<IfModule mod_sql.c>
SQLBackend      mysql

SQLAuthenticate users* groups*

SQLAuthTypes Crypt Plaintext

SQLConnectInfo {디비명}@localhost {유저명} {암호}

SQLUserInfo ftpusers userid passwd uid gid homedir shell
SQLGroupInfo ftpgroups groupname gid members

</IfModule>

그리고, 위의 디비명, 유저명, 암호에 맞게 가상계정정보를 넣을 디비를 설정한다.(자세한 사항 생략)

계정정보를 넣는 테이블 구조는 어떻게 되나?

마지막으로 계정정보를 넣을 테이블을 만들어준다.

CREATE TABLE ftpgroups (
        groupname varchar(16) NOT NULL default '',
        gid smallint(6) NOT NULL default '2001',
        members varchar(16) NOT NULL default '',
        KEY groupname (groupname)
) TYPE=MyISAM COMMENT='ProFTP group table';

CREATE TABLE ftpusers (
        id int(10) unsigned NOT NULL auto_increment,
        userid varchar(32) NOT NULL default '',
        passwd varchar(32) NOT NULL default '',
        uid smallint(6) NOT NULL default '2001',
        gid smallint(6) NOT NULL default '2001',
        homedir varchar(255) NOT NULL default '',
        shell varchar(16) NOT NULL default '/bin/false',
        count int(11) NOT NULL default '0',
        accessed datetime NOT NULL default '0000-00-00 00:00:00',
        modified datetime NOT NULL default '0000-00-00 00:00:00',
        PRIMARY KEY (id),
        UNIQUE KEY userid (userid)
) TYPE=MyISAM COMMENT='ProFTP user table';

가상계정용 공통 유저/그룹을 생성한다.

groupadd -g 2001 ftpgroup
useradd -u 2001 -s /bin/false -d /bin/null -c "proftpd user" -g ftpgroup ftpuser

uid/gid 는 적절하게 바꿔서 넣어줘도 된다.
shell 의 경우  /bin/false 로 했는데, Centos 의 경우는 디폴트인 /sbin/nologin 으로 해주면 된다.

테스트로 계정을 만들고 접속을 시도해 본다.

INSERT INTO `ftpgroups` (`groupname`, `gid`, `members`) VALUES ('ftpgroup', 2001, 'ftpuser');

INSERT INTO `ftpusers` (`id`, `userid`, `passwd`, `homedir`, `count`, `accessed`, `modified`) VALUES (1, 'testuser', 'testpass', '/var/FTPuser/testuser', 0, '', '');

파일질라 등으로 테스트 해본다.
접속해서 파일을 업로드 해보면, 설정한 uid/gid 로 파일이 생성된다.
웹상의 파일로 연동을 시키기 위해 아파치계정인  apache 나 www-data 등으로 uid/gid 를 설정해 주어도 될 것이다.

[추가]
기본 ftpuser / ftpgroup 은 고정인 것 같다. 아파치계정과 연동을 시킬려고 시도 해봤는데, 안되네.
proftpd 쪽에서 바꾸지 않고, 아파치쪽에서 바꿔야 겠다.(퍼미션 조정으로..)

[추가2] ubuntu 에서 sql / mysql mod 적용

apt-get install proftpd-mod-mysql

/etc/proftpd/modules.conf 에서 모듈 활성화

LoadModule mod_sql.c
LoadModule mod_sql_mysql.c

 

[추가3] Invalid shell: '/bin/false'

로그인시 위와 비슷한 메시지가 나오는 경우 /etc/shells 에 등록해준다.

# cat /etc/shells 
# /etc/shells: valid login shells
/bin/sh
/bin/dash
/bin/bash
/bin/rbash
/bin/false

 

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
카스퍼스키 안티바이러스를 깔아 쓰고 있는데.
svchost 경고를 내보낸다. 뭐지? 괜찮은 건가? 뭔가 이상이 있는 것인가?
이런 메세지가 나온다. 무슨 경고일까?
svchost 가 뭔가 변했다는 것 같은데.
바이러스나 스파이웨어 같은 것이 돌고 있는 것일까?

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
바코드 출력할 일이 있어서 보고 있는데.
바코드가 한두개가 아니구나!
일반적으로 대여점. 상점등에서는 어떤 종류를 쓰지?
아무거나 해도 상관없을까?
일단 Code 93 Standard ( code 39 / standard,extended ) 로 하긴 했는데, 테스트 해봐야 겠다.
바코드 리더기는 저 종류를 다 인식하겠지?


# 종류가 나뉘는 것은 허용되는 문자, 갯수 등의 차이인 것 같다.
http://www.jlabel.kr/board/board.php?board=Customer&page=2&command=body&no=14
http://www.qtec.co.kr/customer/customer_01_020.htm
http://barkorea.co.kr/data_barko_03.php

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
어떤 서비스를 하던간에 고객대응을 하게 된다.
고객센터라고 하는 곳의 목적이 뭘까?

그저 업무매뉴얼에 맞게 고객을 대하면 끝일까?
고객센터라고 하면 고객의 이야기를 들어주는 것이 아닐까?
무리한 요구(업무매뉴얼에 없는)라고
"업무매뉴얼대로 해야합니다."
개선사항을 말해도
"업무내뉴얼대로 하세요."

답답한 마음이 든다.
내가 무리한 요구를 하는 것일까? 정말 그런가?
다시 한번 생각해 본다.

그래, 괜히 창의적인 생각을 해봐야 이득볼 것 없다. 라는 그런 매너리즘에 빠져있나보다.
난 그저 업무 처리를 할뿐 고객과 대화하고 싶지 않다.  그런 말처럼 들린다.

왠지 공허하다. 내가 그들의 서비스를 개선시켜봤자 뭐하나!


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
백업할때 rsync 를 많이 쓴다.

보통 이런식이다.
rsync -avzrt -e 'ssh -p 2222 '  {SRC} {DEST}

그런데, 서버측과 백업측의  uid , gid 가 동일 하지 않으면 백업측의 전송된 파일이 바뀌는 경우가 있다.
즉, 서버측의 mysql 의 uid , gid 가 각각 27  이고, 백업측은 55 라고 하면.
rsync 로 백업이 되면서 27 에서 55 로 자동 변환되어 백업된다.

서버측의 uid/gid 를 그대로 가져오고 싶다면 다음과 같은 옵션을 추가해 준다.
rsync -avzrt --numeric-ids -e 'ssh -p 2222 '  {SRC} {DEST}
그러면 uid,gid 가 유지된채 백업이 된다.

uid, gid 에 엄격한  mysql , named 등을 rsync 로 백업할 때 주의한다.

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
centos 에서 아파치모듈을 컴파일 하는데, 다음과 같은 에러가 난다.
cannot open /httpd/build/config_vars.mk: 그런 파일이나 디렉토리가 없음 at /usr/sbin/apxs line 201.
apxs 는 perl 로 작성되어 있다. 코드를 보다보니.
pkg-config --variable=libdir apr-1
이 부분에서 아무 리턴값이 없는 것이다. (정상은 /usr/lib64 로 나와야 한다)

yum list apr*
으로 확인해보니,  apr-devel  이 i386 버전으로 설치되어 있고, x64 용으로는 설치가 되어 있지 않았다.
그래서
yum install apr-devel
으로 x64 버전도 설치했다.

apxs -ic mod_url.c
apxs -ic mod_bw.c
모두 정상적으로 컴파일 된다.

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
rsync + ssh 에 대한 팁은 많다.
그런데, ssh 를 root 로 로그인을 허용해야 하는 방법의 설명이 많다. /etc/ssh/sshd_config 에서
PermitRootLogin yes
로 해야 한다.  그러나 왠지 root 로 허용하는 것은 좀 꺼려지게 된다.
(ssh brute force 공격이 일상화 되어 있기 때문에 더 염려된다.)


root 로 접근은 못하게 하면서,  rsync+ssh 를 쓸 수 없을까?

물론 있다.
PermitRootLogin forced-commands-only
라는 옵션이 있다.

.ssh / authorized_keys  의 public key 에 적어준 명령만 허용하는 옵션이다.
from="192.168.0.1",command="/root/bin/validate-rsync" ssh-dss IEUHFKSJHDOG ....
위 밑줄 친 부분이 추가된 것이다. 딱 보면 감이 올것이다.

from 부분
의 IP 는 허용할 IP주소이다. 이 주소가 제대로 들어가지 않으면..     이런 에러로그를 보게 된다. 허용한 IP가 아니라는 메세지이다.
sshd[21670]: Authentication tried for root with correct key but not from a permitted host (host=backup, ip=192.168.0.1).
from 부분에 IP 를 직접 적어주거나,  /etc/hosts  에 등록해서  host 값을 적어줘도 된다.
from="backup",command="...."
/etc/hosts 에는 다음과 같이 적어준다.
192.168.0.1  backup
도메인을 직접적어주는것은 안되는 듯 하다.


command 부분에 적어준 스크립트를 통해 실행하게 된다.
validate-rsync (이름은 아무거나 상관없음) 의 내용은 다음과 같다.
#!/bin/sh
case "$SSH_ORIGINAL_COMMAND" in
*\&*)
echo "Rejected"
;;
*\(*)
echo "Rejected"
;;
*\{*)
echo "Rejected"
;;
*\;*)
echo "Rejected"
;;
*\<*)
echo "Rejected"
;;
*\`*)
echo "Rejected"
;;
rsync\ --server*)
$SSH_ORIGINAL_COMMAND
;;
*)
echo "Rejected"
;;
esac
파일을 만들고, 실행권한을 준다.




참조문서
http://www.linux.com/archive/feature/113847
http://www.debianhelp.co.uk/rsync.htm
http://troy.jdmz.net/rsync/index.html
https://people.chem.umass.edu/wiki/index.php?title=RSYNC_and_SSH_With_Automated_Login
http://www.iwlearn.net/websitetoolkit/help/how-to/using-rsync-and-ssh

http://zakorea.tistory.com/24
http://bluetech.tistory.com/2

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
Centos 에서 삼바를 설정하는데, 기존에 쓰는 우분투 설정과 같게 했는데도 다음과 같은 에러가 난다.
smbd[9726]: [2009/10/10 08:33:24, 0] smbd/service.c:make_connection_snum(1003)
smbd[9726]:   '/user/data' does not exist or permission denied when connecting to [httpd] Error was 허가 거부됨
삼바(/etc/samba/smb.conf) 설정을 이것저것 바꿔보는데도 별다른 진척이 없었다.

처음에는  접속이 안되길래 확인해 보니 /etc/sysconfig/iptables 의 방화벽이 막혀 있었다.
(해당포트를 열거나 방화벽 설정을 해제하면 되겠다. 개발서버용이라 방화벽을 껐다.)

혹시나 해서 Selinux 를 살펴봤다. Selinux 를 끄고 다시 해보니, 정상적이었다.
/etc/selinux/config 의
SELINUX=enforcing 으로 된것을  SELINUX=disabled  로 바꿔줬다.

SELINUX 를 제대로 활용하는 방법은 없나?
찾아보면 Centos 의 제일 먼저 나오는 팁이 Selinux 를 끄세요 라니...


# 다음 자료를 보고 적용해봐야 겠다.
http://wiki.centos.org/HowTos/SELinux
http://www.linuxtopia.org/online_books/centos_linux_guides/centos_selinux_guide/index.html
http://centos.pe.kr/owiki/index.php?url=centos&no=11


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
가끔 블로깅을 하다보면, 어떤 책에 대한 추천을 하는 글을 보게된다.
대부분 그냥 지나치지만, 어떤 책은 바로 보고 싶어지는 경우가 있다.


당신의 기업을 시작하라.
어느 블로그에선가 보고 구하려고 서점으로 향했다.
그런데, 서점 3곳을 뒤져도 책이 없는 것이었다. 대도시는 아니지만, 그렇다고 강원도 산골도 아닌데 말이야! 요즘 오프라인서점들이 베스트셀러위주로만 파나?
결국 어쩔 수 없이 며칠 돌아다닌 후에 한 서점에서 주문예약을 하고 받았다.

가장 듣고 싶은 한마디 Yes!
이건 출간되기 전부터 inuit.co.kr 를 통해 소식을 전해들었다.
이것도 나오자 마자? 찾아보기 시작했다. 이번에는 신간이니 있겠지 하면서 찾아다녔다.
그런데, 역시나 없었다. 그래서 주문할까 했는데, 그냥 온라인으로 구매해서 오늘 받게 되었다.


앗 설정샷 찍기가 힘든거구나! ^^

축하합니다.

궁금한것 : inuit 님은 출간으로 커밍아웃하신것인가요? 혹시 저자명도 필명? ^^


ps. 1+1 이벤트 아직 순위권이라면 같이 일하는 형님에게 책을 전해주고 싶네요.

사유추가 : 햇수로 10년가까이 같이 일한 형님에게 책 선물 한번 못해봤네요. (이런 무심)
               좋은 선물이 되면 좋겠습니다.

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
오늘은 한글날이다. 한글이 창제된 후 부터 지금까지 제대로 대접받은 적이 있던가?
조선시대때는 한자에 무시당하고, 일제시대에는 일본어에, 요즘은 또 영어에 무시당하고 있는 듯 하다.
어찌보면 한글은 참 기구한 운명을 타고 난 듯 하다.
그러나, 한글자체의 우수성을 알아주기 때문에 지금까지 생존(?)할 수 있었으리라 본다.

얼마전인가, 인도네시아의 한 지역에서 자신의 고유의 언어를 보존하고자 한글을 도입했다는 소식을 들었다.
세상에서 수많은 언어가 지금도 사라지고 있다고 한다. 왜? 그들의 언어를 기록할 문자가 없어서라고 한다.
한글의 우수성은 배우기 쉽다는 것이다.(한글과 한국어 는 다르다. 한글은 쉽다. 그러나 한국어는 어렵다)

서론이 길었다. 오픈소스에서도 한글화 작업이 이슈다.
요즘은 개발초기에 다국어 환경을 염두해두고 개발을 많이 하기때문에 줄어들고 있지만, 여전히 한국에서 사용하기 위해서는 한글화 작업이 우선인 경우가 많다. KLDP 라는 곳이 생기고, 한글 문서화 작업이 진행되다가 지금은 오픈소스 프로젝트 자체에 대한 커뮤니티로 발전하게 된다. 그동안 한글화 작업이 중심이 되어 운영되었다고 본다.

여러 오픈소스들이 있고, 아직도 한글화 작업이 필요한 곳이 많다.
해당 오픈소스가 다국어 환경을 갖추고 있으면 그나마 다행이고, 갖추고 개발하더라도 한글이 빠지는 경우가 많다. 왜? 참여하는 개발자가 한글을 사용하지 않는 경우가 대부분이기 때문이다.
그렇다 보니, 한글화 작업은 사후(개발후) 작업이 대부분이다.
개발후에 사용자가 직접 수정하고 패치를 만들고 커뮤니티에 공개하는 방식이다.

한글화 작업은 다양한 오픈소스를 도입하거나 사용해보도록 할 때(혹은 권유할때) 제일 큰 난관이다. 미려한 화면이나 UI,UX 는 둘째고 한글화가 되어 있지 않으면 아오안(아웃오브안중^^)이 되기 십상이다.
한글이 깨지지 않고 보여야 다음을 진행할 수 있는 것이다. (그 다음은 매뉴얼일 수도 있고, 플러그인 개발일 수도 있다.) 아마도 일차관문에 쓰러지는 좋은 오픈소스들이 꽤 많으리라 생각된다.

그런데, 생각해보면 이런 지루한 한글화 작업이 다람쥐 쳇바퀴도는 것 같은 느낌이다.
개발시 다국어 지원하고자 하는 프로젝트라면 개별언어에 따른 별도 개발자가 따로 있을지도 모르고, 언어 번역 단어집(?) 같은 것이 있지 않을까? 메뉴에 쓰이거나 메세지에 쓰이는 문장은 비교적 일정한 범위에 있기 마련이다. 시나 소설을 번역하는 것보다는 일정부분 정형화 되어 있을 것이라는 생각이다.
국내의 한글화 작업은 그런 부분을 무시하고 무대뽀로 진행되는 듯 하다. 그런 단어집(?) 같은 것이 있다면 한글화 작업도 그 부분에 집중할 수 있을테고, 그러면 개발시에 바로 도입하는 오픈소스들이 많을 듯 싶다.
특이한 메세지에 대해 사후 번역하는 정도로 바로 한글화 작업을 할 수 있을 듯 싶다.

그런데 생각해보면 그런 형태는 큰 프로젝트에서는 있을 듯 한데, 작은 프로젝트에는 어려운일일지도 모른다. 보통 작은 규모의 프로젝트들은 개발자의 모국어와 영어 정도만 지원하는 것이 대부분이니...
큰 프로젝트에서는 다국화 환경대처와 다국어 사전(?)을 보유하고 있는 듯한데, 그런 부분도 작은 프로젝트에도 지원이 되면 좋겠다.(그렇게 진행하고 있는 곳이 있는지 궁금하다)
모질라프로젝트 같은 큰 규모에서는 충분히 할 수 있을 듯 한데, 어떤 문제가 있을까?



반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
http://www.ubuntu.com
4월이 지나고, 10월이 되어 벌써 우분투 9.10 의 출시일이 얼마남지 않았다.

코드명은 Karmic Koala   보통 우분투 버전을 풀네임으로 쓰지 않으면 앞글자를 썼는데.
이번 버전은 뒷글자가 많이 쓰일듯 하다. 코알라. ^^

난 주로 LTS 버전을 사용한다. 그렇다 보니 아직 Hardy 를 쓰고 있다.
다음 LTS 버전은 10.04 인 Lucid Lynx 라고 한다.

이번 버전은 부팅속도가 상당히 빨라졌다고 한다.
아직 베타버전이지만, 설치해서 테스트 해봐야 겠다.


코알라.
반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
기존에 qmail + vpopmail 을 cdb 방식으로 사용하다가 mysql 방식으로 바꿔서 설치해봤다.
특별한 차이는 없고, 계정정보를 mysql db 에 저장하여 사용한다.

그런데, 기존의 계정정보를 mysql 으로 옮기는 방법을 설명한다.
vpopmail 에 관련 명령이 있다. vconvert

vconvert 는 /etc/passwd 의 계정정보(기존 sendmail 방식이나, qmail + checkpasswd 방식) 를 옮길 수도 있고, cdb 방식 , mysql 방식등 서로간의 계정정보를 옮길 수 있다.

-e 는 /etc/passwd  에 해당하는 옵션이다.
-c 는 cdb 방식 , -m 은 mysql 방식(정확히는 sql)이다.

그래서 변환 방식은
vconvert -c -m  또는  vconvert -c -m {도메인명}
방식으로 변환하면 된다. ( FROM -c TO -m 의 순서라고 생각하면 된다.)

이때 변환시 vconvert 가 참조하는 파일은 /var/qmail/users/ 의 cdb 파일을 참조한다.
계정을 옮길때  기존의  ~vpopmail/domains 폴더와  /var/qmail/users 폴더를 백업해놓는다.
이 데이터를 기준으로 변환된다. 새서버 세팅후에 해당 디렉토리를 교체해준다.
위 명령으로 옮기면 된다. 이때 vpopmail.mysql 세팅이 되어 있어야 한다.
바로 mysql 에 연결해서 vpopmail 테이블에 계정정보를 저장하기 때문이다.


한가지 주의할 사항이 있다.
/var/qmail/users 를 옮겨올때,  vpopmail/vchkpw 의 UID/GID 가 동일하다면 상관없지만, 다르다면 바꿔줘야 한다.
+mydomain.com-:mydomain.com:108:107:/home/vpopmail/domains/mydomain.com:-::
108:107 부분을 새 시스템에 맞게 바꿔준다.
바꿔준후에 적용하는 방법은  /var/qmail/bin/qmail-newu  를 실행시켜주면 cdb 파일이 재 설정된다.


주의사항 하나더.
vconvert 하면  control 의 rcpthosts , virtualdomains 등의 설정도 자동갱신해주는 줄 알았는데.
수동으로 넣어줘야 한다. /var/qmail/control 도 같이 백업해 주는 것이 좋겠다.

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
지난번 qmail + vpopmail 은 cdb 를 이용하는 방법이었다.(http://blog.1day1.org/329)
즉, 사용자 계정정보를 txt 형태로 저장하는 것이었다.

사용자 계정정보를 mysql 을 이용한  디비에 저장하는 방법을 사용해보자.

기존 cdb 방식에서 " --with cdb " 를 빼고 SRPM 빌드를 하면된다.
rpmbuild --rebuild knetqmail-0.0.3.src.rpm

빌드전에 mysql-devel 패키지를 설치해준다.

mysql 이 /usr/local/mysql 에 설치가 되어 있지 않다면..
yum install mysql-devel
그리고, /usr/local/mysql/include , /usr/local/mysql/lib 를 각각  심볼릭 링크해준다. (64bit 환경)
ln -s /usr/include /usr/local/mysql/include
ln -s /usr/lib64 /usr/local/mysql/lib

빌드하고 설치 후에 mysql DB 생성 해준다.
mysql> create databases vpopmail ;
mysql>  GRANT  ALL PRIVILEGES ON vpopmail.* TO 'vpopmail'@'localhost'  IDENTIFIED BY '계정암호' WITH GRANT OPTION ;
mysql> flush privileges;
vpopmail 이 mysql 계정에 접근할 수 있도록 설정을 바꿔준다.
/home/vpopmai/etc/vpopmail.mysql 을 편집한다.
아래와 같은 라인을 DB 명및 계정/암호 등을 맞게 수정한다.
# host|port|user|password|database
#
localhost|0|root|secret|vpopmail
기본값이 root 계정을 이용하는 것인데, vpopmail 계정을 생성해서 해당 계정으로 바꿔주어도 된다.
계정및 DB 는 자신이 원하는 값으로 바꾸면 된다.
localhost|0|vpopmail|계정암호|vpopmail


vadddomain 등 명령을 내렸을때 다음과 같은 에러가 난다면...
Error - no authentication database connection. Initial open
vpopmail 에서 mysql 으로 연결이 정상적으로 이뤄지지 않는다.
64bit 환경에서 빌드한 경우 위와 같은 에러가 날 수 있다.
strace vadddomain mydomain.com >& debug.txt  
등으로 체크해보면...

위와 비슷한 메세지를 볼 수 있다.(처음 부분)
open("/usr/local/mysql/lib/mysql/tls/x86_64/libmysqlclient.so.15", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/mysql/lib/mysql/tls/x86_64", 0x7fff9dba66c0) = -1 ENOENT (No such file or directory)
open("/usr/local/mysql/lib/mysql/tls/libmysqlclient.so.15", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/mysql/lib/mysql/tls", 0x7fff9dba66c0) = -1 ENOENT (No such file or directory)
open("/usr/local/mysql/lib/mysql/x86_64/libmysqlclient.so.15", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/mysql/lib/mysql/x86_64", 0x7fff9dba66c0) = -1 ENOENT (No such file or directory)
open("/usr/local/mysql/lib/mysql/libmysqlclient.so.15", O_RDONLY) = 3
진한 부분이 mysql 라이브러리를 불러오는 부분인데, 좀 이상하다.
윗부분에서 x86_64 에서 불러오지 못한다.  해당 위치를 확인해보면.(/usr/local/mysql/lib/mysql)
-rw-r--r-- 1 root root  21408 Sep 22  2008 libdbug.a
-rw-r--r-- 1 root root  73040 Sep 22  2008 libheap.a
-rw-r--r-- 1 root root 465624 Sep 22  2008 libmyisam.a
-rw-r--r-- 1 root root  41978 Sep 22  2008 libmyisammrg.a
-rw-r--r-- 1 root root 872012 Sep 22  2008 libmysqlclient.a
-rwxr-xr-x 1 root root    879 Sep 22  2008 libmysqlclient.la
lrwxrwxrwx 1 root root     24 Sep 22  2008 libmysqlclient.so -> libmysqlclient.so.15.0.0
lrwxrwxrwx 1 root root     24 Sep 22  2008 libmysqlclient.so.15 -> libmysqlclient.so.15.0.0
-rwxr-xr-x 1 root root 640162 Sep 22  2008 libmysqlclient.so.15.0.0
-rw-r--r-- 1 root root 493164 Sep 22  2008 libmystrings.a
-rw-r--r-- 1 root root 448720 Sep 22  2008 libmysys.a
-rw-r--r-- 1 root root  11890 Sep 22  2008 libvio.a
이런식이다. x86_64 같은 경로는 없다.(위의 라이브러리는 rpm 설치시 복사되는 듯 하다. 혹은 rpmbuild 시)
즉, 64bit 환경에서는 x86_64 에서 불러와야 하는데, 아무도 32bit 라이브러리를 불러오기 때문인 듯 싶다.

/usr/local/mysql/lib 를 libx 로 이름을 바꿔보고 다시 테스트 해봤다.
open("/usr/local/mysql/lib/mysql/tls/x86_64/libmysqlclient.so.15", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/mysql/lib/mysql/tls/x86_64", 0x7fffbebbde90) = -1 ENOENT (No such file or directory)
open("/usr/local/mysql/lib/mysql/tls/libmysqlclient.so.15", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/mysql/lib/mysql/tls", 0x7fffbebbde90) = -1 ENOENT (No such file or directory)
open("/usr/local/mysql/lib/mysql/x86_64/libmysqlclient.so.15", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/mysql/lib/mysql/x86_64", 0x7fffbebbde90) = -1 ENOENT (No such file or directory)
open("/usr/local/mysql/lib/mysql/libmysqlclient.so.15", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/local/mysql/lib/mysql", 0x7fffbebbde90) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=84051, ...}) = 0
mmap(NULL, 84051, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2b05b2aa7000
close(3)                                = 0
open("/usr/lib64/mysql/libmysqlclient.so.15", O_RDONLY) = 3
역시 마지막줄의  /usr/lilb64/mysql 에서 불러오는 것을 볼 수 있다.
이렇게 하면 정상적으로 에러없이 계정이 생성된다.

또는  /usr/local/mysql/lib/mysql/  에  심볼릭 링크를 걸어줘도 된다.
ln -s /usr/lib64/mysql  x86_64
아무튼 /usr/local/mysql/lib/mysql/libmysqlclient.so.15 을 불러오면 64bit 에서는 정상실행(연결)되지 않는다.

ps. 일반적으로  /usr/local/mysql 에는 아무것도 없을 것이다.
 (mysql 을 소스컴파일 해서 해당 위치를 지정하지 않는이상)
 가상머신에 깔려있는 VM 이미지가  mysql 이 설치되어 있는 것 같다.



근데 궁금한 것이 있다.
과연 vpopmail 을 mysql 연결이 어떤 이점이 있을까?
아무래도 파일보다는 DB 가 관리상 편하긴 할 것이다.
그런데, 메일의 잦은 접속때문에 DB connect 문제가 생기지 않을까?
계정확인을 위한 select 가 거의 대부분을 차지 하기 때문에 큰 문제가 아닐까?
메일서버가 DB서버도 겸하고 있을때는 한쪽의 부하가 다른 쪽에 영향을 주지 않을까?
아니면 vpopmail 의 컨넥션은 한번 이루어지고 계속 연결상태를 유지하나?(소스를 들여다 봐야 겠다)


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
큐브리드 를 설치하고, php 모듈을 올리기 위해 몇가지 주의할 사항이 있다.

참고로 http://blog.1day1.org/324  는 우분투64bit 환경에서 모듈컴파일 하는 방법이다.
우분투 64bit 의 php 는  Centos 의 php 모듈로도 쓸 수 있다.
다만 몇가지 환경이 맞아야 한다.

큐브리드 공식페이지에서는 현재 소스형태로 제공되고 있다.
이전에는 ( http://dev.naver.com/projects/cubrid-php/download )
Centos 5, php 5.1.6 을 기준으로 cubrid.so 를 배포했다. 같은 환경이라면 정상적으로 작동하지만, 다른 환경에서는 따로 소스를 컴파일해서 사용해야 한다.

1. php 버전이 맞아야 한다.
  centos 5.1.6 이 공식버전이고,  우분투는 5.2.x 버전이다.
  둘중 하나를 맞춰야 한다. ( 나는 centos 를 업그레이드 했다. )

2. 64bit(x64) , 32bit (i386) 가 맞아야 한다.
  당연하겠지만, 사용되는 라이브러리 등이 달라지기 때문에 아키텍트(?)를 맞춰야 한다.



기타 cubrid 설치위치도 영향을 주는가?
테스트를 해보니, 기본 /opt/cubrid 에 설치된다.(rpm 패키지 기준)
바이너리를 비교해보니, cubrid 설치위치가 다른 부분이 있다.
다른 환경들도 테스트 해보겠지만, cubrid 설치위치도 영향을 주는 듯 하다.
아직 정확한 테스트를 하지 않아서 어떤 영향을 주는지 혹은 영향이 없는지 확인하지 않았다.

직접 설치시 다른 경로로 지정하는 경우에는 php 모듈이 작동하지 않을 수 있다.
모듈이 정상적으로 올라오지 않으면 이 부분을 확인해 본다.


[추가]
3. cubrid 설치 위치도 어느정도 영향이 있다.
위 사항을 테스트 한 결과를 정리해본다.

모듈이 제대로 올라오지 않는 경우 아파치에러로그에 다음처럼 메시지가 나온다.
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/modules/cubrid.so' - libcascci.so.8: cannot open shared object file: No such file or directory in Unknown on line 0
cubrid.so 모듈이  libcascci.so.8 을 로드하는데 실패했기 때문이다.
공유라이브러리의 문제라면
/opt/cubrid/lib64 에서 해당 라이브러리 파일을 만들어 준다.
-rw-r--r-- 1 root root 586516 2009-09-20 18:41 libcascci.a
lrwxrwxrwx 1 root root     18 2009-09-23 18:34 libcascci.so -> libcascci.so.8.2.1
-rwxr-xr-x 1 root root 348625 2009-09-20 18:41 libcascci.so.8.2.1
이런식으로 libcascci.so 만 생성되어 있다.
ln -s libcascci.so.8.2.1 libcascci.so.8
이렇게 링크해서 만들어 준다.(설치시 왜 만들어 주지 않는지 모르겠다. (lib 쪽은 생성되어 있다.)



centos i386/x64 , ubuntu i386/x64  에서 테스트 중인데, 작동여부가 조금씩 차이가 있다.
결과가 뒤죽박죽이라 조금 혼란스럽다.(추후 다시 정리해야 겠다)

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
Centos 5 는 사용하기 편한 배포판중 하나다.(개인적으로 우분투가 좋다)
yum 으로 패키지 관리하는 것도 우분투(데비안)의 apt-get  부럽지 않을만큼 편하다.

그런데, centos5 가 나온지 꽤 되어서 인지 버전이 낮은 프로그램이 있다.
그중 하나가 php 인데, 공식지원은 5.1.6 버전이다.

5.2.x 버전을 사용하기 위해서는 비공식 저장소를 이용해야 한다.

http://wiki.centos.org/AdditionalResources/Repositories
를 보면 추가 가능한 저장소들이 있다. 이중 CentOS-Testing 를 이용하자.
# cd /etc/yum.repos.d
# wget http://dev.centos.org/centos/5/CentOS-Testing.repo
테스팅 저장소를 등록한다.

php 업데이트 방법은
# yum --enablerepo=c5-testing update php
혹시 php-mcrypt 같은 추가로 설치한 확장이 같이 업데이트 되지 않으면 별도로 업데이트해준다.
# yum --enablerepo=c5-testing update php-mcrypt


참조 : SRPM 으로 하는 방법
http://echodittolabs.org/blog/2009/05/all-i-want-php-52-centosrhel
반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
cafe24 가상서버호스팅을 사용중이다. 꽤 좋은 성능을 보여줘서 만족하고 있다.
가상호스팅의 특성(?)상 하드 용량이 부족하다. 그렇다 보니 몇메가도 아쉽게 된다.

cafe24 는 centos5 를 사용한다.
쓸데없는 패키지를 삭제해서 용량을 줄였다.
대충살펴보니 1기가 이상줄일 수 있었다.
yum remove xorg-x11*
yum remove evolution*
yum remove openoffice.org*
yum remove gnome*
다음과 같은 패키지들이다. 주로 X윈도 관련 패키지 들이다.
더 세세하게 찾아서 없애면 더 줄일 수 있겠지만, 일단 이정도로 만족.


ps. centos5 기본용량이 원래 큰가? 1기가 내외로 안되겠니?


# 지우기전
 18664164   4120760  13580028  24% /
# 지운후
 18664164   2856220  14844568  17% /

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
qmail + vpopmail  으로 운영중이다. mysql 을 쓰지않는 cdb 방식을 사용한다.
운영중인 메일 서버를 이전한다거나, OS 를 업그레이드 한다거나 해서 재설치하는 경우 기존의 설정된 메일계정을 옮기는 방법이다. 어렵지 않다.

옮기기 전에 기존 메일서버의 데이터를 확인한다.

1) vpopmail 의 domains 는 무조건 백업하자
실제 각 도메인별로 메일이 쌓이는 곳이다. 이 데이터를 통채로 옮기는 방법이니 백업하자.
최악의 상황을 대비해 domains 는 백업하자.

2) 옮길 domain 을 확인한다.
 혹시모르니, /var/qmail/ 의 control , users 등을 백업해준다. 옮길도메인을 체크한다.


qmail+vpopmail 을 재설치 한후에는

1) 옮길 도메인을 vadddomain 으로 생성해준다.
 그러면 vpopmail / domains 에 해당 도메인계정이 생성될 것이다.
 기존 도메인의 설정그대로 옮긴다면, qmail/control 의 설정파일, qmail/users/assign 등을 통채로 복사해서 사용해도 될 듯 하지만, 구분해서 옮긴다면, 각각의 파일을 수정해줘야 하기때문에 번거롭다. 그래서 vadddomain 으로 생성해 주는 것이 좋을 듯 하다.

2) 백업한 domains 를 교체해준다.
 vadddomain 으로 생성되면, vpopmail/domains 에 각 도메인이 생성된다. 생성된 domains 는 domains.bak  등으로 이름을 바꿔주고, 백업한 domains 를 그대로 넣어주면 된다.



추가로 imap 서버가 달라지는 경우 처리해줄 각 서버별 설정이 차이가 나는 부분이 있다.
내 경우 기존 bincimap 에서 dovecot 으로 교체를 했는데, 몇가지 주의할 점이 있었다.
그 부분은 따로 글을 올릴 예정이다.

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
큐메일(qmail) 에서는 여러가지 방법의 필터링을 사용한다.
유명한 rblsmtpd , spamassassin , clamav , procmail , maildrop , simscan , qmail-scanner 등 다양하다.

필터링 단계에 따라 방법도 달라진다.
크게 qmail-smtpd 단에서 필터링 하는 방법과 사용자의 메일박스에 도착하기 전에 필터링하는 방법으로 나눌 수 있다.

1) spf (Sender Policy Framework) 를 이용한 필터링
참조 : http://qmail.kldp.net/wiki/wiki.php/qmail_antispam#s-4.1

도메인 설정시 이런 설정을 본적이 있을 것이다.
; spf - kisarbl.or.kr
        IN      TXT     "v=spf1 ip4:111.222.123.234 ip4:122.222.123.234 ~all"
위의 IP 주소는 메일발송하는 서버의 IP 를 지정하게 된다.
~all , -all 등이 있는데, 각각 softfail , fail 등의 spf 값을 리턴하게 된다.

지난번 qmail SRPM 빌드 하는 글에서 언급한 패키지는 spf 패치가 적용되어 있다.
그래서 spf 필터링을 활성화 시켜주면 된다.

/var/qmail/control/spfbehavior  를 3 또는 4 로 해주면 된다.(0 은 비활성화)

특정도메인에 대해서 spf 설정을 확인하는 방법은
dig mydomain.com  txt 
로 확인할 수 있다.

예를 들어 mydomain.com 이 A 사의 웹호스팅을 이용한다고 하자.
이때 mydomain.com 에서 웹어플(폼메일,예약,문의등)로 메일을 보낼 때 spf 를 설정하지 않으면 받는 메일서버에서 거부당할 수 있다.(대부분의 포털은 설정이 되어 있다고 봐야 한다)
"v=spf1 ip4:{웹호스팅IP주소} ~all"
도메인 설정에 추가해준다.

dnsever 의 경우  "호스트 설명 텍스트(TXT) 추가" 항목에 넣어주면 된다.

2) rblsmtpd 를 이용한 필터링.

rbl 은 Real-time Blocking List 라고 한다.
한마디로 스팸발송IP 들을  블랙리스트, 화이트리스트 로 만들어서 블랙리스트에 등록된 IP 주소로 오는 메일을 거부하는 필터링 방법이다.

역시나 qmail SRPM 패키지에는 rblsmtpd 가 포함되어 있다.

/var/qmail/supervise/qmail-smtpd/run 파일을 직접수정해서 rblsmtpd 설정을 할 수 있다.
SRPM 패키지에는 /var/qmail/control/conf-knetqmail 을 수정해서 할 수 있도록 미리 설정되어 있다.
USE_RBL="no"
RBL_DNS="-r bl.spamcop.net -r rbl.linuxstudy.pe.kr"
다음과 같은 항목인데, USR_RBL 의 값을 yes 로 바꿔준다.
RBL_DNS 부분은 rbl 사이트를 지정하는 부분이다.
현재 rbl.linuxstudy.pe.kr 은 잠정중단된 상태이니 뺀다.
USE_RBL="yes"
RBL_DNS="-b -r bl.spamcop.net -r sbl.spamhaus.org -r spamlist.or.kr"
위와 같이 바꿔준다. (spamhaus 와 kisarbl 을 추가했다)
그리고 -b 옵션을 추가해 줬는데, 해당 옵션은 메일거부시 바로 failure notice 응답을 해준다.
그래야 발송IP 가 블랙리스트에 등록이 되어 있는지 바로 알 수 있게 된다.


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
지난번에 squirrelmail 을 사용하는 방법을 짧게나마 설명했었다.
이번에는 roundcube 를 써보자. (http://roundcube.net)

먼저 다운로드 하자.
http://roundcube.net/download  에서 최신버전을 다운받는다.(현재 0.3 stable)
다운로드하고 서버에 올리거나, 다운로드 주소를 찾아서 서버에서 wget 으로 직접 내려받는다.
# wget http://downloads.sourceforge.net/project/roundcubemail/roundcubemail/0.3-stable/roundcubemail-0.3-stable.tar.gz?use_mirror=jaist
다운후에 압축을 풀고(tar xvzf ...tag.gz ) 적당한 위치에 설치한다.
참고로, squirrelmail 이 사용하던  /usr/share 로 위치를 정했다.
정확한 위치는 /usr/share/roundcube
# tar xvzf roundcubemail-0.3-stable.tar.gz
# chown root.root roundcubemail-0.3-stable
# cp roundcubemail-0.3-stable /usr/share/roundcube
apache 설정도 squirrelmail 방식으로 처리했다.

/etc/httpd/conf.d 에 roundcube.conf  파일을 만들고, 내용은 다음과 같이 입력했다.
Alias /roundcube /usr/share/roundcube
웹서버를 재실행해주면 다음부터  mymail.com/roundcube  로 접속할 수 있다.


DB 설정을 해준다.
라운드큐브 는 다람쥐메일과는 다르게 설정등을 저장하기 위해 DB 를 사용한다.
mysql , postgresql 등을 사용할 수 있다.
별도의 DB 를 만들어주거나, 자신이 사용하던 DB 설정을 사용할 수 있다.

별도로 만든다면 다음처럼 만들어 준다.
mysql> create databases roundcube;
mysql> GRANT ALL PRIVILEGES ON roundcube.* TO 'roundcube'@'localhost'  IDENTIFIED BY '계정암호' WITH GRANT OPTION ;
mysql> FLUSH PRIVILEGES;


다음과 같은 테이블을 사용하니, 사용하던 DB 인 경우 테이블명이 겹치지 않나 주의한다.
| cache              
| contacts           
| identities         
| messages       
| session            
| users              
설정값은 아래의 자동설정시 값을 입력한다.


기본설정을 해보자.
자동설정은 mymail.com/roundcube/installer  접속해서 단계적으로 설정한다.

사전패키지,extension 등을 체크한다.
추가 패키지가 필요한 경우 설치해준다.
yum install php-gd php-mysql php-mcrypt
dom 패키지는 php-xml 을 설치한다.
yum install php-xml
php 를 업그레이드하는것을 권장한다.


IMAP 설정 부분은
$rcmail_config['default_host'] = 'localhost';
정도로 입력해준다.

SMTP 부분도
$rcmail_config['smtp_server'] = 'localhost';
$rcmail_config['smtp_auth_type'] = 'PLAIN';
정도를 주의해 준다.(smtp_auth_type 은 직접 main.inc.php 를 수정한다.

언어설정 하는 부분은 (ko_KR) 으로 지정해준다.
$rcmail_config['language'] = 'ko_KR';

기타 자세한 설정은 다음을 참조한다.
http://trac.roundcube.net/wiki/Howto_Config


설정을 마친후에는

해당 설정파일을 복사하거나 다운로드 해서 config/ 디렉토리에 넣어준다.
(main.inc.php , db.inc.php)


그리고 다음단계에서 설정을 체크해서 이상이 없는지 확인한다.
DB 접속이 이상없는지 확인하고, 기본 DB schema 를 생성해준다.

SMTP , IMAP 의 설정을 확인해 본다.

설정파일까지 복사/테스트 한 후 웹메일에 접속해본다. ( mymail.com/roundcube )

완료. 로그인하고 사용하자.
로그인 화면이 반긴다. 심플하다 못해 썰렁하지만... 로그인하면.
제법 그럴듯한 웹메일 인터페이스 화면을 볼 수 있다.

버전이 0.3 버전밖(?)에 안되서 큰 기대를 안했는데, 꽤 쓸만한 완성도를 보인다.
써보고 괜찮으면, 다람쥐메일은 작별을 고해야 할 듯 하다. ^^


반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,