<?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>SplatDot.com</title>
	<atom:link href="http://splatdot.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://splatdot.com</link>
	<description>software. systems. solutions.</description>
	<lastBuildDate>Tue, 31 Aug 2010 22:25:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Ubuntu Lucid Lynx 10.04 LTS Upgrade Woes: Microsoft VPN Failure, Rhythmbox Segfault and Serendipity Saves the Day</title>
		<link>http://splatdot.com/ubuntu-lucid-lynx-10-04-lts-upgrade-woes-microsoft-vpn-failure-rhythmbox-segfault-and-serendipity-saves-the-day/</link>
		<comments>http://splatdot.com/ubuntu-lucid-lynx-10-04-lts-upgrade-woes-microsoft-vpn-failure-rhythmbox-segfault-and-serendipity-saves-the-day/#comments</comments>
		<pubDate>Tue, 31 Aug 2010 22:25:31 +0000</pubDate>
		<dc:creator>dean</dc:creator>
				<category><![CDATA[Microsoft VPN]]></category>
		<category><![CDATA[NetworkManager]]></category>
		<category><![CDATA[Rhythmbox]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://splatdot.com/?p=319</guid>
		<description><![CDATA[A couple weeks ago I needed a newer version of pidgin-sipe so that I could use Pidgin to connect to Microsoft Office Communications Server. I was running Ubuntu Karmic Koala 9.10 which includes version 1.5.0 of pidgin-sipe and I needed version 1.8.0. When I saw that Ubuntu Lucid Lynx 10.04 LTS includes version 1.8.0 of [...]]]></description>
			<content:encoded><![CDATA[<p>A couple weeks ago I needed a newer version of <a href="http://sipe.sourceforge.net/">pidgin-sipe</a> so that I could use <a href="http://www.pidgin.im/">Pidgin</a> to connect to <a href="http://www.microsoft.com/communicationsserver/en/us/default.aspx">Microsoft Office Communications Server</a><a href="http://www.microsoft.com/communicationsserver/en/us/default.aspx"></a>. I was running <a href="http://releases.ubuntu.com/9.10/">Ubuntu Karmic Koala 9.10</a> which includes version 1.5.0 of pidgin-sipe and I needed version 1.8.0. When I saw that <a href="http://releases.ubuntu.com/10.04/">Ubuntu Lucid Lynx 10.04 LTS</a> includes version 1.8.0 of pidgin-sipe, instead of doing the prudent thing and building pidgin-sipe 1.8.0 from source on Ubuntu 9.10, I decided to upgrade to Ubuntu 10.04.</p>
<p>Except for being greeted by the <a href="http://www.uluga.ubuntuforums.org/showthread.php?t=1474148">&#8220;Partial Upgrade&#8221;</a> dialog in <a href="https://wiki.ubuntu.com/UpdateManager">Update Manager</a> the upgrade went as smoothly as can be expected for an in-place upgrade. I had Pidgin talking to Microsoft Office Communications Server within a few minutes of completing the upgrade. Mission accomplished. Then I needed to connect to Microsoft PPTP VPN at a clients&#8217; site and I started to experience Ubuntu upgrade woes. The VPN connection was failing with the following error:
</p>
<p><img src="http://splatdot.com/wp-content/uploads/VPNConnectionFailed.png" alt="VPNConnectionFailed.png" border="0" width="339" height="130" /></p>
<p>I spent quite a bit of time trying to fix that problem with no success. I couldn&#8217;t find any helpful errors in the system logs. The PPTP client was logging the following when I tried to connect:</p>
<blockquote><pre>
pppd[18079]: Plugin /usr/lib/pppd/2.4.5//nm-pptp-pppd-plugin.so loaded.
pppd[18079]: pppd 2.4.5 started by root, uid 0
pppd[18079]: Using interface ppp0
pppd[18079]: Connect: ppp0 < --> /dev/pts/2
pppd[18079]: CHAP authentication succeeded
pppd[18079]: MPPE 40-bit stateless compression enabled
pppd[18079]: local  IP address 172.30.8.180
pppd[18079]: remote IP address 172.30.8.61
pppd[18079]: primary   DNS address 172.30.3.22
pppd[18079]: secondary DNS address 172.30.3.23
pppd[18079]: Terminating on signal 15
pppd[18079]: Connect time 0.7 minutes.
pppd[18079]: Sent 0 bytes, received 0 bytes.
pppd[18079]: Child process /usr/sbin/pptp vpn.********.com --nolaunchpppd --logstring nm-pptp-service-18077 (pid 18081) terminated with signal 15
pppd[18079]: Connection terminated.
pppd[18079]: Exit.
</pre>
</blockquote>
<p>Not much info there. The <a href="http://projects.gnome.org/NetworkManager/">NetworkManager</a> log offered a little bit more info:</p>
<blockquote><pre>
NetworkManager: &lt;info>  Starting VPN service 'org.freedesktop.NetworkManager.pptp'...
NetworkManager: &lt;info>  VPN service 'org.freedesktop.NetworkManager.pptp' started (org.freedesktop.NetworkManager.pptp), PID 15184
NetworkManager: &lt;info>  VPN service 'org.freedesktop.NetworkManager.pptp' just appeared, activating connections
NetworkManager: &lt;info>  VPN plugin state changed: 1
NetworkManager: &lt;info>  VPN plugin state changed: 3
NetworkManager: &lt;info>  VPN connection 'Corporate VPN' (Connect) reply received.
NetworkManager:    SCPlugin-Ifupdown: devices added (path: /sys/devices/virtual/net/ppp0, iface: ppp0)
NetworkManager:    SCPlugin-Ifupdown: device added (path: /sys/devices/virtual/net/ppp0, iface: ppp0): no ifupdown configuration found.
<strong>NetworkManager: &lt;info>  VPN connection 'Corporate VPN' (IP Config Get) timeout exceeded.</strong>
NetworkManager: &lt;info>  Policy set 'Auto eth0' (eth0) as default for routing and DNS.
NetworkManager:    SCPlugin-Ifupdown: devices removed (path: /sys/devices/virtual/net/ppp0, iface: ppp0)
NetworkManager: &lt;debug> [1283289056.002038] ensure_killed(): waiting for vpn service pid 15184 to exit
NetworkManager: &lt;debug> [1283289056.002152] ensure_killed(): vpn service pid 15184 cleaned up</pre>
</blockquote>
<p>The VPN connection was timing out. A <a href="http://www.google.com/search?client=safari&#038;rls=en-us&#038;q=VPN+connection+'Corporate+VPN'+(IP+Config+Get)+timeout+exceeded.&#038;ie=UTF-8&#038;oe=UTF-8#hl=en&#038;client=safari&#038;rls=en-us&#038;q=%22VPN+connection%22+%22(IP+Config+Get)+timeout+exceeded%22&#038;aq=&#038;aqi=&#038;aql=&#038;oq=&#038;gs_rfai=&#038;pbx=1&#038;fp=728ef3750cf3a29c">Google search</a> for that timeout message turned up lots of problems, but few solutions and none that worked for me.
</p>
<p>While I searched for a working solution to my problem I launched <a href="http://projects.gnome.org/rhythmbox/">Rhythmbox</a> to play some &#8220;thinking music&#8221;. Rhythmbox loaded and then died. I started it again and it died again. More upgrade woes. I looked in the system log and found this message:</p>
<blockquote><pre>rhythmbox[29735]: segfault at 0 ip  013e97e2 sp b43fead8 error 6 in libnss_wins.so.2[13a8000+253000]</pre>
</blockquote>
<p>Rhythmbox was getting a <a href="http://en.wikipedia.org/wiki/SIGSEGV">SIGSEGV</a> and dying shortly after launching every time. A <a href="http://www.google.com/search?client=safari&#038;rls=en&#038;q=rhythmbox%5B29735%5D:+segfault+at+0+ip++013e97e2+sp+b43fead8+error+6+in+libnss_wins.so.2%5B13a8000%2B253000%5D&#038;ie=UTF-8&#038;oe=UTF-8#hl=en&#038;client=safari&#038;rls=en&#038;q=rhythmbox+segfault+at+0+ip+sp+error+6+in+libnss_wins.so.2&#038;aq=f&#038;aqi=&#038;aql=&#038;oq=&#038;gs_rfai=&#038;pbx=1&#038;fp=728ef3750cf3a29c">Google search</a> for that message turned up lots of other users experiencing the same problem. A few commenters reported that the issue was related to <a href="http://www.samba.org/samba/docs/man/manpages-3/winbindd.8.html">winbind</a>. Several suggested the problem was the order of the hosts in <a href="http://linux.die.net/man/5/nsswitch.conf">/etc/nsswitch.conf</a> and that moving the wins entry to the end of the hosts line would fix the problem. I edited /etc/nsswitch.conf and changed this line:</p>
<blockquote><pre>hosts:          files <strong>wins</strong> mdns4_minimal [NOTFOUND=return] dns mdns4</pre>
</blockquote>
<p>To this:</p>
<blockquote><pre>hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4 <strong>wins</strong></pre>
</blockquote>
<p>Then I launched Rhythmbox and it did not segfault. Problem solved.<sup>1</sup></p>
<p>Now that I had music again I returned to working on the VPN problem. I tried connecting the VPN again and &#8230; it worked! Sonofa! The change I made to /etc/nsswitch.conf to fix Rhythmbox also fixed my Microsoft VPN problems too. Another win for serendipity!</p>
<hr />
<p><sup>1</sup><em>Moving wins after dns on the hosts line in /etc/nsswitch.conf effectively disables winbind and this may cause problems with Samba. It didn&#8217;t cause any problems for me, but your mileage may vary.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://splatdot.com/ubuntu-lucid-lynx-10-04-lts-upgrade-woes-microsoft-vpn-failure-rhythmbox-segfault-and-serendipity-saves-the-day/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fixing Snow Leopard 10.6.3 Samba Write Access</title>
		<link>http://splatdot.com/fixing-snow-leopard-10-6-3-samba-write-access/</link>
		<comments>http://splatdot.com/fixing-snow-leopard-10-6-3-samba-write-access/#comments</comments>
		<pubDate>Mon, 05 Apr 2010 09:19:58 +0000</pubDate>
		<dc:creator>dean</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[SMB]]></category>
		<category><![CDATA[Samba]]></category>
		<category><![CDATA[Snow Leopard]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://splatdot.com/?p=299</guid>
		<description><![CDATA[June 21, 2010 Update: Apple appears to have solved the problem for many of us with the release of Snow Leopard 10.6.4. To save you time I&#8217;ll give you the solution first then describe how I found it: Turn off Unix extensions in your Samba server by adding the following line to smb.conf in the [...]]]></description>
			<content:encoded><![CDATA[<p><strong>June 21, 2010 Update:</strong> Apple appears to have solved the problem for many of us with the release of Snow Leopard 10.6.4.</p>
<p></p>
<hr />
<p><em>To save you time I&#8217;ll give you the solution first then describe how I found it:</em> Turn off Unix extensions in your Samba server by adding the following line to <code>smb.conf</code> in the global settings block and then restart Samba:</p>
<blockquote><p><code><strong>unix extensions = no</strong></code><br />&nbsp;</p></blockquote>
<p>You might also need to unmount and re-mount your Samba volumes from OS X after you make this change.<br />&nbsp;</p>
<hr />
<p>After installing the <a href="http://support.apple.com/kb/HT4014">OS X Snow Leopard 10.6.3</a> update I found that I could no longer write to <a href="http://www.samba.org/">Samba</a> (SMB) volumes shared from my Linux server (running <a href="https://wiki.ubuntu.com/KarmicKoala">Ubuntu 9.10 Karmic Koala</a>) that I had mounted on OS X. Whenever I tried to copy a file from OS X to the mounted Samba drive I got the error message:</p>
<blockquote><p><em>The operation can&#8217;t be completed because you don&#8217;t have permission to access some of the items.</em><br />&nbsp;</p></blockquote>
<p><img src="http://splatdot.com/wp-content/uploads/SMBWriteAccessDenied.png" alt="The operation can't be completed because you don't have permission to access some of the items." border="0" width="479" height="187" /></p>
<p>Apparently a lot of other people are having the problem as well:</p>
<ul>
<li><a href="http://www.cultofmac.com/10-6-3-update-breaking-smb-mounted-volume-write-access-for-many/36401">10.6.3 Update Breaking SMB Mounted Volume Write Access for Many</a>
</li>
<li><a href="http://discussions.apple.com/thread.jspa?messageID=11304132">Topic : After update to 10.6.3 copy to a Samba share fails</a>
</li>
<li><a href="http://discussions.apple.com/thread.jspa?threadID=2382501&#038;start=0&#038;tstart=0">Topic : No rights to write on SMB mounted volume after updating on 10.6.3</a>
</li>
</ul>
<p>I couldn&#8217;t find the solution anywhere on Google, and I spent hours today searching. I finally found the solution serendipitously while trying to fix another Samba issue. While scouring the system and Samba logs on my Linux server to try to find a clue to the first problem I found a bunch of warnings like the following repeated over and over in the Samba log:</p>
<blockquote><p><code>[2010/04/05 00:08:37,  0] param/loadparm.c:9783(widelinks_warning)<br />
  Share 'documents' has wide links and unix extensions enabled. These parameters are incompatible. Wide links will be disabled for this share.</code><br />&nbsp;</p></blockquote>
<p>This warning started logging on March 24th, the same day that Ubuntu announced and patched a vulnerability related to the Samba wide links option: <a href="http://www.ubuntu.com/usn/USN-918-1">Ubuntu Security Notice USN-918-1</a>. According to <a href="http://my.safaribooksonline.com/1-56592-449-5">Using Samba</a> by Robert Eckstein, David Collier-Brown and Peter Kelly you should not turn off the wide links option for performance reasons. (See <a href="http://oreilly.com/catalog/samba/chapter/book/appb.pdf">Appendix B: Samba Performance Tuning</a>.) Since I use Samba for just about everything I decided that performance was more important than Unix extensions so I added the following to my <code>smb.conf</code> in the global settings block and restarted Samba:</p>
<blockquote><p><code><strong>unix extensions = no</strong></code><br />&nbsp;</p></blockquote>
<p>To my amazement and delight, this had the welcome side effect of solving the Samba write access issue I was having with OS X. To verify that this is really what solved the problem I re-enabled Unix extensions and restarted Samba and the write access problem returned. Then I turned Unix extensions off again and restarted Samba and I could write to all of the Samba mounts again from OS X. So if you are having problems writing to Samba mounts from OS X ask your system administrator to turn off Unix extensions in the server&#8217;s Samba configuration.<br />&nbsp;</p>
<hr />
<p>I&#8217;ve had emails and comments that point out that there are advantages to having Unix extensions on. That&#8217;s true and this should be considered a workaround rather than a fix. When (if?) Apple fixes the underlying problem you should turn Unix extensions back on in your Samba server.</p>
]]></content:encoded>
			<wfw:commentRss>http://splatdot.com/fixing-snow-leopard-10-6-3-samba-write-access/feed/</wfw:commentRss>
		<slash:comments>57</slash:comments>
		</item>
		<item>
		<title>Ubuntu 9.10 Karmic Koala</title>
		<link>http://splatdot.com/ubuntu-9-10-karmic-koala/</link>
		<comments>http://splatdot.com/ubuntu-9-10-karmic-koala/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 08:00:56 +0000</pubDate>
		<dc:creator>dean</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.splatdot.com/?p=268</guid>
		<description><![CDATA[Against my better judgement I performed an in-place upgrade from Jaunty Jackalope to Karmic Koala. The upgrade went smoothly and the process was fast and painless. It was probably uneventful because I had made and verified two full backups before starting. Just in case.]]></description>
			<content:encoded><![CDATA[<p>Against my better judgement I performed an in-place upgrade from <a href="http://www.ubuntu.com/getubuntu/releasenotes/904">Jaunty Jackalope</a> to <a href="http://www.ubuntu.com/getubuntu/releasenotes/910">Karmic Koala</a>. The upgrade went smoothly and the process was fast and painless. It was probably uneventful because I had made and verified two full backups before starting. Just in case.</p>
]]></content:encoded>
			<wfw:commentRss>http://splatdot.com/ubuntu-9-10-karmic-koala/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress Mobile Pack</title>
		<link>http://splatdot.com/wordpress-mobile-pack/</link>
		<comments>http://splatdot.com/wordpress-mobile-pack/#comments</comments>
		<pubDate>Sun, 24 Jan 2010 23:04:19 +0000</pubDate>
		<dc:creator>dean</dc:creator>
				<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.splatdot.com/?p=265</guid>
		<description><![CDATA[I just installed WordPress Mobile Pack to make this site a little easier on smartphones and their data networks. It was painless to install and it just works. If you haven&#8217;t already got a mobile version of your WordPress site I recommend it.]]></description>
			<content:encoded><![CDATA[<p>I just installed <a href="http://wordpress.org/extend/plugins/wordpress-mobile-pack/">WordPress Mobile Pack</a> to make this site a little easier on smartphones and their data networks. It was painless to install and it just works. If you haven&#8217;t already got a mobile version of your WordPress site I recommend it.</p>
]]></content:encoded>
			<wfw:commentRss>http://splatdot.com/wordpress-mobile-pack/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Introduction to Virtualization on the Macintosh</title>
		<link>http://splatdot.com/introduction-to-virtualization-on-the-macintosh/</link>
		<comments>http://splatdot.com/introduction-to-virtualization-on-the-macintosh/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 21:14:43 +0000</pubDate>
		<dc:creator>dean</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[OS X]]></category>

		<guid isPermaLink="false">http://www.splatdot.com/?p=258</guid>
		<description><![CDATA[A very brief introduction to virtualization on the Macintosh and a high level comparison of VMWare Fusion 3 and Parallels Desktop 5. [View on SlideShare to see the notes] Introduction to Virtualization View more presentations from SplatDot.com Inc..]]></description>
			<content:encoded><![CDATA[<p>A very brief introduction to virtualization on the Macintosh and a high level comparison of VMWare Fusion 3 and Parallels Desktop 5. [<a href="http://www.slideshare.net/splatdot/introduction-to-virtualization">View on SlideShare to see the notes</a>]</p>
<div id="__ss_2843819" style="padding-left: 50px;width: 425px; text-align: left;"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" title="Introduction to Virtualization" href="http://www.slideshare.net/splatdot/introduction-to-virtualization">Introduction to Virtualization</a><object style="margin:0px" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="355" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=virtualization-100106145014-phpapp01&amp;rel=0&amp;stripped_title=introduction-to-virtualization" /><param name="allowfullscreen" value="true" /><embed style="margin:0px" type="application/x-shockwave-flash" width="425" height="355" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=virtualization-100106145014-phpapp01&amp;rel=0&amp;stripped_title=introduction-to-virtualization" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<div style="font-size: 11px; font-family: tahoma,arial; height: 26px; padding-top: 2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">presentations</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/splatdot">SplatDot.com Inc.</a>.</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://splatdot.com/introduction-to-virtualization-on-the-macintosh/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>“Hey, where did all our traffic go?”</title>
		<link>http://splatdot.com/%e2%80%9chey-where-did-all-our-traffic-go%e2%80%9d/</link>
		<comments>http://splatdot.com/%e2%80%9chey-where-did-all-our-traffic-go%e2%80%9d/#comments</comments>
		<pubDate>Tue, 24 Nov 2009 07:19:24 +0000</pubDate>
		<dc:creator>dean</dc:creator>
				<category><![CDATA[Drupal]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Google Analytics]]></category>
		<category><![CDATA[migration]]></category>

		<guid isPermaLink="false">http://www.splatdot.com/?p=234</guid>
		<description><![CDATA[Or: “How to execute a flawless migration from one CMS to another and lose more than 98% of your traffic in the process.” Just over one month ago I migrated our web site from Drupal to WordPress. The migration went flawlessly and everything except the comments transferred without problem. The only content that didn’t migrate was [...]]]></description>
			<content:encoded><![CDATA[<p>Or: <em>“How to execute a flawless migration from one CMS to another and lose more than 98% of your traffic in the process.”</em></p>
<p>Just over one month ago I <a href="http://www.splatdot.com/2009/10/18/goodby-drupal-hello-wordpress/" target="_blank">migrated our web site</a> from <a href="http://drupal.org/" target="_blank">Drupal</a> to <a href="http://wordpress.org/" target="_blank">WordPress</a>. The migration went flawlessly and everything except the comments transferred without problem. The only content that didn’t migrate was comments from the old site. They were more difficult to migrate cross-CMS than the rest of the content and we decided the benefit did not justify the effort. Following the migration I tested everything (or so I thought), both from inside and outside our network. All indicators were green and everything worked as planned.</p>
<p><img class="size-full wp-image-236 alignright" style="margin-left: 20px; margin-right: 20px;" title="Graph" src="http://www.splatdot.com/wp-content/uploads/TrafficCliff.png" alt="Graph" width="198" height="108" />Then, a couple of days ago I looked at the site’s Google Analytics reports for the first time since the migration and I said “<strong>@#$&amp;</strong>” and  “<strong>$%&amp;^</strong>” and “<strong>%&amp;$#?@!</strong>” too. And I meant every word of it. Why did I suddenly break out in <a href="http://typography.com/ask/showBlog.php?blogID=122" target="_blank">grawlixes</a>? Because I saw the traffic graph on the right. Our web site traffic fell off of a cliff and never recovered after the migration. According to Google Analytics our traffic was down 98.17% from our historical average.</p>
<p>How did that happen? It happened because I failed to check that all of the permalinks matched the old site. I had spot-checked some and they were the same, and so I assumed they would all be the same. That was an enormous mistake because Drupal and WordPress generate permalinks from post titles in subtly different ways. For example, given a title containing the phrase “Ubuntu 9.04”, Drupal would generate a permalink containing “Ubuntu-9-04” and WordPress would generate a permalink containing “Ubuntu-904”. This meant that a large number of our archives had new permalinks that were now one character different from the original. In fact, all of our most popular permalinks were affected. Bookmarks, inbound links and search results were all getting a 404 page, and not a very good one at that.</p>
<p>Much of this traffic is lost forever. After correcting most of the permalinks traffic is up to approximately 20% of our pre-migration levels. I expect more of it to return as search engine crawlers clean up after the mess I caused. But it won’t all return and it will take months to rebuild to pre-migration levels. If our business depended on web site traffic, I would likely be updating my resumé now instead of writing this.</p>
<p><strong>Lessons Learned</strong></p>
<p>I learned these lessons the hard way so you don’t have to.</p>
<ul>
<li>Compare the permalinks from the old and the new CMS. All of them.</li>
<li>Look at your web stats reports regularly.</li>
<li>Make sure you have a helpful 404 page. One that says “404: Page Not Found” and nothing else is not helpful.</li>
<li>Tag and categorize your content. The 404 page for the WordPress theme I’m using uses this information to help a visitor landing on the 404 page navigate to somewhere more useful.</li>
<li>Get a real-time report of 404 errors. There are several WordPress plugins that will help. I used the <a href="http://alexking.org/projects/wordpress" target="_blank">404 Notifier plugin by Alex King</a>. That plugin sends an email anytime a 404 error occurs, but there are other plugins available that serve a similar purpose. If I had this kind of real-time report during the migration, the problem would have been identified and corrected much sooner and the traffic impact would have been minimized.</li>
<li>Use a plugin that tries to locate the missing content. I’m using <a href="http://michael.tyson.id.au/wordpress/plugins/smart-404/" target="_blank">Smart 404 for WordPress by Michael Tyson</a>. Smart 404 tries to find the missing page and redirects to the correct page. If it can’t locate the correct page then it tries send the visitor to a relevant category or tag. There are similar plugins that take other approaches, such as using a site map and a local Google search to locate either the missing content or relevant content.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://splatdot.com/%e2%80%9chey-where-did-all-our-traffic-go%e2%80%9d/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>789:57:13</title>
		<link>http://splatdot.com/7895713/</link>
		<comments>http://splatdot.com/7895713/#comments</comments>
		<pubDate>Sat, 07 Nov 2009 09:59:29 +0000</pubDate>
		<dc:creator>dean</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[iTunes]]></category>
		<category><![CDATA[faac]]></category>
		<category><![CDATA[faad]]></category>
		<category><![CDATA[MP4]]></category>

		<guid isPermaLink="false">http://www.splatdot.com/?p=103</guid>
		<description><![CDATA[I recently had several tracks stop playing in iTunes and they all had one thing in common, a duration of 789:57:13. The recommended solution for this problem is to re-rip or re-download the track. That wasn&#8217;t an option for some of these tracks because I purchased them through iTunes and the official Apple stance is [...]]]></description>
			<content:encoded><![CDATA[<p>I recently had several tracks stop playing in iTunes and they all had one thing in common, a duration of 789:57:13. The recommended solution for this problem is to re-rip or re-download the track. That wasn&#8217;t an option for some of these tracks because I purchased them through iTunes and the official Apple stance is that you are only allowed to <a href="http://support.apple.com/kb/HT1469">download a purchased track once</a> and I didn&#8217;t want to re-purchase the tracks. Restoring from backup also wasn&#8217;t an option for some of the tracks because they were munged in even my oldest backups.</p>
<p>The solution I found was <a href="http://www.audiocoding.com/faad2.html" target="_blank">faad</a> and <a href="http://www.audiocoding.com/faac.html" target="_blank">faac</a> &#8211; Freeware Advanced Audio Decoder/Coder. It will decode unencrypted AAC/MP4 files and will happily ignore and correct the munged frame duration in the MP4 wrapper. I recovered a damaged track like this:</p>
<p><code>faad "09 This Devil's Workday.m4a" -o "09 This Devil's Workday.wav"</code></p>
<p><code>mv "09 This Devil's Workday.m4a" "09 This Devil's Workday.m4a.bad"</code></p>
<p><code>faac -w --artist "Modest Mouse" --title "This Devil's Workday" --album "Good News for People Who Love Bad News" --track 9 --disc 1 --year 2004 "09 This Devil's Workday.wav"</code></p>
<p>As faad was decoding the original track it showed that the MP4 wrapper&#8217;s duration was, but it corrected as it decoded it.</p>
<p><code>MP4 seems to have incorrect frame duration, using values from AAC data.<br />
Decoding 09 This Devil's Workday.m4a took:  1.62 sec. 85.94x real-time.</code></p>
<p>When faad/faac were done I was able to re-import the track into iTunes and play it successfully.</p>
<p><strong>Caveats</strong></p>
<p>I lost some of the iTunes metadata from the original track, mainly the cover art.  iTunes automatically added the cover art when I re-imported it, but that only works for music in the iTunes library. In those cases, faac has an option to import cover art from an external image file. You can do the same thing with iTunes as well.</p>
<p>If you have a lot of tracks to repair, adding the metadata manually on the command line is tedious. However, it could be automated with a simple script that captures and processes the output of faad since it displays all the track metadata as it is processing.</p>
<hr /><em>Cross-posted on <a href="http://www.deanfranklin.net/" target="_blank">deanfranklin.net</a>.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://splatdot.com/7895713/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Goodby Drupal, Hello WordPress</title>
		<link>http://splatdot.com/goodby-drupal-hello-wordpress/</link>
		<comments>http://splatdot.com/goodby-drupal-hello-wordpress/#comments</comments>
		<pubDate>Sun, 18 Oct 2009 10:07:02 +0000</pubDate>
		<dc:creator>dean</dc:creator>
				<category><![CDATA[Drupal]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.splatdot.com/?p=86</guid>
		<description><![CDATA[As soon as the DNS changes propagate this blog will be hosted on WordPress at bluehost.com. I still like Drupal and I&#8217;ll probably keep current on it and continue to use it for some things, but just for blogging &#8211; especially as infrequently as I blog &#8211; the overhead for managing Drupal is too much.]]></description>
			<content:encoded><![CDATA[<p>As soon as the DNS changes propagate this blog will be hosted on <a href="http://wordpress.org/">WordPress</a> at <a href="http://bluehost.com/">bluehost.com</a>. I still like <a href="http://drupal.org/">Drupal</a> and I&#8217;ll probably keep current on it and continue to use it for some things, but just for blogging &#8211; especially as infrequently as I blog &#8211; the overhead for managing Drupal is too much.</p>
]]></content:encoded>
			<wfw:commentRss>http://splatdot.com/goodby-drupal-hello-wordpress/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Ubuntu 9.04 (Jaunty Jackalope) Problems Fixed</title>
		<link>http://splatdot.com/ubuntu-9-04-jaunty-jackalope-problems-fixed/</link>
		<comments>http://splatdot.com/ubuntu-9-04-jaunty-jackalope-problems-fixed/#comments</comments>
		<pubDate>Sun, 03 May 2009 03:33:17 +0000</pubDate>
		<dc:creator>dean</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Jaunty Jackalope]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[No Terminal I put a band-aid over this problem by adding /dev/pty to /etc/fstab. After revisiting this bug report I found that the source of the problem was that I was missing a symlink in /etc/rcS.d. If you are having the same problem first check that /etc/init.d/mountdevsubfs.sh exists and then run the following commands: cd [...]]]></description>
			<content:encoded><![CDATA[<h3>No Terminal</h3>
<p>I put a band-aid over this problem by adding <code>/dev/pty</code> to <code>/etc/fstab</code>. After revisiting <a href="https://bugs.launchpad.net/ubuntu/+source/sysvinit/+bug/338071">this bug report</a> I found that the source of the problem was that I was missing a symlink in <code>/etc/rcS.d</code>. If you are having the same problem first check that<br />
<code>/etc/init.d/mountdevsubfs.sh</code> exists and then run the following commands:</p>
<blockquote><p><code>cd /etc/rcS.d/</p>
<p>sudo ln -s ../init.d/mountdevsubfs.sh S11mountdevsubfs.sh</code></p>
</blockquote>
<p>However, there is no explanation for why this symlink was missing in the first place.</p>
<h3>No RAID</h3>
<p>This turned out to be an extremely easy problem to fix. While fixing the symlink problem above I noticed that init scripts weren&#039;t ordered correctly. The init scripts for disk mounting were happening too early, before the <code>mdadm</code> module and services had fully loaded. That&#039;s why my RAID volume wasn&#039;t mounting on startup but I could mount it manually after logging in. I corrected the order of the init scripts and now the RAID volume auto-mounts when booting.</p>
]]></content:encoded>
			<wfw:commentRss>http://splatdot.com/ubuntu-9-04-jaunty-jackalope-problems-fixed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ubuntu 9.04 (Jaunty Jackalope) Sound Problem Fixed</title>
		<link>http://splatdot.com/ubuntu-9-04-jaunty-jackalope-sound-problem-fixed/</link>
		<comments>http://splatdot.com/ubuntu-9-04-jaunty-jackalope-sound-problem-fixed/#comments</comments>
		<pubDate>Fri, 24 Apr 2009 22:27:11 +0000</pubDate>
		<dc:creator>dean</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Jaunty Jackalope]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[I found someone else reporting the same problem here. The problem turned out to be that the PCM volume in the ALSA mixer had gotten muted. I&#039;m not sure if the upgrade to 9.04 caused that or something else did. Whatever the case, the sound is working great and there&#039;s no more crackling.]]></description>
			<content:encoded><![CDATA[<p>I found someone else reporting the same problem <a href="http://ubuntuforums.org/showthread.php?t=987252">here</a>. The problem turned out to be that the PCM volume in the ALSA mixer had gotten muted. I&#039;m not sure if the upgrade to 9.04 caused that or something else did. Whatever the case, the sound is working great and there&#039;s no more crackling.</p>
]]></content:encoded>
			<wfw:commentRss>http://splatdot.com/ubuntu-9-04-jaunty-jackalope-sound-problem-fixed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
