nsc
09-19-2004, 08:43 AM
Hi! :)
Today I had some free time so I wrote a small step-by-step guide on installing Mailman. I hope you find it useful. Please feel free to copy it and make it better if you know. Keep in mind I am not an expert so the info may be inaccurate. :)
HOWTO: Install Mailman on Westhost VPS
by NSK, 19 September 2004.
Redistribute and modify freely for commercial or non-commercial use. This work is licensed under the Creative Commons Attribution License. To view a copy of this license, visit http://creativecommons.org/licenses/by/2.0/
Disclaimer: I don't guarantee the validity of information contained here. This document is provided "as is" and you read/use it at your own risk. Trademarks are the property of their owners.
VERSIONS USED
-------------
Mailman: 2.1.5
Westhost VPS: 2.0
Python: 2.2.2
PREPARING YOUR VPS
------------------
1. Visit http://www.your-domain-name.tld/manager and login there. Go to Site Applications. click on the Development tab. Install Python and then install the GNU Compiler Collection.
RETRIEVING MAILMAN
------------------
2. You need to download Mailman from http://www.list.org
3. You need to transfer the file to your VPS. Put it in your home directory (/home/your-user-name). Alternatively you can proceed to step 4 and issue the commands "cd ~" and then "wget http://www.list.org/mailman.tar.gz" or you can substitute the URL with any other URL you want to download Mailman from.
SSH LOGIN
---------
4. Assuming you work on a GNU/Linux or BSD system, go to the console and type "ssh my-user-name@www.my-domain-name.tld" and login in your VPS. Welcome to the brave old world of the console!! :) If you get in trouble, you can visit the WestHost manual which contains lots of info on how to use SSH, especially for Windows users, at http://manual.westhost.com/part1.html#gi-telnet
EXTRACTING THE MAILMAN SOURCE
-----------------------------
5. Find/remember where you saved the mailman.tar.gz (or mailman-2.1.5.tar.gz) file in your VPS and go to that directory with cd. If it's in your home, issue "cd ~".
6. Issue "tar -zxvf mailman.tar.gz".
7. I reccomend renaming the mailman directory by using "mv ./mailman-2.1.5 ./mailman".
8. Issue "chgrp mailman ./mailman" and then "chmod a+rx ./mailman" and then "chmod g+ws ./mailman".
9. Issue "cd ./mailman".
COMPILING MAILMAN
-----------------
10. Issue "./configure --with-username=YOUR-USER-NAME --with-groupname=vuser --prefix=/home/YOUR-USER-NAME/mailman --with-mail-gid=vuser --with-python=/usr/local/bin/python --with-mailhost=YOUR-DOMAIN-NAME --with-urlhost=YOUR-DOMAIN-NAME --with-cgi-gid=vuser" and watch for errors. If you get errors try typing the whole command instead of copy-pasting it. User names, paths and domain names are or may be CASE SENSITIVE. I found the compile directions at http://www.domsch.com/westhost
11. Issue "make" and watch for errors.
12. Issue "make install" and watch for errors. Write down any error you get.
READING THE DOCS (Ouch!)
------------------------
13. Issue "less gnu-COPYING-GPL" and read it. Use the arrow keys or the spacebar or the z and w keys for changing page. If you need help press h. When you reach the end of the file, you press q to quit. If you like what you read, you may proceed, otherwise you should delete Mailman by issuing "cd ~" and "rm -Rvf mailman".
14. Issue "less INSTALL" and read it and then press q.
15. Issue "less README" and read it (and press again q to quit after you do so).
INSTALLING MAILMAN
------------------
16. BEWARE!: Mailman supports private non-public list archives. This will not work with the procedure I describe here, so keep in mind that if you archive your mailing lists then any Web user will be able to read the messages from the Web archives that Mailman by default keeps.
17. Type "cd ~/mailman/bin".
18. Issue "./check_perms". Read the messages. If you get errors type "./check_perms -f". If the errors cannot be fixed automatically, use the commands chgrp and/or chmod to change the directory and file permissions. "chmod --help" will give you the command's syntax.
19. Do not close your SSH session. Go to Site Manager 2.0 by accessing http://www.your-domain-name.tld/manager and login. Go to the Domain management area. Click on Web aliases. Click on New alias. Click on Script alias (CGI executable). The URL path is "mailman/" and the absolute path name is "/home/your-user-name/mailman/cgi-bin/". Now click on New alias again. Click on Alias and type "pipermail/" in the URL textbox and "/home/your-user-name/archives/public/" in the absolute script path. Do these steps quickly in order not to time out your SSH session, otherwise you will have to logon again via SSH!
20. Issue "cd ~/mailman/icons".
21. Issue "cp * /var/www/icons/".
22. Issue "cd ~/mailman/bin".
23. Issue "mmsitepass" and type in a password. Don't forget it! Passwords are case sensitive.
24. Visit http://your-domain-name.tld/mailman/create and start your mailing list. To administer it later you can visit http://your-domain-name.tld/mailman/admin/your-mailing-list-name
25. Issue "cd ~/mailman/cron".
26. Issue "crontab crontab.in". If it works continue to the next step, If it doesn't work maximise your SSH window and Issue "less crontab.in". Copy what you see. Issue "crontab -" (this command may be wrong, please search the Net for "cron syntax") and paste the lines. Press CTRL+O and ENTER. Press CTRL+X. Issue "crontab". If you see errors, repeat and ensure the pasted lines did not split because of wordwrapping.
27. Issue "cd ~/mailman/Mailman".
28. Issue "cp mm_cfg.py.dist mm_cfg.py".
29. Issue "pico mm_cfg.py". Use the down arrow key to reach the end of this file.
30. Add this line to the file: "SMTPHOST = 'your-domain-name.tld'". You may also use your VPS IP address (use ping or the Site Manager to find it).
31. Press CTRL+O and then ENTER. Press CTRL+X.
32. Issue "cd ~/mailman/bin".
33. Issue "mailmanctl start". If you see any error message, write it down. If not, be happy because you just finished the basic installation of Mailman! :)
34. You can access the web interface of Mailman by going to http://your-domain-name.tld/mailman/listinfo
35. Each time your VPS is restarted or the server is resetted you will need to login via SSH and issue the command found in step 33. To exit SSH type "exit".
EXTRA CONFIGURATION
-------------------
36. The INSTALL file of Mailman tells you how to configure Mailman to run automatically each time your VPS is restarted. I don't know whether it works on Westhost.
EXTRA READING/SUPPORT
-----------------------------------
37. You can visit http://www.list.org/docs.html to access the documentation of the Mailman project or use the FAQ Wizard to search for answers to common problems at http://www.python.org/cgi-bin/faqw-mm.py
Hope this guide can help you if you need Mailman. Comments are welcome!
Be happy,
NSK
Today I had some free time so I wrote a small step-by-step guide on installing Mailman. I hope you find it useful. Please feel free to copy it and make it better if you know. Keep in mind I am not an expert so the info may be inaccurate. :)
HOWTO: Install Mailman on Westhost VPS
by NSK, 19 September 2004.
Redistribute and modify freely for commercial or non-commercial use. This work is licensed under the Creative Commons Attribution License. To view a copy of this license, visit http://creativecommons.org/licenses/by/2.0/
Disclaimer: I don't guarantee the validity of information contained here. This document is provided "as is" and you read/use it at your own risk. Trademarks are the property of their owners.
VERSIONS USED
-------------
Mailman: 2.1.5
Westhost VPS: 2.0
Python: 2.2.2
PREPARING YOUR VPS
------------------
1. Visit http://www.your-domain-name.tld/manager and login there. Go to Site Applications. click on the Development tab. Install Python and then install the GNU Compiler Collection.
RETRIEVING MAILMAN
------------------
2. You need to download Mailman from http://www.list.org
3. You need to transfer the file to your VPS. Put it in your home directory (/home/your-user-name). Alternatively you can proceed to step 4 and issue the commands "cd ~" and then "wget http://www.list.org/mailman.tar.gz" or you can substitute the URL with any other URL you want to download Mailman from.
SSH LOGIN
---------
4. Assuming you work on a GNU/Linux or BSD system, go to the console and type "ssh my-user-name@www.my-domain-name.tld" and login in your VPS. Welcome to the brave old world of the console!! :) If you get in trouble, you can visit the WestHost manual which contains lots of info on how to use SSH, especially for Windows users, at http://manual.westhost.com/part1.html#gi-telnet
EXTRACTING THE MAILMAN SOURCE
-----------------------------
5. Find/remember where you saved the mailman.tar.gz (or mailman-2.1.5.tar.gz) file in your VPS and go to that directory with cd. If it's in your home, issue "cd ~".
6. Issue "tar -zxvf mailman.tar.gz".
7. I reccomend renaming the mailman directory by using "mv ./mailman-2.1.5 ./mailman".
8. Issue "chgrp mailman ./mailman" and then "chmod a+rx ./mailman" and then "chmod g+ws ./mailman".
9. Issue "cd ./mailman".
COMPILING MAILMAN
-----------------
10. Issue "./configure --with-username=YOUR-USER-NAME --with-groupname=vuser --prefix=/home/YOUR-USER-NAME/mailman --with-mail-gid=vuser --with-python=/usr/local/bin/python --with-mailhost=YOUR-DOMAIN-NAME --with-urlhost=YOUR-DOMAIN-NAME --with-cgi-gid=vuser" and watch for errors. If you get errors try typing the whole command instead of copy-pasting it. User names, paths and domain names are or may be CASE SENSITIVE. I found the compile directions at http://www.domsch.com/westhost
11. Issue "make" and watch for errors.
12. Issue "make install" and watch for errors. Write down any error you get.
READING THE DOCS (Ouch!)
------------------------
13. Issue "less gnu-COPYING-GPL" and read it. Use the arrow keys or the spacebar or the z and w keys for changing page. If you need help press h. When you reach the end of the file, you press q to quit. If you like what you read, you may proceed, otherwise you should delete Mailman by issuing "cd ~" and "rm -Rvf mailman".
14. Issue "less INSTALL" and read it and then press q.
15. Issue "less README" and read it (and press again q to quit after you do so).
INSTALLING MAILMAN
------------------
16. BEWARE!: Mailman supports private non-public list archives. This will not work with the procedure I describe here, so keep in mind that if you archive your mailing lists then any Web user will be able to read the messages from the Web archives that Mailman by default keeps.
17. Type "cd ~/mailman/bin".
18. Issue "./check_perms". Read the messages. If you get errors type "./check_perms -f". If the errors cannot be fixed automatically, use the commands chgrp and/or chmod to change the directory and file permissions. "chmod --help" will give you the command's syntax.
19. Do not close your SSH session. Go to Site Manager 2.0 by accessing http://www.your-domain-name.tld/manager and login. Go to the Domain management area. Click on Web aliases. Click on New alias. Click on Script alias (CGI executable). The URL path is "mailman/" and the absolute path name is "/home/your-user-name/mailman/cgi-bin/". Now click on New alias again. Click on Alias and type "pipermail/" in the URL textbox and "/home/your-user-name/archives/public/" in the absolute script path. Do these steps quickly in order not to time out your SSH session, otherwise you will have to logon again via SSH!
20. Issue "cd ~/mailman/icons".
21. Issue "cp * /var/www/icons/".
22. Issue "cd ~/mailman/bin".
23. Issue "mmsitepass" and type in a password. Don't forget it! Passwords are case sensitive.
24. Visit http://your-domain-name.tld/mailman/create and start your mailing list. To administer it later you can visit http://your-domain-name.tld/mailman/admin/your-mailing-list-name
25. Issue "cd ~/mailman/cron".
26. Issue "crontab crontab.in". If it works continue to the next step, If it doesn't work maximise your SSH window and Issue "less crontab.in". Copy what you see. Issue "crontab -" (this command may be wrong, please search the Net for "cron syntax") and paste the lines. Press CTRL+O and ENTER. Press CTRL+X. Issue "crontab". If you see errors, repeat and ensure the pasted lines did not split because of wordwrapping.
27. Issue "cd ~/mailman/Mailman".
28. Issue "cp mm_cfg.py.dist mm_cfg.py".
29. Issue "pico mm_cfg.py". Use the down arrow key to reach the end of this file.
30. Add this line to the file: "SMTPHOST = 'your-domain-name.tld'". You may also use your VPS IP address (use ping or the Site Manager to find it).
31. Press CTRL+O and then ENTER. Press CTRL+X.
32. Issue "cd ~/mailman/bin".
33. Issue "mailmanctl start". If you see any error message, write it down. If not, be happy because you just finished the basic installation of Mailman! :)
34. You can access the web interface of Mailman by going to http://your-domain-name.tld/mailman/listinfo
35. Each time your VPS is restarted or the server is resetted you will need to login via SSH and issue the command found in step 33. To exit SSH type "exit".
EXTRA CONFIGURATION
-------------------
36. The INSTALL file of Mailman tells you how to configure Mailman to run automatically each time your VPS is restarted. I don't know whether it works on Westhost.
EXTRA READING/SUPPORT
-----------------------------------
37. You can visit http://www.list.org/docs.html to access the documentation of the Mailman project or use the FAQ Wizard to search for answers to common problems at http://www.python.org/cgi-bin/faqw-mm.py
Hope this guide can help you if you need Mailman. Comments are welcome!
Be happy,
NSK