tail -f /var/log/syslog is your friend

I’ve just spent about three hours troubleshooting encrypted passwords for netatalk. Basically, the plain netatalk that comes with Ubuntu, due to licensing reasons, does not include SSL support, which means only plaintext password authentication is supported. That wouldn’t be too bad for my purposes (I’m running on a secure network), but OS X complains each time you try to connect using plaintext only passwords. So, I followed the instructions from coderspiel: A year of plaintext AFP passwords is enough, but it wouldn’t work. Firstly, it needs BerkelyDB 4+, but will uninstall this to install 3+, which the package manager thinks it needs. Stupid. Secondly, some bits and pieces won’t compile. I did do some editing, but I felt this may break the whole thing, so I didn’t want to install the whole lot, just the missing uams. Basically, uams_dhx.so was missing. So, I built this, and others, and installed them. Still no joy. I did kind of get uams_randomnum.so or something to work, but it kept saying incorrect password. Then, I stumbled on the idea to use tail -f /var/lov/syslog. This immediately showed me I was missing the symlink from uams_dhx_passwd.so to uams_dhx.so So that’s all there was to it. Now connections work perfectly. And AFP connections seem to be a bit more robustly handled (ie, less spinning beachballs of death), and faster for things like iTunes.

Don't forget to smbpasswd -a [username]

Aargh! I’ve just spent ages troubleshooting SMB networking on Ubuntu, only to realise that there weren’t any SMB users - which is crazy. Why not just default to having the local users match up with the SMB users. After finally getting that working, I did also get AFP sharing working. Which does appear to just use the users. Still, I need to keep SMB going, for the Windows/Xbox machines that sometimes visit my network…

Airport Extreme DHCP and LAN DNS

I use a local DHCP server to also act as my caching DNS, with the nice side effect that it also serves DNS requests for machines inside my LAN that have gotten their IP addresses via DHCP. Until this afternoon, this was my clunky old SpeedTouch modem. Today, I put that modem into bridge mode, and set up my brand spanking new Airport Extreme to do the PPPoE connection, and handle all of the routing, DHCP and DNS duties. It’s newer, right, so it should do a better job? Wrong. It does everything I want, except serve local DNS results. So, if I try to connect to one of my many machines, then it fails. And since I’ve gone from DHCP with reserved leases to a free-for-all DHCP, I have no idea which machine is which IP address! This is very frustrating, and is exactly the reason I retired the Netgear from this task, as it had exactly the same behaviour. It hands out IP addresses, but doesn’t store the machine names. Now, let me remind you this was working perfectly with the Airport Extreme just running in bridge mode. Everything else is set up right (apart from the fact it isn’t really using the DNS settings I set for it!), but it won’t do this. I’m sorely tempted to go back to how I had it all set up before. The only functionality I will lose is that VM machines connected over a bridged airport connection will not get an IP address from the SpeedTouch DHCP server. They do from either the Netgear, or the Airport Extreme, if I configure that way. I’m really annoyed about this. It’s a vital part of my daily use - I have fileservers, including one that stores all Music, and a fax/scanner server, which I don’t want to have to hard code IP addresses into. I’m thinking I may be able to go all Bonjour/Zeroconf/mDNSresponder. I’ll see how that goes.

VMWare Fusion, bridged AirPort and DHCP

Things are strange. If I use my VMWare Fusion machine at work, then it gets it’s own IP address from the DHCP server, as expected. I use Bridged mode over the AirPort connection. If I try the same at home, I don’t get an IP. I’ll try the other base station. I don’t know if it is the router or the DHCP server, but something isn’t working…

Why Linux?

I’d hardly call myself inexperienced in the ways of computers (I’ve installed several flavours of operating systems on several architectures of computers, from AmigaOS and Mac OS on 68k; through BeOS, Mac OS and OS X on PPC; a sideways movement to various Linuxes on ARM; to BeOS, Windows, OS X and more recently Fedora on x86). So how come I’m having so many issues getting what I want out of a Linux box? Perhaps, to put things in perspective, I’ll discuss exactly what it is that I want. I have a Dell mini tower machine, with nearly a terabyte of hard disk drives, 1.5Gb of memory and some other various hardware that I want to set up as a fileserver, fax and print server and scanner server for my local network, and possibly an outside accessible web server. I also want to run a virtualisation of WindowsXP, accessible via a remote desktop setup, so that Jaq can run her CAD software (Windows only) from her PPC iMac. This should have been easy. It started with hassles even getting the 3.2Gb Fedora DVD image. I would up having to get it at work, as my wget client decided to do strange shit with sizes, and kept saying there were a negative number of bytes remaining. Granted, this is not the fault of Fedora, but it set the tone. Next up was my installation woes. Now, I’ve installed a text-only Linux onto my NSLU2, and administered it for ages. I’ve read several books in the past about X-windowing (and even had a working Xwindows setup on BeOS/PPC, which was not a bad triumph). But I wasn’t ready for the almost never-ending hassle I had to get my Dell machine to actually boot into Fedora. But finally it did. I’d downloaded vmware and Parallels, since I still haven’t chosen between them in the Desktop realm, so most definitely haven’t decided on this untested platform. And neither of them would work. Apparently I don’t have a kernel they like, and I can’t build the vmmon for my kernel, since I get all sorts of weird errors when I try to compile or link. Now, let me suffix that by saying when I was deeply into hacking BeOS/PPC, they had already moved to Intel CPUs, and most software I had to build from source, and generally fiddle with stacks to get it to compile and link. So, I’m not totally clueless there either. So I spent a while trying to get the in-built virtualisation system to work. It starts installing, but for some reason I get bizarre errors on the installation of Windows - that it can’t find a file, and I can’t get it to access the CD drive again. It’s fairly crap, in other words. Especially after playing with vmware Fusion and Parallels Desktop for Mac. Both of which install Windows XP without a hitch. Giving up on trying to survive on this Fedora, I’m currently downloading an older version of Linux - Ubuntu 6.0.6 this time. This is supported under VMWare, but not under Parallels. The only versions of Linux that are supported by both virtualisation systems are RedHat and SuSe, which don’t seem to be freely downloadable. Or maybe I just didn’t look hard enough. But this is not the end of my story. Tracking back a couple of steps, I have been fiddling lots with Fedora. It seems okay, but it is really hard to do the things I want to do. For instance, it would be nice to VNC into the box and do stuff, but I can’t seem to make Chicken of the VNC connect. Nor the little java VncViewer I found provided superior performance. I’d also like to be able to use other types of file sharing setup - perhaps AFP or NFS rather than just SMB. I can get an SMB connection to Fedora, but nothing else. NFS appears to just keep trying, and eventually time out. AFP connections are just rejected. And the frustrating thing is there is no easily discoverable way to turn this stuff on. I’ve even fiddled with files I know are used for this type of thing (that’s how I got Samba going, before I discovered the place to do this). Even SWAT, which the system told me I have installed, doesn’t seem to respond on port 901, where it lives. I know that Linux is different to OS X, and to Windows, but right now I’m not liking it a whole lot. I’d be fairly tempted to just reinstall Windows, but the two 250G hard drives that are in there are already formatted ext3fs, and mostly full of data, since they were in use, in addition to a 160GB drive that still stores my music, connected to the NSLU2. Which, I might add, was much easier to administer than Fedora. I know I’m trying to do more on Fedora, but I’m currently achieving less. Perhaps I just need to sleep.

Subversion and OS X

There are a couple of cool things you can do with Subversion and OS X. The first is the Finder plugin, that recognises when you are viewing files that have been checked out of an SVN repository, and puts nice little badges on the icons, so you can see if they are up to date, changed or not in the repository. This is great for a couple of reasons - it works regardless of IDE or editing program(s) you are using. As it turns out, both things I use (Komodo and Xcode) have SVN handling built in (or at least I think Komodo Edit does, I’m still using the Komodo IDE demo on my new machine…). But sometimes I want to have files that are of a different format, or projects that are not necessarily coding projects, that I still want to have version control over. So, I have a local subversion repository directory (~/.SVN, so I don’t see it in the Finder, but it should still be backed up when I back up my home directory), and I’ve currently got a couple of repositories - one for Jaq’s website, and another for my new project, which will (eventually) add the ability to change an iCal event attendee’s status with a pop-up menu. The first of these brings up the only limitation of SVN I’ve come across so far. I use xattrs to store metadata in a multi-machine setup (more than one Mac can’t seem to share metadata very well, things like Finder comments aren’t always propagated across network shares). SVN doesn’t seem to store xattrs, which makes the really cool system I made for generating Jaq’s website fairly useless.

proxytunnel

I’ve been playing around a little with proxytunnel, a little program designed for allowing you to create tunnels through an SSL (HTTPS) proxy server. The only OS X instructions I found are somewhat out of date (the program’s arguments are now in a different form) and I haven’t as yet had much luck with actually getting a working tunnel.

More than one preferred network

I have noticed another slight issue with the MacBook Pro and AirPort networks. If you have networks stored in your preferred networks list, ensure that there is only one preferred network wherever you are. If there are two networks, it may not automatically connect to either. Secondly, if you are connected to a WPA Enterprise network, you may find that OS X complains about the certificate, if it has been self-signed by your network admin. You need a root certificate, and tell the OS to trust that, before you can get seamless network connections happening. This does not appear to be an issue with Windows clients.

iCal and Invitations

I’ve used Gmail/Calendar, and have just migrated my data back to iCal, since now I have a laptop it makes a bit more sense to have the data stored locally. There is one thing I’d like to see possible in both systems is to mark a meeting attendee as attending. It only appears to be possible to do this from the person themselves. Sometimes I speak to an attendee of a function, and they are coming, but the email or calendar system they are using does not integrate well with iCal/gCal, so the email is sent back, and I need to modify stuff manually. Google Calendar at least allows you to add “Guests”, something I haven’t yet figured out how to do with iCal. However, with iCal, it appears to be possible to script iCal, so I may be able to add this functionality.

MacBook Pro Kernel Panic WPA Enterprise

Well, I love my MacBook Pro. Except for one little thing. If I connect to a WPA Enterprise network, and I am running on battery power, then I get a Kernel Panic. Every time, within a couple of minutes. Plugging into power means no panic, using WPA personal (at home) also means no panic. Although, apparently the lack of panic at home may be more to do with the fact I’m running an Airport Express router. I’ll switch over to my other router (b-only, still WPA) and see if it panics then. Apparently, Apple is aware of the problem.