Why not doing Unicode is easier than doing Unicode in Python

Okay, I have a confession: I continue to write Python programs thatdeal with text (to some degree) but which are not Unicode-aware in theapproved manner. One of the reasons that I do this is that I can getaway with it, but another reason is that not doing Unicode is easierthan doing Unicode.

I don't mean this in the sense that there's less code if you don'tdo Unicode. I mean that doing Unicode confronts you with moredecisions. When


Another attempt to split SSL into encryption and trust

From one perspective, ideally SSL would be split apart into encryptionand trust, with the goal of letting you have encryption withouttrust. In theory you could achieve this with a different handling ofhttps , but lately I have come to think that the user expectation problems of such a solutionare insurmountable at this point; too many people just know what httpsin URLs means for its meaning to change (in a subtle way).

(My personal feeling is that it is pointless and even undesirable to gothe other way


Exploiting the Bourne shell to parse configuration files

Suppose that you have what I will call a 'directive style' configurationfile, where it looks something like (say):

fileserver fs1exportto hostsa:hostsbfilesys /h/10 fs1/d100filesys /h/11 fs1/d110

Further, suppose that you want to do things with this configuration filein a Bourne shell script, which requires parsing it to extract all of theinformation that you're interested in.

Normally this would be a pain


The history of Unix *dump programs

The idea of a dump program itself goes back to V6(Research) Unix, which introduced the first, rather basic dump program. At the time, Unix had neither tar nor cpio , so dump wasyour only option for backups. V7 Unix introduced tar , and I have theimpression that as a result dump fell out of favour for backups.

My impression is that dump really got popular in 4.x BSD. WhenBerkeley revised the filesystem format to create FFS (the FastFileSystem), with


Thinking about how your security domains relate to each other

It may be that you have (or can have) more than one security domain among your machines. If you want to really havemultiple security domains, it's important to think about how theyrelated to each other and what this implies for how to manage themachines.

First, a note: a machine can never be in multiple security domains. Bydefinition, you work with security domains instead of single machinesbecause compromising one machine in a security domain eventually leadsto compromising all of them (assuming that your


What the timestamps in Ubuntu kernel messages mean

Ubuntu kernels are configured so that they include cryptic timeinformation in kernel messages. An example looks like:

[8804849.737776] Kernel BUG at fs/nfs/file.c:321

(In the general tradition of Linux kernel messages, this is just enoughto show you that there is useful stuff present without actually givingyou any clear idea of how to interpret it to get actual information.)

It turns out that the timestamp is seconds and


An issue with quotas on ZFS pools

For peculiar local reasons, we have some ZFS pools that have overallpool quotas (on Solaris 10 U5, so these are real full quotas). We justhad the first such pool fill up and it turns out that when this happens,ZFS has a somewhat undesirable bit of behavior:

$ rm tankdata
rm: tankdata not removed: Disc quota exceeded

(You can't truncate anything either. Not even root can remove ortruncate files.)

This does not happen if the pool has no quota and


How many root passwords should you have?

There's a simple answer to the question of how many root passwords youshould have; clearly, you should have a separate root password for eachsystem. This answer is, shall we say, naive in most situations.

We can see why by asking the traditional security question of what theactual risks are of using the same root password on different systems,which is that an attacker who gets your root password from one systemcan then immediately compromise another. So the first situation whereit is mostly or entirely pointless


Mistakes editors can make that disqualify them as sysadmin editors

A sysadmin editor needs slightly more than to bea fast-starting thing that needs a minimal environment. It turns outthat sysadmins are picky people (well, at least I am), and there aresome small mistakes that otherwise competent editors can make that,unfortunately, make them non-starters for the job.

The first and the most classic mistake is automatically changing tabs tospaces or spaces to tabs. Just like programmers working on makefiles,sysadmins edit files where tabs are not interchangeable with spaces; aneditor


Why vi has become my sysadmin's editor

Here is one of my little peculiarities: for all that I use it a lot, Idon't really like vi . I use two or three editors on a routine basis(and at least one more every so often), and out of all of those, vi is my least favorite. But it is also the editor that I use the most,because over time it has become what I'll call my sysadmin editor.

Why I have drifted into using vi all the time is a roll call