Disaster strikes

Where I’m working, they wanted to try “netoffice”, a PHP collaboration/time tracking/productivity thing. I downloaded the “dwins” version of it, and ran the install script after reading the instructions. Being a bit late, I hit the return key one too many times, and noticed some funny error messages about problems deleting files in /dev. Oh shit…

Turns out the script has the following line:

rm -rf ${INSTALL_DIR}/*

Simply brilliant. Thanks a lot, guys… So at this point I’m sitting there with two shells opened via ssh, no /bin/, no /etc/ and nothing much in /dev. For reasons I won’t discuss here we don’t have backups – suffice it to say that it wasn’t my decision.

Not good. ssh didn’t work any more, either in or out, because it needs files in /etc/ and /dev, and so I couldn’t just copy new stuff in. Luckily, I had a fully stocked /usr/bin, and I did the first thing that came to my head: a small server in Tcl that copied its input into the specified file. Using that and netcat on the other side to send the files, I recreated enough of /bin to get MAKEDEV working in /dev. Phew… a little bit better, but /etc/ was still gone. I brought in a few more bits and pieces like /etc/passwd and /etc/group using my Tcl server, which was enough to get scp working from the machine. At that point, I brought in the rest of /etc. I was starting to think about going home when I ran the fateful script, so at this point it was pretty late, I was starving, so the rest will have to wait for tomorrow.

The biggest problem, I think, is how to restore the files in /etc at least to the pristine installed state required by the packages that own them? The other problem is that the password file uid’s are now out of sync with the file system, which is causing problems here and there. Unless I think of a brilliant way to fix those two issues, I’ll probably consider myself satisfied that I got things running to a point where I can get the important data off the system, set up some temporary services on other machines, and reinstall the whole thing.

This is all on Ubuntu systems, by the way.

Sourceforge and mailing lists

After my last post, exhorting people to use mailing lists for a variety of reason, including the ability to find the messages later via email, it’s frustrating that SourceForge’s mailing list archives are down:

Clicking on any of the messages in the archives

http://sourceforge.net/mailarchive/forum.php?forum_id=42757

gets you a result like this one:

http://sourceforge.net/forum/message.php?msg_id=14419574

Hrmph! I’m also frustrated by the broken CVS stats, that have been broken for more than a year. Just get them off the project pages already!

In any case, Hecl is picking up steam – it’s fun to have people to collaborate with.

Ilenia looking for work

If you’ll pardon the interruption from the topic of “computer stuff”, my wife Ilenia has started to look for work in biotech/related fields – she’s scheduled to finish her doctorate in about a year. Her CV is here:

http://www.dedasys.com/ilenia/

Please post to mailing lists

Unfortunately, this quick note will most likely not reach the people it needs to, but it needs to be said in any case:

When contacting myself or other people who produce free software, please use the mailing list for the project in question unless you have a really good reason to keep the conversation private.

The reasons:

  • Other people can benefit from, and contribute to the conversation. They might also be more interested than I am in the problem at hand, or at least want to hear about how it’s resolved.

  • It gets archived, and therefore people can find it via search engines in the future. This is critical when you want to be able to point people at archives that led to decisions that affect the project.

  • It creates more sense of ‘community’. Most successful open source projects are not the fruit of only one person’s labor. Perhaps they are initially, but at a certain point, everyone is better off if a community grows up around the project, and keeping conversations public helps that process along.

Please pass this along – hopefully people will start to get the idea.

Computer Books, Hecl, Skype

Henri Yandell comments on Addison Wesley being prominent in his book list. I noticed the same thing myself recently (my list is on this page, towards the bottom: http://www.dedasys.com/freesoftware). Perhaps the surpise is that O’Reilly is less prominent than one might think given their high visibility in the portion of the tech world that I deal with. O’Reilly, however, tends more towards documenting current technology well rather than having many books that are timeless classics. I hope they keep focusing on putting out good books that do at least that rather than trying to create their own trends like “Web 2.0” (bleagh!). In any case, we’ll have to wait a while to see if any of their books stand the test of time – a lot of the Addison Wesley and Prentice Hall books are from ten, fifteen, years ago or more (The C Programming Language, Knuth’s books, Design Patterns, etc…).

Hecl

I’m currently working on making it very easy to write and create Hecl applications for J2ME. I’m pleased with how things are going from the community point of view as well – a couple of people have show interest in using Hecl commercially, and I’ve been asked to write an article about it for a European Linux/software magazine, which is something I’d started doing anyway…

Skype

My parents got around to installing Skype and buying a microphone. Free voice calls from Italy to Oregon! The quality is really good, although there are some echo issues that probably come from my use of a cheap microphone.

It sort of bugs me to buy into the network effects of a proprietary system, but on the other hand, anything that keeps my money out of the hands of Telecom Italia makes me happy.