Image of the glider from the Game of Life by John Conway
Skip to content

{ Category Archives } Debian

ZFS Administration, Part III- The ZFS Intent Log

The previous post about using ZFS with GNU/Linux concerned covering the three RAIDZ virtual devices (VDEVs). This post will cover another VDEV- the ZFS Intent Log, or the ZIL. Terminology Before we can begin, we need to get a few terms out of the way that seem to be confusing people on forums, blog posts, […]

ZFS Administration, Part II- RAIDZ

The previous post introduced readers to the concept of VDEVs with ZFS. This post continues the topic discusing the RAIDZ VDEVs in great detail. Standards Parity RAID To understand RAIDZ, you first need to understand parity-based RAID levels, such as RAID-5 and RAID-6. Let's discuss the standard RAID-5 layout. You need a minimum of 3 […]

ZFS Administration, Part I- VDEVs

So, I've blogged a few times randomly about getting ZFS on GNU/Linux, and it's been a hit. I've had plenty of requests for blogging more. So, this will be the first in a long series of posts about how you can administer your ZFS filesystems and pools. You should start first by reading how to […]

How A ZIL Improves Disk Latencies

I just setup an SSD ZFS Intent Log, and the performance improvements have been massive. So much so, I need to blog about it. But first, I need to give you some background. I'm running a 2-node KVM hypervisor cluster replicating the VM images over GlusterFS (eventually over RDMA on a DDR InfiniBand link). One […]

How Much Swap?

I've been in the UNIX and GNU/Linux world since 1999. Back then, hard drives were barely passing double digits in GB, and RAM was PC100 speed at roughly 128 MB max. In fact, it wasn't uncommon for most systems to have 32 MB of RAM with an 8 GB hard drive. And we ran GNOME, […]

Libvirt, Tyan Motherboards, and UUID

I recently built two servers that I plan on using for a sandbox with various technologies (Infiniband, ZFS, RDMA, GlusterFS, Btrfs, Ceph, LXC, KVM, etc, etc, etc). So, getting everything installed and running, I ran into a rather interesting bug. I installed KVM and libvirt, and started rolling out some virtual machines. I wanted to […]

Aptitude Madness

I always use the "-R" or "--without-recommends", and this is why: root@yin:~# aptitude install virtinst The following NEW packages will be installed: acl{a} colord{a} consolekit{a} dconf-gsettings-backend{a} dconf-service{a} fontconfig{a} fontconfig-config{a} hicolor-icon-theme{a} libatk1.0-0{a} libatk1.0-data{a} libcairo-gobject2{a} libcairo2{a} libck-connector0{a} libcolord1{a} libcups2{a} libdatrie1{a} libdbus-glib-1-2{a} libdconf0{a} libdrm-intel1{a} libdrm-nouveau1a{a} libdrm-radeon1{a} libdrm2{a} libexif12{a} libfdt1{a} libfile-copy-recursive-perl{a} libfontconfig1{a} libgd2-xpm{a} libgdk-pixbuf2.0-0{a} libgdk-pixbuf2.0-common{a} libgl1-mesa-dri{a} libgl1-mesa-glx{a} libglapi-mesa{a} libgphoto2-2{a} […]

Install ZFS on Debian GNU/Linux

UPDATE (May 06, 2012): I apologize for mentioning it supports encryption. Pool version 28 is the latest source that the Free Software community has. Encryption was not added until pool version 30. So, encryption is not supported natively with the ZFS on Linux project. However, you can use LUKS containers underneath, or you can use […]

Setup Network Interfaces in Debian

If you're not using NetworkManager or Wicd, or some other similar tool to automatically manage your network interfaces for you, this post is for you. In the Debian world, you have a single file that manages your network interfaces. It can manage VLANs, bonded interfaces, virtual interfaces and more. You can establish rules on what […]

Salt Packaged For Debian/Ubuntu

I created a Debian package for Salt, doing my best to adhere to the Debian Policy. You can find it at If you're not familiar with Salt, head over to and check it out. From the author's website: Salt is a powerful remote execution manager that can be used to administer servers in […]

How To Properly Create And Burn CD/DVD ISO Images From The Command Line

Too often, I see the recommendation on forums, IRC, and elsewhere across the internet to use improper tools for creating ISO images. For example, consider the following two commands, both of which are not the correct way to build a CD/DVD image: $ dd if=/dev/scd0 of=cdimage.iso # NO! Or worse yet: $ cat /dev/scd0 > […]

Avoid Using which(1)

This post comes from BashFAQ/081 on Greg's Wiki. He argues why you should not be using which(1) to determine if a command is in your $PATH at the end of the page. I'll put that argument at the front: The command which(1) (which is often a csh script, although sometimes a compiled binary) is not […]

Alphabet Book

Our family has been tasked with drawing a picture for each letter of the alphabet in an alphabet book for my soon-to-be-born niece. The letter 'd' was available, so it was obvious to me what should be drawn. I know when she starts flipping through the pages of the book, she will love this page […]

Why Unix Is Superior

Quick post, outlining what I think makes the Unix family of operating systems superior, including "unix-like" operating systems such as GNU/Linux, BSD, and others. Of course, the list isn't exhaustive- it's just something I threw together in 10 minutes. The motivation of the post was a discussion in ##unix on Freenode. The command line interface. […]

Various Ways To Shred A Drive

I've been tasked at work with shredding drives. Not physically, mind you, but digitally. Usually, I grab a copy of the latest version of Knoppix, boot up, pull up a terminal, and grab GNU Shred. Something like: shred -n 3 -v /dev/sda It works well enough. However, it doesn't display a real useful progress meter, […]