Archive for March, 2008

Xen and OpenVZ at the same time, and a Brief Rant about Filesystems

Tuesday, March 25th, 2008

After a grueling two days of kernel muckery, and much help from Mooneer and Mark Williamson (bless you, sir), I finally have a 2.6.24 kernel with OpenVZ and Xen domU. Things I learned along the way:

  1. Never ever make your generic server in the closet do double-duty as your internet gateway/router. For one thing, internet access is a valuable resource to help diagnose why the dang thing won’t boot. And for another, your roommates hate it when the network is down all day.
  2. Nobody should ever make kernel patches that start from vanilla (e.g., 2.6.24), add a large feature you can’t get anywhere else (e.g. OpenVZ), and along the way give you lots of unrelated things (e.g., 2.6.24.3). This breaks down the instant two people do it (e.g., Debian), because the unrelated things all conflict.
  3. The Xen merge into mainline is a good thing, but it’s only a start. I really want: ballooning, PCI sharing, and dom0 support.
  4. aptitude is actually a great thing. Anybody out there still using apt-get… change your habits. Just start using aptitude. And then, little by little, start figuring out the curses gui and how to mark packages as automatic and how to resolve conflicts and all the excellent stuff aptitude brings. I resisted at first… but it’s definitely worth it.
  5. Also debian, we really need etc-update.
  6. It’s very easy to use hilarious amounts of bandwidth when you’re building systems with debootstrap.
  7. I did something today that made my big domU extremely slow. It seems that under very heavy I/O it just grinds to a halt. I also had very constrained memory and no swap device. So I’m not sure if it just didn’t have space to cache and had to start kicking clean pages, or whether Xen event channel unnecessarily serializes I/O (I’m afraid that it does), or what. DTrace would be sweet.
  8. I need to get better discipline in system management. I’ve historically used cioppino (the Linux machine) for everything from serving web and subversion, to an irssi/shell server, to hosting my AVR cross-toolchain, to my (excessively convoluted but ultimately perfect for me) email hosting. I need to cut down on what I do with it, and I need to stop installing and building random things that seem neat. Apt makes it so easy, I know… but it becomes an N^2 problem. And I’m absolutely terrified by the number of upgrades aptitude offers… there’s just too much on this system.

Finally, a desperate plea: Can we please have a good cross-platform low-commitment network filesystem?

  • NFS is difficult to run safely, hard to expose to temporary untrusted users, and still might require shared UIDs (I think?). Sucks.
  • AFP hates symlinks and hardlinks within the shared area, and isn’t available for Windows. Sucks.
  • Coda and AFS require lots of setup and aren’t suited for “oh just connect to the server and grab it” use case, with temporary untrusted users. Sucks.
  • FTP blows.
  • sshfs requires Fuse which concerns me, and requires a shell-equivalent account on the machine. Sucks.
  • SMB is well-supported and cross-platform, and doesn’t specifically require an account on the machine. It’s pretty bad at non-FAT32 file properties, though. Permissions and symlinks ehhh sometimes work. Workable.
  • WebDAV just seems like a bad solution designed by committee. It kinda works.

Really. That’s it. SMB and WebDAV. This is sort of like the situation with disk filesystems… FAT32 or go home. The least common denominator that Windows supports just seems to win :(

Ben on corporate cultures

Monday, March 17th, 2008

That’s the other reason Apple terrifies me. Nothing but Kool-Aid. All the beverages.

On movements and interest groups of all kinds

Monday, March 10th, 2008

Successful institutionalization projects often produce a collective amnesia about their recent origins and possible alternatives.

–Elizabeth A. Armstrong

mspaint.exe for the Mac

Saturday, March 1st, 2008

Mac OS X comes with lots of things Windows doesn’t. It comes with one of the best browsers out there (Safari), a huge dictionary for both spell checking and definitions, a handful of good media programs (iTunes, iPhoto, and Front Row; I hate each of them but I’m in the very small minority), the best desktop calendar program ever (iCal), an AIM and Jabber client (iChat), an Image Capture program that can pull photos from 90% of cameras and scanners without installing a darn thing, printer drives for gosh near everything, a solid mail client that doesn’t try to take over your life, the simplest and most effective backup software ever (Time Machine), a secure password saver and retriever (Keychain), a system-wide Address Book that any application can hook into, and let’s not forget a decent Unix shell environment. 1

The one place Windows actually comes with better default software is mspaint.exe. Whether you want to point something out or make highly precise technical diagrams, mspaint is about the easiest thing ever. Sometimes you want to make a boxes-and-lines diagram with OmniGraffle, and sometimes you want to do some Art with Canvas or ZBrush or The 800-Pound Gorilla… and sometimes you just want to draw something.

So today I found PaintBrush, an open-source bitmap editor for Mac OS X. It’s mspaint, translated to the Mac look-and-feel. Its tools are: pencil, eraser, select, paint can, bomb, line, bezier, text, box, and oval. It does no antialiasing. It can’t resize images after you’ve created them. It only has ten levels of undo.

I am so happy.

  1. Insert boring discussion about bundling and anti-trust here.