다음 이전 차례

3. 시작하기

3.1 메일링 리스트란 무엇인가?

메일링 리스트는 일정 주제에 대해 관심이 있는 사람들이 그 주제에 대해 메일을 통해 서로의 생각을 나누는 일종의 토론 그룹이다. 토론 그룹은 유즈넷이나, 비비에스등의 다른 방법을 통해서도 구현되고 있으며 메일링 리스트 역시 이런 토론 그룹과 크게 다르지 않다. 다른 토론 그룹과 비교하자면 다음과 같은 특징을 지녔다고 할 수 있다.

  1. 메일링 리스트는 어느 정도 수동적이다. 다른 사람들의 의견이나 정보를 수집하는 경우, 유즈넷이나 비비에스는 직접 접속하여 관심있는 분야를 찾아가야 하지만, 메일링 리스트는 한번 가입하고는 가만히 앉아 기다리기만 하면 된다. 그것으로 끝이다.
  2. 메일링 리스트는 서버 공간을 거의 필요로 하지 않는다. 유즈넷이나 비비에스를 운영하기 위해서는 그 내용을 저장할 서버의 물리적인 저장장치를 필요로 하지만 - 때로는 엄청난 용량의 저장장치를 - 메일링 리스트 서버는 메일을 받아 각 가입자에게 전달하기만 하면 된다. 즉 데이터가 서버에 머물러 있지 않는다. 각 가입자는 자신의 필요에 따라 자신의 공간에 주어진 데이터를 삭제하거나 보존하거나 자신의 판단에 맡기면 된다.(많은 경우에 데이터를 저장할 수 있게 세팅하기도 한다.)
  3. 운영 방식에 따라서는 가입자의 참여를 막아 읽기 전용 메일링 리스트 형태로도 변형 가능하다. 이 경우에는 일방적인 정보, 소식등의 전달 목적으로 쓰이게 된다. 주로 사업체에서 소비자를 상대로 최신 정보를 알려주기 위해 쓰이나 나름대로 사내신문이나, 학과 소식등의 목적으로도 사용가능하다.
  4. 메일링 리스트의 정보는 현재적이며 일시적이다. 메일링 리스트 관리자가 가입 이전에 보내졌던 메일을 보관해 놓지 않는 이상 가입 이전의 메일에 대해서는 어떠한 정보도 얻을 수 없다.(이것 역시 서버 운영자가 충분히 고려한다면 이전 정보를 얻을 수도 있다. 이것에 대해서는 추후 설명하도록 한다.)
  5. 메일링 리스트는 사용자가 메일을 실시간으로 받아볼 수 있다면 함께 나누는 내용을 거의 바로 받아 볼 수 있다. 메일링 리스트가 설치 되어 있는 시스템의 설정이나 랜 환경등이 중대한 변수가 되겠지만 메일링 리스트를 이용한 토론그룹은 다른 토론그룹에 비해 대화의 내용이 빠르다.

3.2 왜 메일링 리스트 매니저(MLM)를 써야하는가?

여러 사람이 어떤 주제에 대해 메일을 통해 대화를 나눈다고 생각해 보자. 몇몇 안되는 사람 사이라면 각기 메일을 보낼 때 cc:(카본 카피 - 복사본을 보낼 대상)나 bcc:(블라인드 카본 카피 - 복사본을 받은 사람이 복사본을 받은 다른 사람을 알 수 없음)를 이용하여 충분히 서로간에 메일을 주고 받을 수 있다. 그러나 그 메일에 참여하는 사람들이 많아진다면 매번 cc:bcc:를 쓰는 것은 매우 번잡스러운 일이 될 것이다. 게다가 누군가가 그 리스트에 새로 참여 하고자 한다면 모든 리스트의 사용자가 추가를 해주는 노력을 해야 할 것이다. 메일링 리스트 매니저는 이러한 과정을 쉽고 편하게 해주는 프로그램이다. 또한 부가적으로 다음과 같은 기능을 얻을 수 있다.

  1. 여러 곳으로 메일을 보낼 필요 없이(즉 cc:나 bcc:가 필요 없이) MLM이 관리하는 한 곳에 메일을 보냄으로 그 메일링 리스트에 가입한 모든 사람에게 메일을 보낼 수 있다.
  2. 메일링 리스트에 참여, 탈퇴하고자하는 사람을 자동으로 처리해 준다. 뿐만 아니라 메일링 리스트를 체계적으로 관리할 수 있게 해줌으로 여러 유용하고 귀찮은 일을 대신 해준다. 또한 그 동안 주고 받은 메일을 보관하는 작업까지도 해 준다.
  3. 설정을 통해 읽기 전용 메일링 리스트로 만들거나, 모데레이트(검증 후 중계기능), 머리말 꼬리말 추가 기능, 스팸 방지 기능등 꽤나 쓸모있는 기능들을 제공해 준다.
  4. 관리자가 메일을 통해서 메일링 리스트를 설정할 수 있는 기능을 제공해 준다.
  5. 웹, ftp, 유즈넷등과 연동하여 메일링 리스트를 운영하도록 해 준다.

3.3 왜 메이저도모인가?

리눅스에서 사용가능한 메일링 리스트 매니저로는 본 문서에서 다룰 메이저도모를 비롯하여, 리스트서브(LISTSERV), 리스트프로크(Listproc), 스마트 리스트(SmartList)등 몇몇 가지가 있다. 선택하는 기준으로는 여러가지가 있겠지만 다음과 같은 것들을 일반적으로 생각해 봐야 할 것이다.

메이저도모는 위의 기준에 맞추어 보았을 때, 리눅스 사용자들에게 꽤나 적합한 프로그램이라 할 수 있겠다. 우선 GPL을 따르는 프로그램이고, 소스가 공개되어 있어 특정 목적에 맞추어 변경가능하다(한글 명령어 지원등). 물론 사용하기에 무리 없을 정도의 가입자를 수용할 수 있다. 게다가 메이저도모는 시스템 자원을 안쓰기로 유명한 프로그램이다.(Mailing list management software FAQ 에서 인용) 또한 메이저도모는 Perl로 쓰여진 프로그램이다. 다양한 시스템에서 범용적으로 쓰이는 Perl을 사용하기 때문에 다양한 Unix 시스템에서 사용이 가능하다. 물론 요즘과 같이 자고 일어나면 버전이 바뀌는 레드햇 배포판의 홍수에서도 특별히 새로 컴파일 하거나 할 일이 거의 없다.

마지막으로 메이저도모는 한국에서 운영되고 있는 메일링 리스트에서 광범위하게 쓰여지고 있어 여러모로 편리할 것이다. 또한 메이저도모와 웹을 연동하는 여러 프로젝트가 진행되고 있으므로 요즘에 유행하는 웹 인터페이스를 지원하기에도 쉬울 것이다. 다음의 URL을 참고하기 바란다.

만일 유즈넷과의 연동을 준비한다면 newsgate라는 프로그램을 이용할 수도 있을 것이다.

각 메일링 리스트에 대해 좀 더 알고 싶다면 ftp://ftp.uu.net/usenet/news.answers/mail/list-admin/software-faq을 구해 읽어보기 바란다. 각각의 MLM에 대해서 비교와, 소개를 한 문서이다.

마지막으로 메이저도모를 이용하다가 생기는 여러 오류들에 대해서는 메이저도모와 함께 배포되는 FAQ를 반드시 참조하기 바란다. 가장 최신의 FAQ는 http://www.greatcircle.com/majordomo/majordomo-faq.html에서 구할 수 있다.

3.4 메이저도모 구하기, 그밖의 프로그램들.

이 문서를 작성하는 시점에서 메이저도모의 최신 버전은 1.94.4였으며 곧 2.0 버전이 나올 것이라는 프로그램 제작자의 홍보가 있었다. 메이저도모는 다음 공식 ftp를 비롯한 여러 미러 사이트에서 구할 수 있다. ftp://ftp.greatcircle.com/pub/majordomo 또한 홈페이지에서는 메이저도모에 대한 내용을 알아볼 수 있다. http://www.greatcircle.com/majordomo/

레드햇 사용자일 경우 레드햇사의 ftp를 통해 RPM으로도 구할 수 있다. 레드햇 4.x대의 사용자는 ftp://contrib.redhat.com/libc5/RPMS/ 에서 레드햇 5.x대의 사용자는 ftp://contrib.redhat.com/libc6/RPMS/ 에서 구할 수 있다. 레드햇의 미러 사이트는 http://www.redhat.com을 통해 알아보기 바란다. 우리나라의 인증 미러 사이트는 보라넷이다.

데비안 패키지 역시 쉽게 구할 수 있다. 그러나 데비안에서는 메이저도모를 설치하는 것이 그리 쉽지 않다. 오히려 데비안에서 권장하는 스마트리스트(SmartList)를 권한다. 뒤에 나오는 '데비안 사용자는' 절을 참고하라.

이 문서에서는 메이저도모와 sendmail을 연동하는 것에 대해 설명한다. 다른 MTA를 사용할 경우에는 조금 다른 설정이 필요할 것이다. Exim과 Qmail에 대한 프로젝트가 진행중에 있다.

메이저도모는 펄 스크립트(Perl Script - 아하 펄)로 이루어진 프로그램이다. 메이저도모를 사용할 리눅스 박스에 펄이 없다면 프로그램이 실행되지 않을 것이다. 다음의 명령으로 리눅스 박스에 펄이 설치되어 있는지 확인해 보라.

[root@kuls /root]# find / -name perl

일반적인 배포본이라면 /usr/bin 에 위치하며 다음과 같이 하여도 될 것이다.

[root@kuls /root]# whereis perl

펄을 찾으면 펄이 있는 디렉토리를 보여 줄 것이다. 그러면

[root@kuls /root]# 펄의 패스/perl -V

을 통해 버전을 확인한다. 펄이 없다면 펄을 구해서 설치 해야 한다.

펄의 버전은 4.019이상 이어야 한다.(1.94.4버전에서). 펄의 버전이 4.019 이하라면 설치과정에서 에러를 내며 설치가 되지 않을 것이다. 최신 버전의 white펄로 업그레이드 하기 바란다. 펄의 최신버전은 5.x 일 것이다. 펄 5는 현재 진행형으로 만들어지고 디버깅하고 있는 버전이기 때문에 좀 더 신중하게 선택해야 한다. 메이저도모 2.0버전부터는 펄4에 대한 지원을 더 이상 하지 않겠다고 했다. 게다가 펄을 쓰는 다른 프로그램들도 펄5 환경으로 거의 옮겨진 상태이므로 펄5로 업그레이드 하는 것은 좋은 생각이다. 아마도 배포본으로 구입한 리눅스를 쓰고 있다면 거의 대부분이 알게 모르게 펄5를 설치해 놓고 사용중에 있을 것이다.

충분히 동작이 검증된 펄의 버전은 4.036버전과 5.002버전인다. 5.001버전에서는 동작하지 않는다!! 또한 레귤러 익스프레션의 변화가 생긴 펄 5.004 버전에서 동작시키려면 최소한 1.94.3 이상의 메이저도모를 써야 할 것이다. 또한 5.005_01 버전에서는 펄의 버그로 인해 메이저도모를 사용할 수 없다.

우리나라에서 많은 사용자층을 가지고 있는 배포본으로는 레드햇을 들 수 있다. 안타깝게도 레드햇의 몇몇 배포본에 포함된 펄에서 메이저도모가 돌아가지 않는다. 위의 펄 버전을 구하는 명령을 통해 나온 버전 정보에서 MAINT_TRIAL_4 - 5.004_05 maintenance trial 4를 발견할 수 있다면 이것은 5.004m4 버전으로 알려진 트라이얼 버전이다. 이 버전에서는 "Unknown mailer error 9" 라는 에러를 날려준다. 반드시 펄을 업그레이드 하기 바란다. 배포본으로 레드햇 5.2 가 속한다. 레드햇 5.1의 펄은 버전이 5.004_6으로 이런 문제가 생기지 않는다고 이재광 leesop@uriweb.net님께서 연락주셨다. 레드햇 5.2를 사용중인 사용자는 반드시 펄의 버전을 확인하고, 펄의 판올림을 해야 할 것이다. 레드햇 6.0 및 그것의 한글화 버전인 여러 배포본에 들어있는 펄에서는 아직 아무런 문제도 발견되지 않았다.


다음 이전 차례