Billix: a Sysadmin's Swiss Army Knife
Expanding Billix
It's relatively easy to expand Billix to support other Linux distributions, such as Knoppix or the Ubuntu live CDs. Copy the contents of the Billix USB tarball to a directory on your hard disk, and download the distro you want. Copy the necessary kernel and initrd to the directory where you put the contents of the USB tarball, taking care to rename any files if there are files in that directory with the same name. Copy any compressed filesystems that your new distro may use to the USB drive (for example, Knoppix has the KNOPPIX directory, and Puppy Linux uses PUP_XXX.SFS). Then, look at the boot configuration for that distro (it should be in isolinux.cfg). Take the necessary lines out of that file, and put them in the Billix syslinux.cfg file, changing filenames as necessary. Optionally, you can add a menu item to the boot.msg file. Finally, run syslinux -s <device>, and reboot your system to test out your newly expanded Billix.
I have a 2GB USB drive that has a “Super-Billix” installation that includes Knoppix and Ubuntu 8.04. An added bonus of having the entire Ubuntu live CD in your pocket is that, thanks to the speed of USB 2.0, you can install Ubuntu in less than ten minutes, which would be really useful at an installfest. There is good information on creating Ubuntu-bootable USB drives available at the Pendrive Linux Web site.
Alternatively, a really neat thing to do (but way beyond the scope of this article) is to convert Billix into a network-boot (via Pre-Execution Environment, or PXE) environment. I've actually got a VMware virtual machine running Billix as a PXE boot server.
In closing, Billix may not make you coffee in the morning or eradicate Windows from the face of the earth, but having a USB key in your pocket that offers you the functionality to do all of those tasks quickly and easily can make the life of a system administrator (or any Linux-oriented person) much easier.
Resources
Billix Project Page: sourceforge.net/projects/billix
Damn Small Linux: www.damnsmalllinux.org
DBAN Project Page: dban.sourceforge.net
Knoppix: www.knoppix.net
Pendrive Linux: www.pendrivelinux.com
Syslinux: syslinux.zytor.com/index.php
Pxelinux: syslinux.zytor.com/pxe.php
U3 Removal Software: www.u3.com/uninstall
Bill Childers is an IT Manager in Silicon Valley, where he lives with his wife and two children. He enjoys Linux far too much, and probably should get more sun from time to time. In his spare time, he does work with the Gilroy Garlic Festival, but he does not smell like garlic.
- « first
- ‹ previous
- 1
- 2
- 3
Bill Childers is the Virtual Editor for Linux Journal. No one really knows what that means.
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Sponsored by AMD
Built-in forensics, incident response, and security with Red Hat Enterprise Linux 6
Every security policy provides guidance and requirements for ensuring adequate protection of information and data, as well as high-level technical and administrative security requirements for a system in a given environment. Traditionally, providing security for a system focuses on the confidentiality of the information on it. However, protecting the data integrity and system and data availability is just as important. For example, when processing United States intelligence information, there are three attributes that require protection: confidentiality, integrity, and availability.
Learn more about catching the bad guy in this free white paper.
Sponsored by DLT Solutions
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?
| Designing Electronics with Linux | May 22, 2013 |
| Dynamic DNS—an Object Lesson in Problem Solving | May 21, 2013 |
| Using Salt Stack and Vagrant for Drupal Development | May 20, 2013 |
| Making Linux and Android Get Along (It's Not as Hard as It Sounds) | May 16, 2013 |
| Drupal Is a Framework: Why Everyone Needs to Understand This | May 15, 2013 |
| Home, My Backup Data Center | May 13, 2013 |
- Designing Electronics with Linux
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- New Products
- Dynamic DNS—an Object Lesson in Problem Solving
- Using Salt Stack and Vagrant for Drupal Development
- Validate an E-Mail Address with PHP, the Right Way
- Tech Tip: Really Simple HTTP Server with Python
- Build a Skype Server for Your Home Phone System
- Why Python?
- A Topic for Discussion - Open Source Feature-Richness?
- Not free anymore
3 hours 45 min ago - Great
7 hours 33 min ago - Reply to comment | Linux Journal
7 hours 41 min ago - Understanding the Linux Kernel
9 hours 55 min ago - General
12 hours 25 min ago - Kernel Problem
22 hours 28 min ago - BASH script to log IPs on public web server
1 day 2 hours ago - DynDNS
1 day 6 hours ago - Reply to comment | Linux Journal
1 day 7 hours ago - All the articles you talked
1 day 9 hours ago




Comments
Billix and FreeBSD
I wonder if booting a netinstall FreeBSD 7 is possible.
Yes indeed
That would really be great!
I modified billix already to use full installation ISO's, but we also use FreeBSD installation so it would be really really great if we can also include those installation on the USB.
Thanks!
Billix - a linux super tool
This is a very good tool to have on a USB/flash drive. I'll give it a try.
Thanks
Alireza Aghamohammadi
needed options for Windows version of syslinux
while troubleshooting why my thumb drive wouldn't boot, I came across a forum post that was about installing
Ubuntu on a flash drive from windows, and there was mention of using the m and a options for syslinux if you were running it from Windows. It says it is not needed for the *nix version but is definitely needed for the Windows version. the post is here: http://jsco.org/dectop/
Syslinux
Hello
I was extremely excited to read this article. I ran out and purchased a 512 Kingston DT games USB($9.99US), and get to
running this line >> syslinux -s {device},and syslinux is telling me that i don't have a valid FAT filesystem; when i do have a valid FAT filesystem. Where can i for help?
Have you tried reformatting
Have you tried reformatting it using 'mkfs.msdos' or 'mkfs.vfat'?
TallPaul
http://tallpaul.org
No valid FAT filesystem
I have the same problem. Running Ubuntu 8.04 LTS, and have tried two different USB sticks, and both FAT16 and FAT32. syslinux will not recognise the file system, for some reason.
Lars Erik
Same problem
I continue to have the same problem, and have not yet found a solid answer on how to fix it. when I run the install-mbr, it is doing something to the thumb drive that will not allow syslinux to see it as a valid partition anymore. I also get the "this doesn't look like a valid FAT filesystem" error.
Any help would be greatly appreciated.
billix and syslinux
I was having the same problems; here are the steps I took that finally succeeded:
my USB device is sdc
cfdisk /dev/sdc; create partition and change type to FAT16
mkdosfs /dev/sdc1
mount -t msdos /dev/sdc1 /usbdrive (or where ever)
cd /usbdrive
cp billix-0.23.tar.gz
tar -zxvf billix-0.23.tar.gz (got a whole bunch of error messages "Cannot change ownership to uid 1000, gid 1000: Operation not permitted" even though I am root)
install-mbr -p1 /dev/sdc
cd ~
umount /usbdrive
syslinux -s /dev/sdc1
if you hold you mouth just right and clutch your favorite talisman firmly this should work.
permissions on fat16/32
FAT16/32 does not support file permissions. This is why you get the errors. These can be safely ignored.
ownership errors
I was getting the same errors. I think it's because of the way you mounted the drive. The UID and GID for /usbdrive would both be root, but I think the file wants be be untarred by a regular user.
When I included
-o uid=ubuntu,gid=rootin the mount command (I was using a live cd, so my username was ubuntu) then ran
tar -xzvf billix-0.23.tar.gzas user ubuntu I didn't get the errors.
I've been able to boot dsl on a toshiba that supports booting from usb drive, but my Latitude doesn't make it past the menu.
Still playing with it, though and having a lot of fun. I routinely use live cds to fix borked windows boxes, so this is another handy tool.
Ownership errors
I should have added that I also copied the file in to the root of the drive as a regular user, so the file was also owned by user "ubuntu."