Why we may not be able to use ZFS

We would like to use ZFS in a new fileserver design , but we may not be able to. This is because ZFS incurrent versions of Solaris has a problem in production environments,namely: if ZFS ever can't write to any pool, it panics your entiremachine . It doesn't matter how many other pools are fine, and itdoesn't matter what else is running on the machine; down it goes.

(It also doesn't matter if the pool is redundant or not;


Gotchas with dual-headed X with RandR on ATI cards

Xinerama is the old general way to set up multi-headed X so that thingsactually knew that you had more than one display. In Fedora 8, many carddrivers (including radeon , the driver for ATI cards) have switched tousing the XRandR extension.

The Fedora 8 GUI configuration tools don't know anything aboutRandR-based dual-head configuration; if you try to use them anyways,nothing helpful happens. In theory you can do all of it on the fly with xrandr ; in practice this


My web spider technical requirements

I have been looking at the web server logs lately, which is usuallyan activity that's calculated to put me into a grumpy mood. As aresult of this, I have decided to write down in one place my technicalrequirements for web spiders, the direct things that I expect them to doand not do.

(This is excludes issues of basic functionality, like correctly parsingHTML, resolving relative links, and making correct HTTP requests, andbasic proper web spider behavior like respecting robots.txt .)


The different types of hash collisions

When you're considering using hashes as indexes, people can wind upsaying that collisions aren't going to be a problem because the hashesare cryptographically sound. At such times, it's important to rememberthe distinction between deliberate hash collisions and accidental hashcollisions.

The distinction between deliberate hash collisions and accidentalones is that an accidental hash collision is one that just happens,while a deliberate hash collision is one that can be produced by anattacker. All hashes that are shorter than their inputs necessarilyhave accidental


Linux virtual terminals and the X server

Linux virtual terminals have a simple conceptual model; you hit Alt-Fnand the kernel switches you to virtual terminal n. It even works with X,except that you have to remember to hit Ctrl-Alt-Fn when you're in X toswitch out of it. What I suspect many people don't know is that in thecase of X this simple conceptual model is a bit of a lie.

The issue is that text VTs and the X server VT are in different graphicsmodes, so


A lesson learned: Always upgrade Fedora with a respin CD

I spent a large part of today upgrading my office workstation fromFedora Core 6 to Fedora 7 (I wanted to go straight to Fedora 8, buteither I am too impatient or the Fedora 8 installer stalled duringdependency resolution). As usual, I did this by sticking in theFedora 7 DVD and telling it to do an upgrade install.

The problem with this is simple: an up to date machine running an oldFedora can have more recent versions of packages than are on the installmedia for the newer Fedora


What IPsec being mandatory in IPv6 really means

You read here and there that in IPv6, IPsec is mandatory; depending onwhich side of the firewall divide you're on, this either sounds great oralarming. But what does it actually mean? Recently, I got curious anddid some digging, and it turns out that it is less than it sounds.

The summary:

A conformant IPv6 implementation must be capable of IPsec, but doesnot have to use it for anything.

The IPsec RFCs spell out the mechanics of IPsec; how you go


I love Linux's serial console support

I just rebooted and recovered one of our Linux machines that had hit apanic and then locked up in an endless cycle of ' soft lockup detectedon CPU #0 ' reports. I did all of this from home, through the magic of aserial console, a console server, and Linux's magic SysRq key support.And as far as I'm concerned, one of the best things about this is thatit took hardly any bandwidth and no Java .

(While I'm currently on DSL at


Fighting spam always costs

One of the important things about fighting spam, one that may not beimmediately obvious, is that there is no free lunch. Fighting spam cancost in the risk of false positives, or it can cost in people's time(sometimes you can spend money instead), but it always costs; youjust decide where you will pay the price.

(There are many ways that it can cost in people's time; for example,putting together and managing a spam filtering system. As illustratedhere,


Improving your life with checklists

I recently migrated a fairly important chunk of our mail service from anold mailer on an old server to a new mailer on a new server. It wasn'ta simple process, as it involved moving data from the old server to ourSAN, updating all sorts of configurations, changing scripts, and variousother things. But I managed to do it smoothly, with only one or twomoments of panic, and one of the big reasons for this is I made adetailed checklist .

Well before I started the