<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>/dev/zero &#187; Linux</title>
	<atom:link href="http://blogs.pure-chaos.com/andrew/archives/category/geeking/linux/feed" rel="self" type="application/rss+xml" />
	<link>http://blogs.pure-chaos.com/andrew</link>
	<description>The Life and Times of a Unix Geek</description>
	<lastBuildDate>Sun, 29 Jan 2012 08:52:03 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Manipulating maildirs at the filesystem level</title>
		<link>http://blogs.pure-chaos.com/andrew/archives/1894</link>
		<comments>http://blogs.pure-chaos.com/andrew/archives/1894#comments</comments>
		<pubDate>Fri, 20 Aug 2010 21:26:16 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[geeking]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[System Administration]]></category>
		<category><![CDATA[Unix Linux mail]]></category>

		<guid isPermaLink="false">http://blogs.pure-chaos.com/andrew/archives/1894</guid>
		<description><![CDATA[Let&#8217;s here it for being able to manipulate you mail directory structure at the file system level and still be able to access it through Thunderbird.]]></description>
			<content:encoded><![CDATA[<div id="post_content_1894" class="post_content">
<p>Let&#8217;s here it for being able to manipulate you mail directory structure at the file system level and still be able to access it through Thunderbird.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blogs.pure-chaos.com/andrew/archives/1894/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DJBDNS and IPv6</title>
		<link>http://blogs.pure-chaos.com/andrew/archives/1891</link>
		<comments>http://blogs.pure-chaos.com/andrew/archives/1891#comments</comments>
		<pubDate>Sun, 18 Jul 2010 19:51:12 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[geeking]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[System Administration]]></category>
		<category><![CDATA[DJB]]></category>
		<category><![CDATA[DJBDNS]]></category>
		<category><![CDATA[DNS]]></category>
		<category><![CDATA[IPv4]]></category>
		<category><![CDATA[IPv6]]></category>
		<category><![CDATA[tinydns]]></category>

		<guid isPermaLink="false">http://blogs.pure-chaos.com/andrew/?p=1891</guid>
		<description><![CDATA[DJBDNS must run as two separate instances to bind to both an IPv4 and IPv6 addresss.]]></description>
			<content:encoded><![CDATA[<div id="post_content_1891" class="post_content">
<p>Tip: When patching DJB&#8217;s &#8220;dnscache&#8221; for IPv6, you can&#8217;t just tell it to bind to both the IPv4 and IPv6 addresses. You will need to run two separate instances, one binding to the IPv4 address, one binding to the IPv6 address.<br />
I haven&#8217;t checked, but I&#8217;m betting my tinydns instance is also not binding to both addresses and will have to be run as two separate instances as well.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blogs.pure-chaos.com/andrew/archives/1891/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fixing Vmware virtual disks</title>
		<link>http://blogs.pure-chaos.com/andrew/archives/1885</link>
		<comments>http://blogs.pure-chaos.com/andrew/archives/1885#comments</comments>
		<pubDate>Mon, 04 Jan 2010 23:57:39 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[geeking]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[virtualization]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://blogs.pure-chaos.com/andrew/?p=1885</guid>
		<description><![CDATA[Having hosed a Gentoo guest on a VMware ESXi host by filling the partition (which VMware really doesn&#8217;t like) then attempting to fix it by mounting the partition in anther guest and fsck&#8217;ing it first, I got the error message &#8220;the parent virtual disk has been modified since the child was created&#8221; when I tried [...]]]></description>
			<content:encoded><![CDATA[<div id="post_content_1885" class="post_content">
<p>Having hosed a Gentoo guest on a VMware ESXi host by filling the partition (which VMware really doesn&#8217;t like) then attempting to fix it by mounting the partition in anther guest and fsck&#8217;ing it first, I got the error message &#8220;the parent virtual disk has been modified since the child was created&#8221; when I tried to boot the original Gentoo guest.<br />
Googling pointed me to a nice post at <a href="http://driveactivated.com/blog/archive/2007/11/06/recovering-vmware-snapshot-after-parent-changed.aspx">Recovering VMware snapshot after parent changed</a>.<br />
Step two lists the following caveat:</p>
<p>&#8220;Look at the size of the snapshot virtual hard disk. If it is more than 2GB and you&#8217;re running a 32-bit OS, or it is more than the amount of memory that you have available, the following method will probably not work. You&#8217;re welcome to try though.&#8221;</p>
<p>I found this wasn&#8217;t an issue as it appears (at least as of ESXi 4.x) VMware has separated the vmdk &#8220;header&#8221; and &#8220;data&#8221;, putting the &#8220;header&#8221; in the &#8220;hostname.vmdk&#8221; file and the actual data in &#8220;hostname-flat.vmdk&#8221;. The original vmdk is now only a couple of hundred bytes and easily edited in vi. Grabbing the CID from the Gentoo.vmdk and modifying parentCID in Gentoo000001.vmdk had me back up and running (at least to the point that I could now boot the Gentoo guest, using an Ubuntu ISO so I could access the file system and clean it up. I moved /home to a new partition, fixing the space issue).<br />
Next time, I&#8217;ll just be smart and build all systems with LVM, then I can just add more physical extents when I need more space.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blogs.pure-chaos.com/andrew/archives/1885/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VMware ESXi on USB thumb drive</title>
		<link>http://blogs.pure-chaos.com/andrew/archives/874</link>
		<comments>http://blogs.pure-chaos.com/andrew/archives/874#comments</comments>
		<pubDate>Fri, 13 Mar 2009 00:37:27 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[virtualization]]></category>
		<category><![CDATA[vmware]]></category>
		<category><![CDATA[dell]]></category>
		<category><![CDATA[esxi]]></category>
		<category><![CDATA[poweredge 850]]></category>

		<guid isPermaLink="false">http://blogs.pure-chaos.com/andrew/archives/874</guid>
		<description><![CDATA[Running Dog Leaugue has a good write up on how to install VMWare ESXi on a thumb drive. With this I was able to get it up and running on a Dell PowerEdge 850 that would NOT install ESXi from a CD (couldn&#8217;t find a storage device to install to).]]></description>
			<content:encoded><![CDATA[<div id="post_content_874" class="post_content">
<p><a href="http://www.runningdogleague.com/blog/?p=10">Running Dog Leaugue</a> has a good write up on how to install VMWare ESXi on a thumb drive.<br />
With this I was able to get it up and running on a Dell PowerEdge 850 that would NOT install ESXi from a CD (couldn&#8217;t find a storage device to install to).</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blogs.pure-chaos.com/andrew/archives/874/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CentOS domU under Debian</title>
		<link>http://blogs.pure-chaos.com/andrew/archives/764</link>
		<comments>http://blogs.pure-chaos.com/andrew/archives/764#comments</comments>
		<pubDate>Fri, 13 Jun 2008 15:00:56 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[geeking]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[ljxp]]></category>
		<category><![CDATA[Xen]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[lvm]]></category>
		<category><![CDATA[redhat]]></category>

		<guid isPermaLink="false">http://blogs.pure-chaos.com/andrew/?p=764</guid>
		<description><![CDATA[I finally got a CentOS 5 domU running under Debian. The xen-tools xen-create-image method didn&#8217;t work. I managed to find an appropriate build script for centos5, but it was pretty badly out of date, trying to install RPM versions that don&#8217;t exist on the mirror servers any more. Trying to bring it back up to [...]]]></description>
			<content:encoded><![CDATA[<div id="post_content_764" class="post_content">
<p>I finally got a CentOS 5 domU running under Debian.<br />
The xen-tools xen-create-image method didn&#8217;t work. I managed to find an appropriate build script for centos5, but it was pretty badly out of date, trying to install RPM versions that don&#8217;t exist on the mirror servers any more. Trying to bring it back up to date would have been a PITA. It has the RPM versions hard-coded in the script.<br />
However the instructions at http://wiki.kartbuilding.net/index.php/Create_Centos5_DomU_on_Debian_Etch_Dom0 worked a treat.<br />
After following those steps, I converted it from a file-based image, to an LVM, with the following steps:<br />
Manually create logical volumes for the filesystem and swap. I use 40G filesystem LVs and 128M swaps.</p>
<p># mkdir /mnt/loop<br />
# mkdir /mnt/cenots<br />
# mount /home/andrew/centos.5-0.img /mnt/loop -o loop<br />
# mount /dev/mapper/ember-centos5&#8211;disk /mnt/centos<br />
# cd /mnt/loop<br />
# cp -Rp bin  boot  dev  etc  home  lib media  mnt  opt root  sbin  selinux  srv  sys  tmp  usr  var ../centos<br />
# cd<br />
# umount /mnt/loop<br />
# umount /mnt/centos</p>
<p>Then edit /etc/xen/domains/centos.cfg and change the following lines:</p>
<p>kernel = &#8220;/boot/vmlinuz-2.6.18-4-xen-686&#8243;<br />
ramdisk = &#8220;/boot/initrd.img-2.6.18-4-xen-686&#8243;<br />
vif = ['bridge=xenbr0']<br />
disk = ['file:/xens/name_of_new_server_to_be/centos.5-0.img,sda1,w','file:/xens/name_of_new_server_to_be/centos.swap,sda2,w']</p>
<p>To:</p>
<p>kernel = &#8216;/boot/vmlinuz-2.6.18-6-xen-686&#8242;<br />
ramdisk = &#8220;/boot/initrd.img-2.6.18-6-xen-686&#8243;<br />
vif = [ 'ip=192.168.1.13' ]<br />
disk    = [ 'phy:ember/centos5-disk,sda1,w', 'phy:ember/centos5-swap,sda2,w' ]</p>
<p>Then &#8220;xm create centos&#8221;. Boom! Centos 5, running as a domU on a Debian Etch dom0, from a logical volume.<br />
And I still have the original centos5 image file for creating fresh domUs.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blogs.pure-chaos.com/andrew/archives/764/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Xen and the art of server maintenance</title>
		<link>http://blogs.pure-chaos.com/andrew/archives/760</link>
		<comments>http://blogs.pure-chaos.com/andrew/archives/760#comments</comments>
		<pubDate>Thu, 12 Jun 2008 18:34:00 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[geeking]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[ljxp]]></category>
		<category><![CDATA[Xen]]></category>

		<guid isPermaLink="false">http://blogs.pure-chaos.com/andrew/?p=760</guid>
		<description><![CDATA[Aught to be a good title for a book on Xen, no? Anyway, while discussing Xen with the COO (and it just occurred to me, really this project should be the CTO&#8217;s, not the COOs&#8230; odd how the COO does all this stuff&#8230;) he came to the conclusion that, like openVZ and Virtuozzo, Xen guest [...]]]></description>
			<content:encoded><![CDATA[<div id="post_content_760" class="post_content">
<p>Aught to be a good title for a book on Xen, no?</p>
<p>Anyway, while discussing Xen with the COO (and it just occurred to me, really this project should be the CTO&#8217;s, not the COOs&#8230; odd how the COO does all this stuff&#8230;) he came to the conclusion that, like openVZ and Virtuozzo, Xen guest systems shared the kernel with the Host. That didn&#8217;t sound right to me, but I couldn&#8217;t disprove it with my Xen server, where every DomU had an empty /boot.</p>
<p>So I updated the kernel in Dom0, but didn&#8217;t reboot. I now have a newer kernel installed than the one it&#8217;s currently running.<br />
I then tweaked the /etc/xen-tools/xen-tools.conf and built a new DomU, to use the new kernel. Everything went without a hitch. I now have a Dom0 running 2.6.18-4-xen-686, with a domU running 2.6.18-6-xen-686. So it would seem that while they all &#8220;share&#8221; a kernel in the sense that they share a single install on the hard drive (all pulling from the dom0 /boot directory), they aren&#8217;t sharing a single instance of the kernel in memory.</p>
<p>I then tried to get a working CentOS 5 domU running, but ran into some snags. That will be another post.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blogs.pure-chaos.com/andrew/archives/760/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I&#8217;ve been a busy little geek</title>
		<link>http://blogs.pure-chaos.com/andrew/archives/755</link>
		<comments>http://blogs.pure-chaos.com/andrew/archives/755#comments</comments>
		<pubDate>Fri, 02 May 2008 03:36:35 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[control panels]]></category>
		<category><![CDATA[geeking]]></category>
		<category><![CDATA[ispCP]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[System Administration]]></category>
		<category><![CDATA[Xen]]></category>
		<category><![CDATA[ddclient]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[dyndns]]></category>
		<category><![CDATA[openvpn]]></category>

		<guid isPermaLink="false">http://blogs.pure-chaos.com/andrew/?p=755</guid>
		<description><![CDATA[So far this week I&#8217;ve: Finally gotten a working Xen system that will boot a Debian guest. Successfully installed ispCP on the Debian guest. Built another Debian guest to be an OpenVPN server. Successfully built an OpenVPN server and got two clients to connect from outside the network, through the DSL modem/router. Correctly configured the [...]]]></description>
			<content:encoded><![CDATA[<div id="post_content_755" class="post_content">
<p>So far this week I&#8217;ve:<br />
Finally gotten a working Xen system that will boot a Debian guest.<br />
Successfully installed ispCP on the Debian guest.<br />
Built another Debian guest to be an OpenVPN server.<br />
Successfully built an OpenVPN server and got two clients to connect from outside the network, through the DSL modem/router.<br />
Correctly configured the VPN server to give the client access to the full network via IP masquerading (next trick: get the network to simply route the packets instead of having to use masq).<br />
Got ddclient working on the VPN server to keep dyndns updated so I don&#8217;t have to hard code an IP address in my VPN clients and check various server log files to see if it changed.<br />
Fixed ddclient, when it failed to update dyndns with new IP address after my DSL provider mysteriously issued a new one, not 3 hours after setting up ddclient in the first place.</p>
<p>I can now log into my ispcp box from my desk at work, as though it was on the same network. I can now proceed with trying to get Mailman to play nice with ispCP when it&#8217;s slow at work.</p>
<p>I get productive when I ignore my games.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blogs.pure-chaos.com/andrew/archives/755/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Getting hpasm installed on Ubuntu server</title>
		<link>http://blogs.pure-chaos.com/andrew/archives/753</link>
		<comments>http://blogs.pure-chaos.com/andrew/archives/753#comments</comments>
		<pubDate>Sat, 05 Apr 2008 23:32:22 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[geeking]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[System Administration]]></category>
		<category><![CDATA[dash]]></category>
		<category><![CDATA[hp]]></category>
		<category><![CDATA[hpasm]]></category>
		<category><![CDATA[proliant]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[ubuntu 8.04]]></category>

		<guid isPermaLink="false">http://blogs.pure-chaos.com/andrew/?p=753</guid>
		<description><![CDATA[While installing Ubuntu Server 8.04 beta on an HP DL-320, I discovered I had some trouble getting HP&#8217;s &#8220;Proliant value added software&#8221; (hpasm) package installed. This package contains their system health check and control software which, among other things, switches the fans from &#8220;full-time full speed&#8221; (which is quite noisy) to temperature controlled speed (eg: [...]]]></description>
			<content:encoded><![CDATA[<div id="post_content_753" class="post_content">
<p>While installing Ubuntu Server 8.04 beta on an HP DL-320, I discovered I had some trouble getting HP&#8217;s &#8220;Proliant value added software&#8221; (<a href="http://h20392.www2.hp.com/portal/swdepot/searchProducts.do">hpasm</a>) package installed. This package contains their system health check and control software which, among other things, switches the fans from &#8220;full-time full speed&#8221; (which is quite noisy) to temperature controlled speed (eg: normal (read: quiet) fan speed when system temp is normal).<br />
The problem with installing and runnning this software stems from the fact that Ubuntu, for some reason, links /bin/sh to dash instead of bash. Dash is another bourne shell clone, but doesn&#8217;t understand Bash (bourne-again shell) specific syntax.<br />
Re-linking /bin/sh to bash instead of dash solved the problem and the server is now humming (quietly) along.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blogs.pure-chaos.com/andrew/archives/753/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

