<?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>Crossed Wires &#187; Linux</title>
	<atom:link href="http://veejoe.net/blog/category/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://veejoe.net/blog</link>
	<description>Vic's Blog</description>
	<lastBuildDate>Sat, 31 Dec 2011 13:29:24 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Oracle Database 11gR2 on Linux on System z</title>
		<link>http://veejoe.net/blog/2011/08/oracle-database-11gr2-on-linux-on-system-z/</link>
		<comments>http://veejoe.net/blog/2011/08/oracle-database-11gr2-on-linux-on-system-z/#comments</comments>
		<pubDate>Wed, 31 Aug 2011 13:57:14 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Operating Systems]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[IOUG]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[RAC]]></category>
		<category><![CDATA[systemz]]></category>
		<category><![CDATA[z/VM]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=5582</guid>
		<description><![CDATA[Earlier this year (30 March, to be precise) Oracle announced that Oracle Database 11gR2 was available as a fully-supported product for Linux on IBM System z.  A while before that they had announced E-Business Suite as available for Linux on System z, but at the time the database behind it had to be 10g.  Shortly after 30 [...]]]></description>
			<content:encoded><![CDATA[<p>Earlier this year (30 March, to be precise) Oracle announced that Oracle Database 11gR2 was available as a fully-supported product for Linux on IBM System z.  A while before that they had announced E-Business Suite as available for Linux on System z, but at the time the database behind it had to be 10g.  Shortly after 30 March, they followed up the 11gR2 announcement with a statement of support for the Oracle 11gR2 database on Linux on System z as a backend for E-Business Suite &#8212; the complete, up-to-date Oracle stack was now available on Linux on System z!</p>
<p>In April this year I attended the zSeries Special Interest Group miniconf[1], part of the greater Independent Oracle Users Group (IOUG) event <strong>COLLABORATE 11</strong>.  I was amazed to discover that there are actually Oracle employees whose job it is to work on IBM technologies &#8212; just like there are IBM employees dedicated to selling and supporting the Oracle stack.  Never have I seen (close-up) a better example of the term &#8220;coopetition&#8221;.</p>
<p>On my return from the zSeries SIG and IOUG, I&#8217;ve become the local Oracle expert.  However, I&#8217;ve had no more training than the two days of workshops run at the conference!  The workshops were excellent (held at the Epcot Center at Walt Disney World, no less!) but they could not an expert make.  So I&#8217;ve been trying to build some systems and teach myself more about running Oracle.  I thought I&#8217;d gotten off to a good start too &#8212; I&#8217;d installed a standalone system, then went on to build a two-node RAC.  I communicated my success to one of my sales colleagues:</p>
<p>&#8220;I&#8217;ve got a two-node RAC setup running on the z9 in Brisbane!&#8221;</p>
<p>&#8220;Great!  Good work,&#8221; he said.  &#8221;So the two nodes are running in different LPARs, so we can demonstrate high-availability?&#8221;</p>
<p>&#8221; . . . &#8221;</p>
<p>In my haste I&#8217;d built both virtual machines in the same LPAR.  Whoops.  (I&#8217;ve fixed that now, by the way.  The two RAC nodes are in different LPARs and <strong>seem</strong> to be performing better for it.)</p>
<p>Over the coming weeks, I&#8217;ll write up some of the things that have caught me out.  I still don&#8217;t really know how all this stuff works, but I&#8217;m getting better!</p>
<p><em>Links:</em></p>
<p>IBM System z: <a title="IBM System z site (US)" href="http://www.ibm.com/systems/z" target="_blank">www.ibm.com/systems/z</a> or <a title="IBM System z site (Australia)" href="http://www.ibm.com/systems/au/z" target="_blank">www.ibm.com/systems/au/z</a></p>
<p>Linux on System z: <a title="IBM Linux on System z site (US)" href="http://www.ibm.com/systems/z/os/linux/index.html" target="_blank">www.ibm.com/systems/z/os/linux/index.html</a></p>
<p>Oracle zSeries SIG: <a title="zSeries Oracle Users SIG" href="http://www.zseriesoraclesig.org" target="_blank">www.zseriesoraclesig.org</a></p>
<p>Oracle Database: <a title="Oracle Database" href="http://www.oracle.com/us/products/database/index.html" target="_blank">www.oracle.com/us/products/database/index.html</a></p>
<p>[1] Miniconf is a term I picked up from <a title="linux.conf.au (LCA)" href="http://linux.conf.au" target="_blank">linux.conf.au</a> &#8212; the zSeries SIG didn&#8217;t advertise its event as a miniconf, but as a convenient name for a &#8220;conference-in-a-conference&#8221; I&#8217;m using the term here.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2011/08/oracle-database-11gr2-on-linux-on-system-z/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What a difference a working resolver makes</title>
		<link>http://veejoe.net/blog/2011/08/what-a-difference-a-working-resolver-makes/</link>
		<comments>http://veejoe.net/blog/2011/08/what-a-difference-a-working-resolver-makes/#comments</comments>
		<pubDate>Sun, 07 Aug 2011 13:45:19 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networks]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[ldap]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[SSL]]></category>
		<category><![CDATA[TLS]]></category>
		<category><![CDATA[z/VM]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=5579</guid>
		<description><![CDATA[The next phase in tidying up my user authentication environment in the lab was to enable SSL/TLS on the z/VM LDAP server I use for my Linux authentication (I&#8217;ll discuss the process on the DeveloperWorks blog, and put a link here).  Apart from being the right way to do things, LDAP authentication appears to require SSL or TLS in [...]]]></description>
			<content:encoded><![CDATA[<p>The next phase in tidying up my user authentication environment in the lab was to enable SSL/TLS on the z/VM LDAP server I use for my Linux authentication (I&#8217;ll discuss the process on the DeveloperWorks blog, and put a link here).  Apart from being the right way to do things, LDAP authentication appears to require SSL or TLS in Fedora 15.</p>
<p>After I got the Fedora system working, I thought it would be a good idea to have other systems in the complex using SSL/TLS also.  The process was moderately painless on a SLES 10 system, but on the first SLES 11 system I went to YaST froze while saving the changes.  I (foolishly) rebooted the image, and it hung during boot.  Not fun.</p>
<p>After a couple of attempts to fix up what I thought were the obvious problems (each attempt involving logging off the guest, connecting its disk to another guest, mounting the filesystem, making a change, unmounting and disconnecting, and re-IPLing) with no success, I went into /etc/nsswitch.conf and turned off LDAP for everything I could find.  This finally allowed the guest to complete its boot &#8212; but I had no LDAP now.  I did a test using <strong>ldapsearch</strong>, which reported it couldn&#8217;t reach the LDAP server.  I tried to ping the LDAP server by address, which worked.  I tried to lookup the hostname of the LDAP server, and name resolution failed with the traditional &#8220;no servers could be reached&#8221; message.  This was odd, as I knew I&#8217;d changed it since it was pointing to the wrong DNS server before&#8230;  I could ping the DNS by address, and another system resolved fine.</p>
<p>I thought it might have been a configuration problem &#8212; I had earlier had trouble with systems not being able to do recursive DNS lookups through my DNS server.  I went to YaST to configure the DNS Server, and it told me that I had to install the package &#8220;bind&#8221;.  WHAT?!?!?  How did the BIND package get uninstalled from the system&#8230;</p>
<p>Unless&#8230;  It&#8217;s the wrong system&#8230;</p>
<p>I checked /etc/resolv.conf on a working system and sure enough I had the IP address wrong.  I was pointing at a server that was NOT my DNS server.  Presumably the inability to resolve the name of the LDAP server I was trying to reach is what made the first attempt to enable TLS for LDAP fail in YaST, and whatever preload magic SLES uses to enable LDAP authentication got broken by the failure.  Setting the right DNS and re-running the LDAP Client module in YaST not only got LDAP authentication working but got me a bootable system again.</p>
<p>A simple fix in the end, but I&#8217;d forgotten the power of the resolver to cause untold and unpredictable havoc.  Now, pardon me while I lie in wait for the YaST-haters who will no doubt come out and sledge me&#8230;  :-)</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2011/08/what-a-difference-a-working-resolver-makes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Another round of Gentoo fun</title>
		<link>http://veejoe.net/blog/2011/03/another-round-of-gentoo-fun/</link>
		<comments>http://veejoe.net/blog/2011/03/another-round-of-gentoo-fun/#comments</comments>
		<pubDate>Sat, 05 Mar 2011 06:47:05 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Operating Systems]]></category>
		<category><![CDATA[emerge]]></category>
		<category><![CDATA[fail]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[problem]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=5545</guid>
		<description><![CDATA[A little while back I did an &#8220;emerge system&#8221; on my VPS and didn&#8217;t think much more about it.  First time back to the box today to emerge something else, and was greeted with this: &#62;&#62;&#62; Unpacking source&#8230; &#62;&#62;&#62; Unpacking traceroute-2.0.15.tar.gz to /var/tmp/portage/net-analyzer/traceroute-2.0.15/work touch: setting times of `/var/tmp/portage/net-analyzer/traceroute-2.0.15/.unpacked&#8217;: No such file or directory &#8230;and the [...]]]></description>
			<content:encoded><![CDATA[<p>A little while back I did an &#8220;emerge system&#8221; on my VPS and didn&#8217;t think much more about it.  First time back to the box today to emerge something else, and was greeted with this:</p>
<p>&gt;&gt;&gt; Unpacking source&#8230;<br />
&gt;&gt;&gt; Unpacking traceroute-2.0.15.tar.gz to /var/tmp/portage/net-analyzer/traceroute-2.0.15/work<br />
touch: setting times of `/var/tmp/portage/net-analyzer/traceroute-2.0.15/.unpacked&#8217;: No such file or directory</p>
<p>&#8230;and the emerge error output.  Took me a little while to get the answer, but it was (of course) caused by a new version of something that came in with the system update.  <a href="http://bugs.gentoo.org/show_bug.cgi?id=224483#c37" target="_blank">This bug comment</a> had the crude hack I needed to get back working again, but longer-term I obviously need to fix the mismatch between the version of linux-headers and the kernel version my VPS is using (it&#8217;s Xen on RHEL5).</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2011/03/another-round-of-gentoo-fun/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nagios service check for IAX</title>
		<link>http://veejoe.net/blog/2010/11/nagios-service-check-for-iax/</link>
		<comments>http://veejoe.net/blog/2010/11/nagios-service-check-for-iax/#comments</comments>
		<pubDate>Sat, 06 Nov 2010 05:03:48 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networks]]></category>
		<category><![CDATA[Telephony]]></category>
		<category><![CDATA[asterisk]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[iax]]></category>
		<category><![CDATA[nagios]]></category>
		<category><![CDATA[ping]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[script]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=5515</guid>
		<description><![CDATA[I&#8217;ve been using Nagios for ages to monitor the Crossed Wires campus network, but it&#8217;s fallen into a little disrepair.  Nothing worse than your monitoring needing monitoring&#8230;  so I set about tidying it up. Network topology changes, removal of old kit, and some fixes to service checks no longer working correctly. One of the problems [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been using Nagios for ages to monitor the Crossed Wires campus network, but it&#8217;s fallen into a little disrepair.  Nothing worse than your monitoring needing monitoring&#8230;  so I set about tidying it up. Network topology changes, removal of old kit, and some fixes to service checks no longer working correctly.</p>
<p>One of the problems I needed to fix was the service check for IAX connections into my Asterisk box.  The script (the standard check_asterisk.pl from the Nagios Plugins package) was set up correctly, but it would fail with a &#8220;Got no reply&#8221; message.</p>
<p>I started doing traces and &#8220;iax2 debug&#8221; in Asterisk, but got nowhere &#8212; Asterisk was rejecting the packet from the check script.  Finally I decided to JFGI, and eventually I found <a href="http://www.thirdlane.com/forum/nagios-check-asterisk-for-iax2" target="_blank">this page</a> with the explanation and the fix.  Basically, sometime in the 1.6 stream Asterisk toughened up security on the control message the Nagios service check used to use.  Thankfully, at the same time a new control message specifically designed for availability checking was implemented, and the fix is to update the script to use the new control message.  Easy!</p>
<p>BTW, while on Nagios, I got burned by the so-called &#8220;vconfig patch&#8221; which broke the check_ping script.  I&#8217;ve had to mask version 1.4.14-r2 and above of the <strong>nagios-plugins</strong> package until the issue is fixed.</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2010/11/nagios-service-check-for-iax/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sharing an OSA port in Layer 2 mode</title>
		<link>http://veejoe.net/blog/2010/11/sharing-an-osa-port-in-layer-2-mode/</link>
		<comments>http://veejoe.net/blog/2010/11/sharing-an-osa-port-in-layer-2-mode/#comments</comments>
		<pubDate>Thu, 04 Nov 2010 11:28:56 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networks]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[virtualisation]]></category>
		<category><![CDATA[z/VM]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=5508</guid>
		<description><![CDATA[I posted on my developerWorks blog about an experience I had sharing an OSA port in Layer 2 mode.  Thrilling stuff.  What&#8217;s more thrilling is the context of where I had my OSA-port-sharing experience: my large-scale Linux on System z cloning experiment.  One of these days I&#8217;ll get around to writing that up.]]></description>
			<content:encoded><![CDATA[<p>I posted on my <a title="Vic's dW blog" href="https://www.ibm.com/developerworks/mydeveloperworks/blogs/viccross/?lang=en" target="_blank">developerWorks blog</a> about an experience I had sharing an OSA port in Layer 2 mode.  Thrilling stuff.  What&#8217;s more thrilling is the context of where I had my OSA-port-sharing experience: my large-scale Linux on System z cloning experiment.  One of these days I&#8217;ll get around to writing <strong>that</strong> up.</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2010/11/sharing-an-osa-port-in-layer-2-mode/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Asterisk and a Patton SmartNode</title>
		<link>http://veejoe.net/blog/2010/07/asterisk-and-a-patton-smartnode/</link>
		<comments>http://veejoe.net/blog/2010/07/asterisk-and-a-patton-smartnode/#comments</comments>
		<pubDate>Mon, 26 Jul 2010 11:12:57 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Telephony]]></category>
		<category><![CDATA[asterisk]]></category>
		<category><![CDATA[capi]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[isdn]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=5504</guid>
		<description><![CDATA[It&#8217;s been ages since I did an update on the main network machine here, and I bit the bullet over the weekend. 250+ packages emerged with surprisingly little trouble, and all I was left to do was build the updated kernel and reboot. I usually end up with something that doesn&#8217;t restart after the reboot, [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been ages since I did an update on the main network machine here, and I bit the bullet over the weekend.  250+ packages emerged with surprisingly little trouble, and all I was left to do was build the updated kernel and reboot.<br />
I usually end up with something that doesn&#8217;t restart after the reboot, usually because of a kernel module that needs to be rebuilt after the kernel (because I forget to remerge the package before the reboot, oops).  This time the culprit was Asterisk (the phone system), which I also often have trouble with after an update due to a couple of codec modules external to the Asterisk build.  This time however the problem ended up being due to the Asterisk CAPI channel driver failing.<br />
Thinking it was the usual didn&#8217;t-rebuild-the-module problem, I went looking for the package I had to rebuild&#8230; only to find it was masked.  Turns out the driver for the ISDN card in the box, a FritzCard PCI, is no longer maintained and doesn&#8217;t build on modern kernels, which has resulted in the Gentoo folks hard-masking the entire set of AVM&#8217;s out-of-tree drivers.<br />
Help was at hand in the form of a Patton SmartNode 4552 ISDN VoIP router I&#8217;d bought months ago to replace the Fritz card.  Even though there isn&#8217;t much information about how to configure the SmartNode for Asterisk around, I managed to get the setup working in only a couple of hours.  I even managed to get the outgoing routing for the work line set up right!<br />
Eventually I&#8217;ll get something posted here that goes into a bit more detail about the configuration.  Let me know in a comment if you need to hurry me up! <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2010/07/asterisk-and-a-patton-smartnode/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ppc Linux on the PowerMac G5</title>
		<link>http://veejoe.net/blog/2010/04/ppc-linux-on-the-powermac-g5/</link>
		<comments>http://veejoe.net/blog/2010/04/ppc-linux-on-the-powermac-g5/#comments</comments>
		<pubDate>Sat, 17 Apr 2010 23:42:10 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Operating Systems]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[fail]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[ppc]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/2010/04/ppc-linux-on-the-powermac-g5/</guid>
		<description><![CDATA[With Apple&#8217;s abandonment of PPC as of Snow Leopard, I began wondering what to do with the old PowerMac. It&#8217;s annoying that so (comparatively) recent a piece of equipment should be given up by its manufacturer, but that&#8217;s a rant for another day. Yes, we can still run Leopard until it goes out of support, [...]]]></description>
			<content:encoded><![CDATA[<p>With Apple&#8217;s abandonment of PPC as of Snow Leopard, I began wondering what to do with the old PowerMac. It&#8217;s annoying that so (comparatively) recent a piece of equipment should be given up by its manufacturer, but that&#8217;s a rant for another day. Yes, we can still run Leopard until it goes out of support, but with S and I both on MacBook Pros with current OS I know that we would both become frustrated with a widening functionality gap between the systems.</p>
<p>I had always resisted runing Linux on the PowerMac, thinking that the last thing I needed was yet another Linux box in the house. I had tried a couple of times, but it was in the early days of support for the liquid cooling system in the dual-2.5Ghz model and those attempts failed dismally. I figured that by now those issues would be resolved and I would have a much better time.</p>
<p>I assumed that Yellow Dog was still the &#8216;benchmark&#8217; PPC Linux distro, so I went to their site. I saw a lot of data there about PS3 and Cell; it seems that YDL is transitioning to the cluster and/or research market by focussing on Cell.</p>
<p>The next thing I discovered is the lack of distributions that have a PPC version, even as a secondary platform. My old standby Gentoo still supports PPC, as does Fedora (I think: I saw a reference to downloading a PPC install disk, bit didn&#8217;t follow it), but every other major distro has dropped it &#8212; openSUSE, for example, with their very latest release (their download page still has a picture of a disc labelled &#8220;ppc&#8221;, but no such download exists, oops). I guess that since the major producer of desktop PPC systems stopped doing so, the distros saw their potential install base disappear. Unfortunately for those distros, I can see the reverse happening: now that Apple has fully left PPC behind, plenty of folks like me who have moderately recent G4 and G5 hardware and who still want to run a current OS will come to Linux looking for an alternative&#8230; I guess time will tell who is right on this one.</p>
<p>So I went to install Gentoo, and to cut a long story short I had exactly the same problem as before: critical temperature condition leading to emergency system power-off. I found that if I capped the CPU speed to 2Ghz I could stay up long enough to get things built, but then the system refused to boot because it couldn&#8217;t find the root filesystem. Probably something to do with yaboot, SATA drives and OpenFirmware. So again I&#8217;m putting it aside.</p>
<p>My next plan was to treat it as a file server. Surely a BSD would support my G5 hardware: after all, Mac OS X is BSD at heart&#8230; Well, no. FreeBSD has no support for SATA on ppc, OpenBSD specifically mentioned liquid-cooled G5s as having no support, and I don&#8217;t think I saw any ppc support on NetBSD more recent than G3 [1].</p>
<p>This is one of the things that annoys me about the computer industry: that somehow it&#8217;s okay to so completely disregard your older releases. What if the automotive industry worked that way?</p>
<p>So I may yet try Fedora, or give the game away for another year or so and see what the situation looks like then.</p>
<p>[1] I may have mixed up a couple of these details.</p>
<p><strong><em>Edit</em></strong>: Gentoo&#8217;s yaboot has managed to make it so that I can&#8217;t boot Mac OS X on the machine any more.  Oh dear.</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2010/04/ppc-linux-on-the-powermac-g5/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Network virtualisation</title>
		<link>http://veejoe.net/blog/2010/02/network-virtualisation/</link>
		<comments>http://veejoe.net/blog/2010/02/network-virtualisation/#comments</comments>
		<pubDate>Sun, 21 Feb 2010 07:38:42 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networks]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[openvswitch]]></category>
		<category><![CDATA[virtualisation]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=5494</guid>
		<description><![CDATA[I&#8217;ve been doing a lot of mucking around with KVM with libvirt (I keep promising an update here, don&#8217;t I).  In my desktop virtualisation requirements I had a need for presenting VLAN traffic to guests: simple enough, and I&#8217;ve done it before.  You can do what I usually do, and configure all your VLANs against [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been doing a lot of mucking around with KVM with libvirt (I keep promising an update here, don&#8217;t I).  In my desktop virtualisation requirements I had a need for presenting VLAN traffic to guests: simple enough, and I&#8217;ve done it before.  You can do what I usually do, and configure all your VLANs against the physical interface then create a bridge for each VLAN you want to present to a guest.  The guest then attaches to the bridge appropriate to the VLAN it wants access to, with no need to configure 8021q.</p>
<p>(The other method of combining VLAN-tagging and bridging is to bridge the physical interface first, then create VLANs on the bridge.  I couldn&#8217;t work out how to get VLAN-unaware guests attached to this kind of setup, and it didn&#8217;t work for me even to give IP access to the host using a br0.100 for example.  Still, it must work for someone as it&#8217;s written about a lot&#8230;)</p>
<p>I realised that from particular virtual machines I needed to get access to the VLAN tags &#8212; I needed VLAN-awareness.  Now I knew up-front that the way I could do this was to just throw another NIC into the machine and either dedicate it to the virtual guest or set up a bridge with VLAN tags intact.  I really wanted to exhaust all possible avenues to solve the problem without throwing hardware around (as I&#8217;ve been doing a bit of that recently, I have to admit).</p>
<p>First, I tried to use standard Linux bridges as a solution, but discovered that an interface can&#8217;t belong to more than one bridge at a time, which put paid to my plan to have one or more VLAN-untagging bridges and a VLAN-tagged bridge.  I figured it could be done with bridges, but I envisaged a stacked mess of bridge-to-tap-to-bridge-to-tap-to-guest connections and decided that wasn&#8217;t the way to go.</p>
<p>Next I checked out VDE, which I had first seen a couple of years ago &#8212; but something gave me the impression that VDE either wasn&#8217;t really going to give me anything more than bridging would, or was not flexible enough to do what I needed.  I like the distributed aspect of VDE (the D in the name) but I&#8217;d rarely use that capability so it wasn&#8217;t a big drawcard.  I widened my search, and found two interesting projects &#8212; one that eventually became my solution, and another that I think is quite incredible in its scope and capability.</p>
<p>First, the amazing one: <a title="The ns-3 network simulator" href="http://www.nsnam.org" target="_blank">ns-3</a>, &#8220;a great network simulator for research and education&#8221;.  As the name suggests, it simulates networks.  It is completely programmable (in fact your network &#8220;scripts&#8221; are actually C++ code using the product&#8217;s libraries and functions) and can be used to accurately model the behaviour of a real network when faced with network traffic.  The project states that ns-3 models of real networks have produced libpcap traces that are almost indistinguishable from the traces of the real networks being modelled&#8230;  I&#8217;ll take their word for that, but when you get to configure the propogation delay between nodes in your simulated network it seems to me it&#8217;s pretty thorough.  Although the way that I found ns-3 was via a forum posting from someone who claimed to have used it to solve a similar situation as me, and ns-3 does provide a way to &#8220;bridge&#8221; between the simulated network and real networks, the simulation aspect of ns-3 seems to be more complexity than I&#8217;m looking for in this instance.  It does look like a fascinating tool however, and one I&#8217;ll definitely be keeping at least half-an-eye on.</p>
<p>To my eventual solution, then: <a title="Open vSwitch" href="http://openvswitch.org" target="_blank">Open vSwitch</a>.  Designed with exactly my scenario in mind&#8211;network connection for virtualisation&#8211;it has at least two functions that make it ideal for me:</p>
<ul>
<li>a Linux-bridging compatibility mode, allowing the brctl command to still function</li>
<li>IEEE 802.1Q VLAN support (innovatively at that)</li>
</ul>
<p>The Open vSwitch capability can be built as a kernel module (there&#8217;s a second module that supports the brctl compatibility mode), or very recent versions have the ability to be run in user-space (with a corresponding performance drop).</p>
<p>On the surface, configuring an OvS bridge does seem to result in something that looks exactly like a brctl bridge (especially if you use brctl and the OvS bridging compatibility feature to configure it), but its native support for VLANs really brings it into its own for me.  In summary, for each &#8220;real&#8221; bridge you configure in OvS, you can configure a &#8220;fake&#8221; bridge that passes through packets for a single VLAN from the real bridge (the &#8220;parent&#8221; bridge).  This is <em>exactly</em> what I needed!</p>
<p>For the guest interfaces that needed full VLAN-awareness, I simply provided the name of my OvS bridge as the name of the bridge for libvirt to connect the guest to&#8211;OvS bridge-compatibility mode took care of the brctl commands issued in the background by libvirt.  The VLAN-unaware guest interfaces presented a bit of a challenge&#8211;the OvS &#8220;fake&#8221; bridge does not present itself like a Linux bridge, so it doesn&#8217;t work with libvirt&#8217;s bridge interface support.  This ended up being moderately easy to overcome as well, thanks to libvirt&#8217;s ability to set up an interface configured by an arbitrary script&#8211;I hacked the supplied <em>/etc/qemu-ifup</em> script and made a version that adds the tap interface created by libvirt to the OvS fake bridge.</p>
<p>The only thing I might want from this now is an ability for an OvS bridge to have visibility over a subset of the VLANs presented on the physical NIC.  The OvS website talks about extensive filtering capability though, so I&#8217;ve little doubt that the capability is there and I&#8217;m just yet to find it.  From a functionality aspect, OvS is packed to the gills with support for various open management protocols, including something called OpenFlow that I&#8217;d never heard of before (but I hope that some certain folks in upstate New York have!) but is apparently an open standard that enables secure centralised management of switches.</p>
<p>Detail of exactly how I pulled this all together will come in a page on this site; I&#8217;ll make a bunch of pages that describe all the mucky details of my KVM adventures and update this post with a link, so stay tuned!</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2010/02/network-virtualisation/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>LDAP groups in Postfix</title>
		<link>http://veejoe.net/blog/2010/02/ldap-groups-in-postfix/</link>
		<comments>http://veejoe.net/blog/2010/02/ldap-groups-in-postfix/#comments</comments>
		<pubDate>Wed, 10 Feb 2010 11:24:35 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[ldap]]></category>
		<category><![CDATA[postfix]]></category>
		<category><![CDATA[servers]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=5490</guid>
		<description><![CDATA[For a long time I&#8217;ve been managing virtual e-mail addresses (the ones you create when you sign up to a web service, so that you know where your spam is originating) using Postfix&#8217;s LDAP alias capability.  At the time I was still putting every bit of configuration I could into LDAP&#8211;particularly if it was user-id [...]]]></description>
			<content:encoded><![CDATA[<p>For a long time I&#8217;ve been managing virtual e-mail addresses (the ones you create when you sign up to a web service, so that you know where your spam is originating) using Postfix&#8217;s LDAP alias capability.  At the time I was still putting every bit of configuration I could into LDAP&#8211;particularly if it was user-id related&#8211;and I&#8217;ve never had a need to change what was working really well.</p>
<p>N&#8217;s school recently decided to distribute the weekly school newsletter via e-mail, and had allowance for one e-mail address per family.  Not wanting the additional overhead of having to have either S or me receive it and then having to forward it to the other, I thought it would be neat to have a single common address that, when items arrived, distributed the mail to multiple boxes.  Of course I took the stupid path of providing the school with a yet-to-be-created e-mail address, foolishly trusting my ability to set the system up before they tried to send anything to it&#8230;  but in the end it was not so foolish after all, as unbeknown to me I already had everything I needed to achieve my objective.</p>
<p>Unfortunately the first thing I did was assume that I needed mailing list software.  I installed Mailman, and started to read-up on the process to get it working.  I did this on my yet-to-be-commissioned KVM-hosted mail server (a blog post for another day), and started trying to diagnose why mail wasn&#8217;t getting delivered.  I had set up Postfix on this mail server to point to my existing LDAP to test, and thought that there was a problem there (but also started to work out if there was a way to use the LDAP server to manage the Mailman aliases).  I re-found the <a href="http://www.postfix.org/LDAP_README.html" target="_blank">Postfix LDAP HOWTO</a>, and stumbled over the section entitled &#8220;Example: expanding LDAP groups&#8221;.  <em>Et voila: </em>multidrop incoming mail without the need for a mailing list manager!</p>
<p>I had always assumed that e-mail aliases were a one-to-one mapping of alias address to real destination.  Not the case: an alias can have multiple destinations.  It doesn&#8217;t just apply to LDAP alias support, either: as per the &#8220;aliases&#8221; man page you can do</p>
<pre>name: value1, value2, ...
</pre>
<p>In my LDAP situation, all I need to do is list the alias in the &#8220;mailLocalAddress&#8221; attribute of which ever users need to receive mail for that alias.  Done!</p>
<p>I may have to keep Mailman, however.  Shortly after this success, I wondered how cool it would be to have the notification SMS messages for voicemail received at home, that currently go only to S, come to me as well.  I&#8217;m using a hosted email-to-SMS gateway service for this, so the &#8220;alias&#8221; would have to expand to multiple <em>external</em> e-mail addresses.  I&#8217;m not sure if you can alias mail addresses that are not in your domain&#8230;  I&#8217;ll have to try and see&#8211;might be easier to do that than subscribing to a Mailman list via SMS-to-email!  <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2010/02/ldap-groups-in-postfix/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Asterisk chan_mobile fail</title>
		<link>http://veejoe.net/blog/2009/07/asterisk-chan_mobile-fail/</link>
		<comments>http://veejoe.net/blog/2009/07/asterisk-chan_mobile-fail/#comments</comments>
		<pubDate>Thu, 23 Jul 2009 08:06:13 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Telephony]]></category>
		<category><![CDATA[asterisk]]></category>
		<category><![CDATA[bluetooth]]></category>
		<category><![CDATA[fail]]></category>
		<category><![CDATA[phone]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=5440</guid>
		<description><![CDATA[I&#8217;ve been struggling with setting up chan_mobile on my Asterisk system.  For those fortunate enough to actually get it working, chan_mobile provides an interface for Asterisk to treat a mobile phone like a PSTN or VoIP trunk&#8211;when someone calls your mobile phone it can ring your desk phone or softphone, or you can use your [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been struggling with setting up chan_mobile on my Asterisk system.  For those fortunate enough to actually get it working, chan_mobile provides an interface for Asterisk to treat a mobile phone like a PSTN or VoIP trunk&#8211;when someone calls your mobile phone it can ring your desk phone or softphone, or you can use your normal handset to make an outgoing call on your mobile.  It works by making the Asterisk system look like a Bluetooth headset or handsfree to the phone.  You can even connect Bluetooth headsets to Asterisk using chan_mobile and have them appear like an extension in your dialplan (although that capability doesn&#8217;t seem to be covered very much).</p>
<p>I figured this would be an ideal way to make use of an old Nokia 6230 with a broken speaker.  Somewhat foolishly, on the assumption that it would Just Work (and that all the troubles experienced by others would not beset me) I went and bought a two-pack of prepaid mobile SIM cards and went through the adventure of activating them.  One of these SIMs I threw into the 6230, the other I kept on hand for after I got everything working.  The plan, you see, was to be able to take advantage of free calls between the two accounts by taking one of the phones with me when travelling and leaving the other strapped to Asterisk at home.</p>
<p>I think it&#8217;s probably fair to say that I&#8217;ve had more success with it than a lot of other folk have.  The process of configuring Asterisk to use the Bluetooth dongle is quite straightforward, and it&#8217;s even quite easy to configure the chan_mobile driver to have calls enter your Asterisk system in a routable way.  When I dialled the &#8220;tethered&#8221; mobile from another phone, I was rewarded with the ringing of my desk phone&#8211;and at this point, I think I gave myself the kiss-of-death.  &#8220;Wow, that was easy,&#8221; I thought&#8230;</p>
<p>When I picked up the desk phone, I was rewarded with silence.  Not just the silence of the phone not ringing any more, but also the silence of no audio being passed either way over the call path.  Nothing put the pure, desolate sound of FAIL.</p>
<p>Things actually went downhill from there, believe it or not.  I have tried a total of four different Bluetooth dongles, with results ranging from the aforementioned signalling-but-no-audio to why-the-@#%$-won&#8217;t-this-thing-pair.  The three different phones I&#8217;ve tried elicited a similar spectrum of results.  &#8220;Make sure your dongle has a Cambridge Silicon radio, they definitely work&#8221; say the forum experts&#8230;  Sorry guys, one of the biggest failures I had&#8211;failure of Asterisk to pick up the call&#8211;was on the last dongle I tried and, yes, it was a CSR.  I&#8217;ve even had two different versions of the bluez stack and (I think) two different asterisk-addons versions.</p>
<p>The one thing that I&#8217;ve distilled from all the experiences I read through is that there is a ridiculously high level of sensitivity to particular phone and dongle features.  For example, great success has been reported with the Nokia 6230i.  I figured that I was lucky and that a 6230 would be close enough&#8230;  Doesn&#8217;t look like it.  There is one model of D-Link Bluetooth device&#8211;no longer in production, by the way&#8211;generally reported to give the most success.  Tweaking the device class reported by the bluez stack in the Linux host is said to give success too, but led to me being unable to get a connection to Asterisk.  Unfortunately, I have neither the time nor the patience to spend too much time trying to go through the motions of getting it working.  I tell you, if it really is that difficult to get two Bluetooth devices to talk to each other it&#8217;s no wonder that the majority of folks still use wired headsets!</p>
<p>Luckily all this little experiment has cost me so far is time.  The two-pack of SIM cards cost me the grand total of $2, and they had enough start-up credit on them to allow me to receive calls without a top-up.  The handsets are from that ever-growing pile of GSM hardware that just about every modern household is accumulating now (well, at least the ones that house a gadget-freak who can&#8217;t even bear to part with a broken one).  The kernel version I&#8217;m running on the system could be an issue, since I get ugly error messages from the <em>btusb</em> module when I take a call, so a kernel update might help.  After that though it&#8217;s likely to cost real money&#8211;buying a new/different Bluetooth dongle, for example.</p>
<p>If anyone out there has suggestions on something else to try, I&#8217;m listening (reading? watching?).  I don&#8217;t mean to complain, after all I am one that usually subscribes to the &#8220;it&#8217;s Open Source, it&#8217;s the hard work and dedication of others, you got it for nothing, you&#8217;ve got no right to complain&#8221; philosophy.  It is really frustrating to come away from a couple of days&#8217; effort with nothing to show for it, though.</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2009/07/asterisk-chan_mobile-fail/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>LDAP-backed DNS and DHCP&#8230;?</title>
		<link>http://veejoe.net/blog/2009/07/ldap-backed-dns-and-dhcp/</link>
		<comments>http://veejoe.net/blog/2009/07/ldap-backed-dns-and-dhcp/#comments</comments>
		<pubDate>Wed, 22 Jul 2009 10:42:47 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networks]]></category>
		<category><![CDATA[dhcp]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[ldap]]></category>
		<category><![CDATA[router]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=5437</guid>
		<description><![CDATA[I&#8217;m having a bit of an infrastructure redesign here at the Crossed Wires campus.  Each time I have an outage (the last one was caused by a power failure) I learn a little more about the holes in my current setup and what I can do better. I&#8217;m implementing a router box on an old [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m having a bit of an infrastructure redesign here at the Crossed Wires campus.  Each time I have an outage (the last one was caused by a power failure) I learn a little more about the holes in my current setup and what I can do better.</p>
<p>I&#8217;m implementing a router box on an old low(-ish)-power PC that will be backed up by a virtual machine on my main virt-box.  I&#8217;ve already done most of the preparation of using <a href="http://www.keepalived.org" target="_blank">keepalived</a> to implement VRRP, and a colleague has given me some pointers in using the <a href="http://www.linux-ha.org" target="_blank">Linux-HA</a> tools like <a href="http://www.linux-ha.org/Heartbeat" target="_blank">Heartbeat</a> and <a href="http://www.drbd.org/" target="_blank">DRBD</a> to make services like e-mail and Samba redundant.</p>
<p>I&#8217;ve had a soft spot for LDAP for ages; I&#8217;ve always thought that putting as much backend data into LDAP as you can would be a really good way to get failover and redundancy.  Instead of having to deal with every single server&#8217;s different way of doing replication and failover, just bung everything into LDAP and get <em>that</em> replicating.  Sounds good in theory, but in a nutshell it&#8217;s not working out that way for the two least-celebrated but most important components of my (arguably any) network: DNS and DHCP.</p>
<p>There are a number of LDAP-backed DNS projects out there.  If I&#8217;m willing to go to the bleeding edge with BIND on my Gentoo build I can get access to the two most talked-about ones (<a href="http://bind9-ldap.bayour.com/" target="_blank">bind9-sdb-ldap</a> and the <a href="http://bind-dlz.sourceforge.net/ldap_driver.html" target="_blank">BIND DLZ LDAP driver</a>), and other solutions like <a href="http://www.powerdns.com" target="_blank">PowerDNS</a> and <a href="http://ldapdns.sourceforge.net" target="_blank">ldapdns</a> are available.  But none of them offer integration with DHCP, and I&#8217;m currently using dhcpd&#8217;s &#8220;interim DDNS update method&#8221; to make sure that hostnames are seen in my DNS when a lease is granted (okay, there&#8217;s a Perl daemon that goes with bind9-sdb-ldap, but it seems like a sort-of clunky afterthought).</p>
<p>Speaking of DHCP, LDAP backends for it are virtually non-existent.  The only LDAP-enablement I&#8217;ve found for ISC DHCP involves putting the <em>config file</em> into LDAP, not the leases&#8230;  I actually used that for a few days a while ago and pulled it out because it was actually more work to do it that way (and for no benefit in failover).</p>
<p>It seems to me it would be a project ripe for the picking: take an integrated DNS/DHCP server like <a href="http://www.thekelleys.org.uk/dnsmasq/doc.html" target="_blank">dnsmasq</a> and make it write into LDAP instead of to a file.  If I had more free time I&#8217;d probably have a go at it, except for the fact that no-one really seems to be that interested in storing DNS and DHCP in LDAP: that it hasn&#8217;t been done says to me that there&#8217;s no demand for it, and it&#8217;d end up being a big waste of time and effort.</p>
<p>Over to you, lazyweb&#8230;  Is this a yawning chasm of unfulfilled networking dreams, or a case of me trying to make something more complex than it needs to be?  After all, the rest of the world gets by with DNS master-slave and DHCP failover, they should be good enough for me too, right?  <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2009/07/ldap-backed-dns-and-dhcp/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Trouble with apt-get and Squid</title>
		<link>http://veejoe.net/blog/2009/05/trouble-with-apt-get-and-squid/</link>
		<comments>http://veejoe.net/blog/2009/05/trouble-with-apt-get-and-squid/#comments</comments>
		<pubDate>Mon, 11 May 2009 04:36:44 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[apt]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[squid]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=31</guid>
		<description><![CDATA[I recently started having trouble with APT transactions on my Kubuntu desktop. &#8220;apt-get update&#8221; would fail for some source entries with the error &#8220;The HTTP server sent an invalid reply header&#8221;. I thought it was something specific to (K)Ubuntu, but when I had the exact problem on my NSLU2 running Debian I figured the problem [...]]]></description>
			<content:encoded><![CDATA[<p>I recently started having trouble with APT transactions on my Kubuntu desktop. &#8220;apt-get update&#8221; would fail for some source entries with the error &#8220;The HTTP server sent an invalid reply header&#8221;. I thought it was something specific to (K)Ubuntu, but when I had the exact problem on my NSLU2 running Debian I figured the problem must be elsewhere…</p>
<p>I&#8217;d recently updated the machine that provides the transparent web proxy function for the network; one of the updates took Squid up to version 3.0 (from 2.6). This was the first thing I was suspicious of.</p>
<p>There&#8217;s an option in Squid that controls how it handles an &#8220;If-Modified-Since&#8221; request from a client. The default is for Squid to respond based on the age of the item in the <em>cache</em>, not based on the real item on the source web page. The comments in the Squid config file indicate that some clients use an IMS when requesting a reload — looks like APT is one of those clients.</p>
<p>Setting this option to &#8220;on&#8221; (from the default of &#8220;off&#8221;) in <strong>squid.conf</strong> fixed the issue for me:</p>
<p><code>refresh_all_ims on</code></p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2009/05/trouble-with-apt-get-and-squid/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Comments and Downtime</title>
		<link>http://veejoe.net/blog/2009/03/comments-and-downtime/</link>
		<comments>http://veejoe.net/blog/2009/03/comments-and-downtime/#comments</comments>
		<pubDate>Sun, 15 Mar 2009 02:25:40 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[problem]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=51</guid>
		<description><![CDATA[Observant readers will notice that they are no longer able to respond to posts. The blog-spammers have won the battle but, as they say in the classics, they will not win the war&#8230; I&#39;ve turned off the comment capability, until I can get something in place to bring the rubbish under control (a recent update [...]]]></description>
			<content:encoded><![CDATA[<p>Observant readers will notice that they are no longer able to respond to posts. The blog-spammers have won the battle but, as they say in the classics, they will not win the war&#8230;</p>
<p>I&#39;ve turned off the comment capability, until I can get something in place to bring the rubbish under control (a recent update to PolarBlog helped a bit, in that the crap doesn&#39;t display on the site any more, but when I log on I get to see the mess). I&#39;m thinking of a new site, where I can discuss technical stuff a bit more and thoroughly while keeping the private stuff separate if I need to.</p>
<p>The site has had a bit of downtime recently, due to my non-existent monitoring of what&#39;s happening on my hosted server. This will change shortly, and I&#39;m looking forward to things returning to the stability they had when I was self-hosting.</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2009/03/comments-and-downtime/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Photo printing pain</title>
		<link>http://veejoe.net/blog/2008/12/photo-printing-pain/</link>
		<comments>http://veejoe.net/blog/2008/12/photo-printing-pain/#comments</comments>
		<pubDate>Tue, 16 Dec 2008 02:47:34 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Soapbox]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=71</guid>
		<description><![CDATA[S went to print some photos the other day, and what was supposed to have been a simple exercise turned out to be a very frustrating one for both of us. I was utterly amazed to discover that even on the eve of 2009 there are web sites that think the world is only viewed [...]]]></description>
			<content:encoded><![CDATA[<p>S went to print some photos the other day, and what was supposed to have been a simple exercise turned out to be a very frustrating one for both of us. I was utterly amazed to discover that even on the eve of 2009 there are web sites that think the world is only viewed through Windows&#8230;</p>
<p>S&#39;s and my respective creative sides are being adequately satisfied by the iLife suite on the Mac, but there are times when we need to get the pictures out of the silver tower and onto other media&#8212;on this occasion paper, for albums and so on. A large <a href="http://www.bigw.com.au">retailer</a> here has part of their floor space in each store set aside for those photo printing kiosks, and I introduced S to the art of putting photos onto a USB stick so that she could print some photos when next she went there&#8230;</p>
<p>On her return from the shop, she reported that we hadn&#39;t successfully put the photos she wanted onto the stick. When she&#39;d plugged the stick in, she&#39;d found only less than half of the photos we&#39;d stored there. Sure enough, when I plugged the stick in all the files were there safe and sound. Strange thing was I could find nothing in common about the files (uppercase/mixedcase filename, long or 8.3 filename, datestamp, etc) that would have yielded the number of photos that the kiosk had found on it.</p>
<p>Annoying, but life is too short to worry about it. After all, this same retailer was plastering adverts of their new web-based photo printing service&#8230; S could submit the photos online for printing and pick them up from the store later.</p>
<p><code>&lt;sarcasm&gt;</code>This is where the fun really started.<code>&lt;/sarcasm&gt;</code></p>
<p>Their app is Flash-based but seems to have some Java involved as well. While it loaded quickly enough, the app portion of the web page had an incongruous grey background that just looked dodgy. S had to create an account and sign onto the site just to get this far though, which was a bit annoying.</p>
<p>The workflow seemed to be to create an album, upload pictures to the album, then select photos from the album for processing. Creating the album went fine, but when the upload function was selected there were no action buttons visible to complete the operation! S was using Safari, but Firefox made no difference.</p>
<p>Then I suggested she use her laptop, which runs Ubuntu 8.04. The situation actually seemed a bit better to start with, as instead of the upload function showing an embedded file selection dialog like it did on the Mac we got a &#34;normal&#34; GNOME file dialog box. However, only some of the photos showed again: this time, it was because they had hard-coded a non-modifiable filename filter for the dialog that was only picking lower-case file extensions!</p>
<p>Trying to work around this, I mounted the stick manually with different mount options. I succeeded in getting all but one of the files showing with a lowercase name, and a rename fixed that one. Back in the web page however, it still didn&#39;t like us: any file chosen from the dialog box resulted in a nonsensical error message followed by a &#34;You have selected no files to upload&#34; dialog.</p>
<p>S was beyond caring by this stage (she has a very low threshold for being stuffed around by technology). She went to <a href="http://www.snapfish.com.au">Snapfish</a> after a friend&#39;s recommendation, and found a well-designed and easy to use WEB site that required no downloads or other junk.</p>
<p>So why did this wind me up to the point of spending all this time blogging it? Because nowhere on Big-W&#39;s site is there any mention of browser or operating system compatibility. Not even a &#34;we&#39;ve tested only on Windows, Mac users may experience difficulty&#34;[1]. Not a blessed thing. Their Help page has a single paragraph about trouble uploading, blaming &#34;your IT Department&#34; for &#34;setting certain network properties that inhibit the upload tool from working&#34;.</p>
<p>I wonder if the developers of the app were just so blind to believe that their gunk would just work wherever it was run, or whether they really think that it&#39;s a Windows world. Of the two I hope it&#39;s the former. <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>So Snapfish gets a recommendation for being not just an application hosted on the web but a <strong>web application</strong>. They do good photos too!</p>
<p>[1] I never expect to see Linux mentioned on these things and get pleasantly surprised on the occasions it is; even if it says &#34;Linux is not supported&#34;, someone there at least knows enough to mention it.</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/12/photo-printing-pain/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The difference between pipe and redirection</title>
		<link>http://veejoe.net/blog/2008/12/the-difference-between-pipe-and-redirection/</link>
		<comments>http://veejoe.net/blog/2008/12/the-difference-between-pipe-and-redirection/#comments</comments>
		<pubDate>Thu, 04 Dec 2008 00:58:29 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[shell]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=101</guid>
		<description><![CDATA[Newcomers to UNIX-like operating systems are often confused by the difference between the shell operations pipe and redirection. The difference is easily explained with an example, in the context of web development. The shell command echo "st=1" &#124; ./lifeswork.pl shows how a pipe is used to supply command line input to a script usually invoked [...]]]></description>
			<content:encoded><![CDATA[<p>Newcomers to UNIX-like operating systems are often confused by the difference between the shell operations <b>pipe</b> and <b>redirection</b>. The difference is easily explained with an example, in the context of web development. The shell command <code>echo "st=1" | ./lifeswork.pl</code> shows how a pipe is used to supply command line input to a script usually invoked via CGI in a web server. This allows the script to be more easily debugged by testing at the command line. The shell command <code>echo "st=1" > ./lifeswork.pl</code> shows how redirection uses command line input to overwrite a script file, destroying the file and the web developer&#39;s sanity. Hopefully this example illustrates the difference between pipe and redirect, and helps you avoid the idiotic mistake I just made.</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/12/the-difference-between-pipe-and-redirection/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Security blows</title>
		<link>http://veejoe.net/blog/2008/11/security-blows/</link>
		<comments>http://veejoe.net/blog/2008/11/security-blows/#comments</comments>
		<pubDate>Tue, 25 Nov 2008 01:00:45 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Soapbox]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[ssh]]></category>
		<category><![CDATA[synergy]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=111</guid>
		<description><![CDATA[I was about to post about how pleased I was with Synergy in helping me tidy up my desktop clutter (by removing a keyboard and mouse from the surface). Ironically, I&#8217;m instead posting about a problem with the configuration that will cause me to throw it out and look for something else. Why the title? [...]]]></description>
			<content:encoded><![CDATA[<p>I was about to post about how pleased I was with <a href="http://synergy2.sourceforge.net">Synergy</a> in helping me tidy up my desktop clutter (by removing a keyboard and mouse from the surface). Ironically, I&#8217;m instead posting about a problem with the configuration that will cause me to throw it out and look for something else. Why the title? Because the default configuration of a Linux distribution nowadays has given me no way to fix this ridiculously simple problem without powering off the running PC, VMware guests and all.</p>
<p>The problem is that Synergy and the VMware console don&#8217;t play well together (I could have sworn that when I first started using Synergy I had no trouble with it, but there are a few hits around that describe problems like I&#8217;ve now hit). The problems people are reporting are that keys like Shift and Ctrl are not passed to the VM (some described <a href="https://bugs.launchpad.net/ubuntu/+source/synergy/+bug/215745">here</a> and <a href="http://communities.vmware.com/thread/110726">here</a>).</p>
<p>My problem is slightly different: the screen of my Synergy client (the one that&#8217;s running VMware) locked while a VMware guest had focus. Now, the Shift and Ctrl keys are not picked up by gnome-screensaver to unlock the screen. Even the real keyboard attached directly via USB doesn&#8217;t work. Big problem, for the following reasons:</p>
<p>* Thanks to password strength rules enforced on the Linux build I use, my password now has a Shift-obtained punctuation character.<br />
* I can&#8217;t switch to a virtual console, since that requires Ctrl (e.g. Ctrl-Alt-F1).</p>
<p>Okay, so the keyboard doesn&#8217;t work. This client machine just happens to be a tablet PC, and I had hacked gnome-screensaver (to display the onscreen keyboard to allow the screen to be unlocked in tablet mode). I grabbed the pen and tapped out my password, but it *still* didn&#8217;t work: even the output of the virtual keyboard gets the Shift modifier dropped. Hmm&#8230; Starting to fume now.</p>
<p>Never mind, I&#8217;ll connect via the network&#8230;</p>
<p>* Fedora does not start SSH by default (okay, yes, and I didn&#8217;t make sure it gets started after I&#8217;d finished the install).<br />
* There is no remote desktop (VNC server, XDMCP) configured.<br />
* The shiny web-based management interface on VMware Server 2.0 only listens on 127.0.0.1 (or is being blocked by the Fedora firewall).</p>
<p>So with no way to get access to the machine to try and fix it, a power-off is the only solution. Some readers are probably thinking &#8220;boo-hoo, diddums had to kill-switch his widdle poota, how tewwible,&#8221; but I <b>hate</b> having to do that; not because the system doesn&#8217;t recover, but it&#8217;s &#8220;problem resolution, Windows-style&#8221;.</p>
<p>Even though the real problem was between Synergy and VMware, I&#8217;m blaming the (perceived) need for security since without that I wouldn&#8217;t have a cryptic password that I can&#8217;t enter without Shift and a system I can&#8217;t administer over the network. Red Hat and Fedora doing everything in their power to ensure I don&#8217;t fall prey to nasty Internet fiends (rich analogies to <a href="http://matt.bottrell.com.au/archives/286-Government-Morning-Milk-Afternoon-Naps.html">governmental nannying</a>, but that&#8217;s probably over-thinking things).</p>
<p>So in summary: Synergy is great, just as long as you&#8217;re not using VMware console and have a password with punctuation or uppercase&#8230; Remember to have your SSH or other network access enabled before you play!</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/11/security-blows/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sometimes, Gentoo bites</title>
		<link>http://veejoe.net/blog/2008/10/sometimes-gentoo-bites/</link>
		<comments>http://veejoe.net/blog/2008/10/sometimes-gentoo-bites/#comments</comments>
		<pubDate>Thu, 30 Oct 2008 01:51:01 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[update]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=151</guid>
		<description><![CDATA[I had a failure of my Cacti system over the weekend, entirely caused by bad Gentoo emerges. Two different problems, both caused by bad upgrades of packages brought in from ~amd64 or ~x86, made Cacti colourfully dysfunctional for a couple of days. The first was an update to the spine resource poller, part of the [...]]]></description>
			<content:encoded><![CDATA[<p>I had a failure of my Cacti system over the weekend, entirely caused by bad Gentoo emerges. Two different problems, both caused by bad upgrades of packages brought in from ~amd64 or ~x86, made Cacti colourfully dysfunctional for a couple of days.</p>
<p>The first was an update to the <b>spine</b> resource poller, part of the Cacti project but installed separately (it used to be called cactid). Turns out that somewhere between 0.8.7a and 0.8.7b, bugs were introduced that made spine unreliable on 64-bit systems. The update brought in a SVN version of spine which, while still labelled 0.8.7a, must have been somewhere after one or more of the bugs came in. The symptom was that every data value obtained via SNMP was garbage and ignored.</p>
<p>The second issue was strange &#8212; graphs were getting generated (even those for which there was no data) but there was no text on them! Titles, margins, legend, axes, all were blank. Some posts pointed to a problem accessing the TTF font file provided with rrdtool, but the actual problem turned out to be the upgrade to rrdtool 1.2.28 which introduced different parameters for the configuration of text attributes in graphs &#8212; and a corresponding &#8220;feature&#8221; that suppressed any text output if the new parameters were missing.</p>
<p>So what does &#8220;~&#8221; have to do with this? The software on your system is built according to the architecture of your machine. In Gentoo, this is called your &#8220;arch&#8221; (for architecture) and is usually &#8220;x86&#8243; or &#8220;amd64&#8243;. Gentoo implements a &#8220;testing branch&#8221; in an arch which starts with &#8220;~&#8221;; if a pre-release version of a package exists in portage you can bring it in with the &#8220;~x86&#8243; keyword. The nice thing about this is that you don&#8217;t have to enable a testing repository across your whole system &#8212; you can enable the ~ keyword for specific packages on your system, and everything else stays stable.</p>
<p>Unfortunately, this flexibility has a cost. The &#8220;amd64&#8243; arch seems to lag a bit behind &#8220;x86&#8243; in terms of packages being marked stable or just simply having packages available. This means that just to get things installed, it&#8217;s necessary to flag packages with &#8220;x86&#8243;, &#8220;~amd64&#8243; or even &#8220;~x86&#8243;. This flagging is easily done &#8212; almost too easy in fact, as it creates a problem later on when the package you actually set the keyword for eventually becomes stable and you don&#8217;t need the keyword set any more. It&#8217;s a manual process to revisit the keywords you&#8217;ve set and verify that they are still needed (and you know how well manual processes work).</p>
<p>Some time ago I started adding comments to the Portage config file where keywords are set, trying to explain why I set the flag: &#8220;to bring in version 1.2.34&#8243; for example. That way, if I ever do get around to manually auditing the package.keywords file, I&#8217;ll be able to check if some of the keywords are still needed. Still a manual review though.</p>
<p>So in the case of rrdtool and spine, I had set the &#8220;~&#8221; keyword some time in the past for some reason, possibly to get early access to a bug-fix ebuild. With no established method to revisit the keywords, I continued to pull in unstable versions of packages long after the packages I really needed had been marked stable. Eventually, it bit me.</p>
<p>The pre- and post-upgrade chacklist grows some more&#8230;&nbsp;&nbsp;:)</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/10/sometimes-gentoo-bites/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Don&#8217;t you hate it when defaults change?</title>
		<link>http://veejoe.net/blog/2008/06/dont-you-hate-it-when-defaults-change/</link>
		<comments>http://veejoe.net/blog/2008/06/dont-you-hate-it-when-defaults-change/#comments</comments>
		<pubDate>Sun, 22 Jun 2008 19:29:42 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[change]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=241</guid>
		<description><![CDATA[Sometimes when working with computers and networks (as with most things in life) the thing that causes the most problem is the last thing you suspect&#8211;or often something you never suspected. I had a reminder of this the other day, when a moderately complex task I&#8217;d set myself looked to be scuppered for absolutely no [...]]]></description>
			<content:encoded><![CDATA[<p>Sometimes when working with computers and networks (as with most things in life) the thing that causes the most problem is the last thing you suspect&#8211;or often something you never suspected. I had a reminder of this the other day, when a moderately complex task I&#8217;d set myself looked to be scuppered for absolutely no reason I could fathom.</p>
<p>I&#8217;ve got a system here that is a host for a virtualisation environment I run. I dedicated a couple of network cables to the adapters owned by the virtualised system, and a third one was attached to the host&#8217;s IP stack. To get connectivity for another system, I had to steal the host&#8217;s cable though&#8211;which wasn&#8217;t a problem as the operation of the system works more-or-less entirely from the console rather than over the network. Just for grins, however, I decided to set up connectivity to the host by routing <i>through</i> the virtualised environment it hosts.</p>
<p>Having established the tunnel connection between the virtualiser and the host stack, I set about configuring the special details required to support routing through this system. After a few tries at getting it right, I was rewarded with successful pings between the systems on my LAN and the hosts system on its routed connection. So I jumped onto the console of the machine and light up Firefox, but got an error page. I realised I hadn&#8217;t set DNS resolution&#8211;on the LAN, the machine was having <em>resolv.conf</em> configured by DHCP, so now I had to do it manually.</p>
<p>Okay, so DNS resolver now correctly set, let&#8217;s see Firefox WIN! Oh. Fail.</p>
<p>When I hit Try Again or Reload, the page would instantly refresh. This was starting to look like no routing problem. I used <em>dig</em> to test name resolution, and it told me it was being rejected. I looked at my <i>dns.conf</i>&#8230; Nope, so subnet restrictions coded there&#8230;</p>
<p>So I hit the lazyweb, and it didn&#8217;t take too long before I found a forum post that led me to <a href="http://www.isc.org/index.pl?/sw/bind/docs/support_bulletin_200707.php">this</a>. In BIND 9.4.1-P1, ISC basically changed the default behaviour of a couple of query filtering settings. This had the effect of rejecting some requests that were previously accepted, such as those from non-local subnets. A reconfiguration of my DNS server gave me success at last.</p>
<p>Hooray for persistence! Now, someone hand me some Cat-5 so I can make a cable and plug this thing back in properly. <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/06/dont-you-hate-it-when-defaults-change/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ubuntu 8.04 Wireless Weirdness</title>
		<link>http://veejoe.net/blog/2008/06/ubuntu-804-wireless-weirdness/</link>
		<comments>http://veejoe.net/blog/2008/06/ubuntu-804-wireless-weirdness/#comments</comments>
		<pubDate>Wed, 18 Jun 2008 00:10:23 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networks]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[wireless]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=251</guid>
		<description><![CDATA[Over the last fortnight I finally got the wriggle-on to upgrade all my (K)Ubuntu systems to Hardy Heron. Various issues occurred with each of them, but overall the entire exercise went smoothly (my wife&#8217;s little old Fujitsu Lifebook was probably smoothest of the lot). I had one rather vexing issue however, on my old (I&#8217;m [...]]]></description>
			<content:encoded><![CDATA[<p>Over the last fortnight I finally got the wriggle-on to upgrade all my (K)Ubuntu systems to Hardy Heron. Various issues occurred with each of them, but overall the entire exercise went smoothly (my wife&#8217;s little old Fujitsu Lifebook was probably smoothest of the lot). I had one rather vexing issue however, on my old (I&#8217;m tempted to say &#8220;ancient&#8221;) Vaio laptop.</p>
<p>The onboard wireless on this thing is an ipw2100, hence only 802.11b, and I had a PCMCIA 802.11g NIC lying around (actually it came from the Lifebook, liberated from there after I bought it a Mini-PCI 802.11g card on eBay). On Gutsy, I used the hardware kill-switch to disable the onboard adapter to make double-sure that it wouldn&#8217;t try and drag the network down to 11Mbps.</p>
<p>This laptop was the last machine I upgraded to Hardy, and I was playing with KDE 4 on it so I was looking forward to seeing what KDE4-ness made it into Hardy. While the upgrade was taking place the wi-fi connection dropped out, but I didn&#8217;t think anything of it since Ubuntu upgrades try and restart the new versions of things and I figured NetworkManager had fallen and couldn&#8217;t get up. After the reboot, however, KNetworkManager (still the KDE3 version, don&#8217;t get me started there) could find no networks &#8212; could find no adapters, in fact.</p>
<p>I logged back into KDE3 and poked. Still no wireless (as if the desktop would make a difference, but I had to make *some* start on pruning the fault tree). The Hardware Drivers Manager was reporting that the Atheros driver was active (for the PCMCIA card), and an unplug-plug cycle generated all kinds of good kernel messages.</p>
<p>On a whim, I flicked the hardware kill-switch for the onboard wifi[1]. Almost instantly, KNetworkManager prompted to get my wallet unlocked &#8212; it had found my network and wanted the WPA passphrase. I provided it, and got a connection: <i>via the PCMCIA NIC</i>. </p>
<p>&#8220;That&#8217;s odd&#8221;, I thought, and flicked the switch. A few seconds passed, and the link dropped. Flicked the switch on, link came back. Flicked the switch off again: this time a few minutes went past, but again the link failed. Tried it several times again, and the same thing happened. The state of the kill-switch for the onboard NIC was influencing the other NIC too!</p>
<p>It seems that this is altered behaviour in NetworkManager, applying the state of the hardware switch to all wi-fi adapters. If it annoys me significantly I&#8217;d like to think I&#8217;ll trawl changelogs, or even better lodge something on Launchpad&#8230; more likely though I&#8217;ll forget all about it having found a kludgy workaround.</p>
<p>I&#8217;ve now added ipw2100 to the module blacklist and things work okay (presumably because the state of the onboard switch can&#8217;t be reported any more). I&#8217;ll also have a think about whether a few dollars for another g-capable Mini-PCI NIC will be throwing good money after bad, as this laptop really is quite long-in-the-tooth.</p>
<p>Oh yes, that&#8217;s right&#8230; KDE 4. Next time perhaps. <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>[1] I can&#8217;t think why I did this. I knew that I&#8217;d disabled 802.11b in my access point, to make triple-sure an 802.11b device wouldn&#8217;t slow my network down&#8230; The onboard 802.11b NIC would never successfully get a connection.</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/06/ubuntu-804-wireless-weirdness/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zeroshell redux</title>
		<link>http://veejoe.net/blog/2008/05/zeroshell-redux/</link>
		<comments>http://veejoe.net/blog/2008/05/zeroshell-redux/#comments</comments>
		<pubDate>Sun, 04 May 2008 03:08:59 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networks]]></category>
		<category><![CDATA[router]]></category>
		<category><![CDATA[vmware]]></category>
		<category><![CDATA[zeroshell]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=301</guid>
		<description><![CDATA[I wrote about Zeroshell, and how I thought it was pretty great. I still do, but it hasn&#8217;t taken centre-stage in my network configuration like I thought it would. I&#8217;ve had to tone down my raves about some of its integrated features as well. The fact that it hasn&#8217;t taken centre-stage is possibly as much [...]]]></description>
			<content:encoded><![CDATA[<p>I <a href="http://veejoe.net/?eid=891" title="10:36PM April 12, 2008 - Crossed Wires: Zeroshell: network services distro">wrote</a> about Zeroshell, and how I thought it was pretty great. I still do, but it hasn&#8217;t taken centre-stage in my network configuration like I thought it would. I&#8217;ve had to tone down my raves about some of its integrated features as well.</p>
<p>The fact that it hasn&#8217;t taken centre-stage is possibly as much to do with VMware&#8217;s bogus clock-drift problems as anything, as I haven&#8217;t dedicated hardware to my Zeroshell instance yet (I could keep it running virtual, but some of the things I want to do with it will make more sense if it&#8217;s a separate machine). VMware Server takes another barb for its handling of VLAN tagging (but to be fair that might be the Linux 8021q module works). It seems that if you have <em>any</em> VLAN definitions on a network card, VMware won&#8217;t get to see any VLAN tags on that NIC. You can get a guest attached to a bridged interface to see the real VLAN tags, but only if Linux has not got any VLAN awareness over that NIC.</p>
<p>Alright, so enough ragging on VMware. I have Zeroshell attached to the networks it needs and all is fine. Except that I can&#8217;t actually change anything! The web interface that I spoke so highly of originally is actually very restricted in some areas. One of these is in the RADIUS server, and it bit me badly when I decided I&#8217;d use Zeroshell&#8217;s RADIUS server to authenticate access to the Web interface of my Linksys switch. Turns out that the Linksys firmware expects a particular attribute to appear in the response from the RADIUS server.</p>
<p>The fact that Linksys don&#8217;t document this anywhere is not Zeroshell&#8217;s fault, but that there is no interface allowing me to do updates to the records above what Zeroshell uses for its own applications is a bit of an issue. It means that instead of a Zeroshell box potentially becoming the hub of administration functions, it is in danger of becoming just another little vertical application server that doesn&#8217;t integrate.</p>
<p>Having said that, the backend for most (all?) authentication data is LDAP so a tool like PHPLDAPAdmin might be usable to extend the base records. But, arguably, I shouldn&#8217;t have to do that! It is still beta software though, so improvements and enhancements will be made.</p>
<p>The other area that it&#8217;s a bit lacking in is monitoring/graphing. Okay sure, I&#8217;d probably integrate Zeroshell into the rest of my Cacti setup, but it would be nice if Zeroshell did like other router distos and had a pre-built statistics/graphing page.</p>
<p>Zeroshell is still my pick (I revisited pfSense and fixed the problem updating, but to me it doesn&#8217;t have enough function to justify running its own hardware), but it&#8217;s just not quite the bees-knees it was when I first saw it.</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/05/zeroshell-redux/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>When Upgrades Go Wrong</title>
		<link>http://veejoe.net/blog/2008/05/when-upgrades-go-wrong/</link>
		<comments>http://veejoe.net/blog/2008/05/when-upgrades-go-wrong/#comments</comments>
		<pubDate>Sun, 04 May 2008 02:14:33 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[linksys]]></category>
		<category><![CDATA[nslu2]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[update]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=311</guid>
		<description><![CDATA[I&#8217;m running Debian on a Linksys NSLU2 storage device, and it works really well in general. So well in fact that a lot of the time I forget the thing is even there! It&#8217;s sitting in the garage minding its own business, serving out video and music files, and storing backups of the other systems [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m running Debian on a Linksys NSLU2 storage device, and it works really well in general. So well in fact that a lot of the time I forget the thing is even there! It&#8217;s sitting in the garage minding its own business, serving out video and music files, and storing backups of the other systems in the house. Just occasionally, however, the thought pops into my head to run a system update over it &#8212; a habit I&#8217;ve gotten into for the Gentoo systems in the house, but &#8220;the Slug&#8221; usually misses out. About a fortnight ago however I decided to do the &#8220;apt-get shuffle&#8221;. Timing, as they say in sport and comedy, is everything.</p>
<p>I&#8217;ve become fairly complacent about system updates. All the distros I use now have got excellent tools for keeping everything up-to-date, and for making sure that things don&#8217;t go wrong in the process. It&#8217;s all just software, however, and it&#8217;s all too easy for something to get missed or for a bug to creep in. One such bug that did exactly that is <a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=478236">this one</a>. Unreported at the time I did my update, it rendered my Slug unbootable after the update I gave it.</p>
<p>It took me a day to realise that the Slug was off the network. The failure of the nightly backups was my first clue. Next was the inability to stream any of the media files stored on it. For the next week, on-and-off, I tried a dozen things in an attempt to get it working again. I finally arrived at a process that used the Debian Installer firmware image as a way to get a running system onto the device, allowing me to then access the hard disk and try and reflash earlier kernel and initrd images to it.</p>
<p>I started trying to work on the boot disk, but I couldn&#8217;t see it for some reason. Then I discovered that the power supply of the USB2 disk enclosure that holds it was playing up! Now, I had two problems&#8211;was one related to the other? Was my boot problem just a hard disk problem all along? Turns out that the power supply failure was a coincidence&#8211;replacing the power supply got the disk working again but made no improvement in the bootup scenario.</p>
<p>The NSLU2 boots differently to a PC. On a PC, the BIOS locates some boot code on a storage device and executes that, which usually is a program like LILO or GRUB that has more intelligence and (in the case of GRUB) a way to interact with it. These boot loader programs then load in the kernel and start executing it. With the NSLU2, however, the kernel and the &#8220;initial root device&#8221; are written into the flash memory of the device&#8211;they more-or-less <em>are</em> the BIOS.</p>
<p>On a PC, if there&#8217;s a problem with the kernel or initrd you can generally select another one from a list. Worst-case would have you installing the hard-disk in a different PC and fixing the problem from there. On a NSLU2, however, any problem with the kernel or initrd <em>can&#8217;t</em> be fixed by changing the hard disk because the kernel and initrd aren&#8217;t read from the hard disk but from the flash memory instead. There&#8217;s also no option for selecting another kernel, since the NSLU2 is a &#8220;headless&#8221; device with no console (besides, there&#8217;d be no room in the flash memory for two copies of kernel and initrd).</p>
<p>Once I&#8217;d been able to get my Slug booting (by writing out a previous version of a kernel and initrd) I was going to leave it alone&#8230; but curiosity got the better of me. I&#8217;d suspected a bad update to the utility that generates the initrd, and sure enough an &#8220;apt-get update &amp;&amp; apt-get upgrade&#8221; revealed a pending update to the initramfs-tools package. Google led me then to the above bug report. With fingers crossed I did the update, reflashed, and rebooted&#8230; successfully!</p>
<p>The Slug is now back in its usual place, quietly going about its business of entertaining us and keeping critical data safe. I might at least think twice before doing a kernel update on the poor beast in future though!</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/05/when-upgrades-go-wrong/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zeroshell: network services distro</title>
		<link>http://veejoe.net/blog/2008/04/zeroshell-network-services-distro/</link>
		<comments>http://veejoe.net/blog/2008/04/zeroshell-network-services-distro/#comments</comments>
		<pubDate>Sat, 12 Apr 2008 01:36:28 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networks]]></category>
		<category><![CDATA[router]]></category>
		<category><![CDATA[zeroshell]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=331</guid>
		<description><![CDATA[I love it when, almost by chance, I find something new. I decided yesterday to look at FLOSS-based router distributions. I&#8217;ve been using IPCop for a while, as an easy way to create a VPN to another location. Unfortunately, IPCop failed my latest requirement: 802.1Q VLAN support. So I went surfing and found an absolute [...]]]></description>
			<content:encoded><![CDATA[<p>I love it when, almost by chance, I find something new. I decided yesterday to look at FLOSS-based router distributions. I&#8217;ve been using <a href="http://www.ipcop.org">IPCop</a> for a while, as an easy way to create a VPN to another location. Unfortunately, IPCop failed my latest requirement: 802.1Q VLAN support. So I went surfing and found an absolute ripper in <a href="http://www.zeroshell.net/eng/">Zeroshell</a>, but I didn&#8217;t find him straight away&#8230;</p>
<p>First I found <a href="http://www.pfsense.com">pfSense</a>, a FreeBSD-based distro that seemed to fit the bill&#8211;indeed the very first question the Live-CD asked me on bootup was &#8220;do you want to use VLANs?&#8221;. It also promised a very extensive set of additional packages that extend it&#8217;s capability into areas like file/print, WWW proxying, and a host of other features. However, even though it has a very nice web-based configuration facility, due to what looks like a problem on their web site I was unable to even look at what packages are available. Since some of the basic function I would like is provided by these packages, I&#8217;ve had to move on&#8211;but pfSense gets an honourable mention because of its easy installation and excellent configuration interface.</p>
<p>I looked again at <a href="http://www.smoothwall.org/">Smoothwall</a>, but soon remembered why I discounted it at the time I chose IPCop. For me, the level of function I think I&#8217;d use is a bit too close to the threshold of function in the &#8220;community&#8221; (read, &#8220;free&#8221;) version. <a href="http://www.astaro.com">Astaro</a> would go in this category too, except that I was too dense to be able to even find much clear information about the level of function you get in their community version. So no recommendation on either of these, as I&#8217;ve never used either&#8211;I do work with a fellow who happily uses Smoothwall though.</p>
<p>Then, I came across Zeroshell. The lead developer describes it as &#8220;a small Linux distribution for servers and embedded devices aimed at providing the main network services a LAN requires&#8221;. And does it ever! It&#8217;s a veritable Alladin&#8217;s Cave of features and functions. It certainly does everything I was looking for, from VLAN tagging through QoS to VPNs, from an SPI firewall to multi-zone DNS and multi-subnet DHCP servers, but also has Certificate Management (using a self-signed CA certificate or one you import), a RADIUS server, WiFi access-point capability with multiple SSID <em>and VLAN mapping</em>, captive portal or &#8220;normal&#8221; HTTP proxying, 802.1d bridging, clients for Dynamic DNS, a Kerberos 5 server, plus a raft of other capabilities. Zeroshell&#8211;named because the author wanted to provide a system that was extremely flexible and powerful yet did not require users to access a shell prompt&#8211;is remarkably feature rich, and yet the download for the ISO image is only around 100MB (a bit beefier than pfSense, admittedly, which weighed in at around 60MB).</p>
<p>There are a couple of downsides, however. Until very recently, installing to a hard disk was not supported. The distro is designed to boot from a CD only, but can use an installed hard disk (if available) for what it calls &#8220;databases&#8221;, where configuration and other data is kept. With the latest release, however, the developers have created a &#8220;1GB USB drive&#8221; download (the size of the download isn&#8217;t 1GB), which is designed to be copied to a USB pendrive or hard disk.</p>
<p>The other downside (and it&#8217;s not fair to say that, as will become clear) is the web interface. Not because it&#8217;s ugly or not functional: it is neither of those. It&#8217;s clean and well laid out, and fairly consistent. It&#8217;s very technical, however. Where other distros tackle the &#8220;SOHO divide&#8221; by hiding details such as protocol numbers or port ranges, Zeroshell uncovers all this stuff in its gory detail. So it&#8217;s great for someone like me, who looks at the interfaces on other systems and pines for the knobs I can&#8217;t fiddle with, but it&#8217;s not for newcomers.</p>
<p>It looks to be a fairly new project (current release is 1.0beta9), but the forums look good and there does seem to be a bit of activity around it. I&#8217;m running Zeroshell in a VMware guest at the moment while I kick the tyres&#8211;the VMware download is also available from the project&#8217;s mirrors&#8211;but I reckon this one will be a keeper!</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/04/zeroshell-network-services-distro/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>MythTV fun and games</title>
		<link>http://veejoe.net/blog/2008/04/mythtv-fun-and-games/</link>
		<comments>http://veejoe.net/blog/2008/04/mythtv-fun-and-games/#comments</comments>
		<pubDate>Tue, 01 Apr 2008 02:56:51 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[mythtv]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=351</guid>
		<description><![CDATA[Bad things don&#8217;t always come in threes. For my MythTV setup, four bad things all happened at once. First was that the governments of the Australian states that run Daylight Savings Time (DST) decided to jump on the energy-saving bandwagon and change the end-time for DST this year. Second was that the OzTivo folks changed [...]]]></description>
			<content:encoded><![CDATA[<p>Bad things don&#8217;t always come in threes. For my MythTV setup, four bad things all happened at once. First was that the governments of the Australian states that run Daylight Savings Time (DST) decided to jump on the energy-saving bandwagon and change the end-time for DST this year. Second was that the OzTivo folks changed the API for connecting to their program guide data, and closed the old API interface on the same weekend that DST was originally due to finish. Third, for some reason that I&#8217;m still investigating, my run-an-emerge-world-at-least-every-fortnight MythTV backend had an old timezone-data package, so any times it handled that should have still been DST weren&#8217;t. Fourth, <a href="http://svn.whuffy.com/index.fcgi/wiki">Shepherd</a> isn&#8217;t quite as smart as I thought it was, and I didn&#8217;t find out until too late&#8230;</p>
<p>Let me get something straight: Shepherd is the bees-knees of EPG grabbers for Australian MythTV users. If you&#8217;re a MythTV user in .au and not running Shepherd, stop reading this right now and go and update your system to use it&#8211;you&#8217;ll be glad you did. If I had just looked at some of the output it has been generating since OzTivo announced it&#8217;s changes, most of the agro I&#8217;ve suffered the last few hours would have been avoided.</p>
<p>In a nutshell, Shepherd is a &#8220;meta-grabber&#8221;. It includes code that can get program data from a dozen or so sources, and keeps looking up sources until it fills your listings with data goodness. It automatically updates these individual source grabbers as well, so you should never need to worry about its up-to-date-ness (more on that later though). It also fetches extra program data from IMDB and TVDB, and can even automatically grab station icons for you. Highly, highly recommended.</p>
<p>I could see that some of my EPG data was coming from OzTivo because I had seen the notes that they had put in the program data advising of the API change. The weird thing I saw was that for a program I was recording in the same timeslot each day, sometimes the message would be there and other times not. While I thought that this was a little strange, I figured that the OzTivo folks were just being overly cautious and trusted Shepherd to do all the updates it needed.</p>
<p>Then, ever since Sunday morning when the southern states *didn&#8217;t* switch back from DST, I&#8217;ve had recording times out by an hour&#8211;programs trying to record an hour early. So as I mentioned, I had ye-olde timezone data on the backend, which can&#8217;t have helped depending on the data source (although I&#8217;m trying to work out if this actually is a contributor as I would have thought it would send the recordings an hour late&#8230; plus, others who have confirmed their timezone data have had the same problems). For a couple of programs, I actually had double entries: one an hour too early, then a second one at the right time. This was weird, and I still can&#8217;t explain it!</p>
<p>A manual run of <em>mythfilldatabase</em> showed why I was getting the repeated OzTivo API messages. Shepherd had downloaded the updated grabber alright, but the new version has a Perl dependency that wasn&#8217;t satisfied and it couldn&#8217;t run. Rather than bail out, Shepherd elected just to keep running with the old grabber. Given the circumstances, I&#8217;m still deciding how I feel about that. :-</p>
<p>So once I was confident that the grabbers were working okay again, I decided to get the EPG straight. I remembered that mythfilldatabase will not replace any existing data it thinks is valid, which is why only data post-April-5-or-so looked nice again. So, with a mailing list post or two as encouragement, I truncated (database-admin-speak for &#8220;deleted all the data from&#8221;) the &#8220;program&#8221; and &#8220;programrating&#8221; fields in the mythconverg database and ran mythfilldatabase. After about 20 minutes, <em>voila</em>, fixed guide data!</p>
<p>So now I&#8217;m thinking of how I can alert myself to a problem with Shepherd. I used to just check the result of the last mythfilldatabase run through Information Centre or mythweb, but since Shepherd ends cleanly so does mythfilldatabase. Looks like I might have to come up with something hackish to look for Perl runtime errors in the mythfilldatabase log and do a Nagios passive service check or something&#8230; Sigh, as if I needed another little project to keep me busy&#8230; <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/04/mythtv-fun-and-games/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SLES, you make it so hard to like you</title>
		<link>http://veejoe.net/blog/2008/03/sles-you-make-it-so-hard-to-like-you/</link>
		<comments>http://veejoe.net/blog/2008/03/sles-you-make-it-so-hard-to-like-you/#comments</comments>
		<pubDate>Fri, 14 Mar 2008 16:45:26 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Soapbox]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=361</guid>
		<description><![CDATA[Just wended my way through another SLES 10 install on s390x. It&#8217;s b0rked though, and I&#8217;ll probably have to redo it. I had some kind of I/O error during the install which seems to have resulted in a couple of the filesystems being remounted read-only. Not too much trouble you&#8217;d think&#8230; Some things aren&#8217;t starting [...]]]></description>
			<content:encoded><![CDATA[<p>Just wended my way through another SLES 10 install on s390x. It&#8217;s b0rked though, and I&#8217;ll probably have to redo it. I had some kind of I/O error during the install which seems to have resulted in a couple of the filesystems being remounted read-only. Not too much trouble you&#8217;d think&#8230;</p>
<p>Some things aren&#8217;t starting because of missing binaries in /usr, frustrating but probably recoverable. The network startup is totally clagged though, and I can&#8217;t even begin to work out how what happened&#8230; happened.</p>
<p>During bootup, at the time it tries to configure the network interface, I get streams of error messages about problems running the &#8220;ip&#8221; command. The error text is full of garbage that the init script is trying to parse as text configuration&#8211;it looks like a corrupted filesystem or a binary file.</p>
<p>I manually configured the network (not a trivial task in s390x, it must be said), and started to poke around. I got this when I logged in as root:</p>
<p>Last login: Sat Mar 15 12:48:36 2008<br />
/usr/X11R6/bin/xauth: error while loading shared libraries: libXau.so.6: cannot open shared object file: No such file or directory<br />
-bash: read: read error: 0: Is a directory<br />
lxs0za01:~ # </p>
<p>Okay, so I won&#8217;t get funky X-based YaST.&nbsp;&nbsp;No problem, I&#8217;ve spent more time in the ncurses-mode YaST anyway&#8230;</p>
<p>lxs0za01:~ # <b>yast</b><br />
warning: the ncurses frontend is installed but does not work<br />
You need to install yast2-ncurses to use the YaST2 text mode interface<br />
lxs0za01:~ #</p>
<p>WHAT!!! What the @#!$ happened there?!?!?</p>
<p>Okay, so I&#8217;ve calmed down about that, so I go looking for the problem with the network initialisation&#8230;</p>
<p>lxs0za01:~ # <b>cd /etc/sysconfig/network</b><br />
lxs0za01:/etc/sysconfig/network # ls -go ifcfg*<br />
-rw-r&#8211;r&#8211; 1&nbsp;&nbsp; 141 2006-06-17 07:30 ifcfg-lo<br />
lrwxrwxrwx 1&nbsp;&nbsp;&nbsp;&nbsp;16 2008-03-15 02:23 ifcfg-qeth-bus-ccw-0.0.0f00 -> /lib64/ld-2.4.so<br />
-rw-r&#8211;r&#8211; 1 27470 2006-06-17 07:30 ifcfg.template<br />
lxs0za01:/etc/sysconfig/network #</p>
<p>Priceless. You can&#8217;t make this stuff up. I cannot for the <em>life</em> of me work out how this could possibly have happened. I guess I just blame it on a whacked-out filesystem and move along.</p>
<p>Okay, so both of these issues probably have extenuating circumstances unrelated to SLES or YaST&#8230; but it&#8217;s nice to have a vent now and then. I&#8217;ll write up something a bit fairer once I fix this b0rkedness. <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/03/sles-you-make-it-so-hard-to-like-you/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Thinking of a Gentoo desktop</title>
		<link>http://veejoe.net/blog/2008/03/thinking-of-a-gentoo-desktop/</link>
		<comments>http://veejoe.net/blog/2008/03/thinking-of-a-gentoo-desktop/#comments</comments>
		<pubDate>Mon, 03 Mar 2008 02:51:36 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[desktop]]></category>
		<category><![CDATA[gentoo]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=391</guid>
		<description><![CDATA[I know I&#8217;m going to cop a beating on the Planet for this post, but here goes&#8230; For a long time I ran a desktop system built on Gentoo Linux. A while back I tried Ubuntu, and I&#8217;ve been running that as my desktop ever since. Every now and then, though, I feel an inclination [...]]]></description>
			<content:encoded><![CDATA[<p>I know I&#8217;m going to cop a beating on the <a href="http://veejoe.net/dudeville/">Planet</a> for this post, but here goes&#8230;<br />
For a long time I ran a desktop system built on <a href="http://www.gentoo.org">Gentoo Linux</a>. A while back I tried <a href="http://www.ubuntu.com">Ubuntu</a>, and I&#8217;ve been running that as my desktop ever since. Every now and then, though, I feel an inclination to pop back to Gentoo &#8212; usually it will be because of some package I want to be able to install, or later versions of packages that don&#8217;t make it into the usual binary-distro world without introducing &#8220;dependency hell&#8221; (I&#8217;m having this problem at work, with a distro based on RHEL 5.1 and hardware that&#8217;s just too new for it&#8230; Even if I wanted to build drivers from source, the libraries the drivers link against are too old as supplied, meaning I&#8217;d have to rebuild the libraries too, which probably means something else will be too old&#8230;).</p>
<p>I run Gentoo on both my &#8220;servers&#8221; at home. At the time I got my dual-Opteron, Gentoo was the only &#8220;free&#8221; distro around that had a x86_64 version ready to roll. When it came time to build my phone-and-TV server, it got Gentoo as well because it was the only way I could get the right combination of all the versions of code (Apache, PHP, Asterisk, MySQL, MythTV, ccxstream, etc) that I needed and have them all maintained in the distribution&#8217;s package management system (Debian has no ccxstream package, for instance). I <em>don&#8217;t</em> run Gentoo <a href="http://funroll-loops.info">because I&#8217;m a ricer</a>. Portage has the right package mix for me, and its ability to control the configuration of packages through USE flags gives me an opportunity to control the options that are enabled in the packages I install.</p>
<p>I have blogged <a href="http://veejoe.net/?eid=651" title="06:13PM November 25, 2007 - Crossed Wires: I did it again: damn you ATI!">previously</a> about some hardware I bought that I haven&#8217;t been able to put to good use. I decided to give it another try by building a Gentoo system on it, because an ebuild for the bleeding-edge ATI driver that is supposed to support the graphics chipset in this clunker is in Portage.</p>
<p>Let me say, it&#8217;s been a while since I built a Gentoo system from scratch. You don&#8217;t even do it truly from scratch anymore either &#8212; the days of starting with a stage-1 tarball are over apparently, and stage-3 is always the way to go. Even so, this system took a whole weekend to get to the stage where I could log on and get a KDE desktop (to be fair though, there was a lot of kicking off an emerge, coming back to it a couple of hours later to find it had died ten minutes in, fixing the issue and restarting&#8230; so it wasn&#8217;t 48 hours solid time spent).</p>
<p>Unfortunately the ATI driver <em>still</em> doesn&#8217;t support XVideo on this chipset, so I still can&#8217;t use this board for its intended use as a MythTV frontend (I do have an old PCI nVidia 5200 card that, even though it&#8217;s at least three years old, I&#8217;m sure will run rings around this stinking ATI 1250). So the point of the whole exercise was, unfortunately, lost. But I did get a refresher in the amount of effort a Gentoo build would take.</p>
<p>After that weekend&#8217;s effort, I was a bit put off by the thought of building up an entire desktop system from scratch. When I thought about it though, my concerns were for nothing. The compiling? The kind of systems I&#8217;m building on (modern dual-core chips) will chew through compiling most software in a snap &#8212; heck, for simple packages I can install on a Gentoo system quicker than yumex can initialise its repositories. I&#8217;ve got running systems I can use as a model to get USE flags right, and my NFS-shared Portage tree means that I sync once and use everywhere (even downloading source packages happens only once).</p>
<p>Plus, now, I <em>know</em> Gentoo. Sure, APT on a Debian-based distro is nice, but I still am lost when it comes to the right dpkg command to locate what package provides a certain file, for instance. I get frustrated when something fails to build on Gentoo because some other package wasn&#8217;t built with the right USE flag, but I know how to fix that, and its fixed in a flash. Likewise for rebuilding some system library that causes a bunch of other packages to fail without warning, and likewise for the strange b0rkedness that happens in Portage sometimes when packages change versions (gnupg is a recent example). I know how to fix Gentoo when it breaks &#8212; I can&#8217;t say that with much confidence for other distros.</p>
<p>Some might say &#8220;use a distro that doesn&#8217;t break in the first place&#8221;, which is a fair comment. But if I have to choose between an occasional hiccup and missing functionality, then hand me the Eno (Pepto-Bismol, Tums, etc)&#8230; <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Which brings me to my dilemma &#8212; apart from the fact that I have crappy unaccelerated non-video graphics and I haven&#8217;t been able to run Compiz for ages (a problem that Gentoo wouldn&#8217;t solve for me anyway), Ubuntu isn&#8217;t really broken for me. There&#8217;s not a compelling reason for me to throw Gutsy out, and with Hardy around the corner there&#8217;s even less reason to switch right now.</p>
<p>So, I&#8217;ll wait. And watch. Having to work on more Red Hat systems at work is reacquainting me with their particular mojo, perhaps even enough to try <a href="http://www.fedoraproject.org">Fedora</a>. Also, I&#8217;ve just scraped together some parts to make an <a href="http://www.opensuse.org">openSUSE</a> 10.3 build for something work-related so I&#8217;ll catch up with things there (since I haven&#8217;t really seen a SUSE system as a desktop since SuSE Linux 7).</p>
<p>I love this about Linux &#8212; freedom to choose!</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/03/thinking-of-a-gentoo-desktop/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OpenTTD</title>
		<link>http://veejoe.net/blog/2008/01/openttd/</link>
		<comments>http://veejoe.net/blog/2008/01/openttd/#comments</comments>
		<pubDate>Mon, 28 Jan 2008 06:06:20 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Fun]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[games]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=441</guid>
		<description><![CDATA[So I was catching up on the RSS feeds I subscribe to, and came across an article on the latest issue of Full Circle (a magazine about goings-on around Ubuntu Linux). In it I found an article on OpenTTD, an open-source clone of the old 90&#8242;s game Transport Tycoon Deluxe. As one who spent many [...]]]></description>
			<content:encoded><![CDATA[<p>So I was catching up on the RSS feeds I subscribe to, and came across an article on the <a href="http://www.fullcirclemagazine.org/issue-9/">latest issue</a> of <a href="http://www.fullcirclemagazine.org">Full Circle</a> (a magazine about goings-on around Ubuntu Linux). In it I found an article on <a href="http://www.openttd.org">OpenTTD</a>, an open-source clone of the old 90&#8242;s game Transport Tycoon Deluxe. As one who spent many an hour in front of games like Railroad Tycoon in my youth, I had to try it. Unfortunately, I&#8217;m hooked&#8230;</p>
<p>I&#8217;ve been playing the game all night since I found it on Monday afternoon. Sleep seems a distant priority compared to making sure I snag the subsidy for a passenger service from Podlondlington to Nunmubhattan&#8230;</p>
<p>It&#8217;s easy to install on the Ubuntus, but you do need to obtain the data files from the original CD &#8212; the Full Circle article contains instructions on how to do that (or I&#8217;m sure the website tells you). </p>
<p>Sure, the graphics don&#8217;t measure up to today&#8217;s insane system-melting specifications and the isometric view, while state-of-the-art in its day, is at times frustrating (I&#8217;m sure there was a control you could use to hide the buildings so you could see behind things&#8230; maybe I&#8217;m thinking of Lincity). Still, it&#8217;s both a great bit of entertainment and a trip down memory lane at the same time. If you&#8217;re like me and played with the Tycoon games as a kid, or if you&#8217;re a bit of a retrogamer, I encourage you to check it out. Don&#8217;t expect to see much of your family for a while though&#8230; <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/01/openttd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>KDE 4.0: be free.</title>
		<link>http://veejoe.net/blog/2008/01/kde-40-be-free/</link>
		<comments>http://veejoe.net/blog/2008/01/kde-40-be-free/#comments</comments>
		<pubDate>Fri, 18 Jan 2008 00:37:33 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=461</guid>
		<description><![CDATA[Since I watch Planet KDE it was easy to get caught up in the excitement around the launch of the new version of KDE (the announcement is here). I was unable to resist giving it a try on the laptop! So this post is coming from Konqueror 4.0.0. I tried an early Beta of the [...]]]></description>
			<content:encoded><![CDATA[<p><img src="kde40.png" /><br />
Since I watch <a href="http://planetkde.org">Planet KDE</a> it was easy to get caught up in the excitement around the launch of the new version of KDE (the announcement is <a href="http://www.kde.org/announcements/4.0/">here</a>). I was unable to resist giving it a try on the laptop! So this post is coming from Konqueror 4.0.0.</p>
<p>I tried an early Beta of the KDE 4.0 Live CD, but it was still using the KDE3 Kicker and was also a bit unstable. I wasn&#8217;t sure if it was the fact I was running in a virtual machine that made the graphics a bit flaky or whether it really was beta-quality code making things a bit funny. The KDE team put a lot of effort into bug-swatting in the weeks leading up to 4.0 being tagged, and it&#8217;s a lot better now!</p>
<p><a href="http://kubuntu.org/announcements/kde-4.0.php">This announcement</a> from the Kubuntu folk shows how to get the KDE 4 packages installed on Gutsy. KDE 4 installs in a different path to KDE 3, so you can try out KDE 4 without affecting your existing environment.</p>
<p>I did have a bit of a heart-starter with this though, as apt-get wanted to remove a package called &#8220;kdebase-bin-kde3&#8243;, which looked risky! It&#8217;s okay though, as equivalent binaries are provided by &#8220;kdebase-bin-kde4&#8243;. In fact, if you follow Kubuntu&#8217;s instructions exactly, you should not see the issue: it happened to me because I did a system update after adding the Kubuntu PPA repository but before installing KDE 4. The system update brought a bunch of updated KDE 3 packages out of the PPA, one of which was to replace the standard &#8220;kdebase-bin&#8221; package with a &#8220;kdebase-bin-kde3&#8243;.</p>
<p>First impressions are that Oxygen (the new artwork for 4.0) looks great &#8212; it&#8217;s a very modern look. Some might think it borrows from Vista, but to me it&#8217;s got as much of Mac OS X&#8217;s appearance as that of Aero. Plasma (the desktop shell) does some interesting things, like turning desktop icons into widgets, but I&#8217;m yet to spend enough time with it to experience the other improvements it brings.<br />
The biggest thing I&#8217;m looking to trying out is the compositing built into the window manager, KWin. Unfortunately the laptop is a bit old for this to work well (or at all in fact), so I&#8217;ll either have to find some magic Xorg setting or get the KDE 4 packages on the desktop machine. I&#8217;ve had trouble running Beryl and Compiz thanks to something about the terminal program Yakuake tickling a long-lived bug in X11 (I think part of the reason it&#8217;s long-lived is that the X11 folks don&#8217;t accept it as a bug but rather a fringe case that Yakuake shouldn&#8217;t be exercising, hence a stand-off) so it will be interesting to see if KWin has the same kind of issue.</p>
<p>As for bugs, well there look like plenty. <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  As I&#8217;m keying this, Konqueror is chewing 100% CPU and the characters are delayed by a couple of seconds (and of course, now that I observe this, it stops doing it). Still with Konqueror, this is about the third time I&#8217;ve tried to post this thanks to Konqueror segfaulting for strange reasons. Also, the Alt-F2 program launcher reports that it was unable to launch whatever you told it to, even though it does so successfully.</p>
<p>There has been plenty written by the KDE folks about the &#8220;1.0.0 release of KDE 4&#8243;, and they&#8217;re copping a fair amount of stick from people who think they&#8217;ve done the wrong thing by releasing as 4.0.0. I&#8217;m on KDE&#8217;s side. Although many KDE folks have used their KDE 4 builds as their daily desktop for months, I haven&#8217;t seen anyone who wears a KDE hat recommending that others do so. The term &#8220;will eat your children&#8221; has been used to describe KDE 4 by folks <i>from the KDE team</i>, so there has never been any pretense that KDE 4.0.0 would be a daily desktop for the majority of users. I&#8217;ve never really participated in large-scale software development, but I can see their motivation for releasing what they had as 4.0.0 &#8212; I&#8217;m proof of it. As long as it was a beta I was not really all that fussed about trying it out; even after there were release candidates I wasn&#8217;t all that keen. As soon as you call it a release, however, your early-adopters rush in and kick the tyres and your <b>real</b> testing can start.</p>
<p>By being open about 4.0.0&#8242;s status (and I don&#8217;t think you can get more open than &#8220;will eat your children&#8221;), they can make sure that subsequent releases are a lot better than they would be if they dragged on in perpetual beta &#8212; the model that Google and the Web 2.0 fraternity seem to insist is better, plodding on for months hiding behind beta status and its implicit &#8220;get out of jail free&#8221; card.</p>
<p>Instead, KDE has shown the courage to take their code, along with its bugs, and hold it up as something they are proud to give to the world. It&#8217;s the foundation not only for future releases of KDE, but possibly the start of new ways that people work with their computers. By working with the community, instead of closeted away from it, I believe the KDE team will succeed.</p>
<p>Okay, so that finished a bit more ra-ra than I planned! Seriously, give KDE 4.0 a try&#8230; but if you aren&#8217;t happy to suffer a few bugs then by all means wait until 4.0.1 or even 4.1. Oh, and <b>be free.</b> <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/01/kde-40-be-free/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jabber and Google: part two</title>
		<link>http://veejoe.net/blog/2008/01/jabber-and-google-part-two/</link>
		<comments>http://veejoe.net/blog/2008/01/jabber-and-google-part-two/#comments</comments>
		<pubDate>Sun, 13 Jan 2008 04:08:44 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networks]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=471</guid>
		<description><![CDATA[In part one I mentioned how I was considering using Google Talk as my main chat ID. As it turns out, I talked myself out of it pretty quickly after I delved into using Google Talk to connect to MSN and other services as I do now with my own Jabber server. While there are [...]]]></description>
			<content:encoded><![CDATA[<p>In <a href="http://veejoe.net/?eid=731" title="10:44PM January&nbsp;&nbsp;7, 2008 - Crossed Wires: Jabber and Google, part one">part one</a> I mentioned how I was considering using Google Talk as my main chat ID. As it turns out, I talked myself out of it pretty quickly after I delved into using Google Talk to connect to MSN and other services as I do now with my own Jabber server. While there are a lot of links around for using Jabber transports to hook your Google Talk ID to other services, there&#8217;s a tiny catch&#8230; well, actually, I think it&#8217;s a bloody great huge catch personally.</p>
<p>You see, it wasn&#8217;t until I read the how-tos that it became clear how it works. The trick is that Google doesn&#8217;t run Jabber transports on their own servers, so you therefore need to take advantage of various &#8220;open&#8221; Jabber servers that do (&#8220;open&#8221; in this context refers to a server that lets you use its transports without necessarily being a registered user there).</p>
<p>Seeing there didn&#8217;t seem to be any restrictions on the servers that could be used, I figured that I could use my own server. Sure enough, after the right incantations to expose the service on the &#8216;net, I could connect my Google Talk ID through the Jabber-MSN transport on my server to my MSN account. Yay, right? Well, not really &#8212; each little test message I sent in either direction incurred three trips over my Internet connection! Yes, three: one to go from my Google Talk client to Google, one back from Google to the transport on my Jabber server, then a third from the transport to MSN. Obviously the same happens in reverse as well (for incoming messages from MSN).</p>
<p>Seeing this as a less than optimum setup, and also being wary of getting listed as a Google Talk-friendly Jabber transport provider, I lopped the transport&#8217;s external visibility and went back to using my own JID for transport access. It&#8217;s a bit of a shame too; since fring (mentioned briefly in my <a href="http://veejoe.net/?eid=741" title="11:47PM January&nbsp;&nbsp;7, 2008 - Crossed Wires: Which Nokia device to get?">last post</a>) doesn&#8217;t let me connect to an arbitrary Jabber server, to keep connected to everything I&#8217;d need two mobile chat programs running.</p>
<p>It&#8217;s not like I do that much IM that I need to keep all this running, but it is at least a little bit interesting&#8230; <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/01/jabber-and-google-part-two/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jabber and Google, part one</title>
		<link>http://veejoe.net/blog/2008/01/jabber-and-google-part-one/</link>
		<comments>http://veejoe.net/blog/2008/01/jabber-and-google-part-one/#comments</comments>
		<pubDate>Mon, 07 Jan 2008 01:44:21 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networks]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=491</guid>
		<description><![CDATA[I reactivated an idle Google account the other day. A friend of mine from the Netherlands invited me ages ago but I never really did anything with it until I discovered that a Google Mail account can be used for other Google stuff as well, including Google Talk. I read that Google Talk is based [...]]]></description>
			<content:encoded><![CDATA[<p>I reactivated an idle Google account the other day. A friend of mine from the Netherlands invited me ages ago but I never really did anything with it until I discovered that a Google Mail account can be used for other Google stuff as well, including Google Talk. I read that Google Talk is based on Jabber and works with any Jabber client, so I flicked over to Kopete and plugged in the details. Sure enough it worked&#8230; but then it got interesting.</p>
<p>I run a Jabber server for internal things. I wanted to have a secure, private chat facility to use over VPN with my nephews; I want to someday migrate my Nagios IRC bot to Jabber; and I use transports to link into MSN and Yahoo! to reach friends on those networks. The last point is great: I really like the fact that now, from whatever Jabber client I use (even the mobile ones I&#8217;ve played with) that I merely connect to my Jabber server and I&#8217;m online on MSN and Yahoo! as well.</p>
<p>Google Talk, though, has proven to be a bit of a challenge. It&#8217;s actually working like a tower, even though it&#8217;s based on (arguably) the most open of the IM platforms! You see I more-or-less took for granted that &#8220;transport&#8221; way of doing things, using my Jabber server to bridge to other networks. There&#8217;s no Jabber transport for Jabber though!</p>
<p>What I want to do kind-of flies in the face of how Jabber is designed. Ideally, you&#8217;re supposed to only have one Jabber ID (JID) &#8212; Jabber creates an open network with servers establishing connections when needed, very much like e-mail, and you only need an ID on one server to be able to chat with anyone on any other server. So what I wanted to do, which was connect to one Jabber server and have it &#8220;relay&#8221; messages to an ID on a different server is just not necessary with Jabber. Nor should it be necessary for Google Talk users to send messages to me using my Google Talk ID only &#8212; they can send straight to my JID on my Jabber server.</p>
<p>In the early days of Google Talk, Google had not enabled the &#8220;server-to-server&#8221; functionality that allowed this kind of communication to happen. Google Talk worked just like MSN, Yahoo! or AIM &#8212; you had to have a Google Talk account to chat with anyone on Google Talk. While this was the case, folks <i>were</i> looking making a Jabber-Jabber transport for connecting Jabber servers to Google Talk. At some point, though, Google opened the connectivity paths that allowed Google Talk to exist on the open Jabber network (I&#8217;ve tested this for myself). Once this happened, the need for a&nbsp;&nbsp;&#8221;Google Talk Transport&#8221; for Jabber evaporated in most people&#8217;s minds.</p>
<p>The solution nowadays is to use a client that supports multiple connections, and connect to your Jabber and Google Talk accounts at the same time. It works of course, but you don&#8217;t get the nice benefits that a transport provides &#8212; the main one being access to all your IM services and accounts from a single server connection. </p>
<p>So now, having resigned myself to not being able to bring my home JID and Google Talk ID together, the question arose: do I still need my own Jabber server? My current fave mobile IM client only connects to Google Talk&#8230; Could I get by just using the Google Talk service? Find out in Part two! <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/01/jabber-and-google-part-one/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gentoo + jabberd = aargh</title>
		<link>http://veejoe.net/blog/2008/01/gentoo-jabberd-aargh/</link>
		<comments>http://veejoe.net/blog/2008/01/gentoo-jabberd-aargh/#comments</comments>
		<pubDate>Wed, 02 Jan 2008 02:33:30 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[jabber]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=501</guid>
		<description><![CDATA[I&#8217;ve been running jabberd2 from ~x86 for ages. Tonight I went to make some config changes, and stopped and started jabberd using the init script like usual. Things were different though, as the init script didn&#8217;t shut down all the Jabber tasks and I had to stop them manually. When I went to restart it, [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been running jabberd2 from ~x86 for ages. Tonight I went to make some config changes, and stopped and started jabberd using the init script like usual. Things were different though, as the init script didn&#8217;t shut down all the Jabber tasks and I had to stop them manually. When I went to restart it, only two processes were shown and not all the separate processes I was used to.</p>
<p>Nothing was being logged either, as I was trying to find out what was going on and why the processes weren&#8217;t starting. It was as if it was suddenly ignoring all my configuration files!</p>
<p>Careful inspection of some output from eix showed the problem: Jabberd 2 has been moved to its own ebuild (jabberd2), and the highest version in the jabberd ebuild is now a 1.4.4-something. Not only that, they&#8217;ve hard-masked jabberd2:</p>
<pre>
# Krzysiek Pawlik <xxxxxxx@gentoo.org> (08 Oct 2007)
# Masked untill the split from net-im/jabberd is complete.
# See bug #178055 and bug #195091
net-im/jabberd2
</pre>
<p>Looks like the last time I <i>emerged</i> I downgraded my Jabberd 2 to 1.4. No wonder the thing was not responding to me.</p>
<p>This is the kind of thing that happens on Gentoo from time-to-time. It&#8217;s why I started a regular sync of portage and email-output-of-emerge-pretend-world process: so that I didn&#8217;t get too far behind and have a heap of these things to sort out. This one got me off guard though.</p>
<p>Note to self: pay closer attention to emerge output in future!</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/01/gentoo-jabberd-aargh/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OpenLDAP database recovery</title>
		<link>http://veejoe.net/blog/2008/01/openldap-database-recovery/</link>
		<comments>http://veejoe.net/blog/2008/01/openldap-database-recovery/#comments</comments>
		<pubDate>Wed, 02 Jan 2008 02:12:06 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=511</guid>
		<description><![CDATA[Something ugly happened to my LDAP database a while back, and I never noticed. I saw it had lost a bunch of records, but I&#8217;d put it down to some replication problem and never investigated. It wasn&#8217;t until I tried to replace one of the lost records, and got an error from LDAP telling me [...]]]></description>
			<content:encoded><![CDATA[<p>Something ugly happened to my LDAP database a while back, and I never noticed. I saw it had lost a bunch of records, but I&#8217;d put it down to some replication problem and never investigated. It wasn&#8217;t until I tried to replace one of the lost records, and got an error from LDAP telling me the non-existent record already existed, that I figured something was really wrong.</p>
<p>Multiple iterations of db_recover, attempts to re-index, dump-and-restores of the raw Berkely DB files&#8230; Nothing helped. In the end, all that was left was the slapcat-delete-slapadd dance.</p>
<p>(You know that your OpenLDAP is especially sick when commands like slapcat generate glibc backtraces. <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  )</p>
<p>So with what was left of my LDAP data, I started to compare against my replicated LDAP server. The first thing I noticed was that a number of records that I expected to have been replicated were not. I figured that records in the master directory that were lost to database corruption and not to an LDAP operation (a modify or delete) should have been present on the replicated copy. This was not the case, which makes me think that replication only takes effect <strong>after</strong> the master directory&#8217;s backend is updated, and if something like a corrupted database prevents the master from being updated then the replication doesn&#8217;t take place. As Zaphod might say, ten points for directory consistency but minus several million for data preservation&#8230; <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>(As I think about this though, the more it doesn&#8217;t make sense. If slapd had been unable to update the backend, and hence the replication didn&#8217;t take place, surely that would have been returned to me as an update error? I know for a fact that the data I lost made it to the database because I tested an app using the data. It&#8217;s unreasonable to me to think that BDB would have returned success on a write operation unless it had actually done so, but I suppose write-caching might create an opportunity for that to occur&#8230; No, I suspect a different problem, maybe just replication being suspended at the time, as the real reason that some data was missing from the replica.)</p>
<p>Next I found, despite what I thought was happening based on the lost records, there were quite a few records that <strong>were</strong> on the replica. This makes me think I&#8217;ve had multiple failures, apparently at different times, that have impaired my master directory &#8212; one that caused new updates to be lost, the other resulting in loss of existing data.</p>
<p>I&#8217;ve added a step to my Bacula processing that performs a slapcat and backs up the resulting LDIF, so if anything happens in the future I have a bit of a chance of running through old files and restoring. The other thing that I&#8217;ll kick off is a process to verify the accuracy or integrity of the replica &#8212; this might tip me off to a problem sooner rather than later.</p>
<p>My theory on what the cause of this hassle was? Well a while ago I was having a bit of trouble with partitions filling. At a guess I&#8217;d say that OpenLDAP was trying to do something (update a transaction log maybe) at a time when the partition its data lives on was full, and got twisted. Soon I&#8217;m going to write a separate post with my (updated) thoughts about isolation of failure domains&#8230;</p>
<p>For those that haven&#8217;t seen it, here&#8217;s the process I used to get things back:</p>
<pre>
# cd /var/lib
# slapcat > whatsleft.ldif
# /etc/init.d/slapd stop
# mv openldap-data openldap-data-old
# mkdir openldap-data
# chown ldap:ldap openldap-data
# cp -a openldap-data-old/DB_CONFIG openldap-data/
# cd openldap-data
# slapadd < ../whatsleft.ldif
# chown ldap:ldap *
# /etc/init.d/slapd start
</pre>
<p>Obviously if you find yourself in the unfortunate position of having to use this process, substitute your distribution's values for the path to the OpenLDAP data directory and the user/group that LDAP runs under.</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2008/01/openldap-database-recovery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>pam_ssh</title>
		<link>http://veejoe.net/blog/2007/12/pam_ssh/</link>
		<comments>http://veejoe.net/blog/2007/12/pam_ssh/#comments</comments>
		<pubDate>Sat, 22 Dec 2007 03:35:25 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=541</guid>
		<description><![CDATA[Ages ago, I read or saw something about using your SSH passphrase to log in to your system. Seemed like a good idea, but I never got around to implementing it. One of the methods available is a PAM module called pam_ssh. I just gave it a test on a Ubuntu Gutsy system, and it [...]]]></description>
			<content:encoded><![CDATA[<p>Ages ago, I read or saw something about using your SSH passphrase to log in to your system. Seemed like a good idea, but I never got around to implementing it. One of the methods available is a PAM module called <a href="http://pam-ssh.sourceforge.net">pam_ssh</a>. I just gave it a test on a Ubuntu Gutsy system, and it works surprisingly well (<b>Edit:</b> except for GNOME integration&#8230;).</p>
<p>On my Gutsy system it was a simple <b>apt-get install libpam-ssh</b> to install (it&#8217;s in Universe). Once installed, you need to enable it by changing your PAM configuration. The package provided a couple of sample files in the PAM configuration directory, <i>pam-ssh-auth</i> and <i>pam-ssh-session</i>. You can take these files and copy them into the relevant part of your config.</p>
<p>For the &#8220;auth&#8221; section I elected just to add the right line to <i>config-auth</i>. What is the right line for you depends on whether you want to still prompt for the Unix password or not (some folks seem to want to use pam_ssh as a supplementary login, a bit like two-factor authentication). For me I wanted to be able to log on with either SSH passphrase or Unix password, so I added a new line like this:</p>
<pre>auth sufficient pam_ssh.so</pre>
<p>and changed the &#8220;pam_unix&#8221; line to look like this:</p>
<pre>auth sufficient pam_unix.so try_first_pass nullok_secure</pre>
<p>
The important change is to make sure that &#8220;required&#8221; on the pam_unix line is change to &#8220;sufficient&#8221; &#8212; this ensures that login can proceed with either the correct passphrase or the correct password.</p>
<p>For the &#8220;session&#8221; section I simply added the line as suggested by the package maintainers:</p>
<pre>session optional pam_ssh.so</pre>
<p>
With PAM modified I jumped to a virtual console to try a TTY login:</p>
<pre>
Ubuntu 7.10 columbia tty1

columbia login: vicc
SSH Passphrase:
</pre>
<p>I entered my passphrase, and was warmly greeted with a command prompt. Hooray! The further test was yet to come&#8230;but it passed with flying colours. The ssh-agent that PAM started for me seemed to work a treat, as I was able to login to my servers without password or passphrase prompts.</p>
<p>Now to try a GDM login. I was expecting that there would be a problem with the ssh-agent automatically started by the GNOME login process. However, I was pleasantly surprised to find that GNOME didn&#8217;t start another ssh-agent, and my SSH logins from gnome-terminal were again password-prompt-free!</p>
<p>I tested to make sure that logins worked with either passphrase or password, and they do &#8212; the only difference is that (obviously) the SSH key is not added to the running ssh-agent when the password is used to log on instead of the passphrase.</p>
<p>I made one minor change from my first trials. I found that the &#8220;SSH Passphrase&#8221; prompt I saw on the console login also appeared on the GDM login panel. I looked cool to me, but since the machine I was using to test is my wife&#8217;s laptop I figured that I had better make the change as transparent as possible. So, I reversed the order of the &#8220;auth&#8221; lines to make <i>pam_unix.so</i> appear first. I had placed pam_ssh.so first originally in order to make sure that SSH was tried first, but it doesn&#8217;t make any difference to the results&#8230; and since PAM displays the prompt text from the first module in the order[1], putting pam_unix.so back to the top of the list gives a &#8220;normal&#8221; login box.</p>
<p>Once you&#8217;re logged on, if you made the PAM change as shown to the <b>common</b> config files (on Ubuntu, the common-* files, on others it may be system-auth for example) you can continue to use either password or passphrase for things like sudo prompts and screen saver unlocks. If you included the change in only a specific PAM config, your ability to use the SSH passphrase applies only to that application[2]. </p>
<p>I&#8217;m keen to try this out on other systems, if only to eliminate the additional &#8220;ssh-add&#8221; run I currently have to do to get my key into an agent. I&#8217;m also keen to try it with KDE to see if it also doesn&#8217;t start its own ssh-agent.</p>
<p>While this module seems to work really well, you may have to check a couple of things for yourself before using it. One is that the project pages on Sourceforge appear to be dead: the last released version was in 2004 and there has been no developer response on the open bugs in the tracker. Secondly, while I had no trouble finding Ubuntu packages, a Gentoo ebuild, and documents about its inclusion in OpenSUSE/SLES, if you use RHEL I don&#8217;t believe it&#8217;s in a standard repository (in Fedora it&#8217;s in Fedora Extras which I think doesn&#8217;t bode well for RHEL).</p>
<p>Lastly, and probably the most serious point, is that if you decide to use pam_ssh and your current SSH key has a blank passphrase you should think VERY seriously about setting one. If you use your blank-passphrase key to log on to your computer, you are giving free access to anyone who walks up to your computer and enters your username &#8212; not only to that computer, but to <i>every other computer that your SSH key provides access to</i>. Admins of multi-user systems that use pam_ssh should make sure that &#8220;nullok&#8221; or &#8220;nullok_secure&#8221; doesn&#8217;t appear on the module line that prompts for the password, to ensure their system doesn&#8217;t create the opening for an exploit. Also, organisations that use SSH keys for authentication need to give some thought to either centralised generation of SSH keys for staff, or testing/verification of passphrase strength.</p>
<p>Despite the negatives, I&#8217;m impressed by pam_ssh. It&#8217;s easy to set up &#8212; it&#8217;s taken me longer to write this blog post than get the module working! &#8212; and it works well.</p>
<p>[1] When <i>use_first_pass</i> is coded on second and subsequent &#8220;auth&#8221; lines, those modules will never prompt for a password themselves. With <i>try_first_pass</i>, a subsequent module might generate a prompt if the password that filters down is not correct and the module wants to get a new password to try.<br />
<br />
[2] <a href="http://en.opensuse.org/Using_ssh-agent_globally_for_X_session">This</a> page has an example of using pam_ssh for XDM only, by editing the PAM config for XDM only.</p>
<p><strong>Edit:</strong> Turns out that by using &#8220;sufficient&#8221; in the PAM &#8220;auth&#8221; config things break. I was using sufficient as a short-circuit to avoid having to enter both SSH passphrase and normal password (for the case where the passphrase is different from the password). I ASSuMEd that all the PAM applications had no additional auth settings <i>after</i> the inclusion of config-auth, but I was wrong: the PAM setup for GDM has the config that brings in pam_gnome_keyring (the module that automatically unlocks the GNOME login keyring). By using &#8220;sufficient&#8221; in config-auth for the pam_ssh and pam_unix modules, the pam_gnome_keyring module doesn&#8217;t get invoked.</p>
<p>I could change &#8220;sufficient&#8221; to &#8220;required&#8221; again, but this will break (preventing an otherwise valid login) in the case where the user has no SSH key. Forcing all users to create an SSH key would get around this; possibly not hard to automate at userid creation time, but tedious for those with existing IDs.</p>
<p>What I think I need is something like the difference between &#8220;required&#8221; and &#8220;requisite&#8221;. Both &#8220;required&#8221; and &#8220;requisite&#8221; modules have to return ok in order for the entire stack to return ok, but if the module returns not-ok &#8220;required&#8221; allows subsequent modules to be executed whereas &#8220;requisite&#8221; exists immediately. &#8220;sufficient&#8221; seems to be like a kind-of affirmative &#8220;requisite&#8221;; I need an equivalent to &#8220;sufficient&#8221; that will pass control to later modules but not consider the failure of a later module as failure of the stack. I&#8217;m pretty sure I can do this with the extended control syntax but it might take some mucking about.</p>
<p>I also feel the need to restate something I mentioned in the original post about centralised generation of SSH keys. Much of the advice about using SSH keys for logging on to systems is written from the user perspective, and goes along the lines of &#8220;generate your own key, so that only you have the private key and no-one else has a copy&#8221;. I agree with this (and would fight for it) as a user of SSH, but as a system admin for systems that allow login via SSH key I tremble at the thought that my users might have SSH keys with no passphrase.</p>
<p>This is one of those areas where trust and responsibility are required on either side: sysadmins must trust their users not to do stupid things, and users must not abuse that trust by acting irresponsibly when creating keys. In my opinion as a sysadmin (and part-time commentator on things security), the convenience of <i>interactive</i> login using SSH keys is a privilege rather than a right, to be withdrawn if necessary to maintain the integrity of the system and the network.</p>
<p>I accept that SSH keys with no passphrase are a necessity for some system automation tasks. That&#8217;s why I said &#8220;interactive&#8221; in my previous statement. Enforcement of a good passphrase for a key used for interactive logins though is tricky. A modification to pam_ssh, to reject the use of an SSH key with a weak or empty passphrase &#8212; kind of a built-in pam_cracklib &#8212; might be one way. Regular sweeps of user home directories to look for keysets with no passphrase might be another (be careful to update any Acceptable Usage statement or equivalent, to ensure your users know upfront that they&#8217;d be subject to this however). It might just be as simple as making sure &#8220;nullok&#8221; is not coded for the pam_ssh module, as I mentioned originally.</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2007/12/pam_ssh/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gentoo &#8220;hardened&#8221; multilib?</title>
		<link>http://veejoe.net/blog/2007/11/gentoo-hardened-multilib/</link>
		<comments>http://veejoe.net/blog/2007/11/gentoo-hardened-multilib/#comments</comments>
		<pubDate>Sun, 04 Nov 2007 03:36:31 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[gentoo]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=591</guid>
		<description><![CDATA[I had some system problems yesterday.&#160;&#160;My VMware guests just stopped.&#160;&#160;Middle of the day and they just died.&#160;&#160;I tried to run the management console or even the command line programs, but they all failed with the infamous &#8220;VMware is installed but is not configured for this system&#8230;&#8221; message and the prompt to run vmware-config.pl.&#160;&#160;I re-emerged vmware-server [...]]]></description>
			<content:encoded><![CDATA[<p>I had some system problems yesterday.&nbsp;&nbsp;My VMware guests just stopped.&nbsp;&nbsp;Middle of the day and they just died.&nbsp;&nbsp;I tried to run the management console or even the command line programs, but they all failed with the infamous &#8220;VMware is installed but is not configured for this system&#8230;&#8221; message and the prompt to run vmware-config.pl.&nbsp;&nbsp;I re-emerged vmware-server and vmware-modules with no luck.&nbsp;&nbsp;vmware-config.pl was failing trying to run vmware-vmx at the serial number check, the error was &#8220;No such file or directory&#8221;.&nbsp;&nbsp;But there it was, right where it was supposed to be, permissions correct and everything&#8230;</p>
<p>Knowing that generic error can apply to a missing file that the program is trying to execute, I checked what type of file I was looking at: <i>file</i> reported a dynamically linked program.&nbsp;&nbsp;Great, run <i>ldd</i> to find out what it wants: ldd reports &#8220;not a dynamic executable&#8221;.&nbsp;&nbsp;Oh dear.&nbsp;&nbsp;It was starting to look like a long night was ahead.</p>
<p>I jumped on the Googleweb and discovered that others had encountered the problem I was seeing, but the hits were all a couple of years old.&nbsp;&nbsp;Their problems seemed to be caused by missing 32-bit libraries on a 64-bit system.&nbsp;&nbsp;How could this happen?&nbsp;&nbsp;In older Gentoo releases you had to choose multilib, but according to most of the doco all profiles are multilib unless you choose a &#8220;non-multilib&#8221; profile (this explained the fact there were few-to-no recent hits for the issue).</p>
<p>Recently I had switched to the hardened profile&#8230;&nbsp;&nbsp;I had a look, and there is a separate &#8220;multilib&#8221; profile in hardened.&nbsp;&nbsp;So is the doco wrong: are all profiles multilib except ones called &#8220;non-multilib&#8221; AND except hardened because they have a different rule?</p>
<p>I had two choices then, try out the hardened multilib profile, or switch back to the previous profile I used.&nbsp;&nbsp;Considering I hadn&#8217;t enabled any Hardened features and don&#8217;t really have time to figure it all out at the moment any (I only did it to get rid of the &#8220;unsupported profile&#8221; warning I get every time I merge a package), I copped out and switched back to the old profile.</p>
<p>Then I had the next issue: I couldn&#8217;t use the non-multilib gcc and glibc to build multilib versions of gcc and glibc.&nbsp;&nbsp;The gcc build complained about a missing 32-bit header (should have been part of glibc) and the glibc build complained that cpp failed sanity test.&nbsp;&nbsp;Again the Googleweb came to the rescue, pointing me to a Gentoo repository containing binary packages of gcc and glibc that I could apply.&nbsp;&nbsp;They allowed me to rebuild my own gcc and glibc.</p>
<p>At this point I found that the vmware-config.pl script could run again.&nbsp;&nbsp;I was BACK!&nbsp;&nbsp;I started VMware services, ran the managment console, and started my VMs.</p>
<p>I think I get a bit complacent with my home gear sometimes; switching profile to hardened was something I almost did on a whim, and it&#8217;s bitten me fairly badly.&nbsp;&nbsp;Lesson learned.</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2007/11/gentoo-hardened-multilib/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Konqueror and Internet Banking</title>
		<link>http://veejoe.net/blog/2007/10/konqueror-and-internet-banking/</link>
		<comments>http://veejoe.net/blog/2007/10/konqueror-and-internet-banking/#comments</comments>
		<pubDate>Tue, 30 Oct 2007 02:38:20 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=621</guid>
		<description><![CDATA[I found out a little more about a problem that&#8217;s been really annoying me for ages: I can&#8217;t access my bank&#8217;s Internet banking using Konqueror.&#160;&#160;When I hit the button, Konqueror proclaims that it &#8220;Could not connect to host&#8221;, but if I right-click on the &#8220;Login&#8221; link and choose &#8220;Open with Firefox Web Browser&#8230;&#8221; it works [...]]]></description>
			<content:encoded><![CDATA[<p>I found out a little more about a problem that&#8217;s been really annoying me for ages: I can&#8217;t access my bank&#8217;s Internet banking using Konqueror.&nbsp;&nbsp;When I hit the button, Konqueror proclaims that it &#8220;Could not connect to host&#8221;, but if I right-click on the &#8220;Login&#8221; link and choose &#8220;Open with Firefox Web Browser&#8230;&#8221; it works fine.</p>
<p>I broke out Wireshark and did a capture.&nbsp;&nbsp;DNS request and response normal, TCP three-way handshake fine, SSL Client Hello&#8230;&nbsp;&nbsp;Hmm, TLS handshake failure.&nbsp;&nbsp;Strange.&nbsp;&nbsp;I traced a Firefox connection, and (obviously) after the SSL Client Hello there is a Server Hello in response, and the connection establishes okay.</p>
<p>What I found is that the cipher suites presented by Konqueror and Firefox differ: Firefox offers a couple that Konqueror doesn&#8217;t, and vice-versa.&nbsp;&nbsp;More importantly, the one that is presented in the Server Hello on the Firefox connection is labelled by Wireshark as &#8220;Cipher Suite: TLS_RSA_WITH_3DES_EDE_CBC_SHA (0x000a)&#8221; and is one of the ones missing from Konqueror&#8217;s Client Hello.</p>
<p>So there are two issues here.&nbsp;&nbsp;Firstly, Konqueror is missing some TLS cipher suites (or at least Ubuntu&#8217;s build of Konqueror is).&nbsp;&nbsp;Secondly, Konqueror&#8217;s reporting of the problem is not helpful &#8212; stating it was a &#8220;security negotiation failure&#8221; would be a lot more helpful than just saying &#8220;could not connect&#8221;.</p>
<p>/me goes looking for KDE&#8217;s bug reporting system&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2007/10/konqueror-and-internet-banking/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FreePBX modes</title>
		<link>http://veejoe.net/blog/2007/10/freepbx-modes/</link>
		<comments>http://veejoe.net/blog/2007/10/freepbx-modes/#comments</comments>
		<pubDate>Tue, 30 Oct 2007 00:26:30 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[asterisk]]></category>
		<category><![CDATA[freepbx]]></category>
		<category><![CDATA[voip]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=631</guid>
		<description><![CDATA[When I first set up FreePBX, I was frustrated by the inability to create a voicemail user independently of an extension.&#160;&#160;It looked to me like an office system, where each handset was associated with an individual and had its own voicemail.&#160;&#160;In the end I created a few extensions that were not associated with handsets and [...]]]></description>
			<content:encoded><![CDATA[<p>When I first set up <a href="http://www.freepbx.org">FreePBX</a>, I was frustrated by the inability to create a voicemail user independently of an extension.&nbsp;&nbsp;It looked to me like an office system, where each handset was associated with an individual and had its own voicemail.&nbsp;&nbsp;In the end I created a few extensions that were not associated with handsets and used them as the voicemail boxes (I disabled voicemail on all other extensions) and wrote a custom dialplan entry to work out which voicemail box was associated with the &#8220;usual&#8221; user of each handset.&nbsp;&nbsp;Works fine, even if I have to check each upgrade of FreePBX doesn&#8217;t knock out my custom dialplan stuff.</p>
<p>Recently though, I found that FreePBX does indeed have an alternate programming method that matches up with my original intended use.&nbsp;&nbsp;The default method is called &#8220;Extensions&#8221; mode, while the different method is called &#8220;Device-and-User&#8221;.&nbsp;&nbsp;The extensions mode, in effect, creates a user for every device defined, and calls it an extension.&nbsp;&nbsp;The device-and-user mode however allows you to configure each separately.&nbsp;&nbsp;Your device configurations are simply end-points for your handsets (SIP definitions for example) and users are the entities you actually want to reach (i.e. people).</p>
<p>A device can be either &#8220;Fixed&#8221;, where it is always associated with a particular user, or it can be &#8220;Ad-hoc&#8221;.&nbsp;&nbsp;An ad-hoc device allows a user to log on to the device and receive their calls at that device.&nbsp;&nbsp;A user can be logged on to multiple devices at once, or even a mixture of fixed and ad-hoc devices.</p>
<p>I was really excited by this, as it seemed that I could replace everything I had set up with my extra extensions and associated Ring Groups by just switching to device-and-user.&nbsp;&nbsp;There is a little snag though &#8212; even though devices still have to have a numeric name that looks just like an extension, it is not available to the dialplan in its own right.&nbsp;&nbsp;If I have configured my ATA-attached cordless phone as device 852, I cannot dial 852 and make it ring.&nbsp;&nbsp;I can only dial whatever user number the device is associated with, which in turn means that if no-one is logged-in to an ad-hoc device there is no way to make it ring.&nbsp;&nbsp;Also, a device can only be associated with one user at a time.</p>
<p>I have auto-answer SIP presences on all the handsets that support it, which I use as a two-way intercom system.&nbsp;&nbsp;This supplements FreePBX&#8217;s Paging facility which I use for broadcast, one-way announcements to all (such as &#8220;dinner is on the table!).&nbsp;&nbsp;I couldn&#8217;t switch to device-and-user mode completely, as I would lose the ability to selectively dial devices such as the intercom lines that would not be associated with a user (or would need to be associated with more than one user to support both paging and intercom).</p>
<p>So for now I&#8217;m sticking with what I&#8217;ve got.&nbsp;&nbsp;I like device-and-user, but by not making the device&#8217;s number addressable in the dialplan they&#8217;re eliminating a lot of flexibility and possible functionality.&nbsp;&nbsp;When we moved into our current home I ripped out much of the builder&#8217;s phone wiring and replaced it because I didn&#8217;t want all my phones in parallel&#8230; that&#8217;s what device-and-user feels like right now: everything in parallel.&nbsp;&nbsp;I&#8217;ll keep an eye on it though&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2007/10/freepbx-modes/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Sabayon Linux</title>
		<link>http://veejoe.net/blog/2007/07/sabayon-linux/</link>
		<comments>http://veejoe.net/blog/2007/07/sabayon-linux/#comments</comments>
		<pubDate>Wed, 11 Jul 2007 02:14:58 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[sabayon]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=761</guid>
		<description><![CDATA[My desktop Ubuntu system is/was a 32-bit build running on 64-bit hardware.&#160;&#160;I&#8217;d been looking on-and-off for a way to in-place upgrade an Ubuntu system from i386 to x86_64, but it doesn&#8217;t look easy/feasible/worthwhile compared to a fresh install.&#160;&#160;So thinking that I was up for a reinstall anyway, I decided to check out whether Ubuntu was [...]]]></description>
			<content:encoded><![CDATA[<p>My desktop Ubuntu system is/was a 32-bit build running on 64-bit hardware.&nbsp;&nbsp;I&#8217;d been looking on-and-off for a way to in-place upgrade an Ubuntu system from i386 to x86_64, but it doesn&#8217;t look easy/feasible/worthwhile compared to a fresh install.&nbsp;&nbsp;So thinking that I was up for a reinstall anyway, I decided to check out whether Ubuntu was still the desktop Linux for me, and happened across <a href="http://www.sabayonlinux.org">Sabayon Linux</a>.&nbsp;&nbsp;I&#8217;ve done the download-boot-repartition-install dance, and this post is coming from there now&#8230;</p>
<p>I still have the Gentoo bug, so the idea of a Gentoo system where someone else has done the work of gluing all the packages together is very appealing.&nbsp;&nbsp;It installs nicely &#8212; like many distros they use the &#8220;Live CD&#8221; approach (where you boot from a CD or DVD into a running system that you can try-before you buy, so to speak, before deciding if you want to commit it to your hard drive), and use Red Hat&#8217;s Anaconda installer to do the work of getting the system onto your disk.</p>
<p>It is very much a gamers system.&nbsp;&nbsp;Some popular Linux games are pre-installed, including <i>Battle of Wesnoth</i>, which has already cost me a decent amount of leisure time. <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> &nbsp;&nbsp;They include things like the NVidia and ATI binary drivers, AIGLX or XGL for desktop effects thanks to <i>Beryl</i>, and other things like <i>Google Earth</i> and <i>Kerry Beagle</i> preinstalled.&nbsp;&nbsp;They also have support for Xen and KVM/QEMU virtualisation, and the <i>virt-manager</i> tool for managing virtual machines.</p>
<p>I started to wonder though: do they maintain a separate Portage infrastructure for their own stuff, or is it vanilla Gentoo?&nbsp;&nbsp;The answer is that for the most part it&#8217;s vanilla Gentoo.&nbsp;&nbsp;They use <i>Layman</i> to track their own Portage overlay, but behind it is vanilla Gentoo, which means that at a time like this, where a new release of Sabayon is just around the corner, doing an <i>emerge world</i> is much more likely to get stuff from Gentoo Portage than the Sabayon overlay &#8212; especially since the testing &#8220;~&#8221; keyword is set by default.</p>
<p>I really like what they&#8217;ve done, but to me having it backed by Gentoo Portage means that you&#8217;re back to riding the knife edge that is the Gentoo &#8220;rolling release&#8221; strategy.&nbsp;&nbsp;And after a couple of updates, you&#8217;re running Sabayon Linux in name only.</p>
<p>This is all based on very early experiences mind you.&nbsp;&nbsp;I haven&#8217;t had a proper chance yet to settle in and see how some of this stuff works in real life.&nbsp;&nbsp;I think I might sit tight until the 3.4 release goes out (should be soon), and get stuck into the doco then.</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2007/07/sabayon-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The &#8220;Technology With The Worst Name Ever&#8221; Award</title>
		<link>http://veejoe.net/blog/2007/07/the-technology-with-the-worst-name-ever-award/</link>
		<comments>http://veejoe.net/blog/2007/07/the-technology-with-the-worst-name-ever-award/#comments</comments>
		<pubDate>Sun, 08 Jul 2007 01:26:27 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Soapbox]]></category>
		<category><![CDATA[kvm]]></category>
		<category><![CDATA[virtualisation]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=771</guid>
		<description><![CDATA[&#8230;and the winner is: KVM!&#160;&#160;Why?&#160;&#160;Because as you read this, some of you will be thinking I&#8217;m talking about a keyboard-video-mouse switch, while some of you will be thinking I&#8217;m talking about Linux kernel-based virtualisation (still others are probably thinking of something else&#8230; what I don&#8217;t know, but I reckon I can be sure that the [...]]]></description>
			<content:encoded><![CDATA[<p>&#8230;and the winner is: KVM!&nbsp;&nbsp;Why?&nbsp;&nbsp;Because as you read this, some of you will be thinking I&#8217;m talking about a keyboard-video-mouse switch, while some of you will be thinking I&#8217;m talking about Linux kernel-based virtualisation (still others are probably thinking of something else&#8230; what I don&#8217;t know, but I reckon I can be sure that the letters KVM have not been put together only twice in human history).</p>
<p>For the record, I&#8217;m talking about Linux kernel-based virtualisation.&nbsp;&nbsp;It wins my award for the Technology With The Worst Name Ever because if, like me, you go looking on your favourite search engine for issues with Linux kernel-based virtualisation, all you find is issues about keyboard-video-mouse switches.&nbsp;&nbsp;This is because for the last fifteen years (at least), in the computer industry KVM has stood for keyboard-video-mouse (switch).</p>
<p>This is not your common-or-garden-variety case of acronym overloading, either, because many folk (myself included) still use a KVM.&nbsp;&nbsp;Usually acronym overloading occurs when the acronym being overloaded has fallen from use and a new technology takes its place, or when an acronym is used to reference a little-known technology and a new usage of the acronym is unaware of the previous usage[1].</p>
<p>Here, KVM was already in heavy use, and I&#8217;m sure that none of the Linux kernel hackers could claim to being unaware of the term.&nbsp;&nbsp;Yet they used it anyway.&nbsp;&nbsp;And nothing in <i>/usr/src/linux/Documentation</i> explains why.</p>
<p>I&#8217;m sure there&#8217;ll be something out there about why they chose the name&#8230;&nbsp;&nbsp;but in the meantime I&#8217;m left to find other reasons why KVM doesn&#8217;t seem to work on my system.&nbsp;&nbsp;Which KVM do I mean?&nbsp;&nbsp;Ah, that&#8217;s for me to know&#8230;&nbsp;&nbsp;;)</p>
<p>[1] <b>RTP</b> is an excellent example of this &#8212; it was already in use as Rapid Transit Protocol (a part of the APPN-HPR suite), but the VoIP folk never heard of APPN and used RTP for their Realtime Transfer Protocol.</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2007/07/the-technology-with-the-worst-name-ever-award/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MythTV ups and downs</title>
		<link>http://veejoe.net/blog/2007/05/mythtv-ups-and-downs/</link>
		<comments>http://veejoe.net/blog/2007/05/mythtv-ups-and-downs/#comments</comments>
		<pubDate>Thu, 17 May 2007 01:22:02 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[mythtv]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=901</guid>
		<description><![CDATA[I&#8217;m still having a good time with MythTV here&#8230;&#160;&#160;The Knoppmyth box I&#8217;ve been running has been pretty-much rock-solid.&#160;&#160;My plan to consolidate MythTV onto the Asterisk server just got a healthy kick-along too, with an announcement that the bogus DViCO card I bought last year finally has Linux driver support.&#160;&#160;Bad news came a couple of days [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m still having a good time with MythTV here&#8230;&nbsp;&nbsp;The Knoppmyth box I&#8217;ve been running has been pretty-much rock-solid.&nbsp;&nbsp;My plan to consolidate MythTV onto the Asterisk server just got a healthy kick-along too, with an announcement that the bogus DViCO card I bought last year finally has Linux driver support.&nbsp;&nbsp;Bad news came a couple of days ago when the grabber I used for program guide info failed.</p>
<p>Firstly, a rant.&nbsp;&nbsp;Why the #@&#038;*%$ should it be so hard to get TV guide data in electronic form?&nbsp;&nbsp;The holders of this info charge money for it, and have clamped-down in the past on those that distribute it freely (I daresay that the reason the grabber failed is that the mob that was making it available, who were doing so as their contribution to the Open Source community in return for basing their commercial product on FOSS, were told to stop).&nbsp;&nbsp;As far as I am concerned, Free-To-Air Television should be exactly that, free &#8212; I should not have to pay to find out what&#8217;s on and when.&nbsp;&nbsp;All that they are doing is forcing folks on to Bittorrent; by making it more inconvenient and less reliable for viewers to watch when they want (restricted guide data, shows that run over-time and push the schedule out), they ensure that viewers NEVER see their advertisers&#8217; content.</p>
<p>Right, rant off.</p>
<p>So I noticed that I was getting errors from the nightly <i>mythfilldatabase</i> run.&nbsp;&nbsp;mythfilldatabase was running, but not adding any guide data.&nbsp;&nbsp;After the problems I&#8217;d had in the past with the tv_grab_au script and D1&#8242;s data (mysterious timezone shifts, missing data), I immediately thought the worst and renewed my search for an alternate grabber.</p>
<p>One of my work colleagues mentioned Shepherd a while ago, and Google regarded it highly, so I gave it a run.&nbsp;&nbsp;It seems to be an agreggator of a number of different grabber scripts that each pull data from a different resource, by the looks of things, it tries different grabbers (with a kind-of internal quality rating) and keeps going until it&#8217;s filled all the gaps in your guide data.&nbsp;&nbsp;Neat.</p>
<p>Of course migrating from D1&#8242;s data to the Shepherd data was painful, because they use different XMLTV IDs for the stations.&nbsp;&nbsp;Took me a number of channel scan/configure/mythfilldatabase cycles to get things straight, but it all seems to be good now.</p>
<p><b>Update:</b> MythTV users at work mentioned that they lost some data for a few days, but it seems to be back.&nbsp;&nbsp;Oh well.&nbsp;&nbsp;:)</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2007/05/mythtv-ups-and-downs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Word-of-Mouth for Linux marketing?</title>
		<link>http://veejoe.net/blog/2007/04/word-of-mouth-for-linux-marketing/</link>
		<comments>http://veejoe.net/blog/2007/04/word-of-mouth-for-linux-marketing/#comments</comments>
		<pubDate>Mon, 23 Apr 2007 21:28:00 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[marketing]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=951</guid>
		<description><![CDATA[Following-on from a discussion on the Linux Australia mailing list, Melissa Draper has commented on her blog on the effectiveness of WoM (word-of-mouth) as a marketing technique for Linux.&#160;&#160;She raises Apple as a counterpoint to the &#8220;WoM is worthless&#8221; argument; Apple having spent (possibly) billions of traditional marketing dollars on Macintosh to achieve roughly the [...]]]></description>
			<content:encoded><![CDATA[<p>Following-on from a discussion on the <a href="http://linux.org.au">Linux Australia</a> <a href="http://lists.linux.org.au/listinfo/linux-aus">mailing list</a>, Melissa Draper has commented on her <a href="http://www.geekosophical.net">blog</a> on the effectiveness of <a href="http://www.geekosophical.net/?p=96">WoM (word-of-mouth) as a marketing technique for Linux</a>.&nbsp;&nbsp;She raises Apple as a counterpoint to the &#8220;WoM is worthless&#8221; argument; Apple having spent (possibly) billions of traditional marketing dollars on Macintosh to achieve roughly the same desktop market share as Linux means that on a return-per-advertising-dollar-invested basis, Linux has a much better result.&nbsp;&nbsp;I&#8217;m sure an interesting discussion will ensue; wander on over to Melissa&#8217;s blog and weigh in!</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2007/04/word-of-mouth-for-linux-marketing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MythTV</title>
		<link>http://veejoe.net/blog/2006/11/mythtv/</link>
		<comments>http://veejoe.net/blog/2006/11/mythtv/#comments</comments>
		<pubDate>Tue, 28 Nov 2006 23:59:57 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[mythtv]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=1121</guid>
		<description><![CDATA[Spurred on by the successes of a couple of guys at work, I&#8217;ve been going through the process of setting up a Linux-based PVR. I&#8217;ve had a tuner card for some time, but my first attempts at getting it to work with MythTV under Gentoo a couple of years ago were less than successful.&#160;&#160;The final [...]]]></description>
			<content:encoded><![CDATA[<p>Spurred on by the successes of a couple of guys at work, I&#8217;ve been going through the process of setting up a Linux-based PVR.</p>
<p>I&#8217;ve had a tuner card for some time, but my first attempts at getting it to work with <a href="http://www.mythtv.org">MythTV</a> under Gentoo a couple of years ago were less than successful.&nbsp;&nbsp;The final prompter to do something was discovering <a href="http://www.mysettopbox.tv/knoppmyth">KnoppMyth</a>, a purpose-built Linux distro based originally on the Knoppix &#8220;live-CD&#8221; distro.&nbsp;&nbsp;KnoppMyth has a customised installer that sets up a Linux system with MythTV and a host of other plugins and extensions that take you from zero-to-PVR with a minimum of fuss.</p>
<p>I downloaded the CD of the latest KnoppMyth, threw the tuner card into a PC reclaimed from a defunct project of mine, and sure enough it worked beautifully.</p>
<p>There were a couple of things that didn&#8217;t work out-of-the-box though.&nbsp;&nbsp;I didn&#8217;t understand how the setup process configured the &#8220;grabber&#8221; &#8212; MythTV&#8217;s name for the process that obtains program listings.&nbsp;&nbsp;The MythTV setup program runs in its Qt interface, but the configuration of the grabber (at least, the one for Australia) runs in the text-mode window that the Qt program is launched from.&nbsp;&nbsp;This little misunderstanding cost me some time in getting it set up properly.&nbsp;&nbsp;Then, for some reason the channels scanned on the tuner card did not match up with the listings obtained by the grabber, so I had to go through each channel entry and manually add the XMLTV URI for the program guide data.&nbsp;&nbsp;But now that&#8217;s done, woo-hoo!&nbsp;&nbsp;It works a treat.&nbsp;&nbsp;Even the IR remote control was detected and set up by KnoppMyth.</p>
<p>Buoyed by my success, I went and found a second tuner card for the box (you can&#8217;t have a MythTV backend box with just one tuner, you just can&#8217;t).&nbsp;&nbsp;Here, I committed the cardinal sin of Linux &#8212; I bought a brand-new piece of kit and expected it to work.&nbsp;&nbsp;My sole reasonig was &#8220;well it&#8217;s the same brand as the one I&#8217;ve already got, so it must work&#8221;.&nbsp;&nbsp;Idiot. <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>So the KnoppMyth box is the backend (and a frontend), and I&#8217;ve found the XBMCMythTV scripts to use XBMC (on the XBox) as a frontend as well.&nbsp;&nbsp;MythTV&#8217;s functionality in this regard is fantastic &#8212; although it is frustrating that every MythTV backend and frontend must be running <i>exactly</i> the same version in order to work together.&nbsp;&nbsp;KnoppMyth is currently based on MythTV 0.19, and Ubuntu Edgy (which I&#8217;m running on the laptops) is at 0.20a&#8230;&nbsp;&nbsp;Probably not too much of a drama, as the laptops are only on 802.11b wireless so running a frontend on them probably wouldn&#8217;t work well anyway.</p>
<p>Apart from getting a frontend on the laptops, and the tuner card that doesn&#8217;t yet work, the other remaining concern is that it&#8217;s just one more box running in the house.&nbsp;&nbsp;This can be solved however, with a couple of tricks based on Wake-On-LAN.&nbsp;&nbsp;The MythTV frontend can already be configured to send the &#8220;magic packet&#8221; to the backend to wake it up if powered off, and there&#8217;s a couple of ways to have a backend system wake up to make a scheduled recording (one involves poking the PC&#8217;s BIOS to set the timed power-on function, the other is an ingenious method involving a second PC &#8212; ideally a low power device like a Linksys NSLU2 or WRT54 &#8212; sending the WOL magic packet at the scheduled time).</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2006/11/mythtv/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Edgy comes to visit</title>
		<link>http://veejoe.net/blog/2006/10/edgy-comes-to-visit/</link>
		<comments>http://veejoe.net/blog/2006/10/edgy-comes-to-visit/#comments</comments>
		<pubDate>Tue, 31 Oct 2006 02:27:59 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=1171</guid>
		<description><![CDATA[For ages I&#8217;ve toyed with running Linux on the ex-lease Sony Vaio I&#8217;ve got.&#160;&#160;When I first picked it up, Centrino was a dirty word as far as Linux was concerned, so it&#8217;s been a Windows box all along.&#160;&#160;But now that the lease is over and it&#8217;s all mine, I decided to take the plunge. The [...]]]></description>
			<content:encoded><![CDATA[<p>For ages I&#8217;ve toyed with running Linux on the ex-lease Sony Vaio I&#8217;ve got.&nbsp;&nbsp;When I first picked it up, Centrino was a dirty word as far as Linux was concerned, so it&#8217;s been a Windows box all along.&nbsp;&nbsp;But now that the lease is over and it&#8217;s all mine, I decided to take the plunge.</p>
<p>The announcement of Ubuntu 6.10 (Edgy Eft) gave me an additional prod.&nbsp;&nbsp;I had a DVD of Ubuntu 6.06 LTS (Dapper Drake) that I figured I could install and upgrade to Edgy, and that process went alarmingly well.&nbsp;&nbsp;Even installing <b>kubuntu-desktop</b> was painless.&nbsp;&nbsp;It looks like a really well-integrated distro with just the right amount of knobs and dials to keep me running.</p>
<p>Or so I thought, until it came time to get wireless working.&nbsp;&nbsp;I run WPA, and the network config tools in Dapper don&#8217;t grok it.&nbsp;&nbsp;I figured that Edgy would be an improvement, but alas not.&nbsp;&nbsp;I&#8217;ve tried just about every network config tool available, in both GNOME and KDE, with no luck.</p>
<p>About the closest I&#8217;ve managed to get was using <b>kwlan</b>, but it seemed to get confused in trying to save the configuration and activate the link.&nbsp;&nbsp;Start wpa_supplicant prior to configure, and things seem to save but nothing activates.&nbsp;&nbsp;With wpa_supplicant stopped, I cannot save a profile.</p>
<p>I&#8217;ve seen forum notes that recommend downloading and building CVS versions of NetworkManager and wpa_supplicant &#8212; seems to go against the Ubuntu ethos a bit in my mind (if I&#8217;ve got to build stuff from source, I might as well be running Gentoo on it).</p>
<p>So I&#8217;m wired, but not for sound.&nbsp;&nbsp;I like (K)Ubuntu though, so much so I&#8217;m downloading a Xubuntu install CD to try it out on a low-spec laptop I am trying to make use of.&nbsp;&nbsp;Time will tell if the Edgy Eft is just visiting or gets to say a while. <img src='http://veejoe.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2006/10/edgy-comes-to-visit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zimbra Collaboration Suite</title>
		<link>http://veejoe.net/blog/2006/09/zimbra-collaboration-suite/</link>
		<comments>http://veejoe.net/blog/2006/09/zimbra-collaboration-suite/#comments</comments>
		<pubDate>Mon, 04 Sep 2006 00:28:50 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=1331</guid>
		<description><![CDATA[Thanks to an article in Linux Journal (I think) a few months ago, I discovered ZCS as a possible webmail/calendaring application.&#160;&#160;Since it&#8217;s a bit more than just webmail though, I&#8217;ll probably have to have a bit of a think about whether it&#8217;s the right way to go. Ever since I moved the main server off [...]]]></description>
			<content:encoded><![CDATA[<p>Thanks to an article in Linux Journal (I think) a few months ago, I discovered ZCS as a possible webmail/calendaring application.&nbsp;&nbsp;Since it&#8217;s a bit more than just webmail though, I&#8217;ll probably have to have a bit of a think about whether it&#8217;s the right way to go.</p>
<p>Ever since I moved the main server off Red Hat, I&#8217;ve not really had an effective VPN (I know, slack me).&nbsp;&nbsp;So when it comes to things like e-mail access, I&#8217;ve been using various webmail solutions.&nbsp;&nbsp;At the moment, I even find myself without one of those!&nbsp;&nbsp;So when Zimbra with all it&#8217;s Ajax goodness popped off the magazine pages at me, I jumped.</p>
<p>The trouble is that I have been at somewhat of a crossroads of late when it comes to the Crossed Wires system environment.&nbsp;&nbsp;Additional complexity is definitely not desirable, unless it comes with a really good ROI or leads to a possible future simplification.&nbsp;&nbsp;To that end, there are a couple of negatives to Zimbra: it appears to have its own mail infrastructure and its own LDAP, both of which we already have working stably, so unless it can work with existing instances I&#8217;d have to work out how to hook Zimbra&#8217;s into my own.</p>
<p>I should be fair and say that I got this impression after downloading and starting Zimbra&#8217;s pre-built VMware Appliance of the ZCS community build, based on FC4.&nbsp;&nbsp;So it might be that a standalone Zimbra install just uses your pre-existing daemons.&nbsp;&nbsp;Which leads me to the next point &#8212; Zimbra is not in Portage, and the only install doco I&#8217;ve found for it discusses setting up a Debian or Ubuntu chroot gaol and running Zimbra in that.&nbsp;&nbsp;Not a small amount of management overhead&#8230;</p>
<p>So if Zimbra does stay around, it will be as a virtual server using one of its supported distros rather than running natively somewhere (I suppose it could run natively on the CentOS Trixbox/VMware server, but it&#8217;s got enough to do).</p>
<p>On Zimbra, well, it&#8217;s sweet &#8212; as soon as I saw it I thought &#8220;I have to have this&#8221;.&nbsp;&nbsp;The Ajax interface looks really nice, and it seems to have all the function of a Thunderbird or Outlook Express killer.&nbsp;&nbsp;The fact that the same interface gets used regardless of hardware, OS or location is really nice.</p>
<p>Otherwise, I just get my digit out and do a VPN&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2006/09/zimbra-collaboration-suite/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Active Directory accounts on Linux</title>
		<link>http://veejoe.net/blog/2006/05/active-directory-accounts-on-linux/</link>
		<comments>http://veejoe.net/blog/2006/05/active-directory-accounts-on-linux/#comments</comments>
		<pubDate>Sun, 28 May 2006 04:51:59 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networks]]></category>
		<category><![CDATA[activedirectory]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[samba]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=1451</guid>
		<description><![CDATA[Never thought I could get this excited about something to do with a Windows server!&#160;&#160;But there it is &#8212; one of my SLES 9 test servers is now supporting logons from a user account stored in Active Directory, with no Samba in sight! Before you say ANYTHING, this is not an indication that the Crossed [...]]]></description>
			<content:encoded><![CDATA[<p>Never thought I could get this excited about something to do with a Windows server!&nbsp;&nbsp;But there it is &#8212; one of my SLES 9 test servers is now supporting logons from a user account stored in Active Directory, with no Samba in sight!</p>
<p>Before you say ANYTHING, this is not an indication that the Crossed Wires campus is switching to the evil side.&nbsp;&nbsp;Any experienced Linux sysadmin will tell you that working with Windows systems can&#8217;t be avoided &#8212; and in some cases, welcomed (after all it&#8217;s better to have one or two Linux boxes in a sea of Windows than no Linux boxes at all).&nbsp;&nbsp;My main customer at work is essentially a Windows shop, but their main file servers are Linux on zSeries, which means that me as a Linux guy needs to know more than I thought I would want to know about bringing Linux and Windows together.</p>
<p>So they are doing a migration to Microsoft Active Directory, and the Linux systems need to be integrated into the AD setup.&nbsp;&nbsp;To our architects, Linux Windows integration equals Samba &#8212; they never bothered to look at making use of AD&#8217;s LDAP component to create a model that Linux can handle natively, instead of the (to me) less-than-optimal Winbind (don&#8217;t get me wrong, Winbind works, it just imposes some operational issues that I&#8217;d sooner do without, like SID-[UG]ID mapping, for instance).</p>
<p>So I proposed that the solution be updated to utilise LDAP, through the use of Microsoft&#8217;s own Services for Unix (SFU).&nbsp;&nbsp;I was told &#8220;yeah, dunno why it wasn&#8217;t designed that way, would be the best way to do it, but no&#8221;.&nbsp;&nbsp;Sigh.</p>
<p>So I decided to stick to my guns and set up something to show that it would work exactly as I said it would.&nbsp;&nbsp;And I have!&nbsp;&nbsp;I&#8217;ve worked around some inaccurate information on the &#8216;Net, some incomplete documentation from Microsoft, and some finger-checks on my part, to be able to show The Right Way to anyone who cares&#8230;&nbsp;&nbsp;Yep, sometimes the useless thing is just worth doing.&nbsp;&nbsp;:)</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2006/05/active-directory-accounts-on-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rebooting my belief system</title>
		<link>http://veejoe.net/blog/2006/03/rebooting-my-belief-system/</link>
		<comments>http://veejoe.net/blog/2006/03/rebooting-my-belief-system/#comments</comments>
		<pubDate>Tue, 07 Mar 2006 13:41:50 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Operating Systems]]></category>
		<category><![CDATA[Soapbox]]></category>
		<category><![CDATA[systemz]]></category>
		<category><![CDATA[virtualisation]]></category>
		<category><![CDATA[z/VM]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=1741</guid>
		<description><![CDATA[I&#8217;ve been away from SHARE for far too long.  It&#8217;s really great to hear positive things about Linux on zSeries again, rather than the crap I have to put up with at home. In Australia, there is no evangelism of zSeries.  There&#8217;s an attitude bordering on arrogance that seems to say &#8220;we&#8217;re not going to explain zSeries [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been away from SHARE for far too long.  It&#8217;s really great to hear positive things about Linux on zSeries again, rather than the crap I have to put up with at home.</p>
<p>In Australia, there is no evangelism of zSeries.  There&#8217;s an attitude bordering on arrogance that seems to say &#8220;we&#8217;re not going to explain zSeries to you; if you don&#8217;t know you want it already then you&#8217;re not worth it&#8221;.  At least that&#8217;s what it looks like to me.</p>
<p>I&#8217;m surrounded by people who think that all problems can be solved by installing an xSeries or pSeries machine.  Maybe some can be, but IMHO they&#8217;ll be replacing one set of problems with another (possibly greater) set.</p>
<p>Anyway, it&#8217;s nice to hear different stories &#8212; like a company whose IT costs went from 1.7% to 0.9% of sales by migrating their ENTIRE server farm (including about a dozen p690s) to a z990 running Linux.  Like a company that has placed 250 Linux server guests onto z/VM inside a year, freezing acquisition of new discrete servers.</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2006/03/rebooting-my-belief-system/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Voodoo, CLP</title>
		<link>http://veejoe.net/blog/2006/03/voodoo-clp/</link>
		<comments>http://veejoe.net/blog/2006/03/voodoo-clp/#comments</comments>
		<pubDate>Wed, 01 Mar 2006 14:16:51 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[certification]]></category>
		<category><![CDATA[novell]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=1761</guid>
		<description><![CDATA[Passed the Novell Certified Linux Professional practicum (exam) yesterday.&#160;&#160;w00t!&#160;&#160;Scored 758 out of 800, which I&#8217;m told is a &#8220;good pass&#8221; (and to date, the highest score amongst my workmates).&#160;&#160;The exam cops a bit of flack in the community, but I found it okay&#8230;&#160;&#160;So now I&#8217;m certified!]]></description>
			<content:encoded><![CDATA[<p>Passed the Novell Certified Linux Professional practicum (exam) yesterday.&nbsp;&nbsp;w00t!&nbsp;&nbsp;Scored 758 out of 800, which I&#8217;m told is a &#8220;good pass&#8221; (and to date, the highest score amongst my workmates).&nbsp;&nbsp;The exam cops a bit of flack in the community, but I found it okay&#8230;&nbsp;&nbsp;So now I&#8217;m certified!</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2006/03/voodoo-clp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linus, you da man</title>
		<link>http://veejoe.net/blog/2005/09/linus-you-da-man/</link>
		<comments>http://veejoe.net/blog/2005/09/linus-you-da-man/#comments</comments>
		<pubDate>Thu, 29 Sep 2005 03:48:08 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[amd64]]></category>
		<category><![CDATA[bugfix]]></category>
		<category><![CDATA[linus]]></category>
		<category><![CDATA[vnc]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=1851</guid>
		<description><![CDATA[In chasing my VNC problem I came across this reference on the kernel Bugzilla about a general problem with segfaulting on SMP AMD64 systems.  Some pretty ugly stuff (the comment list is huge!).  Anyway, guys are chasing suspected bugs all over the place, with a couple of theories but not really any firm leads&#8230; Then, Linus (Torvalds, [...]]]></description>
			<content:encoded><![CDATA[<p>In chasing my VNC problem I came across <a href="http://bugzilla.kernel.org/show_bug.cgi?id=4851">this</a> reference on the kernel Bugzilla about a general problem with segfaulting on SMP AMD64 systems.  Some pretty ugly stuff (the comment list is huge!).  Anyway, guys are chasing suspected bugs all over the place, with a couple of theories but not really any firm leads&#8230;</p>
<p>Then, Linus (Torvalds, for those readers who don&#8217;t know Linux and therefore don&#8217;t know who Linus is) posts a message something like &#8220;err, guys, I think it might be this, here&#8217;s a patch which is totally untested and might not even compile so someone should check it&#8221;.  Fixes the problem &#8212; it&#8217;s a workaround to an actual problem in the AMD64 chips (the patch shuts off the TLB flush filter, a component of the chip that seems to behave a little oddly under heavy load and for which AMD have issued at least two errata).</p>
<p>Andi Kleen challenged Linus over his patch, implying that shutting off the TLB flush filter is too heavy-handed (my words, not Andi&#8217;s).  Linus then responded by saying &#8220;considering the pain this has caused for us, if I get even a single report that it fixes the problem, I _am_ going to commit that fix without any further questions&#8221;.</p>
<p>That&#8217;s the Linus we know and love!  He lurked away watching the discussion, dropped the fix on there when it became clear that there was little traction, and then dealt out some &#8220;Diplomacy: Torvalds-style&#8221;.  I&#8217;m a fan!</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2005/09/linus-you-da-man/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gentoo Linux wastes a bit more of my life</title>
		<link>http://veejoe.net/blog/2005/09/gentoo-linux-wastes-a-bit-more-of-my-life/</link>
		<comments>http://veejoe.net/blog/2005/09/gentoo-linux-wastes-a-bit-more-of-my-life/#comments</comments>
		<pubDate>Thu, 29 Sep 2005 03:00:21 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[update]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=1861</guid>
		<description><![CDATA[I like Gentoo Linux, but sometimes I find it&#8217;s not really applicable for some of what I&#8217;m using it for.&#160;&#160;Like my main server.&#160;&#160;This machine is one of the two machines at my place that just HAVE to work (the firewall/phone server is the other), and there&#8217;s been a few instances recently where Gentoo has let [...]]]></description>
			<content:encoded><![CDATA[<p>I like Gentoo Linux, but sometimes I find it&#8217;s not really applicable for some of what I&#8217;m using it for.&nbsp;&nbsp;Like my main server.&nbsp;&nbsp;This machine is one of the two machines at my place that just HAVE to work (the firewall/phone server is the other), and there&#8217;s been a few instances recently where Gentoo has let me down a bit&#8230;</p>
<p>First a bit of history: this machine is a dual-processor Opteron system, and as far as free (as-in beer) Linux distros Gentoo was about the only one that had a x64_64 port available at the time.&nbsp;&nbsp;Over time it&#8217;s grown to have a lot of stuff on it (applications, not just the data), so changing to a different distro will be FAR from trivial.&nbsp;&nbsp;I know that Gentoo isn&#8217;t really a server distro, but this install has a lot of momentum behind it now&#8230;</p>
<p>Where was I?&nbsp;&nbsp;That&#8217;s right: VNC.&nbsp;&nbsp;Something else I really like is VNC.&nbsp;&nbsp;I had a neat setup on my box that worked like a terminal server: you connect using your VNC client, get a login window from X, do some work, then log out when you&#8217;re done.&nbsp;&nbsp;No having to set up a permanently-running X desktop for every user that might want to connect!&nbsp;&nbsp;This was set up and working really well, until I just went to use it (after having not used it for a while) and found it broken.&nbsp;&nbsp;Seems that some other change I&#8217;d made since last using it caused the Xvnc process to start segfaulting.&nbsp;&nbsp;Rebuilding it made no difference.</p>
<p>This led me on a wild ride through Google searches, fora and mailing list archives (with a detour throug the LKML, which I&#8217;ll meniton later) to discover that in current versions TightVNC doesn&#8217;t play well on 64-bit distributions and that it&#8217;s been a known problem for months with no real end in sight.&nbsp;&nbsp;On someone&#8217;s recommendation I removed TightVNC and switched to the RealVNC package, and things started working again (once I fixed a different problem in KDM caused by Gentoo&#8217;s configuration file management).</p>
<p>I&#8217;m finding more and more that I have less and less time to frig around with this stuff.&nbsp;&nbsp;I need this kit to JUST WORK, and a bleeding edge distro like Gentoo isn&#8217;t helping me.&nbsp;&nbsp;Perhaps I need to change to using the Gentoo Reference Platform (GRP), which is a pre-built-binary version of Gentoo.&nbsp;&nbsp;But with the GRP, much of the advantage of Gentoo (custom-built packages, flexibility) is lost.</p>
<p>I guess I&#8217;ve been wanting to have my cake and eat it too &#8212; I want nicely-tuned custom-built packages, but I want stability and proven integration as well!&nbsp;&nbsp;I&#8217;m going to have to give something up, and I think that stability is going to win.</p>
<p>I&#8217;m attracted to CentOS, the respin of Red Hat Enterprise Linux.&nbsp;&nbsp;I guess I could have a play with that on some other kit and see how it goes&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2005/09/gentoo-linux-wastes-a-bit-more-of-my-life/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Veejoe goes LDAP</title>
		<link>http://veejoe.net/blog/2005/07/veejoe-goes-ldap/</link>
		<comments>http://veejoe.net/blog/2005/07/veejoe-goes-ldap/#comments</comments>
		<pubDate>Sat, 09 Jul 2005 00:29:01 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[ldap]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=1961</guid>
		<description><![CDATA[We bit the bullet here at the new Ellendale data centre.&#160;&#160;LDAP authentication!&#160;&#160;Works like a bought one. Coinciding with the relocation of the prime server from Rubicon DC to Ellendale DC, we&#8217;ve implemented LDAP authentication for Linux and Mac OS X clients.&#160;&#160;There&#8217;s also automounted home directories to boot!&#160;&#160;It went quite smoothly, all things considered. Now will [...]]]></description>
			<content:encoded><![CDATA[<p>We bit the bullet here at the new Ellendale data centre.&nbsp;&nbsp;LDAP authentication!&nbsp;&nbsp;Works like a bought one.</p>
<p>Coinciding with the relocation of the prime server from Rubicon DC to Ellendale DC, we&#8217;ve implemented LDAP authentication for Linux and Mac OS X clients.&nbsp;&nbsp;There&#8217;s also automounted home directories to boot!&nbsp;&nbsp;It went quite smoothly, all things considered.</p>
<p>Now will come the dreaded data reorganisation (there&#8217;s about 1.5TB of storage across all the Crossed Wires machines).&nbsp;&nbsp;Also, I&#8217;ve been running Samba 3 for a while so there&#8217;s probably not much reason to keep putting off integrating the Windows boxes into LDAP as well&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2005/07/veejoe-goes-ldap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Experiences with MythTV &#8211; part 1</title>
		<link>http://veejoe.net/blog/2005/01/experiences-with-mythtv-part-1/</link>
		<comments>http://veejoe.net/blog/2005/01/experiences-with-mythtv-part-1/#comments</comments>
		<pubDate>Sat, 22 Jan 2005 01:44:48 +0000</pubDate>
		<dc:creator>Vic</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[media]]></category>
		<category><![CDATA[mythtv]]></category>

		<guid isPermaLink="false">http://veejoe.net/blog/?p=2031</guid>
		<description><![CDATA[Okay, I&#8217;m an ungrateful whinger.  MythTV so far has been an exercise in lost sleep and disappointment.  Don&#8217;t know if it&#8217;s my TV card, the card&#8217;s drivers, DVB (particularly HDTV) support in MythTV, or just the general stability of MythTV itself, but I&#8217;m far from happy. I&#8217;ve been holding off on buying a TV card for years, [...]]]></description>
			<content:encoded><![CDATA[<p>Okay, I&#8217;m an ungrateful whinger.  MythTV so far has been an exercise in lost sleep and disappointment.  Don&#8217;t know if it&#8217;s my TV card, the card&#8217;s drivers, DVB (particularly HDTV) support in MythTV, or just the general stability of MythTV itself, but I&#8217;m far from happy.</p>
<p>I&#8217;ve been holding off on buying a TV card for years, partly because of my perception of poor support in Linux, but also because of the state-of-flux that TV in Australia is in (probably in other parts of the world too) regarding Digital TV.  But, XBMC made me take the plunge and I&#8217;m thinking it was not a good move.</p>
<p>I wanted to get TV going via XBMC.  There&#8217;s built-in support for ReplayTV, but since we don&#8217;t have and can&#8217;t get that over here I went a-browsing.  There&#8217;s a Python XBMC script that hooks XBMC into MythTV &#8212; cool, I thought.  I bought a card (supported by drivers written by a local guy, so I figured it would work well and be proven in the local area).</p>
<p>Getting the drivers to build and install was a trial.  Running a 2.6 kernel as I am, the way this guy&#8217;s package builds it basically toasts a large portion of my kernel tree and replaces it with symlinks to his code (which looks like a snapshot of the LinuxTV code).  There&#8217;s probably a lot of folk out there that don&#8217;t know any better, but IMHO you just don&#8217;t do that!  On account of how I don&#8217;t know a better way to do it though, I&#8217;ll shut up.</p>
<p>So I finally got the drivers built.  Where are the dvb-utils?  Ah, good question&#8230;  You see on Gentoo, the dvb-utils package builds NOTHING.  The maintainers of this package realise that if you are running a 2.6 kernel you&#8217;ll have fairly complete LinuxTV support in your kernel, so they tell you that they are doing nothing.  But what about the user-space utilites?  scan?  tzap?  Grrr&#8230;  Watch out for my flaming bug report&#8230;</p>
<p>So in the background while a lot of this was happening I was building MythTV.  When it finished, I was itching to watch TV!  BANG &#8212; nothing but an error from mythsetup saying that I had to add dvb support if I want to use a DVB card&#8230;  Seems there&#8217;s a USE flag I was missing.  I like Gentoo, but sometimes&#8230;  So I remerge MythTV&#8230;</p>
<p>So now I have a working MythTV, and a working card and drivers.  But how do I tune it in?  As they say, nothing worth having is easy to obtain.  This part of MythTV is probably one of its poorest-documented &#8212; how to find out the magic stuff you need to plug in to get going with DVB.  After two days of fiddling, I finally Googled a moderately simple method, but it still requires me to key in arcane little numbers and setting for every stream (not just each channel).</p>
<p>So finally I get to watch some TV!  But don&#8217;t make it high definition, oh no&#8230;  Seems that something in the chain (driver or MythTV) can&#8217;t do HDTV on this HDTV-capable card.  And if one of the arcane little numbers is not quite right, the whole things locks up.  Still, it could be worse, I&#8217;ve only had a couple of kernel freezes on what was previously a rock-solid machine &#8212; I&#8217;m just glad that I&#8217;m using a desktop machine to test with rather than going with my original plan, which was to put the TV card straight into my server.</p>
<p>It&#8217;s no wonder that &#8220;people&#8221; don&#8217;t like Linux.  Almost every endeavour I have undertaken using Linux has required that I undertake an exhaustive course of self-instruction to become aware of almost every facet of the mechanics of what I&#8217;m trying to do.  It happened with telephony, with DVD authoring, with TV.  How many people that run DVB cards on Windows would even know what PIDs are?  I have to know, though, because I run Linux.</p>
<p>Lucky I&#8217;m such a fucking geek.</p>
]]></content:encoded>
			<wfw:commentRss>http://veejoe.net/blog/2005/01/experiences-with-mythtv-part-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

