<?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>Jtanium's Notebook &#187; Ubuntu</title>
	<atom:link href="http://www.jtanium.com/category/linux/ubuntu/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jtanium.com</link>
	<description>I jot things down, in hopes of finding them later...</description>
	<lastBuildDate>Wed, 21 Dec 2011 23:21:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Goodbye Parallels Desktop</title>
		<link>http://www.jtanium.com/2009/08/26/goodby-parallels-desktop/</link>
		<comments>http://www.jtanium.com/2009/08/26/goodby-parallels-desktop/#comments</comments>
		<pubDate>Wed, 26 Aug 2009 20:16:14 +0000</pubDate>
		<dc:creator>jtanium</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[OS X]]></category>
		<category><![CDATA[Rant]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.jtanium.com/?p=149</guid>
		<description><![CDATA[A few months ago, I upgraded to Parallels 4 because the performance of Parallels 3 was so poor. I will admit Parallels 4 is much, much better than 3, but there&#8217;s more than just performance when it comes to virtualization. Well I setup a VM of Ubuntu 9.04 and guess what: the Parallels Tools don&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p>A few months ago, I upgraded to Parallels 4 because the performance of Parallels 3 was so poor.  I will admit Parallels 4 is much, much better than 3, but there&#8217;s more than just performance when it comes to virtualization.</p>
<p>Well I setup a VM of Ubuntu 9.04 and guess what: the Parallels Tools don&#8217;t work. People have been asking for them since April, and now it turns out, Parallels 5 is in beta, where, naturally, the Tools will install.  How much do you want to be that you&#8217;ll have to plunk down another $50 for that?</p>
<p>Guess what Parallels: forget you.  I&#8217;m done.  I wanted to support the underdog, and even if the performance of the VM is good, this business of not updating your products isn&#8217;t worth it.</p>
<p>Anyone out there trying to decide whether to go with Parallels or VMWare Fusion: go with Fusion!</p>
<p>Boo Parallels.</p>
<p><strong>Update:</strong> A few days after I wrote this (Aug. 29, 2009) Parallels released an update (4.0.3846) where Parallels Tools can be installed on Jaunty.  Sorry guys, rolling that out more than <strong>four months</strong> after Jaunty was released is too little too late.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jtanium.com/2009/08/26/goodby-parallels-desktop/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using Native Bindings with Ruby Enterprise Edition</title>
		<link>http://www.jtanium.com/2008/10/13/using-native-bindings-with-ruby-enterprise-edition/</link>
		<comments>http://www.jtanium.com/2008/10/13/using-native-bindings-with-ruby-enterprise-edition/#comments</comments>
		<pubDate>Mon, 13 Oct 2008 22:33:55 +0000</pubDate>
		<dc:creator>jtanium</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Subversion]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[dpkg]]></category>
		<category><![CDATA[passenger]]></category>
		<category><![CDATA[phusion]]></category>
		<category><![CDATA[ruby enterprise edition]]></category>
		<category><![CDATA[warehouse]]></category>

		<guid isPermaLink="false">http://www.jtanium.com/blog/?p=63</guid>
		<description><![CDATA[I recently started using Passenger and Ruby Enterprise Edition to run my Rails apps. &#8220;It was just another day at the office, until suddenly&#8230;&#8221; I wanted to run Warehouse. It turns out that things get (just) slightly hairy when you need to use the native bindings for a library, in this case Subversion/SWIG. I ran [...]]]></description>
			<content:encoded><![CDATA[<p>I recently started using <a href="http://www.modrails.com/">Passenger</a> and <a href="http://www.rubyenterpriseedition.com/">Ruby Enterprise Edition</a> to run my Rails apps.</p>
<p>&#8220;It was just another day at the office, until suddenly&#8230;&#8221; I wanted to run <a href="http://www.warehouseapp.com/">Warehouse</a>.  It turns out that things get (just) slightly hairy when you need to use the native bindings for a library, in this case Subversion/SWIG.</p>
<p>I ran <code>rake warehouse:bootstrap</code> without incident, but as soon as I submitted the &#8216;install&#8217; form, it died.  This is what I found in the log:</p>
<pre>ActionView::TemplateError (/opt/ruby-enterprise/lib/ruby/gems/1.8/gems/activesupport-2.0.2/lib/active_support/dependencies.rb:478:in `const_missing': uninitialized constant Repository::Svn) on line #23 of repositories/index.html.erb:
20:
<li class="repo" id="repo-<%= repo.id %>">
21:     <%= link_to h(repo.name), hosted_url(repo, :admin) %>
22:     <span class="log"><%= repo.path %></span>
23:   <% if repo.sync? %>
24:   <% unless repo.sync_progress == 100 %>
25:
26:
<div class="need-sync" id="sync-<%= repo.id %>">

    /srv/rails/entp-warehouse-78376218f92e6bdf8b72993d9caa384e5d4a5c66/vendor/plugins/expiring_attr_reader/lib/expiring_attr_reader.rb:32:in `silo'
    /srv/rails/entp-warehouse-78376218f92e6bdf8b72993d9caa384e5d4a5c66/app/models/repository.rb:137:in `retrieve_silo'
    (eval):1:in `silo'
    /srv/rails/entp-warehouse-78376218f92e6bdf8b72993d9caa384e5d4a5c66/app/models/repository.rb:100:in `eval'
    /srv/rails/entp-warehouse-78376218f92e6bdf8b72993d9caa384e5d4a5c66/vendor/plugins/expiring_attr_reader/lib/expiring_attr_reader.rb:32:in `silo'
    /srv/rails/entp-warehouse-78376218f92e6bdf8b72993d9caa384e5d4a5c66/app/models/repository.rb:100:in `sync?'
    /srv/rails/entp-warehouse-78376218f92e6bdf8b72993d9caa384e5d4a5c66/app/views/repositories/index.html.erb:23:in `_run_erb_47app47views47repositories47index46html46erb'
    /srv/rails/entp-warehouse-78376218f92e6bdf8b72993d9caa384e5d4a5c66/app/views/repositories/index.html.erb:19:in `each'
    /srv/rails/entp-warehouse-78376218f92e6bdf8b72993d9caa384e5d4a5c66/app/views/repositories/index.html.erb:19:in `_run_erb_47app47views47repositories47index46html46erb'
...</pre>
<p>Naturally I had installed the bindings using <code>sudo apt-get install libsvn-ruby1.8</code> so they were available to the default Ruby (located in <code>/usr/lib/ruby</code>), but not Ruby Enterprise Edition (located in <code>/opt/ruby-enterprise</code>), which the application runs on.</p>
<p>My solution was to simply symlink the Subversion bindings into Ruby Enterprise Edition.  A quick look in the libsvn-ruby package (<code>sudo dpkg -L libsvn-ruby1.8</code>) shows us what we&#8217;re dealing with:</p>
<pre>...
/usr/lib/ruby/1.8/i486-linux
/usr/lib/ruby/1.8/i486-linux/svn
/usr/lib/ruby/1.8/i486-linux/svn/ext
/usr/lib/ruby/1.8/i486-linux/svn/ext/core.so
/usr/lib/ruby/1.8/i486-linux/svn/ext/client.so
/usr/lib/ruby/1.8/i486-linux/svn/ext/delta.so
/usr/lib/ruby/1.8/i486-linux/svn/ext/fs.so
/usr/lib/ruby/1.8/i486-linux/svn/ext/ra.so
/usr/lib/ruby/1.8/i486-linux/svn/ext/repos.so
/usr/lib/ruby/1.8/i486-linux/svn/ext/wc.so
/usr/lib/ruby/1.8/svn
/usr/lib/ruby/1.8/svn/client.rb
/usr/lib/ruby/1.8/svn/core.rb
/usr/lib/ruby/1.8/svn/delta.rb
/usr/lib/ruby/1.8/svn/error.rb
/usr/lib/ruby/1.8/svn/fs.rb
/usr/lib/ruby/1.8/svn/info.rb
/usr/lib/ruby/1.8/svn/ra.rb
/usr/lib/ruby/1.8/svn/repos.rb
/usr/lib/ruby/1.8/svn/util.rb
/usr/lib/ruby/1.8/svn/wc.rb
...</pre>
<p>The key directories are: <code>/usr/lib/ruby/1.8/i486-linux/svn</code> and <code>/usr/lib/ruby/1.8/svn</code>.  So we&#8217;ll make them available to <code>/opt/ruby-enterprise</code> like so:</p>
<pre>cd /opt/ruby-enterprise/lib/ruby/1.8
sudo ln -s /usr/lib/ruby/1.8/svn
cd /opt/ruby-enterprise/lib/ruby/site_ruby/1.8/i686-linux
sudo ln -s /usr/lib/ruby/1.8/i486-linux/svn</pre>
<p>After that, just restart Apache (<code>apache2ctl restart</code>), and it should be working.  Note, a simple <code>touch tmp/restart.txt</code> won&#8217;t work, because that doesn&#8217;t reload the libraries.  You actually need the <code>/opt/ruby-enterprise/ruby</code> process to restart.</p>
<p>Theoretically this same approach should work for any native bindings you need to be available to Ruby Enterprise Edition.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jtanium.com/2008/10/13/using-native-bindings-with-ruby-enterprise-edition/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Apache2 on Feisty</title>
		<link>http://www.jtanium.com/2007/09/06/apache2-on-feisty/</link>
		<comments>http://www.jtanium.com/2007/09/06/apache2-on-feisty/#comments</comments>
		<pubDate>Fri, 07 Sep 2007 02:39:13 +0000</pubDate>
		<dc:creator>jtanium</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.jtanium.com/blog/?p=44</guid>
		<description><![CDATA[So I kept running into the following problem on my shiny new Feisty server: * Starting web server (apache2)... Syntax error on line 141 of /etc/apache2/apache2.conf: Invalid command 'Order', perhaps misspelled or defined by a module not included in the server configuration After a bit of Googling, I found this bug in Ubuntu. The lame [...]]]></description>
			<content:encoded><![CDATA[<p>So I kept running into the following problem on my shiny new Feisty server:</p>
<pre>
 * Starting web server (apache2)...
Syntax error on line 141 of /etc/apache2/apache2.conf:
Invalid command 'Order', perhaps misspelled or defined by a module not included in the server configuration</pre>
<p>After a bit of <a href="http://www.google.com/search?hl=en&#038;client=firefox-a&#038;rls=com.ubuntu%3Aen-US%3Aofficial&#038;hs=6m8&#038;q=feisty+Syntax+error+line+141+apache2.conf+Invalid+command+%27Order%27&#038;btnG=Search">Googling</a>, I found this <a href="https://bugs.launchpad.net/ubuntu/+source/apache2/+bug/95162">bug</a> in Ubuntu.  The lame part is it&#8217;s not been fixed, and probably won&#8217;t be since the focus is on Gutsy&#8230;</p>
<p>Anywho, it suggested loading <code>mod_authz_host</code>, like so:</p>
<pre>sudo a2enmod authz_host</pre>
<p>But when I tried to start Apache again, I got this:</p>
<pre>
 * Starting web server (apache2)...
Syntax error on line 145 of /etc/apache2/apache2.conf:
Invalid command 'TypesConfig', perhaps misspelled or defined by a module not included in the server configuration</pre>
<p>Grrr&#8230;  Another <a href="http://www.google.com/search?q=Invalid+command+%27TypesConfig%27%2C&#038;ie=utf-8&#038;oe=utf-8&#038;aq=t&#038;rls=com.ubuntu:en-US:official&#038;client=firefox-a">Google search</a> led me to <a href="http://www.netadmintools.com/art398.html">this useful page</a>, which told me the missing module here is <code>mod_mime</code>.  Load that like so:</p>
<pre>sudo a2enmod mime</pre>
<p>And you should see:</p>
<pre> * Starting web server (apache2)...        [ OK ]</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.jtanium.com/2007/09/06/apache2-on-feisty/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Server</title>
		<link>http://www.jtanium.com/2007/07/31/new-server/</link>
		<comments>http://www.jtanium.com/2007/07/31/new-server/#comments</comments>
		<pubDate>Wed, 01 Aug 2007 04:01:32 +0000</pubDate>
		<dc:creator>jtanium</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.jtanium.com/blog/?p=35</guid>
		<description><![CDATA[So my old server is dying a slow and painful death, crashing every day or two. This prompted me to look into the status of Virtual Private Server hosting. See I&#8217;ve dealt with shared hosting, and it *blows*. I need to feel like I&#8217;m in control of my server. Last week there was a discussion [...]]]></description>
			<content:encoded><![CDATA[<p>So my old server is dying a slow and painful death, crashing every day or two.  This prompted me to look into the status of Virtual Private Server hosting.  See I&#8217;ve dealt with shared hosting, and it *blows*.  I need to feel like I&#8217;m in control of my server.</p>
<p>Last week there was a <a href="http://groups.google.com/group/urug/browse_thread/thread/f7f04ddbbfe5b3c3?hl=en">discussion about hosting on the URUG mailing list</a>, and a post from Dave Stevenson caught my eye.  He said he provided affordable, no frills VPS hosting.  So I checked out <a href="http://www.stevensonsoftware.com/">his site</a> and was impressed.  A few emails later I was convinced that it was the right move for me.  I don&#8217;t know if Dave wants me sharing this, but he hooked me up with an install of Ubuntu 6.06, so I&#8217;m happy as a pig in crap.</p>
<p>I also took the opportunity to pickup a spiffy new domain!  It&#8217;s almost like I have a real live website!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jtanium.com/2007/07/31/new-server/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Ruby: &#8220;OpenSSL is not installed.&#8221;</title>
		<link>http://www.jtanium.com/2006/11/06/ruby-openssl-is-not-installed/</link>
		<comments>http://www.jtanium.com/2006/11/06/ruby-openssl-is-not-installed/#comments</comments>
		<pubDate>Mon, 06 Nov 2006 16:54:06 +0000</pubDate>
		<dc:creator>jtanium</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://jtanium.dsl.xmission.com/blog/?p=21</guid>
		<description><![CDATA[I was trying to connect to a web service when I ran into this error: jedwards@dapper:~/temp$ wsdl2ruby.rb --wsdl https://mysite.com/service?wsdl F, [2006-11-06T09:45:27.310849 #21715] FATAL -- app: Detected an exception. Stopping ... Cannot connect to https://mysite.com/service?wsdl (OpenSSL is not installed.) (RuntimeError) On Ubuntu, to fix this run sudo apt-get install libopenssl-ruby.]]></description>
			<content:encoded><![CDATA[<p>I was trying to connect to a web service when I ran into this error:</p>
<pre>jedwards@dapper:~/temp$ wsdl2ruby.rb --wsdl https://mysite.com/service?wsdl
F, [2006-11-06T09:45:27.310849 #21715] FATAL -- app: Detected an exception. Stopping ...</pre>
<pre>Cannot connect to https://mysite.com/service?wsdl (OpenSSL is not installed.) (RuntimeError)</pre>
<p>On Ubuntu, to fix this run <code>sudo apt-get install libopenssl-ruby</code>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jtanium.com/2006/11/06/ruby-openssl-is-not-installed/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>(Banshee) Cannot Import: &lt;such-and-such&gt;.mp3 (System.OverflowException)</title>
		<link>http://www.jtanium.com/2006/09/20/banshee-cannot-import-mp3-systemoverflowexception/</link>
		<comments>http://www.jtanium.com/2006/09/20/banshee-cannot-import-mp3-systemoverflowexception/#comments</comments>
		<pubDate>Thu, 21 Sep 2006 03:29:54 +0000</pubDate>
		<dc:creator>jtanium</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Music]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://jtanium.dsl.xmission.com/blog/?p=18</guid>
		<description><![CDATA[So contrary to what&#8217;s out on the web, I can&#8217;t seem to be able to edit ID3 tags in Rhythmbox. This prompted me to give Banshee another whirl; I tried it a while back, and went back to Rhythmbox simply for speed. When I tried to import my library it was able import everything save [...]]]></description>
			<content:encoded><![CDATA[<p>So contrary to what&#8217;s out on the web, I can&#8217;t seem to be able to edit ID3 tags in Rhythmbox.  This prompted me to give Banshee another whirl; I tried it a while back, and went back to Rhythmbox simply for speed.  When I tried to import my library it was able import everything save one MP3.  No matter which way I tried to get Banshee to recognize this MP3, it would just print this to the console (nothing showed up in the event viewer):<br />
(Banshee) Cannot Import: such-and-such.mp3 (System.OverflowException)</p>
<p>A Google search turned up pretty much zip.  There&#8217;s only one message (on three different sites&#8230;): <a target="_blank" href="http://mail.gnome.org/archives/banshee-list/2006-March/msg00073.html">[Banshee-List] Segment fault importing only mp3 files,	and debug not cooperating</a></p>
<p>Well I guess I&#8217;m not playing that MP3&#8230;  During this debugging process, I noticed Banshee would go out and query musicbrainz.org on start up.  WTF?  Off to musicbrainz.org where I find out that MusicBrainz is a music metadatabase.  On the front page this caught my eye:&#8221;<a title="Download Picard" href="http://musicbrainz.org/doc/PicardDownload">Download Picard (0.7.0)</a> 								[Windows/Linux] <em>(now with fingerprinting!)&#8221;  Q</em>u&#8217;est-ce que c&#8217;est?!?  Now fingerprinting is a handy deal.  I&#8217;ve got a *ton* of MP3s that don&#8217;t have, or worse, have incorrect, ID3 tags.</p>
<p>An <code>apt-get update &#038;&#038; apt-get install picard</code> later, &#8216;picard&#8217; was fixing my ID3 tags.  After playing with that for a minute, I went back to Banshee, and wouldn&#8217;t you know, I had one more song in my library&#8230;</p>
<p><em>Moral of the Story</em>: If Banshee can&#8217;t import an MP3 because of a System.OverflowException, check your ID3 tags!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jtanium.com/2006/09/20/banshee-cannot-import-mp3-systemoverflowexception/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Blacklisting IP Addresses with iptables (Redux)</title>
		<link>http://www.jtanium.com/2006/09/07/blacklisting-ip-addresses-with-ip-tables-redux/</link>
		<comments>http://www.jtanium.com/2006/09/07/blacklisting-ip-addresses-with-ip-tables-redux/#comments</comments>
		<pubDate>Thu, 07 Sep 2006 14:06:27 +0000</pubDate>
		<dc:creator>jtanium</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://jtanium.dsl.xmission.com/blog/?p=16</guid>
		<description><![CDATA[The stuff in my last post just felt wrong, so wrong I couldn&#8217;t get to sleep last night. I figured out I didn&#8217;t like having all the duplicated rules, it seems like bad form to have two rules for each IP you want to blacklist. So I revised it: root@machine:~# iptables -N BLACKLIST root@machine:~# iptables [...]]]></description>
			<content:encoded><![CDATA[<p>The stuff in my last post just felt wrong, so wrong I couldn&#8217;t get to sleep last night.  I figured out I didn&#8217;t like having all the duplicated rules, it seems like bad form to have two rules for each IP you want to blacklist. So I revised it:</p>
<p><code><br />
root@machine:~# iptables -N BLACKLIST<br />
root@machine:~# iptables -A BLACKLIST -s 0/0 -j LOG \<br />
--log-prefix "Traffic from blacklisted IP: "<br />
root@machine:~# iptables -A BLACKLIST -s 0/0 -j DROP<br />
</code></p>
<p>The change is the <code>BLACKLIST</code> chain simply logs and drops *all* traffic sent to it.  Now we modify the <code>blacklist_ip.sh</code> like so:</p>
<p><code><br />
#!/bin/bash</code><br />
<code><br />
IP="$1"<br />
echo "Blacklisting $IP."<br />
iptables -A INPUT --src $IP -j BLACKLIST<br />
echo "`date`: $IP" >> /var/log/blacklisted_ips<br />
</code></p>
<p>I believe this to be a simpler, cleaner, and more managable way of blacklisting IPs.</p>
<p><strong>Update:</strong> make sure you remove the <code>-A INPUT -J BLACKLIST</code> rule!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jtanium.com/2006/09/07/blacklisting-ip-addresses-with-ip-tables-redux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Blacklisting IP Addresses with iptables</title>
		<link>http://www.jtanium.com/2006/09/06/blacklisting-ip-addresses-with-ip-tables/</link>
		<comments>http://www.jtanium.com/2006/09/06/blacklisting-ip-addresses-with-ip-tables/#comments</comments>
		<pubDate>Thu, 07 Sep 2006 05:58:55 +0000</pubDate>
		<dc:creator>jtanium</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://jtanium.dsl.xmission.com/blog/?p=15</guid>
		<description><![CDATA[I&#8217;ve been sharpening my iptables skills the last little while. I adapted several methods I found for blacklisting ip addresses to meet my needs. I started off by creating a new chain called BLACKLIST: root@machine:~# iptables -N BLACKLIST and run all traffic through the BLACKLIST chain: root@machine:~# iptables -A INPUT -j BLACKLIST Obviously that rule [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been sharpening my iptables skills the last little while.  I adapted several methods I found for blacklisting ip addresses to meet my needs.  I started off by creating a new chain called <code>BLACKLIST</code>:</p>
<p><code>root@machine:~#</code><code> iptables -N BLACKLIST<br />
</code></p>
<p>and run all traffic through the <code>BLACKLIST</code> chain:</p>
<p><code>root@machine:~#</code><code> iptables -A INPUT -j BLACKLIST</code></p>
<p>Obviously that rule needs to be pretty close to the beginning (read the first rule) of the <code>INPUT</code> chain, otherwise, you won&#8217;t really be blacklisting traffic, will you?  If there are existing rules on the <code>INPUT</code> chain use this command:</p>
<p><code>root@machine:~# iptables -I INPUT 1 -j BLACKLIST</code></p>
<p>To ease the blacklisting of IP addresses, I adapted (and fixed bugs in) a shell script found on the web:</p>
<p><code> #!/bin/bash </code></p>
<p><code>IP="$1"<br />
echo "Blacklisting $IP."<br />
iptables -A BLACKLIST --src $IP -j LOG --log-prefix \<br />
"Traffic from blacklisted IP: "<br />
iptables -A BLACKLIST --src $IP -j DROP<br />
echo "`date`: $IP" >> /var/log/blacklisted_ips </code></p>
<p>Put that script in your path, and name it something meaningful, e.g. <code>blacklist_ip.sh</code> and blacklist away:</p>
<p><code>root@machine:~# </code><code>blacklist_ip.sh 457.612.991.843</code></p>
<p>For more on iptables in Ubuntu, visit this page <a target="_blank" href="https://help.ubuntu.com/community/IptablesHowTo">https://help.ubuntu.com/community/IptablesHowTo</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jtanium.com/2006/09/06/blacklisting-ip-addresses-with-ip-tables/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Switched: OS X -&gt; Ubuntu</title>
		<link>http://www.jtanium.com/2006/08/18/switched-os-x-ubuntu/</link>
		<comments>http://www.jtanium.com/2006/08/18/switched-os-x-ubuntu/#comments</comments>
		<pubDate>Sat, 19 Aug 2006 05:08:23 +0000</pubDate>
		<dc:creator>jtanium</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://jtanium.dsl.xmission.com/blog/?p=9</guid>
		<description><![CDATA[There has been a lot of press lately about nerds switching from OS X to Ubuntu. And I&#8217;d just like to say that I&#8217;m one of them, only for different reasons. I made the switch last year, to an Inspiron 6000. This was before it was known that OS X (x86) was going to be [...]]]></description>
			<content:encoded><![CDATA[<p>There has been a lot of press lately about nerds <a target="_blank" href="http://www.kottke.org/remainder/06/06/11361.html">switching</a> from OS X to Ubuntu.  And I&#8217;d just like to say that I&#8217;m one of them, only for different reasons.  I made the switch last year, to an Inspiron 6000.  This was before it was known that OS X (x86) was going to be DRM&#8217;ed up the wazoo;  I stopped buying music from the iTunes Music Store a year earlier because I was tired of the DRM (yeah I know you can burn the stuff to CD and re-rip it, but the loss of quality is too much for me, and I&#8217;m my ear is not that discerning).</p>
<p>Instead, I switched for several other reasons:</p>
<p>#1. The performance of OS X is <a target="_blank" href="http://www.anandtech.com/mac/showdoc.aspx?i=2436">absolutely</a> <a target="_blank" href="http://www.anandtech.com/mac/showdoc.aspx?i=2520&#038;p=1">horrid</a>.  My not-really-that-powerful 1.73 GHz Pentium M *wipes the floor* with my Dual 1.8 GHz G5 &#8212; it&#8217;s no contest, and actually pretty sad.<br />
#2. I&#8217;m more productive on Linux.  Admittedly, this is subjective, but important to me.<br />
#3. I&#8217;m an Open Source software fanatic, and OSS is easier to manage/use on Linux.  Even Apple <a target="_blank" href="http://developer.apple.com/tools/rubyonrails.html">recommends</a> you reinstall Ruby and not use the one bundled with OS X.  Why do they have to jack with everything?<br />
#4. PC&#8217;s have higher screen resolution.  My Inspiron&#8217;s resolution is 1920&#215;1200; to get that resolution you have to go with a 23&#8243; Cinema Display.<br />
#5. Java &#8212; the whole thing just works better for me on Linux.  Since Apple releases the JVM/JDK, it&#8217;s just a pain, and just doesn&#8217;t quite work *exactly* like it does on everything else.<br />
#6. I&#8217;m not forced to go to my mouse.  On OS X (in Firefox) you can&#8217;t &#8216;tab&#8217; to drop downs and radio buttons.  There are other goofy nuances to the way<br />
Everything is not perfect with Dell/Ubuntu.  I miss:</p>
<p>- the aluminum case of the PowerBook, in terms of size, weight, and looks<br />
- how OS X will automatically connect to a wireless network<br />
- how much easier it is to watch videos, specifically WMV&#8217;s<br />
- the prettiness of OS X<br />
- how keyboard shortcuts are &#8216;proper&#8217; meaning the control key is used for, here&#8217;s a novel idea, control characters</p>
<p>That said, being able to look at pretty icons as I watch the spinning beach ball while being treated like a criminal is not what I&#8217;m looking for in a computing experience.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jtanium.com/2006/08/18/switched-os-x-ubuntu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing WordPress on Ubuntu</title>
		<link>http://www.jtanium.com/2006/08/04/installing-wordpress-on-ubuntu/</link>
		<comments>http://www.jtanium.com/2006/08/04/installing-wordpress-on-ubuntu/#comments</comments>
		<pubDate>Fri, 04 Aug 2006 20:03:42 +0000</pubDate>
		<dc:creator>jtanium</dc:creator>
				<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://jtanium.dsl.xmission.com/wordpress/?p=3</guid>
		<description><![CDATA[Here&#8217;s the page the docs on how to install WordPress on Ubuntu (Dapper): https://help.ubuntu.com/community/WordPress]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s the page the docs on how to install WordPress on Ubuntu (Dapper): <a target="_blank" title="https://help.ubuntu.com/community/WordPress" href="https://help.ubuntu.com/community/WordPress">https://help.ubuntu.com/community/WordPress</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jtanium.com/2006/08/04/installing-wordpress-on-ubuntu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

