OpenBSD Journal

FuguIta - An OpenBSD 5.4 + Patches LiveCD/LiveUSB

Contributed by tbert on from the Not-Allowed-To-Make-Fugu-Jokes dept.

So you might ask yourself, "Why do I need a LiveCD/LiveUSB when I can just install OpenBSD normally to a flash stick?"

It's a great question. In most situations you really are better off installing OpenBSD normally to a flash device and keeping your own system updated with everything installed and configure just the way you want it. Additionally, the OpenBSD install media itself is essentially a very limited "LiveCD" of sorts with a shell and many of the tools you might need.

Nonetheless, there are rare occasions when having a fully patched and updated (STABLE Branch) LiveCD/LiveUSB of our favorite operating system can be extremely useful. If you're doing something like a simple one-off router, then having a fully patched LiveCD/LiveUSB image available can be really handy. It can also be useful for testing hardware support on new systems at stores to see what works. Of course, just having access to working and patched LiveCD/LiveUSB when you're in a hurry or in a bind (pun intended) can often save you a ton of effort.

A handful of weeks ago one of those rare occasions occurred. An ancient i386 system was destined to go to recycling heaven, but there was a promise made to make sure the entire contents of the hard drive were backed up and securely erased prior to disposal. The problem was the disk drive had intermittent failures. Nearly all software is unable to run on dodgy hardware. Running on failing hardware is simply out of scope for just about everything save for things like the Tandem NonStop Systems.

The typical method for securely erasing data on hard drives is DBAN (Darik's Boot And Nuke). It's a Linux based LiveCD with a single purpose; wipe drives in a reasonably secure manner. Any disk attached to the system when DBAN is booted will be nuked from orbit, so DBAN can be dangerous if misused, DBAN doesn't solve the problem of needing to read the disk to backup the data. The authors of DBAN clearly warn that it does not work on bad hardware, and as you might imagine, they're right. DBAN crashed with the "Linux Screen Of Death" when disk access was tested. The good news is, when Linux fails, OpenBSD is often able to boot and remain running, even on hardware that is known to be failing.

With a bit of luck and search-fu a solution was found; the FuguIta OpenBSD LiveCD/LiveUSB. If you know a bit of Japanese, the name alone will make you smile.

Note: FuguIta () stands for "Blowfish Disk" in Japanese. Fugu means blowfish, and Ita means something flat such as a plate, a disk or a board etc. Some Japanese might associate those who cook when hearing Ita. For them, so FuguIta also means "Blowfish Cook" as double meaning.

FuguIta was created by Yoshihiro Kawamata (anglicized with given name followed by family name, but more formally, it should be written in Japanese style with family name capitalized followed by given name as "KAWAMATA Yoshihiro"). You'll occasionally spot him on the OpenBSD mailing lists helping others (kaw<at>on<dot>rim<dot>or<dot>jp). One of the more important features of FuguIta is mentioned last; it tracks OpenBSD-STABLE so all the needed errata patches have been applied.

FuguIta is the LiveCD/LiveUSB system which was based on OpenBSD operating system and has following features;

  • Similar to HDD installation
    • This Live CD is intended to be similar to HDD installation as much as possible.
    • After bootstrap completed, you can login to the environment like the one which was just installed on HDD.
    • In this environment, many ordinary files have replaced to symbolic links. So you can replace or modify them by yourself.
  • Portable workplace
    • You can save your own environment into Floppy Disk and/or USB flashdrive. Then you will be able to retrieve it at next boot time.
  • Low hardware requirements
    • Unless you will use X, this LiveCD requires 48MB of memory to run.
  • Additional Software
    • Some software was added from ports or building from other source packages. See the software list for details.
  • Useful for Japanese users
    • Japanese-oriented software and fonts are added, and some software is configured to be able to use Japanese.
  • Following stable version
    • We're trying to track the OpenBSD-stable version, and to apply all errata patches.

FuguIta has a lot of great and useful features. There are screen shots available if you're curious what it looks like. The FuguIta installation instructions and examples are a in a simple text file. There is also a FAQ and a public BBS for FuguIta.

After proof reading a rough draft of this article, Yoshihiro-san wrote in to provide a few corrections and add the following:

By the way, I am a TV transmission engineer (not an IT engineer :-). In my job, FuguIta boxes are used for various purposes:

  • One-off gateways, kiosk-machines
    • Measuring and logging audio loudness of on-the-air programs
    • Desktop environment (switches from Windows PC, and especially used for technical purposes)
  • Checking hardware:
    • old HDD sectors
    • unresolved errors on Windows PC

Though FuguIta only supports the i386 platform, there is a fork on github confusingly called MyFuguIta that supposedly supports amd64. The fork was created by TANABE Ken-ichi (nabeken), but wasn't used or tested in this situation.

Thank you Yoshihiro-san for creating and sharing FuguIta. FuguIta worked perfectly in a tough situation where the hardware was known to be failing and other operating systems could not handle the hardware errors. It enabled both data recovery over a network on a intermittently failing disk and a reasonably secure deletion by overwriting with a few passes of random data.

Written by jcr

(Comments are closed)

  1. By vvim (unisoftdesign) on

    Awesome write-up, great job :-)

  2. By vvim (unisoftdesign) on

    But I suspect we'll need to setup a torrent...


Copyright © - Daniel Hartmeier. All rights reserved. Articles and comments are copyright their respective authors, submission implies license to publish on this web site. Contents of the archive prior to as well as images and HTML templates were copied from the fabulous original with Jose's and Jim's kind permission. This journal runs as CGI with httpd(8) on OpenBSD, the source code is BSD licensed. undeadly \Un*dead"ly\, a. Not subject to death; immortal. [Obs.]