Not all those who wander are lostgnu | Just another WordPress weblog

Archive for October 2009

For demo purposes I needed a mail + IMAP server on my laptop. IMAP because there seems to be no way for Thunderbird to read from an mbox file (shocking!). Postfix comes default with OS X, so that was a no brainer.

However getting IMAP to work took some work. I’m detailing the steps here.

  1. Get IMAP source code from http://www.washington.edu/imap/ and untar somewhere. (I’m assuming you have full XCode development environment setup. If not, dig out your Install DVD and do so)
  2. Edit the top level MAKEFILE and comment out this line:
      EXTRACFLAGS="$(EXTRACFLAGS) -DMAC_OSX_KLUDGE=1"
    

    Make sure the next line (which is SPECIALS= is not commented out)

  3. Run make oxp
  4. Copy generated imap/imapd to /usr/local/bin
  5. Since 10.6 has no xinetd anymore, I had to write a launchd plist file. Create this file as /Library/LaunchDaemons/com.uwimap.imap.plist. Contents:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
      <dict>
        <key>Disabled</key>
        <false/>
        <key>Label</key>
        <string>com.uwimap.imap</string>
        <key>ProgramArguments</key>
        <array>
          <string>/usr/local/bin/imapd</string>
        </array>
        <key>inetdCompatibility</key>
        <dict>
          <key>Wait</key>
          <false/>
        </dict>
        <key>InitGroups</key>
        <true/>
        <key>Sockets</key>
        <dict>
          <key>Listeners</key>
          <dict>
            <key>SockServiceName</key>
            <string>imap</string>
          </dict>
        </dict>
      </dict>
    </plist>
    

    The file should be owned by user root and group wheel.

  6. Configure PAM support. I did this by this kludge:
    sudo cp /etc/pam.d/ftpd /etc/pam.d/imap
  7. Ask launchd to load and start this service:
      sudo launchctl load /Library/LaunchDaemons/com.uwimap.imap.plist
      sudo launchctl start com.uwimap.imap
    
  8. Try telnetting to localhost 143 and 993 to see if imap is up

This should create a functioning IMAP server. YMMV ;-)

No tags

Oct/09

13

scortum setup (again)

Last week, scortum’s hard disk died. And with it all our vms and data. Not a good thing.

So I bought two new 500 GB sata disks. Now we’re running RAID-1 with LVM on top of it.
I’m going to detail all the steps we took to actually get it running (for future reference).

Initially I had used ubuntu 9.10 beta, but vmware server 2 gave me enough problems with it to blow up the install and go back to ubuntu 9.04.

With 9.04 getting the full disk on LVM2+RAID didn’t work at all. It would install, but then either lilo would not startup or the kernel would panic. So i moved /boot off to a separate partition and / and /home on LVM2+RAID. This way even if the disk dies, the data should be safe.

Steps:

  1. Setup Ubuntu 9.04 with /boot on /dev/sda1, / and /home on a LVM2+RAID-1.
  2. Install approx.Update /etc/approx/approx.conf to
    ubuntu http://in.archive.ubuntu.com/ubuntu
    security http://security.ubuntu.com/ubuntu
  3. Create /etc/apt/sources.list.approx with following content:
    deb http://scortum:9999/ubuntu/ jaunty main restricted
    deb-src http://scortum:9999/ubuntu/ jaunty main restricted
    
    ## Major bug fix updates produced after the final release of the
    ## distribution.
    deb http://scortum:9999/ubuntu/ jaunty-updates main restricted
    deb-src http://scortum:9999/ubuntu/ jaunty-updates main restricted
    
    ## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
    ## team. Also, please note that software in universe WILL NOT receive any
    ## review or updates from the Ubuntu security team.
    deb http://scortum:9999/ubuntu/ jaunty universe
    deb-src http://scortum:9999/ubuntu/ jaunty universe
    deb http://scortum:9999/ubuntu/ jaunty-updates universe
    deb-src http://scortum:9999/ubuntu/ jaunty-updates universe
    
    ## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
    ## team, and may not be under a free licence. Please satisfy yourself as to
    ## your rights to use the software. Also, please note that software in
    ## multiverse WILL NOT receive any review or updates from the Ubuntu
    ## security team.
    deb http://scortum:9999/ubuntu/ jaunty multiverse
    deb-src http://scortum:9999/ubuntu/ jaunty multiverse
    deb http://scortum:9999/ubuntu/ jaunty-updates multiverse
    deb-src http://scortum:9999/ubuntu/ jaunty-updates multiverse
    
    ## Uncomment the following two lines to add software from the 'backports'
    ## repository.
    ## N.B. software from this repository may not have been tested as
    ## extensively as that contained in the main release, although it includes
    ## newer versions of some applications which may provide useful features.
    ## Also, please note that software in backports WILL NOT receive any review
    ## or updates from the Ubuntu security team.
    deb http://scortum:9999/ubuntu/ jaunty-backports main restricted universe multiverse
    deb-src http://scortum:9999/ubuntu/ jaunty-backports main restricted universe multiverse
    
    ## Uncomment the following two lines to add software from Canonical's
    ## 'partner' repository.
    ## This software is not part of Ubuntu, but is offered by Canonical and the
    ## respective vendors as a service to Ubuntu users.
    deb http://archive.canonical.com/ubuntu jaunty partner
    deb-src http://archive.canonical.com/ubuntu jaunty partner
    
    deb http://scortum:9999/security jaunty-security main restricted
    deb-src http://scortum:9999/security jaunty-security main restricted
    deb http://scortum:9999/security jaunty-security universe
    deb-src http://scortum:9999/security jaunty-security universe
    deb http://scortum:9999/security jaunty-security multiverse
    deb-src http://scortum:9999/security jaunty-security multiverse
  4. Move sources.list to sources.list.original
  5. Create a soft link from sources.list to sources.list.approx
  6. sudo apt-get dist-upgrade
  7. Reboot (to get the new kernel)
  8. sudo apt-get install build-essential linux-headers-`uname -r` xinetd
  9. Download VMWare server 2 (I got 2.0.1-156745.x86_64)
  10. The vmware-config.pl script needs to be patched for building vsock module. Download this perl script (From http://www.bauer-power.net/2009/03/how-to-install-vmware-server-2-on.html
  11. Run vmware-install.pl but say no to running vmware-config.pl . Then run this command:
    sudo patch /usr/bin/vmware-config.pl /path/to/downloaded/vmware-config.pl
  12. Now run vmware-config.pl

(Will keep updating this post)

No tags

Theme Design by devolux.nh2.me