W_HOME = /usr/local/majordomo-$(VERSION)
# vipw <--- パスワードを編集 - - - - majordom:*:69:69::0:0:Majordomo Owner:/usr/local/majordomo-1.94.4:/bin/sh - - - - # finger majordom <--- 確認 Login: majordom Name: Majordomo Owner Directory: /usr/local/majordomo-1.94.4 Shell: /bin/sh Never logged in. No Mail. No Plan. #
# vi /etc/group <--- viで編集 - - - - majordom:*:69:majordom - - - -
PERL = /usr/local/bin/perl5.003 ... CC = gcc ... W_HOME = /usr/local/majordomo-$(VERSION) ... W_USER = 69 W_GROUP = 69 ... W_PATH = /bin:/usr/bin:/usr/local/bin ... TMPDIR = /var/tmp
% cp sample.cf majordomo.cf % vi majordomo.cf
$whereami = "srv.foo.bar"; <--- 正式なドメイン名を入れる ... if ( defined $ENV{"HOME"}) { $homedir = $ENV{"HOME"}; } else { $homedir = ":/usr/local/majordomo-1.94.4"; <--- ホームディレクトリが無くてもこれになる } ... $digest_work_dir = "/usr/local/majordomo-1.94.4/mail/digest"; ... $sendmail_command = "/usr/sbin/sendmail"; <--- 環境に合わせて編集 ... $TMPDIR = "/var/tmp"; <--- 環境に合わせて編集
# make wrapper gcc -DBIN=\"/usr/local/majordomo-1.94.4\" -DPATH=\"PATH=/bin:/usr/bin:/usr/loca l/bin\" -DHOME=\"HOME=/usr/local/majordomo-1.94.4\" -DSHELL=\"SHELL=/bin/sh\" -DMAJORDOMO_CF=\"MAJORDOMO_CF=/usr/local/majordomo-1.94.4/majordomo.cf\" - DPOSIX_UID=69 -DPOSIX_GID=69 -o wrapper wrapper.c
# make install Testing for perl (/usr/local/bin/perl5.003)... Configuring scripts... ./install.sh -m 751 -O 69 -g 69 . /usr/local/majordomo-1.94.4 ./install.sh -m 755 -O 69 -g 69 . /usr/local/majordomo-1.94.4/bin Copying tools to /usr/local/majordomo-1.94.4/bin Copying Majordomo files to /usr/local/majordomo-1.94.4 Copying archiving and other tools to /usr/local/majordomo-1.94.4/Tools ./install.sh -m 755 -O 69 -g 69 . /usr/local/majordomo-1.94.4/Tools Using installed majordomo.cf Installing manual pages in /usr/local/majordomo-1.94.4/man To finish the installation, 'su' to root and type: make install-wrapper If not installing the wrapper, type cd /usr/local/majordomo-1.94.4; ./wrapper config-test (no 'su' necessary) to verify the installation.
# make install-wrapper ./install.sh -o root -g 69 -m 4755 wrapper /usr/local/majordomo-1.94.4/wrapper To verify that all the permissions and etc are correct, run the command cd /usr/local/majordomo-1.94.4; ./wrapper config-test
# cd /usr/local/majordomo-1.94.4 # ./wrapper config-test ------------------------------------------------------------ ---------------- Config-test for Majordomo ---------------- ------------------------------------------------------------ --------------------- Obvious things: --------------------- ------------------ environment variables ------------------ HOME=/usr/local/majordomo-1.94.4 LOGNAME=sugasawa MAJORDOMO_CF=/usr/local/majordomo-1.94.4/majordomo.cf PATH=/bin:/usr/bin:/usr/local/bin SHELL=/bin/sh USER=sugasawa --------------------- euid/egid checks --------------------- effective user = majordom (uid 69) effective group = majordom guest staff operator tty sys kmem wheel majordom ( gid 69 31 20 5 4 3 2 0 69 ) ---------------------- uid/gid checks ---------------------- real user = majordom (uid 69) real group = majordom guest staff operator tty sys kmem wheel majordom ( gid 69 31 20 5 4 3 2 0 69 ) ------------------------------------------------------------ Non obvious things that cause headaches: ------------------------------------------------------------ Good: 'require'd /usr/local/majordomo-1.94.4/majordomo.cf okay. Good: found ctime.pl okay. Good: found majordomo_version.pl okay. Good: found majordomo.pl okay. Good: found shlock.pl okay. Good: found config_parse.pl okay. You're running Majordomo Version 1.94.4. --==> Majordomo home directory is /usr/local/majordomo-1.94.4. ------------------- Include directories ------------------- /usr/local/majordomo-1.94.4 /usr/local/lib/perl5/i386-freebsd/5.003 /usr/local/lib/perl5 /usr/local/lib/perl5/site_perl/i386-freebsd /usr/local/lib/perl5/site_perl . --------------------------- Home --------------------------- Good: changedir to /usr/local/majordomo-1.94.4 succeeded. Good: Created a mock lock file. ---------------------- temp directory ---------------------- Good: Created a temp file in $TMPDIR (/var/tmp). ---------------------- list directory ---------------------- Hmmm, list directory /usr/local/majordomo-1.94.4/lists doesn't exist or isn't a directory. Let me try to make it for you... Good: list directory /usr/local/majordomo-1.94.4/lists created. --------------------------- log --------------------------- Logfile /usr/local/majordomo-1.94.4/Log didn't exist, trying to create... okay, now chmod'ing.. Good: logfile /usr/local/majordomo-1.94.4/Log exists and is writeable. ------------------------- Mailers ------------------------- You have defined a mailer for delivery. Attempting to verify that this is a valid mailer...looks okay. You have defined a mailer for delivering administrative messages. Attempting to verify that this is a valid mailer...looks okay. ------------------ Checking majordomo.cf ------------------ Checking to see if there are new variables that should be in your majordomo.cf file...Nope, none that I see. Have you configured where Majordomo is? $whereami is srv.foo.bar Good: yup! ----------------------- end of tests ----------------------- Nothing bad found! Majordomo _should_ work correctly. If it doesn't, check your configuration file (/usr/local/majordomo-1.94.4/majordomo.cf) closely, and if it still looks okay, consider asking the majordomo-users mailing list at "majordomo-users@greatcircle.com" for assistance. Be sure and fully specify what your problems are, and what type of machine (and operating system) you are using. Enjoy! I see you haven't registered this version of Majordomo. By registering, you will be notified of patches and further releases of Majordomo. Shall I send email to majordomo-registration@greatcircle.com to register this version? (I'll cc Majordomo-Owner@srv.foo.bar) [yes] no Ooooh, like to live dangerously, eh?! #
# vi /etc/aliases 以下内容を追加する。 # Majordomo majordomo: "|/usr/local/majordomo-1.94.4/wrapper majordomo" owner-majordomo: sugasawa majordomo-owner: sugasawa ... # newaliases <--- メールエイリアスのデータベースを再構築する
# su majordom $ cd ~/lists $ pwd /usr/local/majordomo-1.94.4/lists $ touch test 適当なユーザ(自分自身に戻って)確認のメールを送ってみる。 % echo 'lists' | mail majordomo % mail Mail version 8.1 6/6/93. Type ? for help. "/var/mail/sugasawa": 1 message 1 new >N 1 Majordomo@srv.sugaho Sat Mar 13 22:09 22/680 "Majordomo results" & Message 1: From Majordomo-Owner@srv.foo.bar Sat Mar 13 22:09:00 1999 Date: Sat, 13 Mar 1999 22:08:58 +0900 (JST) To: sugasawa From: Majordomo@srv.foo.bar Subject: Majordomo results -- >>>> lists Majordomo@srv.foo.bar serves the following lists: test Use the 'info' command to get more information about a specific list. &
# touch /usr/local/majordomo-1.94.4/lists/sample # chown majordom /usr/local/majordomo-1.94.4/lists/sample* # chgrp majordom /usr/local/majordomo-1.94.4/lists/sample* # chown majordom /usr/local/majordomo-1.94.4/lists/sample* # vi /usr/local/majordomo-1.94.4/lists/sample <--- 初期ユーザがいれば編集OK # chmod 664 sample # vi /usr/local/majordomo-1.94.4/lists/sample.info <--- MLのインフォメーション SAMPLE ML This is SAMPLE ML Infomation. # vi /usr/local/majordomo-1.94.4/lists/sample.intro <--- 登録者への最初の説明 Hello! SAMPLE ML # vi /usr/local/majordomo-1.94.4/lists/sample.passwd <--- 管理者用のパスワード samplepasswd # chmod 600 /usr/local/majordomo-1.94.4/lists/sample.passwd # chown majordom /usr/local/majordomo-1.94.4/lists/sample* # chgrp majordom /usr/local/majordomo-1.94.4/lists/sample*
# vi /etc/aliases ... sample: :include:/usr/local/majordomo-1.94.4/lists/sample sample-request: "|/usr/local/majordomo-1.94.4/wrapper majordomo -l sample" owner-sample: sugasawa owner-sample-request: owner-sample sample-approval: owner-sample ... # newaliases Majordomoが動作時にエラーとならないようにdaemonをgroupに加えておく # vi group ... majordom:*:69:majordom,daemon
% echo 'lists' | mail majordomo % mail Mail version 8.1 6/6/93. Type ? for help. "/var/mail/sugasawa": 1 message 1 new >N 1 Majordomo@srv.sugaho Sun Mar 14 23:08 23/707 "Majordomo results" & 1 Message 1: From Majordomo-Owner@srv.foo.bar Sun Mar 14 23:08:52 1999 Date: Sun, 14 Mar 1999 23:08:50 +0900 (JST) To: sugasawa From: Majordomo@srv.foo.bar Subject: Majordomo results -- >>>> lists Majordomo@srv.foo.bar serves the following lists: sample test Use the 'info' command to get more information about a specific list.
$ echo 'who sample' | mail majordomo $ mail Mail version 8.1 6/6/93. Type ? for help. "/var/mail/sherry": 1 message 1 new >N 1 Majordomo@srv.sugaho Sun Mar 14 23:14 21/566 "Majordomo results" & 1 Message 1: From Majordomo-Owner@srv.foo.bar Sun Mar 14 23:14:16 1999 Date: Sun, 14 Mar 1999 23:14:15 +0900 (JST) To: sherry From: Majordomo@srv.foo.bar Subject: Majordomo results -- >>>> who sample Members of list 'sample': No subscribers &
$ echo 'subscribe sample sherry@srv.foo.bar' | mail majordomo $ mail Mail version 8.1 6/6/93. Type ? for help. "/var/mail/sherry": 2 messages 2 new >N 1 Majordomo@srv.sugaho Sun Mar 14 23:24 38/1325 "Confirmation for subs" N 2 Majordomo@srv.sugaho Sun Mar 14 23:24 42/1599 "Majordomo results" & 1 Message 1: From Majordomo-Owner@srv.foo.bar Sun Mar 14 23:24:54 1999 Date: Sun, 14 Mar 1999 23:24:54 +0900 (JST) To: sherry@srv.foo.bar From: Majordomo@srv.foo.bar Subject: Confirmation for subscribe sample -- Someone (possibly you) has requested that your email address be added to or deleted from the mailing list "sample@srv.foo.bar". If you really want this action to be taken, please send the following commands (exactly as shown) back to "Majordomo@srv.foo.bar": auth 7d7c4b91 subscribe sample sherry@srv.foo.bar If you do not want this action to be taken, simply ignore this message and the request will be disregarded. If your mailer will not allow you to send the entire command as a single line, you may split it using backslashes, like so: auth 7d7c4b91 subscribe sample \ sherry@srv.foo.bar If you have any questions about the policy of the list owner, please contact "sample-approval@srv.foo.bar". Thanks! Majordomo@srv.foo.bar & 2 Message 2: From Majordomo-Owner@srv.foo.bar Sun Mar 14 23:24:55 1999 Date: Sun, 14 Mar 1999 23:24:52 +0900 (JST) To: sherry From: Majordomo@srv.foo.bar Subject: Majordomo results -- >>>> subscribe sample sherry@srv.foo.bar **** Your request to Majordomo@srv.foo.bar: **** **** subscribe sample sherry@srv.foo.bar **** **** must be authenticated. To accomplish this, another request must be **** sent in with an authorization key, which has been sent to: **** sherry@srv.foo.bar **** **** If the message is not received, there is generally a problem with **** the address. Before reporting this as a problem, please note the **** following: **** **** You only need to give an address to the subscribe command if you want **** to receive list mail at a different address from where you sent the **** command. Otherwise you can simply omit it. **** **** If you do give an address to the subscribe command, it must be a legal **** address. It should not consist solely of your name. The address must **** point to a machine that is reachable from the list server. **** **** If you have any questions about the policy of the list owner, please **** contact "sample-approval@srv.foo.bar". **** **** Thanks! **** **** Majordomo@srv.foo.bar &
→ 直前に送ったsubscribeへの返答にあるauthの部分を転送する。 % mail majordomo Subject: auth 7d7c4b91 subscribe sample sherry@srv.foo.bar . EOT $ mail Mail version 8.1 6/6/93. Type ? for help. "/var/mail/sherry": 1 message 1 new >N 1 Majordomo@srv.sugaho Sun Mar 14 23:27 38/1238 "Majordomo results" & 1 Message 1: From Majordomo-Owner@srv.foo.bar Sun Mar 14 23:27:44 1999 Date: Sun, 14 Mar 1999 23:27:42 +0900 (JST) To: sherry From: Majordomo@srv.foo.bar Subject: Majordomo results -- >>>> auth 7d7c4b91 subscribe sample sherry@srv.foo.bar Your request to Majordomo@srv.foo.bar: subscribe sample sherry@srv.foo.bar has been forwarded to the owner of the "sample" list for approval. This could be for any of several reasons: You might have asked to subscribe to a "closed" list, where all new additions must be approved by the list owner. You might have asked to subscribe or unsubscribe an address other than the one that appears in the headers of your mail message. When the list owner approves your request, you will be notified. If you have any questions about the policy of the list owner, please contact "sample-approval@srv.foo.bar". Thanks! Majordomo@srv.foo.bar & → 管理者に以下のメールが届くはず。( user sugasawa ) % mail Mail version 8.1 6/6/93. Type ? for help. "/var/mail/sugasawa": 1 message 1 new >N 1 Majordomo@srv.sugaho Sun Mar 14 23:36 30/909 "APPROVE sample" & 1 Message 1: From Majordomo-Owner@srv.foo.bar Sun Mar 14 23:36:15 1999 Date: Sun, 14 Mar 1999 23:36:14 +0900 (JST) To: sample-approval@srv.foo.bar From: Majordomo@srv.foo.bar Subject: APPROVE sample -- Sherryrequests that you approve the following: subscribe sample sherry@srv.foo.bar If you approve, please send a message such as the following back to Majordomo@srv.foo.bar (with the appropriate PASSWORD filled in, of course): approve PASSWORD subscribe sample sherry@srv.foo.bar If you disapprove, do nothing. Thanks! Majordomo@srv.foo.bar → 許可する場合には以下内容のメールを送る % mail majordomo Subject: approve samplepasswd subscribe sample sherry@srv.foo.bar . EOT % mail Mail version 8.1 6/6/93. Type ? for help. "/var/mail/sugasawa": 2 messages 2 new >N 1 Majordomo@srv.sugaho Sun Mar 14 23:48 17/586 "Majordomo results" N 2 Majordomo@srv.sugaho Sun Mar 14 23:48 17/641 "SUBSCRIBE sample sher" & 1 Message 1: From Majordomo-Owner@srv.foo.bar Sun Mar 14 23:48:13 1999 Date: Sun, 14 Mar 1999 23:48:10 +0900 (JST) To: sugasawa From: Majordomo@srv.foo.bar Subject: Majordomo results -- >>>> approve samplepasswd subscribe sample sherry@srv.foo.bar Succeeded. & 2 Message 2: From Majordomo-Owner@srv.foo.bar Sun Mar 14 23:48:13 1999 Date: Sun, 14 Mar 1999 23:48:13 +0900 (JST) To: sample-approval@srv.foo.bar From: Majordomo@srv.foo.bar Subject: SUBSCRIBE sample sherry@srv.foo.bar -- sherry@srv.foo.bar has been added to sample. No action is required on your part. → 許可されたユーザ ( sherry )には以下内容のメールが届いたはず。 Welcome to the sample mailing list! Please save this message for future reference. Thank you. If you ever want to remove yourself from this mailing list, you can send mail to with the following command in the body of your email message: unsubscribe sample or from another account, besides sherry@srv.foo.bar: unsubscribe sample sherry@srv.foo.bar If you ever need to get in contact with the owner of the list, (if you have trouble unsubscribing, or have questions about the list itself) send email to . This is the general rule for most mailing lists when you need to contact a human. Hello! SAMPLE ML
$ echo 'who sample' | mail majordomo $ mail Mail version 8.1 6/6/93. Type ? for help. "/var/mail/sherry": 1 message 1 new >N 1 Majordomo@srv.sugaho Sun Mar 14 23:56 22/588 "Majordomo results" & 1 Message 1: From Majordomo-Owner@srv.foo.bar Sun Mar 14 23:56:45 1999 Date: Sun, 14 Mar 1999 23:56:43 +0900 (JST) To: sherry From: Majordomo@srv.foo.bar Subject: Majordomo results -- >>>> who sample Members of list 'sample': sherry@srv.foo.bar <--- 確かに追加されている 1 subscriber
% mail sample@srv.foo.bar Subject: TEST TEST from yoko. . EOT → sherryで受信しているかを確認 $ mail Mail version 8.1 6/6/93. Type ? for help. "/var/mail/sherry": 1 message 1 new >N 1 yoko Mon Mar 15 00:29 12/370 "TEST" & 1 Message 1: From sugasawa Mon Mar 15 00:29:04 1999 Date: Mon, 15 Mar 1999 00:29:03 +0900 (JST) From: YOKO SUGASAWATo: sample@srv.foo.bar Subject: TEST TEST from yoko. → 受信OK
# touch /usr/local/majordomo-1.94.4/lists/test2 # chown majordom /usr/local/majordomo-1.94.4/lists/test2 # chgrp majordom /usr/local/majordomo-1.94.4/lists/test2 # vi /usr/local/majordomo-1.94.4/lists/test2 #初期メンバー登録OK # vi /usr/local/majordomo-1.94.4/lists/test2.info #インフォメーション # vi /usr/local/majordomo-1.94.4/lists/test2.intro #登録者への最初の説明 # vi /usr/local/majordomo-1.94.4/lists/test2.passwd #管理者用のパスワード # chmod 600 /usr/local/majordomo-1.94.4/lists/test2.passwd # chown majordom /usr/local/majordomo-1.94.4/lists/test2* #ownerをmajrdomに # chgrp majordom /usr/local/majordomo-1.94.4/lists/test2* #groupをmajordomに # vi /etc/aliases test2: "|/usr/local/majordomo/wrapper resend -l test2 test2-list" test2-list: :include:/usr/local/majordomo/lists/test2 test2-request: owner-test2 test2-owner: owner-test2 owner-test2: sugasawa #管理者のメールアドレス # newaliases #エイリアスの更新
% echo 'subscribe test2' | mail majordomo % mail Mail version 8.1 6/6/93. Type ? for help. "/var/mail/yoko": 2 messages 2 new >N 1 Majordomo@srv.sugaho Tue Mar 16 23:51 38/1263 "Confirmation for subs" N 2 Majordomo@srv.sugaho Tue Mar 16 23:51 42/1532 "Majordomo results" & 1 Message 1: From Majordomo-Owner@srv.foo.bar Tue Mar 16 23:51:08 1999 Date: Tue, 16 Mar 1999 23:51:08 +0900 (JST) To: yoko From: Majordomo@srv.foo.bar Subject: Confirmation for subscribe test2 -- Someone (possibly you) has requested that your email address be added to or deleted from the mailing list "test2@srv.foo.bar". If you really want this action to be taken, please send the following commands (exactly as shown) back to "Majordomo@srv.foo.bar": auth bf2c761b subscribe test2 yoko If you do not want this action to be taken, simply ignore this message and the request will be disregarded. If your mailer will not allow you to send the entire command as a single line, you may split it using backslashes, like so: auth bf2c761b subscribe test2 \ yoko If you have any questions about the policy of the list owner, please contact "test2-approval@srv.foo.bar". Thanks! Majordomo@srv.foo.bar & q → 参加の意思を伝える % echo 'auth bf2c761b subscribe test2 yoko' | mail majordomo % mail Mail version 8.1 6/6/93. Type ? for help. "/var/mail/yoko": 1 message 1 new >N 1 Majordomo@srv.sugaho Tue Mar 16 23:51 36/1140 "Welcome to test2" & 1 Message 1: From owner-test2@srv.foo.bar Tue Mar 16 23:51:46 1999 Date: Tue, 16 Mar 1999 23:51:45 +0900 (JST) To: yoko From: Majordomo@srv.foo.bar Subject: Welcome to test2 -- Welcome to the test2 mailing list! Please save this message for future reference. Thank you. If you ever want to remove yourself from this mailing list, you can send mail towith the following command in the body of your email message: unsubscribe test2 or from another account, besides yoko: unsubscribe test2 yoko If you ever need to get in contact with the owner of the list, (if you have trouble unsubscribing, or have questions about the list itself) send email to . This is the general rule for most mailing lists when you need to contact a human. TEST2 ML INTRO ← オリジナルで追加したtest2.intro & q % echo 'who test2' | mail majordomo From Majordomo-Owner@srv.foo.bar Tue Mar 16 23:52:31 1999 Date: Tue, 16 Mar 1999 23:52:29 +0900 (JST) To: yoko From: Majordomo@srv.foo.bar Subject: Majordomo results -- >>>> who test2 Members of list 'test2': sherry yoko 2 subscribers - 通し番号を付加してみよう
今までのtest2の環境に追加 # cd /usr/local/majordomo-1.94.4/ # cp ./Tools/sequencer . # cd /usr/local/majordomo-1.94.4/lists # echo 1>test2.seq # mkdir test2.archive # vi /etc/aliases test2: "|/usr/local/majordomo-1.94.4/wrapper sequencer -l test2 -N -h srv.foo.bar test2-list" test2-list::include:/usr/local/majordomo-1.94.4/lists/test2 test2-request: owner-test2 test2-owner: owner-test2 owner-test2: sugasawa # 管理者のメールアドレス # newaliases #エイリアスの更新 reply_to = test2 subject_prefix = [TEST2:$SEQNUM] sequencerのファイルを環境に合わせて一部修正 ... $ENV{'PATH'} = "/bin:/usr/bin:/usr/local/bin:/usr/sbin:/sbin"; $sendmail_cmd = "/usr/sbin/sendmail $opt_m -f$sendmail_sender " . ...- 動作を確認してみよう!
% mail test2 Subject: test2のテスト 上手く送信できるか? どうだろう? . EOT → 送信そして受信 % mail Mail version 8.1 6/6/93. Type ? for help. "/var/mail/yoko": 1 message 1 new >N 1 yoko Wed Mar 17 00:56 20/653 "[TEST2:4] test2のテス" & 1 Message 1: From owner-test2 Wed Mar 17 00:56:10 1999 Date: Wed, 17 Mar 1999 00:56:04 +0900 (JST) From: YOKO SUGASAWASubjectにML名と通し番号が付きました。To: test2 Subject: [TEST2:4] test2のテスト 上手く送信できるか? どうだろう? → 無事届いた。sherryにも届いているかを確認 $ mail Mail version 8.1 6/6/93. Type ? for help. "/var/mail/sherry": 2 messages 2 new >N 1 yoko Wed Mar 17 00:56 20/653 "[TEST2:4] test2のテス" & 1 Message 1: From owner-test2 Wed Mar 17 00:56:10 1999 Date: Wed, 17 Mar 1999 00:56:04 +0900 (JST) From: YOKO SUGASAWA To: test2 Subject: [TEST2:4] test2のテスト 上手く送信できるか? どうだろう?
めでたしめでたし。