<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6903891101761324538</id><updated>2012-01-31T22:36:48.971-05:00</updated><title type='text'>Stuff</title><subtitle type='html'>Things I have learned, things I want to remember and things I want to share</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>98</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-6386918306356728933</id><published>2011-12-10T10:58:00.005-05:00</published><updated>2011-12-10T11:01:35.511-05:00</updated><title type='text'>Clone VMs from template with powershell</title><content type='html'>&lt;a href="https://gist.github.com/1455445"&gt;https://gist.github.com/1455445&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Need to add the VMs to folders and resource pools.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-6386918306356728933?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/6386918306356728933/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=6386918306356728933' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6386918306356728933'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6386918306356728933'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2011/12/clone-vms-from-template-with-powershell.html' title='Clone VMs from template with powershell'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-3842415983685701326</id><published>2011-10-13T21:51:00.000-04:00</published><updated>2011-10-13T21:51:15.173-04:00</updated><title type='text'>Bash invocation, demystified.</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-UoZMS-kdG9M/TpeVb70fejI/AAAAAAAAAB0/hxeMqVAWqIM/s1600/bash-invocation.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="60" src="http://3.bp.blogspot.com/-UoZMS-kdG9M/TpeVb70fejI/AAAAAAAAAB0/hxeMqVAWqIM/s320/bash-invocation.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Ever wonder how bash is invoked?&amp;nbsp;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-3842415983685701326?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/3842415983685701326/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=3842415983685701326' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3842415983685701326'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3842415983685701326'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2011/10/bash-invocation-demystified.html' title='Bash invocation, demystified.'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-UoZMS-kdG9M/TpeVb70fejI/AAAAAAAAAB0/hxeMqVAWqIM/s72-c/bash-invocation.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-1856243173973792122</id><published>2011-10-11T22:10:00.000-04:00</published><updated>2011-10-11T22:10:25.481-04:00</updated><title type='text'>PostgreSQL 9.0 notes</title><content type='html'>I'm working on PostgreSQL 9.0 installs on Ubuntu with Chef and I have -- more or less -- everything worked out except for replication.&amp;nbsp; &lt;br /&gt;&lt;br /&gt;Tomorrow I will work on replication, though.&amp;nbsp; Today, I'm tired :)&lt;br /&gt;&lt;br /&gt;Links:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://developer.postgresql.org/pgdocs/postgres/functions-admin.html"&gt;http://developer.postgresql.org/pgdocs/postgres/functions-admin.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://packetcloud.net/2010/12/09/setting-up-streaming-replication-in-postgresql-9-0/"&gt;http://packetcloud.net/2010/12/09/setting-up-streaming-replication-in-postgresql-9-0/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-1856243173973792122?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/1856243173973792122/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=1856243173973792122' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1856243173973792122'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1856243173973792122'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2011/10/postgresql-90-notes.html' title='PostgreSQL 9.0 notes'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-4977215854809994087</id><published>2011-09-22T11:12:00.001-04:00</published><updated>2011-09-22T11:15:43.028-04:00</updated><title type='text'>Change chef run lists on multiple nodes with knife</title><content type='html'>Let's assume you're standing up a membase cluster and you want all of your app servers to point to it, instead of a single memcached server that you curse regularly.&amp;nbsp; Your servers are named "app1, app2, app3... appn..." and their run list is pretty basic.&amp;nbsp; Here's how to change the run list with a single command:&lt;br /&gt;&lt;br /&gt;knife exec -E 'nodes.transform("name:app*.prod.company.com") { |n| n.run_list([ "role[base]", "recipe[membase::moxi]" ]) }'&lt;br /&gt;&lt;br /&gt;In this case, I have appended the membase::moxi recipe to the run list, which had previously just included the base role.&amp;nbsp; Follow this up with:&lt;br /&gt;&lt;br /&gt;knife ssh 'name:app*.prod.company.com' '/usr/bin/chef-client' and voila!&amp;nbsp; You will now run your new run list on all of your app servers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-4977215854809994087?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/4977215854809994087/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=4977215854809994087' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/4977215854809994087'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/4977215854809994087'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2011/09/change-chef-run-lists-on-multiple-nodes.html' title='Change chef run lists on multiple nodes with knife'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-6785297246827037671</id><published>2011-08-25T09:15:00.005-04:00</published><updated>2011-08-25T10:46:46.144-04:00</updated><title type='text'>All the bugs I've hit trying to Ubuntu Linux working on a Hewlett Packard BL460c G7</title><content type='html'>I tried to install Ubuntu Lucid on an HP BL460c G7, but the network wouldn't come up due to this bug: &lt;a href="https://bugs.launchpad.net/ubuntu/+source/linux/+bug/717388"&gt;https://bugs.launchpad.net/ubuntu/+source/linux/+bug/717388&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And I found some guy who seems really smart on HP's website, so I tried his solution but various versions of HP's source RPM didn't work, at all: &lt;a href="http://h30499.www3.hp.com/t5/Networking/BL465c-G7-w-Flex-10-Debian-squeeze-networking-fails/m-p/4771049/highlight/true#M8122"&gt;http://h30499.www3.hp.com/t5/Networking/BL465c-G7-w-Flex-10-Debian-squeeze-networking-fails/m-p/4771049/highlight/true#M8122&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;So I tried various OSes (CentOS 6.0, Natty, Maverick).&amp;nbsp; Maverick works.&amp;nbsp; So does CentOS.&lt;br /&gt;&lt;br /&gt;I heard that you can use the Maverick kernel when installing Lucid, so I tried it.&lt;br /&gt;&lt;br /&gt;But supposedly the "use maverick kernel" option doesn't exist because of some bug and you can't use a Maverick initrd on a Lucid install: &lt;a href="https://answers.launchpad.net/ubuntu/+source/ubiquity/+question/164536"&gt;https://answers.launchpad.net/ubuntu/+source/ubiquity/+question/164536&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;So I gave up and just installed Maverick.&lt;br /&gt;&lt;br /&gt;Then I tried bonding interfaces for active/passive failover.&amp;nbsp; There are new instructions for bonding interfaces as of 10.04: &lt;a href="https://help.ubuntu.com/community/UbuntuBonding%20"&gt;https://help.ubuntu.com/community/UbuntuBonding &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;But they don't work because of this bug: &lt;a href="https://bugs.launchpad.net/ubuntu/+source/ifenslave-2.6/+bug/714904"&gt;http://ubuntuforums.org/showthread.php?t=1595177 https://bugs.launchpad.net/ubuntu/+source/ifenslave-2.6/+bug/714904&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And none of the workarounds that I tried worked, so I said to hell with Maverick and made my own initrd to install Lucid using the Maverick kernel: &lt;a href="http://www.thegeekstuff.com/2009/07/how-to-view-modify-and-recreate-initrd-img/"&gt;http://www.thegeekstuff.com/2009/07/how-to-view-modify-and-recreate-initrd-img/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Basically I just extracted both initrds and then rm -rf /lib/module in the lucid initrd, copied the /lib/module directory from the maverick tree over, then re-packaged. &lt;br /&gt;&lt;br /&gt;And wow, Lucid installed over the network!&amp;nbsp; But then, after a reboot I had the 2.6.32-xx kernel.&amp;nbsp; Boooooooo.&amp;nbsp; So I tried to install the "linux-image-server-lts-backport-maverick" package it failed because Ubuntu, by default, will create a 40MB /boot partition and my advanced partman-auto recipe never worked: &lt;a href="http://gregswallow.blogspot.com/2010/09/my-two-day-battle-with-debian-installer.html"&gt;http://gregswallow.blogspot.com/2010/09/my-two-day-battle-with-debian-installer.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;So I fixed it by changing my recipe to not include more than one whitespace, ever: &lt;a href="https://help.ubuntu.com/11.04/installation-guide/i386/preseed-creating.html"&gt;https://help.ubuntu.com/11.04/installation-guide/i386/preseed-creating.html&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;And voila.&amp;nbsp; 128mb /boot partition.&amp;nbsp; But then I tried to include the "linux-image-server-lts-backport-maverick" image on the "pkgsel/include" line in preseed.txt, which installed the kernel image, but apparently dumped the initrd file into the temporary ramdisk, instead of /target, which is the mountpoint of the finished product that you will reboot into, and when it ran grub-update (??) there was no ramdisk.&amp;nbsp; The result was a kernel panic on first boot, at 1:00 AM.&amp;nbsp; Thank god for Old Style beer.&amp;nbsp; This was fun: mounting VMDK images on other VMs to compare grub.cfg files.&lt;br /&gt;&lt;br /&gt;So I moved the "install linux-image-server-lts-backport-maverick" portion to the postinstall script:&lt;br /&gt;&lt;br /&gt;if [ "$distro" = "Ubuntu" ]; then&lt;br /&gt;&amp;nbsp; # zap sources in apt/sources.list file because d-i's apt-setup doesn't support it.&lt;br /&gt;&amp;nbsp; #try cp /etc/apt/sources.list /etc/apt/sources.list.$NOW&lt;br /&gt;&amp;nbsp; try sed -i.$NOW -e 's/^deb-src/#deb-src/' /etc/apt/sources.list&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp; # Bring us up to date preemptively.&lt;br /&gt;&amp;nbsp; try apt-get update&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp; # Install maverick kernel.&lt;br /&gt;&amp;nbsp; try apt-get -y install linux-image-server-lts-backport-maverick&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;because this script runs "in-target":&lt;br /&gt;&lt;br /&gt;d-i preseed/late_command string in-target /usr/bin/wget -q -O /root/postinstall.sh http://172.16.12.12/ubuntu/lucid/x86_64/supplements/postinstall.sh ; in-target /bin/bash /root/postinstall.sh&lt;br /&gt;&lt;br /&gt;and I finally have a working Lucid install with a Maverick kernel.&amp;nbsp; As far as I know this is the only way to get Ubuntu Lucid working on HP machines with Flex-10 adapters.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-6785297246827037671?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/6785297246827037671/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=6785297246827037671' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6785297246827037671'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6785297246827037671'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2011/08/placeholder-all-bugs-ive-hit-trying-to.html' title='All the bugs I&apos;ve hit trying to Ubuntu Linux working on a Hewlett Packard BL460c G7'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-4608447779439002087</id><published>2011-08-23T23:29:00.000-04:00</published><updated>2011-08-23T23:29:08.558-04:00</updated><title type='text'>/dev/cciss/... and the debian installer</title><content type='html'>Here's a really simple hack for your preseed.txt file: &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1. Comment out the partman_auto/disk directive.&lt;br /&gt;&lt;br /&gt;2: Add:&lt;br /&gt;d-i partman/early_command string if [ -f "/sys/module/cciss/version" ]; then debconf-set partman-auto/disk /dev/cciss/c0d0 ; else debconf-set partman-auto/disk /dev/sda ; fi&lt;br /&gt;&lt;br /&gt;I had started towards creating my own udeb, yada yada.&amp;nbsp; Maybe it would have made for a more interesting blog post but my last three working days have been filled with many curse words directed at HP and Ubiquity (d-i).&amp;nbsp; This just works.&lt;br /&gt;&lt;br /&gt;Note: the Kernel kids are pushing for the hpsa driver over the cciss driver.&amp;nbsp; I'm all for it, but this means that detecting /dev/cciss/* devices will become a thing of the past.&amp;nbsp; It also means that dirty hacks like the one above may not work in the future.&amp;nbsp; Maybe it won't matter (/sys/module/cciss/version won't exist) or maybe it will.&amp;nbsp; I'll cross that bridge when I get there.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-4608447779439002087?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/4608447779439002087/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=4608447779439002087' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/4608447779439002087'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/4608447779439002087'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2011/08/devcciss-and-debian-installer.html' title='/dev/cciss/... and the debian installer'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-3153525773677990535</id><published>2011-08-12T09:25:00.004-04:00</published><updated>2011-08-12T09:26:55.915-04:00</updated><title type='text'>pgbouncer and pool modes</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-0U8vSTUp4RU/TkUqFk4_EZI/AAAAAAAAABw/Q7DXhuyxvdc/s1600/notsickdb.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="94" src="http://2.bp.blogspot.com/-0U8vSTUp4RU/TkUqFk4_EZI/AAAAAAAAABw/Q7DXhuyxvdc/s320/notsickdb.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;In short, use transaction pools, not session pools.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://comments.gmane.org/gmane.comp.db.postgresql.pgbouncer.general/519"&gt;http://comments.gmane.org/gmane.comp.db.postgresql.pgbouncer.general/519&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-3153525773677990535?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/3153525773677990535/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=3153525773677990535' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3153525773677990535'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3153525773677990535'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2011/08/pgbouncer-and-pool-modes.html' title='pgbouncer and pool modes'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-0U8vSTUp4RU/TkUqFk4_EZI/AAAAAAAAABw/Q7DXhuyxvdc/s72-c/notsickdb.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-2866507819155796931</id><published>2011-08-04T23:41:00.002-04:00</published><updated>2011-08-04T23:47:10.559-04:00</updated><title type='text'>MySQL and Zenoss</title><content type='html'>I do more than Zenoss -- really, I do :)&lt;br /&gt;&lt;br /&gt;(These instructions are ubuntu-specific.&amp;nbsp; Sorry.) &lt;br /&gt;&lt;br /&gt;This week, I moved my company's corporate website over from the Amazon cloud to our corporate datacenter.&amp;nbsp; The company's website requires MySQL and hey -- wouldn't it be nice to query MySQL with Zenoss like I've been doing with PostgreSQL?&lt;br /&gt;&lt;br /&gt;Two blog posts ago (yes, that's four months ago) I wrote up a quick how-to on configuring Zenoss to query PostgreSQL, after fumbling around on teh Googles for days.&amp;nbsp; That is here: &lt;a href="http://gregswallow.blogspot.com/2011/04/my-attempt-at-zenoss-postgresql-how-to.html"&gt;http://gregswallow.blogspot.com/2011/04/my-attempt-at-zenoss-postgresql-how-to.html&lt;/a&gt;.&amp;nbsp; I owe a large part of that blog post to this forum post: &lt;a href="http://community.zenoss.org/thread/11091"&gt;http://community.zenoss.org/thread/11091&lt;/a&gt;.&amp;nbsp; The contents of that forum post were enough to get me started.&lt;br /&gt;&lt;br /&gt;(FYI, the Zenoss guys noticed my blog post before I had even finished editing it!&amp;nbsp; I apologize if anything came off as rude.&amp;nbsp; Big props to Egor Puzanov for writing his ZenPacks and bigger props to Zenoss for keeping up with the conversation (or ahead).)&lt;br /&gt;&lt;br /&gt;Turns out that configuring Zenoss to query MySQL is nearly the same process.&amp;nbsp; Just exchange a couple of packages:&lt;br /&gt;&lt;br /&gt;1. apt-get install unixodbc libmyodbc&lt;br /&gt;&lt;br /&gt;2. odbcinst -i -d -f /usr/share/libmyodbc/odbcinst.ini&lt;br /&gt;&lt;br /&gt;3. Download the "Device Advanced Detail," "RDBMS," "SQL Data Source" and "MySQL ODBC Database Monitor" ZenPacks and unzip them to a directory.&lt;br /&gt;&lt;br /&gt;4. Run this in the aforementioned directory.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;#!/bin/bash&lt;br /&gt;&lt;br /&gt;if [ $ZENHOME ]; then&lt;br /&gt;&lt;br /&gt;&amp;nbsp; for i in ZenPacks.community.deviceAdvDetail-2.7.egg \&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ZenPacks.community.RDBMS-2.2.egg \&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ZenPacks.community.SQLDataSource-1.6.egg \&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ZenPacks.community.ZenODBC-3.2.egg \&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ZenPacks.community.MySQLMon_ODBC-3.1.egg; do&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo "######################################################" &amp;gt;&amp;gt; /tmp/whatwentwrong&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo "installing $i" &amp;gt;&amp;gt; /tmp/whatwentwrong&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo "######################################################" &amp;gt;&amp;gt; /tmp/whatwentwrong&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $ZENHOME/bin/zenpack -v1 --install $i &amp;gt;&amp;gt; /tmp/whatwentwrong 2&amp;gt;&amp;amp;1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo &amp;gt;&amp;gt; /tmp/whatwentwrong&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; zopectl restart&lt;br /&gt;&amp;nbsp; done&lt;br /&gt;&lt;br /&gt;fi&lt;/blockquote&gt;And that's really it!&amp;nbsp; Refer to my PostgreSQL instructions if you need more assistance, but just think "MySQL" instead.&lt;br /&gt;&lt;br /&gt;Quick and dirty testing:&lt;br /&gt;&lt;br /&gt;After adding the &lt;b&gt;&lt;span style="font-weight: normal;"&gt;community.odbc.MySqlDatabaseMap zCollector Plugin to your database server, try this:&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-weight: normal;"&gt;su - zenoss&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;b&gt;&lt;span style="font-weight: normal;"&gt;cd $ZENHOME&lt;/span&gt;&amp;nbsp;&lt;/b&gt;&lt;/b&gt;&lt;br /&gt;python Products/DataCollector/zenmodeler.py -d webdb1.corp.company.com &lt;br /&gt;&lt;b&gt;&lt;span style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-weight: normal;"&gt;Running zenmodeler from the command line is a little more informative than running it through the WebUI.&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-weight: normal;"&gt;Final note: Until my security team opens up MySQL through some firewalls, I cannot test these instructions.&amp;nbsp; YMMV.&lt;/span&gt;&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-2866507819155796931?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/2866507819155796931/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=2866507819155796931' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2866507819155796931'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2866507819155796931'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2011/08/mysql-and-zenoss.html' title='MySQL and Zenoss'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-396271028581450353</id><published>2011-04-27T15:49:00.002-04:00</published><updated>2011-04-27T15:49:32.491-04:00</updated><title type='text'>Zenoss SNMP troubleshooting</title><content type='html'>Useful(?) command:&lt;br /&gt;&lt;br /&gt;$ZENHOME/Products/ZenRRD/zenperfsnmp.py -d servername.com --showdeviceresults&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-396271028581450353?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/396271028581450353/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=396271028581450353' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/396271028581450353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/396271028581450353'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2011/04/zenoss-snmp-troubleshooting.html' title='Zenoss SNMP troubleshooting'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-4809872074842222655</id><published>2011-04-05T14:38:00.005-04:00</published><updated>2011-05-18T10:36:58.893-04:00</updated><title type='text'>My attempt at a Zenoss / PostgreSQL how-to</title><content type='html'>I have been quite dismayed for the last day or so, on how to  configure Zenoss to query a PostgreSQL database.&amp;nbsp; There just isn't any  documentation on any of the ZenPacks (they're all written by the same  dude: Egor Puzanov).&amp;nbsp; Additionally:&lt;br /&gt;&lt;br /&gt;- I'm new to Zenoss.&lt;br /&gt;- I'm new to PostgreSQL.&lt;br /&gt;- ODBC is for Windows. &lt;br /&gt;&lt;br /&gt;The  complete lack of documentation hurts (just in case you're listening,  Zenoss).&amp;nbsp; Finally, after taking a break from my desk and going to lunch,  I hit this "gem" on my iPhone: &lt;a href="http://community.zenoss.org/thread/11091"&gt;http://community.zenoss.org/thread/11091&lt;/a&gt;.&amp;nbsp; Again, written by Egor.&amp;nbsp; It's a start, even if it's still a tad undercooked, so I thought maybe writing this up as I went along would help make things more clear.&lt;br /&gt;&lt;br /&gt;Let's start with how Zenoss is installed:&lt;br /&gt;&lt;blockquote&gt;lsb_release -d&lt;/blockquote&gt;&lt;blockquote&gt;Description:&amp;nbsp;&amp;nbsp;&amp;nbsp; Ubuntu 10.04.2 LTS &lt;/blockquote&gt;&lt;blockquote&gt;cat /etc/apt/sources.list.d/zenoss&lt;/blockquote&gt;&lt;blockquote&gt;deb http://dev.zenoss.org/deb main stable&lt;/blockquote&gt;I am currently running Zenoss 3.0.3 though as I write this I will upgrade to 3.1.0 by running "apt-get upgrade."&amp;nbsp; To learn how to install Zenoss using the stack, see &lt;a href="http://community.zenoss.org/docs/DOC-2633"&gt;http://community.zenoss.org/docs/DOC-2633&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;1: Install basic software by running "apt-get install unixodbc odbc-postgresql"&lt;br /&gt;2: Create two "/etc/odbc*.ini" files.&amp;nbsp; At this stage, I'm a little hazy on all of the sources I used to get me through this step.&amp;nbsp; Sorry dudes, you deserve credit.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: red;"&gt;NOTE: you *can* skip steps 2b through 5, if you wish.&amp;nbsp; The Postgres ODBC plugin will read the zPgSqlConnectionString, zPgSqlUsername and zPgSqlPassword settings anyway, as it maps your installed databases.&amp;nbsp; I found these steps to be instrumental in understanding how all this works.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;2a: /etc/odbcinst.ini contains information about which drivers are installed.&amp;nbsp; Create it by running odbcinst -i -d -f /usr/share/psqlodbc/odbcinst.ini.template.&amp;nbsp; The resulting file will look like this:&lt;br /&gt;&lt;blockquote&gt;[PostgreSQL ANSI]&lt;br /&gt;Description = PostgreSQL ODBC driver (ANSI version)&lt;br /&gt;Driver = /usr/lib/odbc/psqlodbca.so&lt;br /&gt;Setup = /usr/lib/odbc/libodbcpsqlS.so&lt;br /&gt;Debug = 0&lt;br /&gt;CommLog = 1&lt;br /&gt;UsageCount = 1&lt;br /&gt;&lt;br /&gt;[PostgreSQL Unicode]&lt;br /&gt;Description = PostgreSQL ODBC driver (Unicode version)&lt;br /&gt;Driver = /usr/lib/odbc/psqlodbcw.so&lt;br /&gt;Setup = /usr/lib/odbc/libodbcpsqlS.so&lt;br /&gt;Debug = 0&lt;br /&gt;CommLog = 1&lt;br /&gt;UsageCount = 1&lt;/blockquote&gt;2b: /etc/odbc.ini contains system-wide DSNs.&amp;nbsp; Note that the driver name matches the "PostgreSQL ANSI" section in /etc/odbcinst.ini:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;[DBQA]&lt;br /&gt;Description = PostgreSQL&lt;br /&gt;Driver = PostgreSQL ANSI&lt;br /&gt;Trace = No&lt;br /&gt;TraceFile = /var/log/psqlodbc-qa.log&lt;br /&gt;Database = qa&lt;br /&gt;Servername = db1.qa.company.com&lt;br /&gt;UserName = pgquery&lt;br /&gt;Password =&lt;br /&gt;Port = 5432&lt;br /&gt;ReadOnly = Yes&lt;br /&gt;RowVersioning = No&lt;br /&gt;ShowSystemTables = Yes&lt;br /&gt;ShowOidColumn = No&lt;br /&gt;FakeOidIndex = No&lt;br /&gt;ConnSettings =&lt;br /&gt;SSLmode = require&lt;br /&gt;UsageCount = 1&lt;/blockquote&gt;This article helps a tad bit:&amp;nbsp; &lt;a href="http://www.debian-administration.org/articles/496"&gt;http://www.debian-administration.org/articles/496&lt;/a&gt;.&amp;nbsp; &lt;br /&gt;&lt;br /&gt;3: TIME OUT!&amp;nbsp; Use SSL!&lt;br /&gt;&lt;br /&gt;Because my apps run "in the cloud," I need to maintain a long distance relationship with my database servers.&amp;nbsp; Because I do not want to haul cleartext database traffic over the wire, I'll enable SSL.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.postgresql.org/docs/8.4/static/ssl-tcp.html"&gt;http://www.postgresql.org/docs/8.4/static/ssl-tcp.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;How far you go in enabling SSL (verifying client certificates, etc.) is up to you.&amp;nbsp; In my case, I am content with using a plain username/password as long as my logins and data transfers are encrypted, because I am filtering packets based on source IP address and I have my allowed sources locked down to individual IPs.&lt;br /&gt;&lt;br /&gt;In short, I ran (as the postgres user):&lt;br /&gt;&lt;br /&gt;cd /mnt/postgres/data&lt;br /&gt;openssl req -new -text -out server.req&lt;br /&gt;openssl rsa -in privkey.pem -out server.key&lt;br /&gt;openssl req -x509 -in server.req -text -key server.key -out server.crt&lt;br /&gt;chmod og-rwx server.key&lt;br /&gt;rm privkey.pem server.req&lt;br /&gt;&lt;br /&gt;The server.key and server.crt files should be owned by the postgres user and readable by postgres only.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4: Create my "pgquery" role.&lt;br /&gt;&lt;br /&gt;Again, I'm new to PostgreSQL.&amp;nbsp; Commands like "grant all privileges on *.* to pgquery@x" don't work.&amp;nbsp; But these commands did:&lt;br /&gt;&lt;br /&gt;- log into postgres from localhost, as the "postgres" user.&amp;nbsp; Just run "psql."&amp;nbsp; This makes me cringe and I will tighten it down someday soon.&lt;br /&gt;- \du shows all roles.&amp;nbsp; So does "select * from pg_roles";&lt;br /&gt;- create a user by issuing the create role pgquery superuser login password 'password'; SQL statement.&lt;br /&gt;- create a blank database for the pgquery user by running create database pgquery encoding 'UTF8'; &lt;br /&gt;&lt;br /&gt;See &lt;a href="http://www.postgresql.org/docs/8.4/static/sql-createrole.html"&gt;http://www.postgresql.org/docs/8.4/static/sql-createrole.html&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;&lt;span style="color: red;"&gt;NOTE here: you must create a superuser role.&amp;nbsp; I tried it without superuser privileges and the SQL query that the Postgres ODBC plugin runs didn't work, as it didn't have access to the pg_authid view.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;5. Once postgres is restarted and I have a new role, it's time to open up port 5432 to my monitoring station and connect using SSL.&amp;nbsp; I ran a packet sniff during the exchange to verify that my data is encrypted and that I see a certificate flying by.&amp;nbsp; I did. I tested by running:&lt;br /&gt;&lt;blockquote&gt;isql DBQA pgquery &lt;password&gt;(password)&lt;br /&gt;&lt;/password&gt;&lt;/blockquote&gt;Then I issued the "select * from pg_stat_activity;" SQL query. &lt;br /&gt;&lt;br /&gt;The pg_stat tables are very helpful, and they are documented at &lt;a href="http://www.postgresql.org/docs/8.4/static/monitoring-stats.html"&gt;http://www.postgresql.org/docs/8.4/static/monitoring-stats.html&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;As a final note, see documentation about the pg_hba.conf file, which you can tweak to set up various levels of trust to different hosts.&amp;nbsp; An important thing to remember is that you can set different parameters based on whether you're using SSL.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.postgresql.org/docs/8.4/static/auth-pg-hba-conf.html"&gt;http://www.postgresql.org/docs/8.4/static/auth-pg-hba-conf.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I have a feeling that the database I inherited has had its pg_hba.conf file mangled horribly by my predecessor, so I will tackle this later.&amp;nbsp; Let's move on.&lt;br /&gt;&lt;br /&gt;6: Recall that we are following &lt;a href="http://community.zenoss.org/thread/11091"&gt;http://community.zenoss.org/thread/11091&lt;/a&gt;), and we are now back on track.&amp;nbsp; According to this doc, I should be able to run:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;#!/bin/bash&lt;br /&gt;&lt;br /&gt;if [ $ZENHOME ]; then&lt;br /&gt;&lt;br /&gt;&amp;nbsp; for i in ZenPacks.community.deviceAdvDetail-2.7.egg \&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ZenPacks.community.RDBMS-2.2.egg \&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ZenPacks.community.SQLDataSource-1.6.egg \&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ZenPacks.community.ZenODBC-3.2.egg \&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ZenPacks.community.PgSQLMon_ODBC-2.2.egg; do&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo "######################################################" &amp;gt;&amp;gt; /tmp/whatwentwrong&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo "installing $i" &amp;gt;&amp;gt; /tmp/whatwentwrong &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo "######################################################" &amp;gt;&amp;gt; /tmp/whatwentwrong&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $ZENHOME/bin/zenpack -v1 --install $i &amp;gt;&amp;gt; /tmp/whatwentwrong 2&amp;gt;&amp;amp;1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo &amp;gt;&amp;gt; /tmp/whatwentwrong&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; zopectl restart&lt;br /&gt;&amp;nbsp; done&lt;br /&gt;&lt;br /&gt;fi&lt;/blockquote&gt;You can use the output in /tmp/whatwentwrong if you need to ask someone in the Zenoss communities for help (and hey Zenoss guys, it would be VERY nice to be able to throw a wget line into that shell script). &lt;br /&gt;&lt;br /&gt;7: Now it's time for the moment of truth, eh?&amp;nbsp; Log into your Zenoss web interface, then select your database server.&amp;nbsp; Open the Configuration properties and set your zPgSqlPassword, zPgSqlUsername and zPgSqlConnection String.&amp;nbsp; My string, in its entirety, is "Driver={PostgreSQL ANSI};Port=5432;SSLMode=require".&amp;nbsp; Don't forget to save your changes.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-i7I4Nk5l7UA/TZtewKksYtI/AAAAAAAAABk/9X0SfF5iaHk/s1600/zprops.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="206" src="http://1.bp.blogspot.com/-i7I4Nk5l7UA/TZtewKksYtI/AAAAAAAAABk/9X0SfF5iaHk/s320/zprops.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;8: Assign the community.odbc.PgSqlDatabaseMap modeler plugin to your database server.&amp;nbsp; Click on the "Modeler Plugins" category.&amp;nbsp; Click on the greyed out "Add Fields" item in the middle of the right-hand side, then drag it over.&amp;nbsp; Again, don't forget to save your changes.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-vi0q_Jq6t50/TZtnQP-FxyI/AAAAAAAAABs/92Clut_jpDg/s1600/modplugins.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="145" src="http://3.bp.blogspot.com/-vi0q_Jq6t50/TZtnQP-FxyI/AAAAAAAAABs/92Clut_jpDg/s320/modplugins.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;9: Model your device (click on the little wheel thing on the bottom left-hand corner of your browser window).&amp;nbsp; I had issues a few times with the modeling part.&amp;nbsp; I was finally able to deduce that the modeler plugin was connecting to my database just fine, but it had problems running this SQL query:&lt;br /&gt;&lt;blockquote&gt;SELECT d.datname as dbname, u.rolname as contact, 'Ver.'||current_setting('server_version') as version, current_setting('block_size'&lt;br /&gt;)::float as blocksize, t.spcname as setdbsrvinst, d.datallowconn::int as allowconn, CASE d.datistemplate WHEN True THEN 'PgSqlTemplate' ELSE 'PgSqlDatabase' END as type, pg_database_size(d.datname)::float as totalblocks FROM pg_database d, pg_authid u, pg_tablespace t WHERE d.datdba=u.oid AND d.dattablespace=t.oid;&lt;/blockquote&gt;If you have issues, keep trying to connect with isql and hammering away with that query until it works.&amp;nbsp; When all of this comes together, you will see your databases in the software category for your device in Zenoss.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-4809872074842222655?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/4809872074842222655/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=4809872074842222655' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/4809872074842222655'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/4809872074842222655'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2011/04/my-attempt-at-zenoss-postgresql-how-to.html' title='My attempt at a Zenoss / PostgreSQL how-to'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-i7I4Nk5l7UA/TZtewKksYtI/AAAAAAAAABk/9X0SfF5iaHk/s72-c/zprops.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-8230840147605705747</id><published>2011-03-24T10:57:00.005-04:00</published><updated>2011-03-24T11:34:40.302-04:00</updated><title type='text'>Converting timestamps in perl and awk</title><content type='html'>I was given a task.&amp;nbsp; Convert this:&lt;br /&gt;&lt;br /&gt;"50917234872295425","Wed Mar 23 18:37:48 +0000 2011","120374665","97903753","stuff",""&lt;br /&gt;&lt;br /&gt;to this:&lt;br /&gt;&lt;br /&gt;"50917234872295425","2011-03-24 07:49:49","120374665","97903753","stuff",""&lt;br /&gt;&lt;br /&gt;Task "accomplished" in awk:&lt;br /&gt;&lt;blockquote&gt;awk -F"\",\"" '{OFS="\",\""&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gsub(/\{7\}/,"REPLACED")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (NF &amp;gt; 2) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ORS=""&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print $1 OFS &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; system("echo -n $(date \"+%Y-%m-%d %H:%M:%S\" -d \"" $2 "\")")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print OFS&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i=3;i&amp;lt;NF;i++) print $i OFS &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print $NF"\n" }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print $0}' $1&lt;/blockquote&gt;&lt;br /&gt;Task "accomplished" in perl:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;perl -ne 'use Date::Parse; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s/\{7\}/REPLACED/g;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; @cols=split(/","/,$_);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ($ss,$mm,$hh,$day,$month,$year,$zone) = strptime($cols[1]);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $year+=1900; # Grr.&amp;nbsp; Perl.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $month+=1; # Double Grr.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print qq!$cols[0]","!;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(qq!%04d-%02d-%02d %02d:%02d:%02d","!, $year, $month, $day, $hh, $mm, $ss);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for ($i=2 ; $i&amp;lt;$#cols ; $i++) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print qq!$cols[$i]","!;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "$cols[$#cols]";' $1&lt;/blockquote&gt;I chose awk and Perl because they split columns using multi-character separators (","). Actually, I chose awk first because I am really starting to hate Perl.&amp;nbsp; Then I said, "wow, this was a lot of work and I bet it would be easier to do this in Perl."&lt;br /&gt;&lt;br /&gt;Either way, I had to deal with the rest of the record, which may span multiple lines and is more likely than not to contain foreign languages in the fifth column. Hence the quotes around the words "accomplished."&amp;nbsp; Neither of these methods are fully tested.&amp;nbsp; The ultimate recipient of this data is Postgres and I wonder if I can harness some SQL power to accomplish the same task?&lt;br /&gt;&lt;br /&gt;(The answer to that question is "no." While I am ultimately importing data into Postgres, I am importing it using Netezza's "nzload" utility, which expects rather limited date inputs.&amp;nbsp; I think a direct Postgres import would just accept the timestamp as-is.)&lt;br /&gt;&lt;br /&gt;I dare say that writing this in awk was quicker, and required no FTP trips to CPAN.&amp;nbsp; Damn you, Perl.&amp;nbsp; Our tenuous relationship really is coming to an end.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-8230840147605705747?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/8230840147605705747/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=8230840147605705747' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8230840147605705747'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8230840147605705747'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2011/03/converting-timestamps-in-perl-and-awk.html' title='Converting timestamps in perl and awk'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-7730038671002867097</id><published>2011-03-22T10:44:00.000-04:00</published><updated>2011-03-22T10:44:42.592-04:00</updated><title type='text'>DIR_COLORS</title><content type='html'>From /etc/DIR_COLORS.xterm: &lt;br /&gt;&lt;br /&gt;# Below are the color init strings for the basic file types. A color init&lt;br /&gt;# string consists of one or more of the following numeric codes:&lt;br /&gt;# Attribute codes: &lt;br /&gt;# 00=none 01=bold 04=underscore 05=blink 07=reverse 08=concealed&lt;br /&gt;# Text color codes:&lt;br /&gt;# 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white&lt;br /&gt;# Background color codes:&lt;br /&gt;# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white&lt;br /&gt;&lt;br /&gt;I like DIR 01;36, personally.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-7730038671002867097?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/7730038671002867097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=7730038671002867097' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7730038671002867097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7730038671002867097'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2011/03/dircolors.html' title='DIR_COLORS'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-509240961727418647</id><published>2011-03-01T17:38:00.002-05:00</published><updated>2011-03-01T17:38:50.780-05:00</updated><title type='text'>Run zenpack service checks from the command line</title><content type='html'>su - zenoss&lt;br /&gt;cd $ZENHOME&lt;br /&gt;ZenPacks/Zenpackblah/community/blah/libexec/check* -h&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-509240961727418647?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/509240961727418647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=509240961727418647' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/509240961727418647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/509240961727418647'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2011/03/run-zenpack-service-checks-from-command.html' title='Run zenpack service checks from the command line'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-2460234702172272842</id><published>2011-01-31T13:57:00.003-05:00</published><updated>2011-01-31T16:57:00.902-05:00</updated><title type='text'>Learning collectd</title><content type='html'>Rightscale uses collectd; it's very cool and pretty well baked before I have to start working with it.&amp;nbsp; One of the things I wanted to monitor is log file age (if a log file from a particular daemon on a system hasn't been modified in the last five minutes, I want to know).&lt;br /&gt;&lt;br /&gt;Since I don't see a plugin that checks file freshness, I took Rightscale's example (written in Ruby), and modified it for my own purposes.&amp;nbsp; Collectd expects a string in the following format:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;PUTVAL localhost/filefreshness-_tmp_watchme/absolute-1_minute_file_freshness 1296498856:3953&lt;/pre&gt;&lt;pre&gt;&amp;nbsp;&lt;/pre&gt;&lt;pre style="font-family: inherit;"&gt;This string is a pattern. The meaning of each field is:&lt;/pre&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="color: #006600;"&gt;&lt;code&gt;instance-id&lt;/code&gt;&lt;/span&gt;: the AWS ID of the instance so the data can be filed-away correctly on the server&lt;/li&gt;&lt;ul&gt;&lt;li&gt;obviously the AWS ID isn't localhost.&amp;nbsp; I have yet to see if this will change when I run the script from collectd.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;span style="color: #006600;"&gt;&lt;code&gt;plugin&lt;/code&gt;&lt;/span&gt;:  identifies the plugin which is typically associated with an application  or a resource, examples are apache, mysql, squid, cpu, memory, etc.&lt;/li&gt;&lt;li&gt;&lt;span style="color: #006600;"&gt;&lt;code&gt;plugin_instance&lt;/code&gt;&lt;/span&gt;:  identifies the instance of an application/resource when there are  multiple, examples are cpu-0, cpu-1 on dual-core servers, or df-mnt and  df-root for the two filesystems on small instances.&lt;/li&gt;&lt;li&gt;&lt;span style="color: #006600;"&gt;&lt;code&gt;type&lt;/code&gt;&lt;/span&gt;: identifies the type of data being collected.&amp;nbsp; Your custom plug-in must be defined in &lt;b&gt;/usr/lib/collectd/types.db&lt;/b&gt;.&lt;/li&gt;&lt;li&gt;&lt;span style="color: #006600;"&gt;&lt;code&gt;type-instance&lt;/code&gt;&lt;/span&gt;:  the name of the variable being collected, or the instance of the  variable of the given type being collected, examples are: (for the cpu  type) idle, wait, busy; (for the 'mysql_command' type) selects, updates,  executes.&lt;/li&gt;&lt;/ul&gt;(Again, this is shamelessly stolen from Rightscale.)&amp;nbsp; I chose the nginx log file, called "/mnt/log/nginx_access.log."&amp;nbsp; As the file gets older, the counter should increase (and it does).&amp;nbsp; The ruby script takes three arguments:&lt;br /&gt;&lt;br /&gt;-h (--hostname) which in this case is "localhost"&lt;br /&gt;-i (--interval) which will be set to 60 (seconds)&lt;br /&gt;-f (--filename) which is /mnt/log/nginx_access.log.&amp;nbsp; A simple ruby statement,&amp;nbsp; ffilename=filename.gsub(/\//,"_"), converts slashes to underscores, making the plugin_instance friendly.&lt;br /&gt;&lt;br /&gt;The numbers at the end are the UNIX time when the plugin ran, and the age of the file in seconds.&amp;nbsp; My idea is to send an alert when the monitored file grows beyond 300 seconds.&lt;br /&gt;&lt;br /&gt;After creating the plugin script and testing it, you need to upload it to /usr/lib/collectd.&amp;nbsp; Then you have to edit /usr/lib/collect/types.db and add a new type.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;filefreshness&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; seconds:ABSOLUTE:U:U&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;For now I am using the ABSOLUTE data source type.&amp;nbsp; I'm not quite sure what the difference is between a GAUGE and an ABSOLUTE.&amp;nbsp;&amp;nbsp; I don't think it matters.&lt;br /&gt;&lt;br /&gt;Finally, I need to exec my custom plugin.&amp;nbsp; By adding a new file called "/etc/collectd/conf/sitelocal.conf, I can customize plugins and load extra plugins that aren't loaded by the default Rightscale script (rightscript):&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;LoadPlugin exec&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;plugin exec=""&gt;&lt;/plugin&gt;&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp; #&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; userid&amp;nbsp;&amp;nbsp;&amp;nbsp; plugin executable&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; plugin&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp; Exec "xxx" "/usr/lib/collectd/filefreshness.rb" "-h" "i-xxxxxx" "-i" "60" "-f" "/mnt/log/nginx_access.log"&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&amp;nbsp;Now that I have configured collect to load the exec plugin and exec my custom plugin, I should be able to SIGHUP collectd and I will see new graphs in Rightscale's collectd interface.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-2460234702172272842?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/2460234702172272842/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=2460234702172272842' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2460234702172272842'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2460234702172272842'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2011/01/learning-collectd.html' title='Learning collectd'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-6228858797861339310</id><published>2011-01-30T21:51:00.003-05:00</published><updated>2011-01-30T21:53:49.257-05:00</updated><title type='text'>Record store shortlist</title><content type='html'>Record store purchases will pile up soon.&amp;nbsp; On the short list:&lt;br /&gt;&lt;br /&gt;Swans - My Father Will Guide Me Up a Rope to the Sky&lt;br /&gt;(and while I'm at it, Swans - Cop / Young God) &lt;br /&gt;XBXRX - Sixth in Sixes&lt;br /&gt;Electric Wizard - Black Masses&lt;br /&gt;Neurosis - Given to the Rising&lt;br /&gt;Jucifer - Throned in Blood&lt;br /&gt;Torche - Songs for Singles&lt;br /&gt;Hayden - Elk Lake Serenade&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-6228858797861339310?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/6228858797861339310/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=6228858797861339310' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6228858797861339310'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6228858797861339310'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2011/01/record-store-shortlist.html' title='Record store shortlist'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-5979230932215153084</id><published>2011-01-21T18:17:00.004-05:00</published><updated>2011-01-21T18:28:03.880-05:00</updated><title type='text'>HP and the USB key utility</title><content type='html'>Whenever I have to work on BIOS-level items on HP and Dell servers, it's not a good day.&amp;nbsp; Or, should I say, days.&amp;nbsp; Today (and yesterday) were no exceptions.&lt;br /&gt;&lt;br /&gt;HP, Dell, et al could post singular updates to system BIOSes, etc. as small (less than 10MB in size) bootable ISO images.&amp;nbsp; After all, the firmware I want to update is less than a megabyte in size.&amp;nbsp; But, no.&amp;nbsp; Instead, I have to download a &lt;a href="http://h20000.www2.hp.com/bizsupport/TechSupport/SoftwareIndex.jsp?lang=en&amp;amp;cc=us&amp;amp;prodNameId=1844068&amp;amp;prodTypeId=18964&amp;amp;prodSeriesId=1844067&amp;amp;swLang=13&amp;amp;taskId=135&amp;amp;swEnvOID=1005"&gt;full blown firmware update DVD image&lt;/a&gt;, which weighs in at a whopping 988MB in size, compressed.&amp;nbsp; Then, according to HP's instructions, I have to use their &lt;a href="http://h20000.www2.hp.com/bizsupport/TechSupport/SoftwareDescription.jsp?lang=en&amp;amp;cc=us&amp;amp;swItem=MTX-3a87c15fff7048979ec74975e6&amp;amp;jumpid=reg_R1002_USEN"&gt;HP USB Key Creator&lt;/a&gt; utility to extract the contents of the ISO image to a USB key.&amp;nbsp; At *that* point I can inject my updated firmware for my non-working storage controller.&lt;br /&gt;&lt;br /&gt;Everyone has access to their server rooms, right?&amp;nbsp; I mean, most server rooms are little 170 sq. ft. shut-ins with punch codes on the doors in the backs of offices.&amp;nbsp; Except for mine.&amp;nbsp; My server room, I've never seen.&amp;nbsp; It's in Nevada and I'm in Indianapolis.&amp;nbsp; Kinda hard to insert a USB key into a server that's thousands of miles away.&amp;nbsp; Not to mention that bandwdith-intensive operations from my Las Vegas facility are *expensive*.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;So, without a USB key (or a server monkey to insert said key) in Nevada, one must improvise.&amp;nbsp; Here's how.&lt;br /&gt;&lt;br /&gt;- Pick an HP server that works and has iLO and log into it, preferably using Remote Desktop Protocol&lt;br /&gt;- In Windows 2008, run the fsutil utility: fsutil file createnew hp-fwupdate-usb-1_25g.img 1310720000&lt;br /&gt;- Run fsutil sparse setflag fp-fwupdate-usb-1_25g.img (I'm not sure this step is necessary but it's working for now so roll with it)&lt;br /&gt;- Log into the iLO web interface from *within* your RDP session&lt;br /&gt;- Start the virtual media applet (you will need Java installed to do this)&lt;br /&gt;- Attach your newly created sparse file as a USB drive&lt;br /&gt;- Note which drive letter iLO assigned to your "USB drive" &lt;br /&gt;- Download and run the two files, above, and install and run the USB Key Creator utility&lt;br /&gt;- Select "create a bootable usb from CD/DVD" &lt;br /&gt;- Pick your ISO image as a source, and specify your mounted "USB drive" as the target&lt;br /&gt;&lt;br /&gt;Allegedly, you can create disk images using the iLO virtual media utility but I don't trust iLO.&amp;nbsp; At all.&amp;nbsp; EVERY version has a horrendously embarrassing bug of one form or another.&amp;nbsp; It's worth noting that iLO's USB emulator is s-l-o-w.&amp;nbsp; Honestly, I think that transferring the file over the network is faster.&amp;nbsp; You will want to forget about the task at hand for a few hours.&amp;nbsp; I am working on just patching the damned ISO image with the geteltorito.exe executable, found &lt;a href="http://www.ltr-data.se/opencode.html/#ImDisk"&gt;here.&lt;/a&gt;&amp;nbsp; Well, using the geteltorito executable and &lt;a href="http://infrarecorder.org/"&gt;Infrarecorder&lt;/a&gt;.&amp;nbsp; Just search for "geteltorito."&lt;br /&gt;&lt;br /&gt;I'm not sure why HP (and Dell) consider their websites "customer service" centers.&amp;nbsp; If admins like me have to do all this work to build patch tools for THEIR products, perhaps we should be paid, by HP (or by Dell), for our time? &lt;br /&gt;&lt;br /&gt;Finally, note the &lt;a href="http://www.ltr-data.se/opencode.html/#ImDisk"&gt;IMdisk disk image driver&lt;/a&gt;.&amp;nbsp; This piece of software is very handy when it comes to working directly in disk image files.&amp;nbsp; And also pay attention to the /dev/null and /dev/zero drivers on this same site.&amp;nbsp; /dev/zero is handy for zeroing out large blocks of data, while /dev/null is known as the "bit bucket."&amp;nbsp; All bits sent to this device are discarded.&amp;nbsp; Most of the software on this page is solid sysadmin material.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-5979230932215153084?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/5979230932215153084/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=5979230932215153084' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5979230932215153084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5979230932215153084'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2011/01/hp-and-usb-key-utility.html' title='HP and the USB key utility'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-8865449024788224653</id><published>2010-11-19T22:07:00.001-05:00</published><updated>2010-11-19T22:08:38.331-05:00</updated><title type='text'>Free weights day two</title><content type='html'>Took me a long while to get to day two -- I have only been able to get one workout in per week!&lt;br /&gt;&lt;br /&gt;There is too much going on in one day.&amp;nbsp; Here is day two, and I'll split the lower body stuff from the upper body stuff in day one and add it to day three.&lt;br /&gt;&lt;br /&gt;Day two: arms.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3 sets pullups on each of the narrow, medium and wide grips, in that order.&amp;nbsp; 12/10/8 reps, respectively. Use weight assists as necessary.&amp;nbsp; For me, it doesn't take long to need a weight assist.&lt;br /&gt;3 sets standing curls with an EZ-curl bar.&amp;nbsp; I should probably back off and do 60 lbs. 8 reps per set.&lt;br /&gt;3 sets skullcrushers (lying barbell extensions).&amp;nbsp; 75 lbs.&amp;nbsp; 12 reps.&lt;br /&gt;3 sets tricep push downs, ~ 100 lbs 10 reps&lt;br /&gt;3 sets standing cable push (though I may drop these later) .&amp;nbsp; ~50 lbs per arm.&amp;nbsp; 10 reps.&lt;br /&gt;3 sets seated pull downs.&amp;nbsp; ~140 lbs.&amp;nbsp; 12 reps.&lt;br /&gt;3 sets horizontal row.&amp;nbsp; ~ 100 lbs.&amp;nbsp; 12 reps .&lt;br /&gt;3 sets incline sit-ups.&amp;nbsp; 25 lb weight.&amp;nbsp; 30 reps.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-8865449024788224653?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/8865449024788224653/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=8865449024788224653' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8865449024788224653'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8865449024788224653'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2010/11/free-weights-day-two.html' title='Free weights day two'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-1545064160397805669</id><published>2010-11-02T23:52:00.000-04:00</published><updated>2010-11-02T23:52:58.743-04:00</updated><title type='text'>Free weights day one</title><content type='html'>I have been turned on to the wonderful world of free weights.&amp;nbsp; Lifting free weights is better than circuit training on machines in so many ways:&amp;nbsp; you get a whole body workout rather than targeting specific muscles.&amp;nbsp; You get miniature workouts while you rack and unrack weights from your barbells and dumbbells.&amp;nbsp; And so far, you don't get stuck in a rut like you do with machine weights (or maybe free weights are just new).&lt;br /&gt;&lt;br /&gt;I had been ambling around focusing on "pushing" weights one day and "pulling" weights on another, but I think I have settled in on a routine for day 1 (the push day):&lt;br /&gt;&lt;br /&gt;I'll say this day concentrates on chest and lower body muscles. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3 sets bench press 8 reps @ 135 lbs&lt;br /&gt;3 sets dumbbell flys 12 reps @ 25 lbs (per arm) &lt;br /&gt;3 sets vertical row 8-10 reps @ 70 lbs &lt;br /&gt;3 sets overhead dumbbell press 8-10 reps @ 30 lbs (per arm) &lt;br /&gt;3 sets incline press 10 reps @ 70 lbs &lt;br /&gt;3 sets squats 10 reps @ 110 lbs &lt;br /&gt;2 sets leg press 15 reps @ 270 lbs &lt;br /&gt;2 sets calf raises 15 reps @ 140 lbs &lt;br /&gt;2 sets leg curls 10 reps @ 50 lbs (per leg) &lt;br /&gt;2 sets leg extensions 10 reps @ 45-50 lbs (per leg) &lt;br /&gt;2 sets hip abductors 15 reps @ 110 lbs &lt;br /&gt;2 sets hip adductors 15 reps @ 140 lbs&lt;br /&gt;&lt;br /&gt;Run.  You'll laugh at those first few hundred feet when your lower  half doesn't know what your upper half is telling it to do.  I also  learned about the power rack which is tremendous because now I'm not  worried about killing myself by dropping a heavy barbell on my own head.&amp;nbsp; Having confidence is a real performance booster.&amp;nbsp; Instead, I was getting one or two half-assed sets of bench/incline presses in per day because I was too embarrassed to ask someone to spot, and the power rack is safer anyway.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-1545064160397805669?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/1545064160397805669/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=1545064160397805669' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1545064160397805669'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1545064160397805669'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2010/11/free-weights-day-one.html' title='Free weights day one'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-6893638163749363104</id><published>2010-10-24T23:59:00.001-04:00</published><updated>2010-10-25T00:01:41.464-04:00</updated><title type='text'>Filesystem Block Sizes On Hardware RAID</title><content type='html'>Interesting note from IBM on setting up filesystem blocksizes (or software RAID block sizes) on hardware RAID:&lt;br /&gt;&lt;blockquote&gt;If you plan to use RAID devices in your file system, a larger block size may be more effective and help avoid the penalties involved in small block write operations to RAID devices. For example, in a RAID configuration using 4 data disks and 1 parity disk (a 4+P configuration), which uses a 64 KB stripe size, the optimal file system block size would be an integral multiple of 256 KB (4 data disks × 64 KB stripe size = 256 KB). A block size of an integral multiple of 256 KB results in a single data write that encompasses the 4 data disks and a parity-write to the parity disk. If a block size smaller than 256 KB, such as 64 KB, is used, write performance is degraded by the read-modify-write behavior. A 64 KB block size results in a single disk writing 64 KB and a subsequent read from the three remaining disks in order to compute the parity that is then written to the parity disk. The extra read degrades performance.&lt;/blockquote&gt;&lt;blockquote&gt;The choice of block size also affects the performance of certain metadata operations, in particular, block allocation performance. The GPFS block allocation map is stored in blocks, similar to regular files. When the block size is small: – It takes more blocks to store a given amount of data resulting in additional work to allocate those blocks – One block of allocation map data contains less information.&lt;/blockquote&gt;&amp;nbsp;Basically, when nesting storage blocks, use higher multiples of each inner layer's block size for performance gains.&amp;nbsp; Welcome to storage 101.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-6893638163749363104?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/6893638163749363104/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=6893638163749363104' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6893638163749363104'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6893638163749363104'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2010/10/software-raid-on-hardware-raid.html' title='Filesystem Block Sizes On Hardware RAID'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-5402296310286640419</id><published>2010-10-08T16:19:00.001-04:00</published><updated>2010-10-08T16:19:02.766-04:00</updated><title type='text'>Yet another braindump: ESXtop and the rc file.</title><content type='html'>&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:WordDocument&gt;   &lt;w:View&gt;Normal&lt;/w:View&gt;   &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:TrackMoves/&gt;   &lt;w:TrackFormatting/&gt;   &lt;w:PunctuationKerning/&gt;   &lt;w:ValidateAgainstSchemas/&gt;   &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:DoNotPromoteQF/&gt;   &lt;w:LidThemeOther&gt;EN-US&lt;/w:LidThemeOther&gt;   &lt;w:LidThemeAsian&gt;X-NONE&lt;/w:LidThemeAsian&gt;   &lt;w:LidThemeComplexScript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;   &lt;w:Compatibility&gt;    &lt;w:BreakWrappedTables/&gt;    &lt;w:SnapToGridInCell/&gt;    &lt;w:WrapTextWithPunct/&gt;    &lt;w:UseAsianBreakRules/&gt;    &lt;w:DontGrowAutofit/&gt;    &lt;w:SplitPgBreakAndParaMark/&gt;    &lt;w:DontVertAlignCellWithSp/&gt;    &lt;w:DontBreakConstrainedForcedTables/&gt;    &lt;w:DontVertAlignInTxbx/&gt;    &lt;w:Word11KerningPairs/&gt;    &lt;w:CachedColBalance/&gt;   &lt;/w:Compatibility&gt;   &lt;w:DoNotOptimizeForBrowser/&gt;   &lt;m:mathPr&gt;    &lt;m:mathFont m:val="Cambria Math"/&gt;    &lt;m:brkBin m:val="before"/&gt;    &lt;m:brkBinSub m:val="&amp;#45;-"/&gt;    &lt;m:smallFrac m:val="off"/&gt;    &lt;m:dispDef/&gt;    &lt;m:lMargin m:val="0"/&gt;    &lt;m:rMargin m:val="0"/&gt;    &lt;m:defJc m:val="centerGroup"/&gt;    &lt;m:wrapIndent m:val="1440"/&gt;    &lt;m:intLim m:val="subSup"/&gt;    &lt;m:naryLim m:val="undOvr"/&gt;   &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"  DefSemiHidden="true" DefQFormat="false" DefPriority="99"  LatentStyleCount="267"&gt;   &lt;w:LsdException Locked="false" Priority="0" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Normal"/&gt;   &lt;w:LsdException Locked="false" Priority="9" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="heading 1"/&gt;   &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2"/&gt;   &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3"/&gt;   &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4"/&gt;   &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5"/&gt;   &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6"/&gt;   &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7"/&gt;   &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8"/&gt;   &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 1"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 2"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 3"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 4"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 5"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 6"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 7"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 8"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 9"/&gt;   &lt;w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption"/&gt;   &lt;w:LsdException Locked="false" Priority="10" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Title"/&gt;   &lt;w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"/&gt;   &lt;w:LsdException Locked="false" Priority="11" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Subtitle"/&gt;   &lt;w:LsdException Locked="false" Priority="22" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Strong"/&gt;   &lt;w:LsdException Locked="false" Priority="20" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Emphasis"/&gt;   &lt;w:LsdException Locked="false" Priority="59" SemiHidden="false"   UnhideWhenUsed="false" Name="Table Grid"/&gt;   &lt;w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text"/&gt;   &lt;w:LsdException Locked="false" Priority="1" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="No Spacing"/&gt;   &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading"/&gt;   &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List"/&gt;   &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid"/&gt;   &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1"/&gt;   &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2"/&gt;   &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1"/&gt;   &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2"/&gt;   &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1"/&gt;   &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2"/&gt;   &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3"/&gt;   &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List"/&gt;   &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading"/&gt;   &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List"/&gt;   &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid"/&gt;   &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 1"/&gt;   &lt;w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision"/&gt;   &lt;w:LsdException Locked="false" Priority="34" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="List Paragraph"/&gt;   &lt;w:LsdException Locked="false" Priority="29" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Quote"/&gt;   &lt;w:LsdException Locked="false" Priority="30" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Intense Quote"/&gt;   &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="19" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis"/&gt;   &lt;w:LsdException Locked="false" Priority="21" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis"/&gt;   &lt;w:LsdException Locked="false" Priority="31" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference"/&gt;   &lt;w:LsdException Locked="false" Priority="32" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Intense Reference"/&gt;   &lt;w:LsdException Locked="false" Priority="33" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Book Title"/&gt;   &lt;w:LsdException Locked="false" Priority="37" Name="Bibliography"/&gt;   &lt;w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading"/&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt; /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman","serif"; mso-fareast-font-family:"Times New Roman";}&lt;/style&gt; &lt;![endif]--&gt;  &lt;br /&gt;&lt;div class="MsoPlainText"&gt;.... &lt;/div&gt;&lt;div class="MsoPlainText"&gt;By and large, slow SCSI performance is the largest cause of log messages on the box.&lt;span&gt;&amp;nbsp; &lt;/span&gt;Furthermore, examining the contents of these filtered logs, they are all from snapshots.&lt;/div&gt;&lt;div class="MsoPlainText"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoPlainText"&gt;Running ESXtop, I found that things have largely quiesced.&lt;span&gt;&amp;nbsp; &lt;/span&gt;However, my initial look at esxtop on nfvesx13 showed that delivradb01 had 2,400ish pending write requests, which accounted for several MB/s writes.&lt;span&gt;&amp;nbsp; &lt;/span&gt;Again, things have quieted down but I am collecting four hours' worth of data.&lt;span&gt;&amp;nbsp; &lt;/span&gt;To do the same:&lt;/div&gt;&lt;div class="MsoPlainText"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoPlainText"&gt;esxtop -b -c /root/.esx4toprc.delivra -n 14400 -d 5 &amp;gt; file&lt;/div&gt;&lt;div class="MsoPlainText"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoPlainText"&gt;Or...interactively:&lt;/div&gt;&lt;div class="MsoPlainText"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoPlainText"&gt;esxtop&lt;/div&gt;&lt;div class="MsoPlainText"&gt;v&lt;/div&gt;&lt;div class="MsoPlainText"&gt;e&lt;/div&gt;&lt;div class="MsoPlainText"&gt;whatever number delivradb01 is (this time it's 41).&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoPlainText"&gt;f&lt;/div&gt;&lt;div class="MsoPlainText"&gt;K, or L.&lt;span&gt;&amp;nbsp; &lt;/span&gt;I'm mostly interested in write latency.&lt;span&gt;&amp;nbsp; &lt;/span&gt;Particularly WAIT, DAVG and GAVG.&lt;span&gt;&amp;nbsp; &lt;/span&gt;If DAVG is high, then you have a latent SAN.&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-5402296310286640419?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/5402296310286640419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=5402296310286640419' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5402296310286640419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5402296310286640419'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2010/10/yet-another-braindump-esxtop-and-rc.html' title='Yet another braindump: ESXtop and the rc file.'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-3665502186769163519</id><published>2010-10-08T13:30:00.001-04:00</published><updated>2010-10-08T13:30:18.076-04:00</updated><title type='text'>ESXi: where did vmkernel logs, etc. go?</title><content type='html'>I take no credit for this whatsoever.&amp;nbsp; A co-worker of mine, Nick Eggleston, just schooled me.&lt;br /&gt;&lt;br /&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:WordDocument&gt;   &lt;w:View&gt;Normal&lt;/w:View&gt;   &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:TrackMoves/&gt;   &lt;w:TrackFormatting/&gt;   &lt;w:PunctuationKerning/&gt;   &lt;w:ValidateAgainstSchemas/&gt;   &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:DoNotPromoteQF/&gt;   &lt;w:LidThemeOther&gt;EN-US&lt;/w:LidThemeOther&gt;   &lt;w:LidThemeAsian&gt;X-NONE&lt;/w:LidThemeAsian&gt;   &lt;w:LidThemeComplexScript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;   &lt;w:Compatibility&gt;    &lt;w:BreakWrappedTables/&gt;    &lt;w:SnapToGridInCell/&gt;    &lt;w:WrapTextWithPunct/&gt;    &lt;w:UseAsianBreakRules/&gt;    &lt;w:DontGrowAutofit/&gt;    &lt;w:SplitPgBreakAndParaMark/&gt;    &lt;w:DontVertAlignCellWithSp/&gt;    &lt;w:DontBreakConstrainedForcedTables/&gt;    &lt;w:DontVertAlignInTxbx/&gt;    &lt;w:Word11KerningPairs/&gt;    &lt;w:CachedColBalance/&gt;   &lt;/w:Compatibility&gt;   &lt;w:BrowserLevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;   &lt;m:mathPr&gt;    &lt;m:mathFont m:val="Cambria Math"/&gt;    &lt;m:brkBin m:val="before"/&gt;    &lt;m:brkBinSub m:val="&amp;#45;-"/&gt;    &lt;m:smallFrac m:val="off"/&gt;    &lt;m:dispDef/&gt;    &lt;m:lMargin m:val="0"/&gt;    &lt;m:rMargin m:val="0"/&gt;    &lt;m:defJc m:val="centerGroup"/&gt;    &lt;m:wrapIndent m:val="1440"/&gt;    &lt;m:intLim m:val="subSup"/&gt;    &lt;m:naryLim m:val="undOvr"/&gt;   &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"  DefSemiHidden="true" DefQFormat="false" DefPriority="99"  LatentStyleCount="267"&gt;   &lt;w:LsdException Locked="false" Priority="0" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Normal"/&gt;   &lt;w:LsdException Locked="false" Priority="9" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="heading 1"/&gt;   &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2"/&gt;   &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3"/&gt;   &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4"/&gt;   &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5"/&gt;   &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6"/&gt;   &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7"/&gt;   &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8"/&gt;   &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 1"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 2"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 3"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 4"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 5"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 6"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 7"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 8"/&gt;   &lt;w:LsdException Locked="false" Priority="39" Name="toc 9"/&gt;   &lt;w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption"/&gt;   &lt;w:LsdException Locked="false" Priority="10" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Title"/&gt;   &lt;w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"/&gt;   &lt;w:LsdException Locked="false" Priority="11" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Subtitle"/&gt;   &lt;w:LsdException Locked="false" Priority="22" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Strong"/&gt;   &lt;w:LsdException Locked="false" Priority="20" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Emphasis"/&gt;   &lt;w:LsdException Locked="false" Priority="59" SemiHidden="false"   UnhideWhenUsed="false" Name="Table Grid"/&gt;   &lt;w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text"/&gt;   &lt;w:LsdException Locked="false" Priority="1" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="No Spacing"/&gt;   &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading"/&gt;   &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List"/&gt;   &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid"/&gt;   &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1"/&gt;   &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2"/&gt;   &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1"/&gt;   &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2"/&gt;   &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1"/&gt;   &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2"/&gt;   &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3"/&gt;   &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List"/&gt;   &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading"/&gt;   &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List"/&gt;   &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid"/&gt;   &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 1"/&gt;   &lt;w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision"/&gt;   &lt;w:LsdException Locked="false" Priority="34" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="List Paragraph"/&gt;   &lt;w:LsdException Locked="false" Priority="29" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Quote"/&gt;   &lt;w:LsdException Locked="false" Priority="30" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Intense Quote"/&gt;   &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 1"/&gt;   &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 2"/&gt;   &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 3"/&gt;   &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 4"/&gt;   &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 5"/&gt;   &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Shading Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"   UnhideWhenUsed="false" Name="Light List Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"   UnhideWhenUsed="false" Name="Light Grid Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 1 Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium List 2 Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"   UnhideWhenUsed="false" Name="Dark List Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Shading Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful List Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"   UnhideWhenUsed="false" Name="Colorful Grid Accent 6"/&gt;   &lt;w:LsdException Locked="false" Priority="19" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis"/&gt;   &lt;w:LsdException Locked="false" Priority="21" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis"/&gt;   &lt;w:LsdException Locked="false" Priority="31" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference"/&gt;   &lt;w:LsdException Locked="false" Priority="32" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Intense Reference"/&gt;   &lt;w:LsdException Locked="false" Priority="33" SemiHidden="false"   UnhideWhenUsed="false" QFormat="true" Name="Book Title"/&gt;   &lt;w:LsdException Locked="false" Priority="37" Name="Bibliography"/&gt;   &lt;w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading"/&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt; /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman","serif";}&lt;/style&gt; &lt;![endif]--&gt;  &lt;br /&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;Some of you may have heard Greg and I complaining about the logging problems we see with ESXi. &amp;nbsp;Relative to classic ESX, we weren’t seeing messages from the VMkernel that we have been accustomed to seeing, which was making it impossible to see if changes to the SAN (or other subsystems) were having an effect.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;Logging on ESXi is a problem because it is designed to fit into a small (approx 32 MB) footprint.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;On the 4.1 version (and others as well), they eliminate the vmkwarning and vmkernel log files, pushing all of that data into the /var/log/messages file.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;They also set the management agents (vpxa and hostd) to log to syslog (which is a change from earlier versions), so the output from those agents goes into the /var/log/messages file, too.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;The system tries to limit the amount of space taken up by log files, so it compresses and rotates them when they reach a certain size, keeping the 8 most recent versions.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;The problem is that vpxa and hostd produce tremendous amounts of poorly-formatted output, resulting in the system being only able to keep about 5-10 minutes worth of logs.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;On top of that, but vpxa and hostd have their own, separate, log files, so all the information they produce was being duplicated, and consuming space that much more quickly.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;The VMware engineers were little help, simply describing how to change the target of the syslog server on ESXi to a file or a remote server. &amp;nbsp;But that did nothing to curb the verbosity of the logs.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;Since there was so much crap, the messages we needed to look for from the VMkernel were disappearing.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;Anyway, so after some Googling and reading, here’s what I have come up with:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;stop vpxa and hostd from logging to syslog&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;pull the /var/log/messages data over to the vMA for      storage&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;Here’s how:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;On the ESXi host:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;Edit /etc/vmware/hostd/config.xml&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;Change &lt;outputtosyslog&gt;true&lt;/outputtosyslog&gt; to false&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;Edit /etc/opt/vmware/vpxa/vpxa.cfg&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;Change &lt;outputtosyslog&gt;true&lt;/outputtosyslog&gt; to false&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;Run:&amp;nbsp; services.sh restart&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;(this restarts the management agents and daemons (including SNMP), but does not effect the running VMs)&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;On the vMA host:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;vifp addserver &lt;esxi-hostname&gt; --username root --password &lt;rootpassword&gt;&lt;/rootpassword&gt;&lt;/esxi-hostname&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;span lang="DA" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;vilogger enable --server &lt;esxi-hostname&gt;&lt;/esxi-hostname&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;This will cause the vMA to start collecting the log files and putting them in:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;/var/log/vmware/&lt;hostname&gt;&lt;/hostname&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;Note that we may need to add a separate virtual disk to the vMA to hold the log files, once we get a lot of hosts being logged. &amp;nbsp;By default &lt;/span&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;vilogger&lt;/span&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt; will grab the &lt;/span&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;vpxa.log&lt;/span&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;hostd.log&lt;/span&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt; files as well. &amp;nbsp;Those can be eliminated to save space.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;If you’re curious to see the log files on an ESXi host, it’s pretty easy. &amp;nbsp;Just point your browser to the host and take a look, like this:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;&lt;a href="https://esxi-host/host/messages"&gt;https://ESXi-host/host/messages&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;I have presented this “fix” to the VMware guy I have been talking to, but he hasn’t gotten back to me on any other way to accomplish the same thing.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;I’ve already done this to nfvesxi17, and the logs are being collected on the vMA.&amp;nbsp; (we are now seeing vmkernel messages)&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;I have made the config changes on 15, 16, and 18, but I haven’t restarted the services yet.&amp;nbsp; That can be done this afternoon.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;After that, they will need to be configured into &lt;/span&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;vilogger&lt;/span&gt;&lt;span style="font-family: &amp;quot;Arial&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-3665502186769163519?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/3665502186769163519/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=3665502186769163519' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3665502186769163519'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3665502186769163519'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2010/10/esxi-where-did-vmkernel-logs-etc-go.html' title='ESXi: where did vmkernel logs, etc. go?'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-5643744790087488514</id><published>2010-10-08T11:20:00.000-04:00</published><updated>2010-10-08T11:20:06.055-04:00</updated><title type='text'>vSwitch Configuration Script</title><content type='html'>The most useful code here is the commented out section, which I will no longer use since I have deleted the dvSwitch.&amp;nbsp; In the future, I can see this script looking up VMs and reconfiguring their port groups to standard (or distributed) virtual switches, then swinging uplinks over one at a time. &lt;br /&gt;&lt;br /&gt;#!/bin/sh&lt;br /&gt;&lt;br /&gt;cfgvs="/usr/bin/vicfg-vswitch"&lt;br /&gt;vifp="source /opt/vmware/vma/bin/vifptarget"&lt;br /&gt;&lt;br /&gt;for i in 02 03; do&lt;br /&gt;&lt;br /&gt;&amp;nbsp; # Flip through all the servers, create a standard vSwitch and add port groups.&lt;br /&gt;&amp;nbsp; srv="usicdresxi${i}"&lt;br /&gt;&amp;nbsp; $vifp --set $srv&lt;br /&gt;&amp;nbsp; $cfgvs --server $srv --add vSwitch1&lt;br /&gt;&amp;nbsp; $cfgvs --server $srv --mtu 9000 vSwitch1&lt;br /&gt;&amp;nbsp; $cfgvs --server $srv --add-pg USIC_Vlan_300 vSwitch1&lt;br /&gt;&amp;nbsp; $cfgvs --server $srv --vlan 300 --pg USIC_Vlan_300 vSwitch1&lt;br /&gt;&amp;nbsp; $cfgvs --server $srv --add-pg USIC_Vlan_100 vSwitch1&lt;br /&gt;&amp;nbsp; $cfgvs --server $srv --vlan 100 --pg USIC_Vlan_100 vSwitch1&lt;br /&gt;&amp;nbsp; $cfgvs --server $srv --add-pg USIC_Vlan_996_Perimeter vSwitch1&lt;br /&gt;&amp;nbsp; $cfgvs --server $srv --vlan 996 --pg USIC_Vlan_996_Perimeter vSwitch1&lt;br /&gt;&amp;nbsp; $cfgvs --server $srv --add-pg nFrame_Vlan_61_nServe_Adm vSwitch1&lt;br /&gt;&amp;nbsp; $cfgvs --server $srv --vlan 61 --pg&amp;nbsp; nFrame_Vlan_61_nServe_Adm vSwitch1&lt;br /&gt;&amp;nbsp; $cfgvs --server $srv --add-pg USIC_Vlan_1_Untagged vSwitch1&lt;br /&gt;&lt;br /&gt;&amp;nbsp; # Where are my vnics?&amp;nbsp; Remove them from the dvSwitch and add them to the standard vSwitch.&lt;br /&gt;#&amp;nbsp; for j in 2 3 ; do&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; dvportid=0&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; dvportid=`$cfgvs --server $srv --list | grep vmnic${j} | tr -s ' ' | awk '{if ($1 ~ /[0-9][0-9]*/) print $1}'`&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; if [ "$dvportid" -gt "0" ]; then&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $cfgvs --server $srv --del-dvp-uplink vmnic${j} --dvp $dvportid USIC_dv_NetworkAccess&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; fi&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; $cfgvs --server $srv --link vmnic${j} vSwitch1&lt;br /&gt;#&amp;nbsp;&amp;nbsp;&amp;nbsp; done&lt;br /&gt;&amp;nbsp; done&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-5643744790087488514?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/5643744790087488514/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=5643744790087488514' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5643744790087488514'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5643744790087488514'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2010/10/vswitch-configuration-script.html' title='vSwitch Configuration Script'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-8644632243803343314</id><published>2010-09-15T16:16:00.001-04:00</published><updated>2011-08-25T00:47:56.744-04:00</updated><title type='text'>My Two Day Battle With Debian Installer</title><content type='html'>The &lt;a href="https://help.ubuntu.com/10.04/installation-guide/i386/appendix-preseed.html"&gt;example preseed.txt file&lt;/a&gt; from Ubuntu 10.04 (Lucid) lacks the partman-lvm/confirm_nooverwrite command, which is required to preseed away the partman-lvm/confirm question during install.&amp;nbsp; While unattended installs of Ubuntu 9.x worked fine, I kept having to answer two questions during 10.04 installs.&lt;br /&gt;&lt;br /&gt;I fought this for two days.&amp;nbsp; It may also be necessary to define your own partitioning recipe (boot-root, in the example below), but I haven't testing using one of the generic recipes (atomic) yet.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;### Partitioning&lt;br /&gt;# If the system has free space you can choose to only partition that space.&lt;br /&gt;# Alternatives: custom, some_device, some_device_crypto, some_device_lvm.&lt;br /&gt;#d-i partman-auto/init_automatically_partition select biggest_free&lt;br /&gt;&lt;br /&gt;# Alternatively, you can specify a disk to partition. The device name must&lt;br /&gt;# be given in traditional non-devfs format.&lt;br /&gt;# Note: A disk must be specified, unless the system has only one disk.&lt;br /&gt;# For example, to use the first SCSI/SATA hard disk:&lt;br /&gt;d-i partman-auto/disk string /dev/sda&lt;br /&gt;# In addition, you'll need to specify the method to use.&lt;br /&gt;# The presently available methods are: "regular", "lvm" and "crypto"&lt;br /&gt;d-i partman-auto/method string lvm&lt;br /&gt;&lt;br /&gt;# If one of the disks that are going to be automatically partitioned&lt;br /&gt;# contains an old LVM configuration, the user will normally receive a&lt;br /&gt;# warning. This can be preseeded away...&lt;br /&gt;d-i partman-lvm/device_remove_lvm boolean true&lt;br /&gt;# The same applies to pre-existing software RAID array:&lt;br /&gt;d-i partman-md/device_remove_md boolean true&lt;br /&gt;# And the same goes for the confirmation to write the lvm partitions.&lt;br /&gt;# Write a new empty partition table?&lt;br /&gt;d-i partman-lvm/confirm boolean true&lt;br /&gt;d-i partman-lvm/confirm_nooverwrite boolean true&lt;br /&gt;&lt;br /&gt;# For LVM partitioning, you can select how much of the volume group to use&lt;br /&gt;# for logical volumes.&lt;br /&gt;d-i partman-auto-lvm/guided_size string max&lt;br /&gt;#d-i partman-auto-lvm/guided_size string 10GB&lt;br /&gt;#d-i partman-auto-lvm/guided_size string 50%&lt;br /&gt;&lt;br /&gt;# You can choose one of the three predefined partitioning recipes:&lt;br /&gt;# - atomic: all files in one partition&lt;br /&gt;# - home:&amp;nbsp;&amp;nbsp; separate /home partition&lt;br /&gt;# - multi:&amp;nbsp; separate /home, /usr, /var, and /tmp partitions&lt;br /&gt;d-i partman-auto/choose_recipe select boot-root&lt;br /&gt;&lt;br /&gt;# Or provide a recipe of your own...&lt;br /&gt;# The recipe format is documented in the file devel/partman-auto-recipe.txt.&lt;br /&gt;# If you have a way to get a recipe file into the d-i environment, you can&lt;br /&gt;# just point at it.&lt;br /&gt;#d-i partman-auto/expert_recipe_file string /hd-media/recipe&lt;br /&gt;&lt;br /&gt;# If not, you can put an entire recipe into the preconfiguration file in one&lt;br /&gt;# (logical) line. This example creates a small /boot partition, suitable&lt;br /&gt;# swap, and uses the rest of the space for the root partition:&lt;br /&gt;d-i partman-auto/expert_recipe string \&lt;br /&gt;boot-root :: \&lt;br /&gt;128 128 128 ext3 \&lt;br /&gt;$primary{ } $bootable{ } \&lt;br /&gt;method{ format } format{ } \&lt;br /&gt;use_filesystem{ } filesystem{ ext3 } \&lt;br /&gt;mountpoint{ /boot } \&lt;br /&gt;. \&lt;br /&gt;500 10000 1000000000 ext3 \&lt;br /&gt;$defaultignore{ } \&lt;br /&gt;$primary{ } \&lt;br /&gt;method{ lvm } \&lt;br /&gt;. \&lt;br /&gt;64 512 200% linux-swap \&lt;br /&gt;$lvmok{ } \&lt;br /&gt;. \&lt;br /&gt;500 10000 1000000000 ext4 \&lt;br /&gt;$lvmok{ } method{ format } format{ } \&lt;br /&gt;use_filesystem{ } filesystem{ ext4 } \&lt;br /&gt;mountpoint{ / } \&lt;br /&gt;.&lt;br /&gt;&lt;br /&gt;# If you just want to change the default filesystem from ext3 to something&lt;br /&gt;# else, you can do that without providing a full recipe.&lt;br /&gt;d-i partman/default_filesystem string ext4&lt;br /&gt;&lt;br /&gt;# This makes partman automatically partition without confirmation, provided&lt;br /&gt;# that you told it what to do using one of the methods above.&lt;br /&gt;d-i partman/confirm_write_new_label boolean true&lt;br /&gt;d-i partman/choose_partition select finish&lt;br /&gt;d-i partman/confirm boolean true&lt;br /&gt;d-i partman/confirm_nooverwrite boolean true&lt;br /&gt;&lt;br /&gt;### Controlling how partitions are mounted&lt;br /&gt;# The default is to mount by UUID, but you can also choose "traditional" to&lt;br /&gt;# use traditional device names, or "label" to try filesystem labels before&lt;br /&gt;# falling back to UUIDs.&lt;br /&gt;#d-i partman/mount_style select uuid&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-8644632243803343314?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/8644632243803343314/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=8644632243803343314' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8644632243803343314'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8644632243803343314'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2010/09/my-two-day-battle-with-debian-installer.html' title='My Two Day Battle With Debian Installer'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-213960452704376172</id><published>2010-08-17T21:12:00.001-04:00</published><updated>2010-08-17T21:12:43.524-04:00</updated><title type='text'>VIMsanity</title><content type='html'>Dark blue on a black background.&amp;nbsp; Yuck.&amp;nbsp; Thanks, dude.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.held.org.il/blog/?p=13"&gt;http://www.held.org.il/blog/?p=13&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-213960452704376172?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/213960452704376172/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=213960452704376172' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/213960452704376172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/213960452704376172'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2010/08/vimsanity.html' title='VIMsanity'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-8951572006740665573</id><published>2010-08-03T17:30:00.001-04:00</published><updated>2010-08-03T18:42:58.059-04:00</updated><title type='text'>Storage vMotion without Storage vMotion (nor vCenter)</title><content type='html'>Quick note to jot this down.&amp;nbsp; Will write a script later.&lt;br /&gt;&lt;br /&gt;mkdir /vmfs/volumes/shared/vmname&lt;br /&gt;cd /vmfs/volumes/local/vmname &lt;br /&gt;vmkfstools -i /vmfs/volumes/local/vmname/vmname.vmdk -d thin /vmfs/volumes/shared/vmname/vmname.vmdk&lt;br /&gt;ls | grep -v vmdk | awk '{print "cp "$0" /vmfs/volumes/shared/vmname/"}' | sh&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-8951572006740665573?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/8951572006740665573/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=8951572006740665573' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8951572006740665573'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8951572006740665573'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2010/08/storage-vmotion-without-storage-vmotion.html' title='Storage vMotion without Storage vMotion (nor vCenter)'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-5538776753232110185</id><published>2010-07-29T13:04:00.000-04:00</published><updated>2010-07-29T13:04:29.656-04:00</updated><title type='text'>PAM changes in ESX 4.1</title><content type='html'>VMware rehashed security governing access to the service console with their 4.1 release. &amp;nbsp; Namely, they switched from&amp;nbsp;&lt;a href="http://linux.die.net/man/8/pam_cracklib"&gt;pam_cracklib&lt;/a&gt; to&amp;nbsp;&lt;a href="http://linux.die.net/man/8/pam_passwdqc"&gt;pam_passwdqc.so&lt;/a&gt; to enforce password complexity, and they make use of &lt;a href="http://linux.die.net/man/8/pam_access"&gt;pam_access.so&lt;/a&gt;, which controls whether certain groups or users should even be granted access at all.&lt;br /&gt;&lt;br /&gt;The pam_access module uses /etc/security/access.conf as a granular, user or group-level control governing who is authorized to pass on to the next PAM module.&amp;nbsp; In ESX 4.1, the default /etc/security/access.conf file is:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;+:root:ALL&lt;br /&gt;+:vpxuser:ALL&lt;br /&gt;+:vslauser:ALL&lt;br /&gt;-:ALL:ALL&lt;/blockquote&gt;This file says that vpxuser, vslauser and any member of the root group is authorized, for whatever PAM is checking at the time.&amp;nbsp; SSH included.&amp;nbsp; Consider traditional practices of adding a non-privileged account, where your account is a member of the users or staff group.&amp;nbsp; After upgrading to ESX 4.1, you suddenly have no access to your service console via SSH.&lt;br /&gt;&lt;br /&gt;Modify that file and done, right?&amp;nbsp; No.&amp;nbsp; There's some unexplained VMware voodoo underneath the hood that will reset this file on reboot, I think.&amp;nbsp; I might be wrong.&amp;nbsp; The proper way to restore your SSH access, though, is to use the vicfg-user command, which is part of the VMA or the vCLI.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;C:\Program Files (x86)\VMware\VMware vSphere CLI&amp;gt;bin\vicfg-user.pl --server esxserver.nframe.com --username root --protocol HTTPS --entity user --login admindude&amp;nbsp;--operation modify --role admin&lt;br /&gt;Enter password: &lt;password&gt;&lt;br /&gt;Updated user admindude successfully.&lt;br /&gt;Assigned the role admin&lt;/password&gt;&lt;/blockquote&gt;&amp;nbsp;After a "reboot test," the changes that vicfg-user induced into /etc/security/access.conf stick:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt; +:admindude:ALL&lt;br /&gt;+:root:ALL&lt;br /&gt;+:vpxuser:ALL&lt;br /&gt;+:vslauser:ALL&lt;br /&gt;-:ALL:ALL&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-5538776753232110185?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/5538776753232110185/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=5538776753232110185' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5538776753232110185'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5538776753232110185'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2010/07/pam-changes-in-esx-41.html' title='PAM changes in ESX 4.1'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-520500219312193088</id><published>2010-07-23T00:38:00.002-04:00</published><updated>2010-07-23T00:47:31.805-04:00</updated><title type='text'>vSphere Update: 4.0 -&gt; 4.1</title><content type='html'>Heads up: VMware's upgrade procedure from vSphere 4.0 to 4.1 has problems with Update Manager.  I have run across this problem in test and in production upgrades.  Both in laboratory and production environments, I had to switch from 32-bit versions of Windows to Windows 2008 R2, which is only 64-bit.  vCenter Server only supports 64-bit OSes.&lt;br /&gt;&lt;br /&gt;The vCenter upgrade guide is &lt;a href="http://www.vmware.com/pdf/vsphere4/r41/vsp_41_upgrade_guide.pdf"&gt;here&lt;/a&gt;, and it is invaluable.&lt;br /&gt;&lt;br /&gt;Once you have updated vCenter Server and Update Manager, you will most likely want to start the vCenter Client, to make sure everything is OK.  In the lab, it wasn't OK, and I had to detach the SQL Express database on my old server, and restore from backup on my new server.  Because my production environment has a separate database server, vCenter Server was OK after an upgrade.&lt;br /&gt;&lt;br /&gt;After you start vCenter Server, you will need to upgrade your Update Manager plugin through the usual procedure.  Once that's done, you will want to import ESX host upgrades: Home -&amp;gt; Solutions and Applications -&amp;gt; Update Manager.  Choose the "Host Upgrade Releases" tab, then import your .zip file that upgrades from ESX 4.0 to ESX 4.1.&lt;br /&gt;&lt;br /&gt;You will want to create a new upgrade baseline, and attach this baseline to your clusters.&amp;nbsp; Problem is, after upgrading, whenever you scan or remediate a host, you will run into an error:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Remediate entity HOSTNAME.nframe.com VMware vCenter Update Manager had an unknown error. Check the Tasks and Events tab and log files for details.&lt;/blockquote&gt;&lt;br /&gt;So far I'd been through the issue in my company's lab, where I went through /var/log/vmware/vpx/vpxa.log, /var/log/vmware/hostd.log and the vCenter logs, maybe more.&amp;nbsp; I only saw possibilities, not definites, so I decided I could live with it.  A big difference between my lab and my production environment is that I run SQL Express 2005 in the lab, while I run SQL Server 2008 in production.  In the lab, I chalked it up to human error, on my part.  I had forgotten many of the details behind my lab, e.g. my VC DB and VUM DB were bundled.&amp;nbsp; Perhaps I hadn't selected the right options?&amp;nbsp; However, now it strikes twice.&amp;nbsp; Fool me once, shame on me....&amp;nbsp; This is a bug.&lt;br /&gt;&lt;br /&gt;To fix, uninstall VMware Update Manger, and reinstall using its own database.&amp;nbsp; Simple.&amp;nbsp; Though this is some sort of bug, I have very little initiative to track it down with VMware support.&amp;nbsp; They're good, don't get me wrong, but in my case, I use Update Manager for ESX host updates only.&amp;nbsp; I can have this "pain" dealt with before lunch tomorrow, and by the end of the day I will finish upgrading ESX hosts.&amp;nbsp; If you use Update Manager for more than just ESX updates, then a) I'm curious how you pull it off and b) here's your fair warning.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-520500219312193088?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/520500219312193088/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=520500219312193088' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/520500219312193088'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/520500219312193088'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2010/07/vsphere-update-40-41.html' title='vSphere Update: 4.0 -&gt; 4.1'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-8310455302440510775</id><published>2010-07-21T14:37:00.000-04:00</published><updated>2010-07-21T14:37:03.719-04:00</updated><title type='text'>MORE on Cisco/Non-Cisco and STP</title><content type='html'>Indeed, RSTP and Rapid-PVST+ are incompatible in ways I can't comprehend&amp;nbsp; (without looking at frame formats).&amp;nbsp; I tested it today with one Extreme Summit X450 switch and two Cisco 2960Gs.&lt;br /&gt;&lt;br /&gt;On the Extreme: &lt;br /&gt;&lt;blockquote&gt;create vlan vlan10&lt;br /&gt;create vlan vlan20&lt;br /&gt;create vlan vlan30&lt;br /&gt;create vlan vlan999&lt;br /&gt;configure vlan vlan10 tag 10&lt;br /&gt;configure vlan vlan20 tag 20&lt;br /&gt;configure vlan vlan30 tag 30&lt;br /&gt;configure vlan vlan999 tag 999&lt;br /&gt;configure vlan default delete ports all&lt;br /&gt;configure vlan 999 add ports 1-2 untagged&lt;br /&gt;configure vlan vlan10 add ports 1-2 tagged&lt;br /&gt;configure vlan vlan20 add ports 1-2 tagged&lt;br /&gt;configure vlan vlan30 add ports 1-2 tagged&lt;br /&gt;configure vlan vlan10 add ports 3-15 untagged&lt;br /&gt;configure vlan vlan20 add ports 16-31 untagged&lt;br /&gt;configure vlan vlan30 add ports 32-48 untagged&lt;br /&gt;configure stpd s0 mode dot1w&lt;br /&gt;configure stpd "s0" add vlan vlan10 ports all&lt;br /&gt;configure stpd "s0" add vlan vlan20 ports all&lt;br /&gt;configure stpd "s0" add vlan vlan30 ports all&lt;br /&gt;configure stpd "s0" add vlan vlan999 ports all&lt;br /&gt;enable stpd s0&lt;br /&gt;configure vlan vlan30 ipaddress 10.10.30.3/24&lt;br /&gt;configure vlan vlan20 ipaddress 10.10.20.3/24&lt;br /&gt;configure vlan vlan10 ipaddress 10.10.10.3/24&lt;br /&gt;configure vlan vlan999 ipaddress 10.10.99.93/24&lt;/blockquote&gt;&lt;br /&gt;On each Cisco:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;hostname whatever&lt;br /&gt;spanning-tree mode rapid-pvst&lt;br /&gt;vlan 10&lt;br /&gt;vlan 20&lt;br /&gt;vlan 30&lt;br /&gt;vlan 999&lt;br /&gt;int po 1&lt;br /&gt;int range gig 0/23-24&lt;br /&gt;channel-group 1 mode on&lt;br /&gt;exit&lt;br /&gt;int po 1&lt;br /&gt;switchport mode trunk&lt;br /&gt;switchport nonegotiate&lt;br /&gt;switchport trunk native vlan 999&lt;br /&gt;int vlan 10&lt;br /&gt;ip address 10.10.10.1 255.255.255.0&lt;br /&gt;int vlan 20&lt;br /&gt;ip address 10.10.20.1 255.255.255.0&lt;br /&gt;int vlan 30&lt;br /&gt;ip address 10.10.30.1 255.255.255.0&lt;br /&gt;int gig 0/1&lt;br /&gt;switchport mode trunk&lt;br /&gt;switchport trunk native vlan 999&lt;br /&gt;switchport nonegotiate&lt;/blockquote&gt;&lt;br /&gt;(The other switch was *.2.)  Both Cisco switches showed port gig 0/1 as "Desginated," while ports 1 and 2 on the X450 showed all VLANs in forwarding state. Indeed, I had a spanning tree loop.  Time to switch to MSTP.  On the Extreme:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;configure mstp revision 1&lt;br /&gt;configure mstp region mst1&lt;br /&gt;disable stpd "s0" auto-bind vlan "Default"&lt;br /&gt;configure stpd "s0" mode mstp cist&lt;br /&gt;create stpd s1&lt;br /&gt;configure stpd s1 mode mstp msti 1&lt;br /&gt;configure stpd1 s1 add vlan default ports all&lt;br /&gt;configure stpd1 s1 add vlan vlan10 ports all&lt;br /&gt;configure stpd1 s1 add vlan vlan20 ports all&lt;br /&gt;configure stpd1 s1 add vlan vlan30 ports all&lt;br /&gt;enable stpd s0&lt;br /&gt;enable stpd s1&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;I created two MST instances: s0 is the CIST, while s1 is MST instance 1.  The CIST is how an MST region interacts with switches adjacent to the region itself.  I believe that MST will revert back to 802.1w mode (RSTP) to talk to neighboring switches.  Thus, the entire MST region is represented to an adjacent switch as if it were one big switch, with the root bridge's MAC address as the identifier.&lt;br /&gt;&lt;br /&gt;For some reason, the Extreme just knew that I wanted to carry chatter between switches on vlan 999, so it wouldn't let me add vlan999 to MSTI 1.  So, on the Cisco, I created accommodating configs:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;spanning-tree mode mst&lt;br /&gt;!&lt;br /&gt;spanning-tree mst configuration&lt;br /&gt; name mst1&lt;br /&gt; revision 1&lt;br /&gt; instance 1 vlan 1-998, 1000-1004&lt;br /&gt;!&lt;br /&gt;spanning-tree mst 0-1 root secondary (or primary)&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;And finally, I see expected results, with one port in forwarding state and another in blocking:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;* X450e-48p.147 # show stpd s1 ports 1-2&lt;br /&gt;Port   Mode   State      Cost  Flags     Priority Port ID Designated Bridge&lt;br /&gt;1      802.1D FORWARDING 20000 eMpppm--B 128      8001    80:00:00:04:96:35:b8:dd&lt;br /&gt;2      802.1D BLOCKING   20000 eApppm--B 128      8002    80:00:00:04:96:35:b8:dd&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;Convergence is nice and fast, too.  I can unplug root ports and barely notice the network skip a beat.  I think from now on, I may insist that all networks we build at my place of employment run MSTP.  Now, to figure this out on an HP procurve....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-8310455302440510775?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/8310455302440510775/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=8310455302440510775' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8310455302440510775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8310455302440510775'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2010/07/more-on-cisconon-cisco-and-stp.html' title='MORE on Cisco/Non-Cisco and STP'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-4782557481419248467</id><published>2010-07-20T15:53:00.006-04:00</published><updated>2010-07-20T17:18:07.371-04:00</updated><title type='text'>HP/Cisco Switch Interoperability and CLI Modes</title><content type='html'>HP's Procurve and GbE2 (blade chassis) series switches are just rebranded Nortels, which I learned by configuring a customer of mine's "cheaper" blade chassis switches for the IBM H-series blade chassis.  (You can buy switches for IBM's blade chassis switches in two flavors: Cisco Catalyst or Nortel, but I digress).&lt;br /&gt;&lt;br /&gt;A customer filed a seemingly simple request: "Can we bundle Ethernet links from our HP blade chassis to our Cisco stack?" Here's where network homogeneity really pays off once you bite into the Cisco apple:&amp;nbsp; your Cisco gear runs the backbone of your network, and at the periphery you "cheap out" and buy some piece of gear that doesn't support one of many of Cisco's proprietary protocols.&amp;nbsp; In this case, we have the potential for a Spanning Tree mismatch.&lt;br /&gt;&lt;br /&gt;Spanning Tree Protocol, or 802.1d, prevents loops in networks.&amp;nbsp; The original implementation of STP is slow to converge when links fail.&amp;nbsp; Really slow - who has 50 spare seconds anymore?&amp;nbsp; Cisco invented the "plus" features in their implementations of STP, which include portfast, uplinkfast and backbonefast, to reduce convergence times.&amp;nbsp; Though I have read about them all countless times, I have only ever used portfast, which is basically a way to "disable" spanning tree on a given port that you know is connected to a computer, and not another switch.&lt;br /&gt;&lt;br /&gt;Then there's PVST, or Per-VLAN Spanning Tree Protocol, which is just as it sounds: separate spanning trees on individual VLANs. Besides limiting a network loop to a single VLAN, you can also spread the load across multiple uplinks using PVST by tweaking port costs for each VLAN, forcing VLANs 10-20 through uplink 1, while forcing VLANs 21-30 through uplink 2, and so on.&lt;br /&gt;&lt;br /&gt;(Note: a network loop and a broadcast on one VLAN out of hundreds is still enough to take down your entire network.)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;But then there are "rapid" enhancements to STP.&amp;nbsp; These enhancements were initially Cisco-proprietary, though Cisco eventually contributed most of them to revised STP standards (802.1w).&amp;nbsp; Couple Rapid STP with Per-VLAN Spanning Tree and you get Rapid-PVST+, which is in place on 90% of all networks worldwide.&amp;nbsp; Cisco Explains it &lt;a href="http://www.cisco.com/en/US/products/hw/switches/ps708/products_configuration_example09186a00807b0670.shtml#backinfo"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Enter inter-switch trunks.&amp;nbsp; The way to transmit tagged Ethernet frames (or multiple VLANs between two switches) is through 802.1q trunks.&amp;nbsp; HP (and F5, and everyone else for that matter), run 802.1w, but they do not implement PVST. These vendors &lt;a href="http://h20000.www2.hp.com/bizsupport/TechSupport/Document.jsp?lang=en&amp;amp;cc=us&amp;amp;taskId=115&amp;amp;prodSeriesId=445100&amp;amp;prodTypeId=3709945&amp;amp;objectID=c01841750"&gt;recommend&lt;/a&gt; running either the older, slower versions of STP on your more capable Cisco gear, or subverting the dominant paradigm and switching to MSTP (which is based on a wholly different implementation of STP called 802.1s).&amp;nbsp; Cisco &lt;a href="http://www.ciscosystems.com.pe/en/US/docs/switches/datacenter/sw/4_0/nx-os/layer2/configuration/guide/l2_pvrstconfig.pdf"&gt;claims&lt;/a&gt; that their Rapid PVST stack will simply flatten itself out to a single instance of STP if it encounters a non-Cisco device on the other end of an 802.1q trunk.&amp;nbsp; So, while HP's recommendations sound dire, Cisco's documenation makes it seem as if everything will be OK so long as the third-party switch remains at the edge of your network.&amp;nbsp; If you put an incompatible switch in the middle of your network between two Cisco switches configured to speak Rapid-PVST+, then you will end up with "islands" of Rapid-PVST+ between legacy, single instance STP.&amp;nbsp; Don't do that.&lt;br /&gt;&lt;br /&gt;I find myself back in the familiar territory of the unknown, and of course I am unaware of any "spare" procurves sitting around where I can test this out.&amp;nbsp; I'm hoping this project doesn't turn into a full-blown reorganization of the customer's on-premise layer 2 network, but if it does, having an Rapid-PVST+ to MSTP migration plan will certainly help.&lt;br /&gt;&lt;br /&gt;Where this post was originally headed is that HP/Nortel switches run a godawful CLI mode called AOSCLI by default, and I thought that this CLI was just the way of the world.  Not true.  Apparently there's an alternate CLI that tries really hard to be IOS.&amp;nbsp; But my foray into STP today went on longer than this little informational tidbit. &lt;br /&gt;&lt;br /&gt;AOSCLI: &lt;a href="http://h20000.www2.hp.com/bc/docs/support/SupportManual/c00291273/c00291273.pdf"&gt;http://h20000.www2.hp.com/bc/docs/support/SupportManual/c00291273/c00291273.pdf&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ISCLI: &lt;a href="http://h20000.www2.hp.com/bc/docs/support/SupportManual/c00778949/c00778949.pdf"&gt;http://h20000.www2.hp.com/bc/docs/support/SupportManual/c00778949/c00778949.pdf&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;(By the way, AOS stands for Alteon OS.&amp;nbsp; The story of Nortel's switch OS gets worse and worse.)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-4782557481419248467?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/4782557481419248467/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=4782557481419248467' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/4782557481419248467'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/4782557481419248467'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2010/07/hpnortel-switches-and-iscli.html' title='HP/Cisco Switch Interoperability and CLI Modes'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-1192549864471934757</id><published>2010-07-19T01:11:00.002-04:00</published><updated>2010-07-19T01:22:43.502-04:00</updated><title type='text'>Sweet Potato and Carrot Enchiladas</title><content type='html'>1 1/2 large sweet potatoes, cubed&lt;br /&gt;4 carrots, sliced thick&lt;br /&gt;2 poblano peppers, seeded&lt;br /&gt;8 oz canned/frozen corn&lt;br /&gt;8 oz canned black beans, rinsed&lt;br /&gt;2 med onions, coarsely chopped&lt;br /&gt;2-3 cloves garlic, minced&lt;br /&gt;15 corn tortillas&lt;br /&gt;30 oz (3 cans) red enchilada sauce&lt;br /&gt;Ground paprika&lt;br /&gt;Ground cayenne&lt;br /&gt;Cinnamon&lt;br /&gt;Coarse salt&lt;br /&gt;8 oz shredded "mexican style" cheese&lt;br /&gt;&lt;br /&gt;Preheat oven to 400F.  Coat sweet potatoes and carrots with a light amount of olive oil, a light amount of coarse salt, a light amount of cinnamon and slighly more liberal amounts of cayenne and paprika  Spread sweet potatoes and carrots on a cookie sheet, or one of those oven roasting baskets is ideal.  Add poblano peppers on top of the veggie mixture, and roast all veggies, keeping an eye on the poblanos.  You may need to remove them early once the skins are peeling.&lt;br /&gt;&lt;br /&gt;About 20 minutes into roasting, heat a skillet with a tad bit of olive oil.  Add the onions and some black pepper to taste.  Saute until onions are becoming translucent; add garlic.  Saute for about 1 minute more, remove from heat and add onion/garlic to a large mixing bowl.  Coarsely chop the poblanos, add it, plus the corn and black beans.  Set aside.&lt;br /&gt;&lt;br /&gt;When the carrots are almost fork tender the sweet potatoes should be, too.  Remove from oven, add contents to mixing bowl, and mix everything up.  Now it's time to assemble.  Open all three cans of enchilada sauce.  Find a shallow bowl and add about 1/3 can of enchilada sauce to it.  To assemble your enchiladas, cook corn tortillas on a hot, dry skillet to soften, press one side of the tortilla into the bowl of enchilada sauce, then lie the sauced side face up in a baking sheet.  Spoon an even mixture of your veggies into the tortilla, like a taco, then roll the tortilla around the veggies.  Start stacking enchiladas tightly next to each other, folded edges down.  You should have about 15 enchiladas.&lt;br /&gt;&lt;br /&gt;Add all of your enchilada sauce on top of the enchiladas, including any left in the bowl.  Make sure you have even coverage.  Sprinkle more cayenne and paprika over the top of your casserole, coat with cheese, cover with foil and bake for 30-35 minutes.  Serves well with spanish rice.&lt;br /&gt;&lt;br /&gt;(I made this last night, but I posted it as a test, after having finished the "redesign" of my blog.  I am actually quite amazed I was able to customize some of the layout here by editing CSS and HTML.  Wow, have things changed since 1998.  Hopefully, I will post more often in the future.)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-1192549864471934757?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/1192549864471934757/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=1192549864471934757' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1192549864471934757'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1192549864471934757'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2010/07/sweet-potato-and-carrot-enchiladas.html' title='Sweet Potato and Carrot Enchiladas'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-40748202094833371</id><published>2010-05-09T22:03:00.002-04:00</published><updated>2010-05-09T22:17:30.789-04:00</updated><title type='text'>Pasta/Sausage thing</title><content type='html'>3 links "hot" italian sausage.&lt;br /&gt;10 oz. whole wheat pasta: penne, ziti, rotini, maybe bowtie will work&lt;br /&gt;1 medium onion&lt;br /&gt;1 bunch parsley&lt;br /&gt;minced garlic to taste&lt;br /&gt;crushed red pepper&lt;br /&gt;1 1/2 jars tomatoey pasta sauce&lt;br /&gt;2 c. (1 bag) shredded parmesan cheese&lt;br /&gt;1/2 can diced tomatoes with juice&lt;br /&gt;&lt;br /&gt;Preheat oven to 400F.  Boil two pots of water: one salted for pasta, one for sausage.  When water boils, add pasta and sausage.&lt;br /&gt;&lt;br /&gt;While sausage and pasta are cooking, mince onion and parsley (to taste - doesn't take much).&lt;br /&gt;&lt;br /&gt;Prepare a casserole dish and open the tomatoes.  Bias-slice cooked and rinsed sausage.  In a skillet, heat olive oil, add onions, tomato with juice, red pepper to taste and sausage.  Sautee over medium heat until onion is translucent.  Add garlic and parsley, cook 30 seconds and dump it into the casserole dish.  Add as much pasta as you can fit, parmesan and pasta sauce, incorporate. &lt;br /&gt;&lt;br /&gt;Bake for 35-40 minutes, enjoy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-40748202094833371?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/40748202094833371/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=40748202094833371' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/40748202094833371'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/40748202094833371'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2010/05/pastasausage-thing.html' title='Pasta/Sausage thing'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-6735656408969911987</id><published>2009-06-05T01:01:00.002-04:00</published><updated>2009-06-05T01:19:49.791-04:00</updated><title type='text'>VirtualBox VM startup script</title><content type='html'>&lt;a href="http://www.virtualbox.org/"&gt;VirtualBox&lt;/a&gt;, Sun's (^H^H^H^H^HOracle's) free virtualization project for X86/X64 PCs, looks somewhat promising, with &lt;a href="http://www.virtualbox.org/manual/UserManual.html#seamlesswindows"&gt;Seamless Windows&lt;/a&gt; and &lt;a href="http://www.virtualbox.org/manual/UserManual.html#snapshots"&gt;snapshots&lt;/a&gt; support.  Better still, it runs like a champ on my aging PC, which I've demoted into a lowly Ubuntu 9.04 server install, running headless.  Space around here is at a premium, and even though I have access to unlimited bandwidth and cabinet space at my job, so is money.  There will be no fancy hypervisors in my immediate future.&lt;br /&gt;&lt;br /&gt;The same things that make VirtualBox appealing make it less so: it's a very simple program to install, even deviating from Debian conventions.  It takes only 30MB of space and everything can be tucked neatly away in /opt/VirtualBox, only to be accessed through $PATH and $LD_LIBRARY_PATH when needed.  Everything can be command-line oriented: no web access that requires Java or ActiveX, and it's MUCH more intuitive than Citrix XenServer.  It also doesn't require VT on the chip, which is a hard requirement for Citrix's Xen product.  That said, running VMs as one would with VMware Server, or ESX, is a bit daunting.  To accomplish this goal I created start/stop scripts that adapt to the VMs I have installed on the system.  The script requires a "vboxmgr" account that owns all of the VMs, so give it a nice shell, like BASH.    &lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;#!/bin/sh&lt;br /&gt;&lt;br /&gt;LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/opt/VirtualBox&lt;br /&gt;export LD_LIBRARY_PATH&lt;br /&gt;&lt;br /&gt;if [ "$USER" != "vboxmgr" ]; then&lt;br /&gt; su vboxmgr -c "$0 $1"&lt;br /&gt;else&lt;br /&gt; PATH=${PATH}:/opt/VirtualBox&lt;br /&gt; export PATH&lt;br /&gt; case "$1" in&lt;br /&gt;&lt;br /&gt; start)&lt;br /&gt; VBoxManage list vms | while read LINE&lt;br /&gt; do&lt;br /&gt;   UUID=`echo $LINE | awk -F'{' '{print $2}' | awk -F '}' '{print $1}'`&lt;br /&gt;   if [ "$UUID" != "" ]; then&lt;br /&gt;     NAME=`echo $LINE | awk -F'{' '{print $1}'`&lt;br /&gt;     echo "Starting the $NAME vm...\c"&lt;br /&gt;     # There could probably be better error checking here.&lt;br /&gt;     VBoxHeadless --startvm $UUID &gt; /dev/null 2&gt;&amp;amp;1 &amp;amp;&lt;br /&gt;     echo "done."&lt;br /&gt;   fi&lt;br /&gt; done&lt;br /&gt; ;;&lt;br /&gt;&lt;br /&gt; stop)&lt;br /&gt; # This is a hard crash!  Something better could be done?&lt;br /&gt; VBoxManage list runningvms | while read LINE&lt;br /&gt; do&lt;br /&gt;   UUID=`echo $LINE | awk -F'{' '{print $2}' | awk -F '}' '{print $1}'`&lt;br /&gt;   if [ "$UUID" != "" ]; then&lt;br /&gt;     NAME=`echo $LINE | awk -F'{' '{print $1}'`&lt;br /&gt;     echo "Stopping the $NAME vm...\c"&lt;br /&gt;     VBoxManage controlvm $UUID acpipowerbutton &gt; /dev/null 2&gt;&amp;amp;1&lt;br /&gt;     sleep 30 # Just to be safe...&lt;br /&gt;     VBoxManage controlvm $UUID poweroff &gt; /dev/null 2&gt;&amp;amp;1&lt;br /&gt;     echo "done."&lt;br /&gt;   fi&lt;br /&gt; done&lt;br /&gt; ;;&lt;br /&gt;&lt;br /&gt; *)&lt;br /&gt; echo "Usage: /etc/init.d/vboxstartvms (start|stop)."&lt;br /&gt; echo "Note: You must have a vboxmgr account!  It should be a member of"&lt;br /&gt; echo "the vboxusers group.  This user will run all VMs!"&lt;br /&gt; ;;&lt;br /&gt; esac&lt;br /&gt;fi&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-6735656408969911987?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/6735656408969911987/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=6735656408969911987' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6735656408969911987'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6735656408969911987'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2009/06/virtualbox-vm-startup-script.html' title='VirtualBox VM startup script'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-7438795484143113421</id><published>2009-01-25T23:05:00.002-05:00</published><updated>2009-01-25T23:11:43.015-05:00</updated><title type='text'>Indianapolis Fat Ass 500h</title><content type='html'>I'm not organizing anything, but *if* there were a &lt;a href="http://www.clubfatass.com/"&gt;Club Fat Ass&lt;/a&gt; event in Indianapolis this route looks like a perfect 50K:&lt;br /&gt;&lt;br /&gt;Theoretical Club Fat Ass &lt;a href="http://www.mapmyrun.com/ride/united-states/in/indianapolis/619283966"&gt;Indianapolis 500&lt;/a&gt; (Hectometers).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-7438795484143113421?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/7438795484143113421/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=7438795484143113421' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7438795484143113421'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7438795484143113421'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2009/01/indianapolis-fat-ass-500h.html' title='Indianapolis Fat Ass 500h'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-1796663106528256431</id><published>2009-01-24T11:10:00.002-05:00</published><updated>2009-01-24T11:11:59.577-05:00</updated><title type='text'>Babies cost a lot of money, please don't make me * you honey</title><content type='html'>I wouldn't give this song a best EVER for lyrics, but it's up there.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.youtube.com/watch?v=V7j2gHahhr4"&gt;http://www.youtube.com/watch?v=V7j2gHahhr4&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-1796663106528256431?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/1796663106528256431/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=1796663106528256431' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1796663106528256431'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1796663106528256431'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2009/01/babies-cost-lot-of-money-please-dont.html' title='Babies cost a lot of money, please don&apos;t make me * you honey'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-3678099151672726186</id><published>2009-01-20T12:32:00.001-05:00</published><updated>2009-01-20T12:32:18.348-05:00</updated><title type='text'>Yay!</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-3678099151672726186?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/3678099151672726186/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=3678099151672726186' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3678099151672726186'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3678099151672726186'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2009/01/yay.html' title='Yay!'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-7244696319760528277</id><published>2009-01-07T23:06:00.003-05:00</published><updated>2009-01-07T23:10:21.837-05:00</updated><title type='text'>Goblin Cock</title><content type='html'>&lt;a href="http://www.myspace.com/GoblinCock"&gt;Goblin Cock&lt;/a&gt; is &lt;a href="http://www.flowerbooking.com/artists/goblincock/"&gt;on tour&lt;/a&gt;.  Personally, I don't listen to Goblin Cock.  However, I think it would funny as hell to drive to a close show to hear people yell "Fuck yeah!  Goblin Cock rules!"  The closest show where people may not get the joke is Toledo, OH.  My uncle is recently unemployed and I need to pay a visit anyway.  Maybe I can make a night of it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-7244696319760528277?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/7244696319760528277/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=7244696319760528277' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7244696319760528277'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7244696319760528277'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2009/01/goblin-cock.html' title='Goblin Cock'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-3150300346943188218</id><published>2009-01-07T18:06:00.002-05:00</published><updated>2009-01-07T18:16:12.067-05:00</updated><title type='text'>ASA Notes</title><content type='html'>Brief ASA notes...&lt;br /&gt;&lt;br /&gt;1. Set a hostname: hostname testasa1&lt;br /&gt;2. Set an enable password: enable password blah level 15&lt;br /&gt;3. Generate an RSA key: crypto key generate rsa&lt;br /&gt;4. Create your username: username gswallow password blah privilege 2&lt;br /&gt;5. Create an ASDM user: usernaem asdmuser password blah privilege 15&lt;br /&gt;6. Set up some names for access: name 10.1.1.0 nFrame description "nFrame Admin"&lt;br /&gt;7. Set up an interface:&lt;br /&gt;&lt;blockquote&gt;&lt;/blockquote&gt;interface Ethernet 0/0&lt;br /&gt;nameif "Outside_10.1.1.0/24"&lt;br /&gt;ip address 10.1.1.254 255.255.255.0&lt;br /&gt;no shut&lt;br /&gt;exit&lt;br /&gt;&lt;br /&gt;8. Set up a default route: route Outside_10.1.1.0/24 0 0 10.1.1.1&lt;br /&gt;9. Set your ASDM image file: asdm image disk0:/asdm-611.bin&lt;br /&gt;10. Set up local authentication:&lt;br /&gt;&lt;br /&gt;aaa authentication http console LOCAL&lt;br /&gt;aaa authentication ssh console LOCAL&lt;br /&gt;&lt;br /&gt;11. Set up HTTP access:&lt;br /&gt;&lt;br /&gt;http server enable&lt;br /&gt;http nFrame 10.1.1.0 255.255.255.0 Outside_10.1.1.0/24&lt;br /&gt;&lt;br /&gt;12. Set up SSH:&lt;br /&gt;ssh nFrame 255.255.255.0 Outside_10.1.1.0/24&lt;br /&gt;&lt;br /&gt;Test!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-3150300346943188218?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/3150300346943188218/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=3150300346943188218' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3150300346943188218'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3150300346943188218'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2009/01/asa-notes.html' title='ASA Notes'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-939140748676552331</id><published>2009-01-04T11:59:00.003-05:00</published><updated>2009-01-04T12:00:40.294-05:00</updated><title type='text'>A Wii Bit of Acrimony</title><content type='html'>Visiting my dad's house, we were all immediately addicted to the Nintendo Wii.  So I bought one.  And ever since, the noise level in this house is maddening.  The damned thing has been on all day.  I've had to play sysadmin at least five times and it's just noon.  Plus there's been a lot of yelling and just a little enjoyable game play.&lt;br /&gt;&lt;br /&gt;Why do people like these things so much?   I'm off to the gym.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-939140748676552331?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/939140748676552331/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=939140748676552331' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/939140748676552331'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/939140748676552331'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2009/01/wii-bit-of-acrimony.html' title='A Wii Bit of Acrimony'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-398602554861512618</id><published>2008-12-31T21:34:00.002-05:00</published><updated>2008-12-31T21:57:37.062-05:00</updated><title type='text'>Chilaquiles</title><content type='html'>Oh, man.  This is the best batch of &lt;a href="http://en.wikipedia.org/wiki/Chilaquiles"&gt;chilaquiles&lt;/a&gt; I've ever made, and they're vegetarian!  Lacto-ovo veggie, not vegan.&lt;br /&gt;&lt;br /&gt;If you don't have a deep fryer and a blender, stop. &lt;br /&gt;&lt;br /&gt;24 corn tortillas -- stale ones are best.&lt;br /&gt;42 oz crushed tomatoes&lt;br /&gt;1 medium vidalia onion&lt;br /&gt;1 poblano pepper&lt;br /&gt;15 oz can veggie broth&lt;br /&gt;3 large eggs&lt;br /&gt;6 oz pepperjack cheese, shredded or reduced to itty bitty chunks&lt;br /&gt;garlic powder&lt;br /&gt;salt&lt;br /&gt;black pepper&lt;br /&gt;cumin&lt;br /&gt;paprika&lt;br /&gt;Lots of corn oil.  Reuse it later.&lt;br /&gt;&lt;br /&gt;Pre-heat oven to 350 F.&lt;br /&gt;&lt;br /&gt;Remove pit and seeds from poblano.  Some seeds are OK.  Coarsely chop poblano pepper and onion.  Throw into blender.  Don't spend a lot of time here.  Top with tomatoes and veggie broth.  Liquify, set aside.&lt;br /&gt;&lt;br /&gt;Heat oil to 350 F.  Cut tortillas into sixths or quarters, set aside until oil is hot.&lt;br /&gt;&lt;br /&gt;In a small skillet, scramble eggs, adding black pepper, set aside.&lt;br /&gt;&lt;br /&gt;When oil is hot, add tortillas in batches.  Cook until just about crispy, but not quite.  Empty fried tortillas onto paper towel to soak up grease.  As the tortillas dry, add them to a 13x9" casserole dish.  Repeat as necessary.&lt;br /&gt;&lt;br /&gt;When all tortillas are fried, take a ladle full of hot oil and add directly to a large skillet.  BE CAREFUL.  Heat skillet over high heat.  &lt;br /&gt;&lt;br /&gt;While the skillet is heating, add eggs to tortillas in the casserole dish and mix well.&lt;br /&gt;&lt;br /&gt;When the skillet is hot, add the contents of the mixer, along with garlic powder, salt and pepper, cumin, paprika and paprika to taste.  I used&lt;br /&gt;&lt;br /&gt;- 1 pinch salt&lt;br /&gt;- Maybe a half a teaspoon of black pepper&lt;br /&gt;- About a teaspoon full of paprika.  Yes, that's a lot.&lt;br /&gt;- About a teaspoon of garlic powder&lt;br /&gt;- About a teaspoon of cumin&lt;br /&gt;&lt;br /&gt;Heat mixture until boiling.  Gradually settle to a simmmer.  Your tomato mixture should sputter a bit until you're on medium-low heat.  The idea is to reduce this mixture until the broth and the oil pretty much disappear.  This takes some time.&lt;br /&gt;Add the reduced tomato broth to the tortillas in the casserole dish.  Mix well, and top with pepperjack cheese.  Bake on center rack at 350 F for 30 to 35 minutes, then broil for one minute on low, moving the dish to the top rack.  Serve with refried beans or spanish rice.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-398602554861512618?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/398602554861512618/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=398602554861512618' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/398602554861512618'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/398602554861512618'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/12/chilaquiles.html' title='Chilaquiles'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-5139067176451228190</id><published>2008-12-30T20:50:00.006-05:00</published><updated>2008-12-30T21:29:30.262-05:00</updated><title type='text'>Falling Down on the Job</title><content type='html'>I've had the most interesting runs the last couple of days....  &lt;br /&gt;&lt;br /&gt;On Saturday I broke down.  I hate that.  This breakdown was worse than most, though.  On a 13 miler I got to the last leg of my run and, *boom*, I gave up.  Quadriceps were dead, I had sweat too much and I was HUNGRY.  I had no money, no water sources and it was too late anyway.  I can track it all down to the second-quality running gear I had on.  Don't buy those crappy Reebok mesh shirts.  I tried to make it back down 86th Street without a shirt on but no dice.  Sorry if you saw me.  Runners sometimes melt at 68 degrees Fahrenheit?&lt;br /&gt;&lt;br /&gt;On Sunday I cut my long run short.  I could have done it but maybe I had dead quads.  WTF?  At the end of 14 miles I had more juice.  But if I hadn't, I would have missed the FREE TURNTABLE sitting curbside in my neighbhood!  It's a Dual CS505-2 with at least $40 worth of problems.  Ouch.  I can at least diagnose it for free.  w00t!&lt;br /&gt;&lt;br /&gt;Tonight I could very well have died.  While running south on the Monon Trail a transformer exploded.  Those are always cool to watch.&lt;br /&gt;&lt;br /&gt;(And, by the way, what is it with me and street lights?  They hate me.  I swear that a street light goes out when I'm near it nearly every day.)&lt;br /&gt;&lt;br /&gt;This one?  Not so cool.  The Monon Trail was abandoned railroad territory until 1987, and it was finally turned into trail in 1999.  Because it was probably easement and definitely abandoned railroad territory for a very long time, the telco and power lines are very close to the ground.  When this transformer blew it up poured flaming metal to the ground, all over the trail itself.  &lt;br /&gt;&lt;br /&gt;Thank god it was dark outside, because the explosion may not have been so visible if it were daylight.  I was probably within fifty feet of the pole when the transformer blew.  I stood back and watched the fireworks, then when everything died down somebody's yard was on fire.  I waited a few more seconds, walked up to their fence, yelled over it and nobody answered.  The fire was getting worse by the second, so I jumped over the fence (probably about 5'5" tall) and stomped the fire out.  It actually took a while.  After I saw no smoldering remains, I tried jumping back over the fence and blew it.  Face first -- right into the mud.  Ouch.&lt;br /&gt;&lt;br /&gt;As I fell one of the neighbors caught me and started to chat, just to make sure I wasn't some punk kid, I suppose.  I chatted it up with him and ran on my merry way.  I wasn't even a mile into my run.&lt;br /&gt;&lt;br /&gt;On the way back, Indianapolis Power and Light was on the scene.  I asked them if they were still looking for the blown transformer, thinking I could help out.  "No," they said.  "We have power lines down."&lt;br /&gt;&lt;br /&gt;Wow.  I could have stepped on a downed power line by playing good Samaritan.  I guess I'll know better next time.&lt;br /&gt;&lt;br /&gt;End running.  Begin politics.&lt;br /&gt;&lt;br /&gt;Fuck Israel.  I've always been of the persuasion that Israel is FAR too aggressive.  They fire bullets when Palestinian children throw stones.  They send warplanes when Lebanese launch mortars.  They've turned the Gaza Strip into a de-facto concentration camp, with 70% unemployment rates and complete reliance on international welfare, then claim that Hamas is unreasonable.  But &lt;a href="http://http://www.cnn.com/2008/WORLD/meast/12/30/gaza.aid.boat/index.html?eref=rss_topstories"&gt;this story&lt;/a&gt; is ridiculous.  &lt;br /&gt;&lt;br /&gt;Per capita, for every dollar we spend on some stupid-assed army, Israel spends $1.40.  They are an omen of where our crumbling empire will end.  I wouldn't cry if Syria, Lebanon, Egypt and a revitalized Shiite Iraq flushed Israel into the Mediterranean.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-5139067176451228190?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/5139067176451228190/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=5139067176451228190' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5139067176451228190'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5139067176451228190'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/12/falling-down-on-job.html' title='Falling Down on the Job'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-151986088097311605</id><published>2008-12-26T22:14:00.002-05:00</published><updated>2008-12-26T22:18:53.084-05:00</updated><title type='text'>Contradictions</title><content type='html'>I don't think Mattell had Sunn0))) in mind when they created the &lt;a href="http://www.amazon.com/Barbie%C2%AE-Diamond-Castle-Playset-Doll/dp/B0017KINN8/ref=sr_1_2?ie=UTF8&amp;s=toys-and-games&amp;qid=1230347829&amp;sr=1-2"&gt;Diamond Castle&lt;/a&gt;, but here I am, assembling a playset to the backdrop of &lt;a href="http://surrealdocuments.blogspot.com/2008/11/0-presents-pentemple.html"&gt;Pentemple&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Brilliant.  $399?  C'mon people.  That stuff will be back in stock in a coupla weeks.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-151986088097311605?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/151986088097311605/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=151986088097311605' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/151986088097311605'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/151986088097311605'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/12/contradictions.html' title='Contradictions'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-1043607355374361241</id><published>2008-11-05T21:53:00.003-05:00</published><updated>2008-11-05T21:54:37.649-05:00</updated><title type='text'>Running will not make you look younger</title><content type='html'>Every race shot I've ever seen makes me look old.  Maybe because I'm &lt;a href="http://kswistun.fotki.com/2008/11/chicago-50-50/dsc00763.html"&gt;getting there...&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-1043607355374361241?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/1043607355374361241/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=1043607355374361241' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1043607355374361241'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1043607355374361241'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/11/running-will-not-make-you-look-younger.html' title='Running will not make you look younger'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-3371508448605858398</id><published>2008-11-03T22:46:00.005-05:00</published><updated>2008-11-03T22:53:14.736-05:00</updated><title type='text'>Next...</title><content type='html'>Ok, next up is a marathon, in either Tampa Bay, FL or in Ft. Lauderdale.  Hello, NAIR!  (bad joke.)  But it's a Februrary race.  Perhaps the Dark Horse Crooked Tree IPA has set in.  Perhaps I'm just getting better?  Who knows?&lt;br /&gt;&lt;br /&gt;End result: my goal is now two-fold: faster marathon performance on 2/22/09 or 3/01/09 (both of 'em at 6:00 AM.  WTF?), and either of these races fit into my ultimate training schedule for the 44-mile &lt;a href="http://www.brewtobrew.com/"&gt;Brew-to-Brew&lt;/a&gt; race in April 2009.&lt;br /&gt;&lt;br /&gt;And if John McCain wins this race then fuck Florida.  I'm moving out.&lt;br /&gt;&lt;br /&gt;(post-script: Oh, my!  What a difference 22 hours makes!)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-3371508448605858398?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/3371508448605858398/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=3371508448605858398' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3371508448605858398'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3371508448605858398'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/11/next.html' title='Next...'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-6263417785831774279</id><published>2008-11-02T23:45:00.003-05:00</published><updated>2008-11-03T00:24:25.524-05:00</updated><title type='text'>Chicago 50/50</title><content type='html'>Just a quick post, before I start forgetting things:  finished the Chicago 50k in 4:37:32, which adds up to a miserable 8:55 per mile.  My splits were 1:23, 2:55 and 4:37, or 1:23, 1:32 and 1:42.  I trained slow, I ran slow.  Simple as that.  I need to address these problems by buying some kind of timer, be it a Polar like I want or a cheapo "sportswatch."  Damned money.  Of course, sticking to a plan, with actual speedwork may help, too.&lt;br /&gt;&lt;br /&gt;At 4:37, I did better than I expected to, and I didn't do as well as I initially set out to do.  Based on training experience, I expected a finish time of 5:09.  At first, I eyed 4:20, which was super aggressive but probably attainable.  Running that slow, I still managed to come in 22nd, so I am pleased with my standings.  I am now inspired to train harder for the next race, when I figure out what it will be.  I know I can get my times down to a round eight-minute mile.  I should settle for nothing short of 8:15 for a 50k.&lt;br /&gt;&lt;br /&gt;I've also noticed a trend which I will nip in the bud.  With the finish line in view I was dragging myself along and another runner passed me up with some advice:  "finish strong, man."  I have never finished strong.  I might have thought about it but actually doing it?  I'd just been happy to finish whatever race I did.  Somewhere in mile 30 -- 59th street? -- I had to stop and expel what I had in my stomach, which was nothing, so I pretty much dry-heaved just a few feet off Lake Shore Drive.  I'm sure all the drivers at the red light loved seeing that; sorry if you were one of them.&lt;br /&gt;&lt;br /&gt;"Finish Strong..."  Act like you own the race, even if you're dead last.  Leave it all on the road.  Instead, I was a complete dope and offered up some lame-ass excuse about not feeling up to it?  Who's going to feel well 30 miles in?  From now on I will finish strong.&lt;br /&gt;&lt;br /&gt;Anyway, I have now completed an ultramarathon.  Mission accomplished!  I have had this race in mind for a year and a half, and it took me three races to get it.  Now I hurt like hell.  Either the pain will shake itself out or I'm injured -- it'll be a couple of days, maybe even weeks, before I decide what's next.  For now, the pool is looking mighty inviting...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-6263417785831774279?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/6263417785831774279/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=6263417785831774279' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6263417785831774279'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6263417785831774279'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/11/chicago-5050.html' title='Chicago 50/50'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-8013411081326867927</id><published>2008-10-17T00:12:00.000-04:00</published><updated>2008-10-17T00:13:20.997-04:00</updated><title type='text'>Awesome</title><content type='html'>&lt;a href="http://www.whatsyourpolicy.com/videos/index/5"&gt;'nuff said.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-8013411081326867927?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/8013411081326867927/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=8013411081326867927' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8013411081326867927'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8013411081326867927'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/10/awesome.html' title='Awesome'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-1578383023762617035</id><published>2008-10-15T23:00:00.003-04:00</published><updated>2008-10-15T23:06:29.531-04:00</updated><title type='text'>Broke-assedness is the mother of discovery</title><content type='html'>Today I didn't run, BUT I DID FIX MY OWN BRAKES.  TAKE THAT, PUSSY.  Insert alpha male grunting noises here. &lt;br /&gt;&lt;br /&gt;(I will now have to run on Thursday, Friday, Saturday and Sunday.  Joy.)&lt;br /&gt;&lt;br /&gt;I only had to borrow a jack from a realer man, and his c-clamp THOUGH I WOULD HAVE BOUGHT MY OWN, and I had to refer to this site:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.2carpros.com/how_to/how_to_replace_brakes.htm"&gt;http://www.2carpros.com/how_to/how_to_replace_brakes.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Total cost: $105.00 and that included stuff that I probably didn't need.  Total inflated cost: $140.00 or thereabouts, and I have a work light!  And COKE!&lt;br /&gt;&lt;br /&gt;(And DIET COKE!)&lt;br /&gt;&lt;br /&gt;My favorite though:&lt;br /&gt;&lt;br /&gt;Before driving the vehicle, push the brake peddle down and let it up slowly, repeat until normal brake peddle operation resumes, this operation is forcing the brake pads to travel to the brake rotors. DO NOT DRIVE VEHICLE UNTIL PROPER BRAKE PEDDLE OPERATION IS PRESENT.&lt;br /&gt;&lt;br /&gt;Yeah, I don't read.  That's right.  Instructions are for girly men.  But I did panic when my brakes didn't work and I almost hit my MIINIVAN with my HONDA.&lt;br /&gt;&lt;br /&gt;Oh, and lookie there.  It's pouring rain again.  I guess I'll count myself lucky for not being a dumbass runner in the rain.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-1578383023762617035?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/1578383023762617035/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=1578383023762617035' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1578383023762617035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1578383023762617035'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/10/broke-assedness-is-mother-of-discovery.html' title='Broke-assedness is the mother of discovery'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-525574819570762385</id><published>2008-10-13T23:58:00.019-04:00</published><updated>2008-10-14T00:28:58.046-04:00</updated><title type='text'>GET OFF MY LAWN!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_rXLiJSVUNUg/SPQZCueUBkI/AAAAAAAAAA8/rlx2MWEiYKw/s1600-h/n1519556076_30046313_5677.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_rXLiJSVUNUg/SPQZCueUBkI/AAAAAAAAAA8/rlx2MWEiYKw/s400/n1519556076_30046313_5677.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5256854199673816642" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Here it is: I am now on FACETUBE, YOUBOOK, whatever it is, where retard PANTYWASTES  talk about masturbating with Barack Obama fleshlights.  This picture depicts a very drunk Greg, TAKEN FOURTEEN YEARS AGO, BEFORE 9/11.  That's my wife taking the picture, fuckface.  If you stare one more time, you pervert, I'll bash your face in with a cement block.  I'm old now.  I look like this:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_rXLiJSVUNUg/SPQaRLd6_8I/AAAAAAAAABE/4PUADa1AWII/s1600-h/page-222-03.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_rXLiJSVUNUg/SPQaRLd6_8I/AAAAAAAAABE/4PUADa1AWII/s400/page-222-03.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5256855547486601154" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I have no need for my pictures to be posted on this Internet thing.  TEH INTERNETZ IS FOR PR0N, MORAN!  Get some glue, STOP HUFFING THE GODDAMNED STUFF YOU DIRTY METH JUNKIE and make a photo album.  Be sure to cram this photo album down your great grandchildrens' throats, SIDEWAYS, while you make them fetch your teeth and remind them that in 2008 YOU HAD TO GO WITHOUT BECAUSE GASOLINE COST $1,000 PER OUNCE AND THOSE LAZY MEXICANS WOULDN'T HELP YOU FIGHT THE CHINKS.&lt;br /&gt;&lt;br /&gt;(Jesus Hussein Christ.  I wore my hat backwards and I drank red wine, out of tulip glasses, no less.  But seriously, can't we get over this?)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-525574819570762385?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/525574819570762385/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=525574819570762385' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/525574819570762385'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/525574819570762385'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/10/stupid-kids-get-off-my-lawn.html' title='GET OFF MY LAWN!'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_rXLiJSVUNUg/SPQZCueUBkI/AAAAAAAAAA8/rlx2MWEiYKw/s72-c/n1519556076_30046313_5677.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-6620813420975225680</id><published>2008-10-11T23:36:00.001-04:00</published><updated>2008-10-11T23:37:33.229-04:00</updated><title type='text'>Thank You, Governor Palin</title><content type='html'>So much for &lt;a href="http://www.cnn.com/2008/POLITICS/10/11/campaign.wrap/index.html?eref=rss_topstories"&gt;feminism,&lt;/a&gt; eh?&lt;br /&gt;&lt;br /&gt;Keep digging your own hole...  I'll piss on it when we fill it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-6620813420975225680?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/6620813420975225680/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=6620813420975225680' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6620813420975225680'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6620813420975225680'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/10/thank-you-governor-palin.html' title='Thank You, Governor Palin'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-5399362193385950005</id><published>2008-10-11T23:06:00.004-04:00</published><updated>2008-10-11T23:46:25.344-04:00</updated><title type='text'>Beer Snob</title><content type='html'>Was out earlier tonight (probably 20 minutes earlier), buying beer.  I buy too much beer.  In my neighborhood, there's a Payless Liquors, a 21st Amendment Liquors and another little package shop that's a bit farther out of the way.  In fact, I think it's called United Package Liquors.  This one is the best place to buy beer.&lt;br /&gt;&lt;br /&gt;Browsing through the cooler aisle there were quite a few good selections: &lt;a href="http://www.bruggebrasserie.com/"&gt;Brugge's&lt;/a&gt; offerings, which are probably overpriced and are popping up everywhere.  Also, Sierra Nevada has just released their &lt;a href="http://www.sierranevada.com/beers/harvest.html"&gt;harvest ale&lt;/a&gt;, and I tend to like their seasonals but one beer popped out and said, "&lt;a href="http://www.stonebrew.com/12th/ale/"&gt;Drink me!&lt;/a&gt;"&lt;br /&gt;&lt;br /&gt;Still, I hesitated, then some dude in the store says, "Shit!  That's an eight dollar six-pack!"  I chuckled.  It was Budweiser's American Ale. 5.2% ABV?  2.88 rating on ratebeer.com, though.  Better than I'd have thought they'd get.  So I told him, "don't buy that."  &lt;br /&gt;&lt;br /&gt;"Oh?"&lt;br /&gt;&lt;br /&gt;"Yeah," I said.  "It's still Budweiser.  They're trying to compete with these guys [the micros] but at the end of the day they have a lot of catching up to do."  Never mind that the big breweries still brew some of the smaller guys' batches.  After all, how else can you ship product if you're ill-equipped?  You'd figure that Anheuser-Busch would have stolen a few ideas.  Maybe that's how they got a 2.88 rating?&lt;br /&gt;&lt;br /&gt;"Beer prices have gone up!  Rolling Rock used to cost $6.00 a six-pack," he said.  Maybe they have?  It was $6.29.  &lt;br /&gt;&lt;br /&gt;"Yeah, that's because hops have gone up, so even the guys who don't brew beer with hops anymore are charging extra.  There have been a few bad years for hops.  If you want to capitalize on the hops shortage and get the most bang for your buck, try this."  I directed him to the Stone 12th.&lt;br /&gt;&lt;br /&gt;"Damn!  That's an $8.00 bottle of beer," he exclaimed.  "Will it give you a buzz?"&lt;br /&gt;&lt;br /&gt;"It's worth every penny."  I pointed to the 9.2% ABV label on the beer.  I'm glad there were two bottles because we both picked one up.  I left the store.  "Ha, he's ruined," I thought.  After all, we were both drinkers, right?  We were in it to catch the buzz.  At the stop light I realized I had been less than thorough, so I had to pull a U-Turn and catch him before he disappeared.&lt;br /&gt;&lt;br /&gt;"You bought that $8.00 bottle of beer, right," I asked.&lt;br /&gt;&lt;br /&gt;"Yeah."&lt;br /&gt;&lt;br /&gt;"Don't drink that out of the bottle.  Wait 'til you get home and find some glassware with a wide mouth.  Let it get some air."  &lt;br /&gt;&lt;br /&gt;He immediately nodded.  "I was going to open this up on the way home."&lt;br /&gt;&lt;br /&gt;"See?  Your first impression of good beer would have been ruined," I replied.  "You would have wasted your $8.00 bottle of rare beer."&lt;br /&gt;&lt;br /&gt;One of two things will happen.  Either he will appreciate this beer, and in that case he IS ruined, or it will be too stout for him, but he'll finish it.  Either way, we'll both catch a nice beer buzz tonight.  Will we both understand, though?  Here's to ruination.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-5399362193385950005?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/5399362193385950005/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=5399362193385950005' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5399362193385950005'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5399362193385950005'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/10/beer-snob.html' title='Beer Snob'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-5426174522539331261</id><published>2008-10-09T22:39:00.001-04:00</published><updated>2008-10-09T22:41:37.957-04:00</updated><title type='text'>Brew to Brew 43.5 mile run</title><content type='html'>This race is near Kansas City, which was OK but I really want to spend some time in Lawrence.&lt;br /&gt;&lt;br /&gt;It crosses two states.&lt;br /&gt;&lt;br /&gt;"Tattoos are extra."&lt;br /&gt;&lt;br /&gt;It begins and ends at breweries.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.brewtobrew.com/"&gt;How can I pass it up?&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-5426174522539331261?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/5426174522539331261/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=5426174522539331261' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5426174522539331261'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5426174522539331261'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/10/brew-to-brew-435-mile-run.html' title='Brew to Brew 43.5 mile run'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-3649956314717884075</id><published>2008-10-07T23:51:00.007-04:00</published><updated>2008-10-08T00:28:11.017-04:00</updated><title type='text'>Gratitude</title><content type='html'>I watched the presidential debates tonight, and Hopey said, "first, whassyrname, we owe you our gratitude for your service to this country..."&lt;br /&gt;&lt;br /&gt;A lot of people who read this post will be offended.  Just warning you now, but I will not apologize for what I'm about to say.  We do NOT owe soldiers our gratitude, simply because they spent a few years in the military.  To "serve" our country implies that you did something useful.&lt;br /&gt;&lt;br /&gt;We owe our soldiers respect.  Our pity.  Our sympathy.  And, ABSOLUTELY, our support.  Our gratitude?  Not always.  Certainly not now.&lt;br /&gt;&lt;br /&gt;Let's say you were on fire, as America was on 9/12/01.  We had one choice then: put the fire out.  Somehow we made two choices, though: first, we doused the fire in Afghanistan and we toppled their country, putting our own leader, Karzai, in place.&lt;br /&gt;&lt;br /&gt;The second choice we made though?  Absolutely ludicrous.  We stood by and watched while the PATRIOT act was legitimized.  Infinitely worse, we stood by while Iraq was propped up as the latest ploy in our trickle-down, military-industrial orgy.  All of us, soldiers included, either stood by or actively tilted the can of gasoline onto the flames.&lt;br /&gt;&lt;br /&gt;There were few terrorists in Iraq before we invaded.  There are 25 MILLION potential terrorists of Iraqi origin now.  It only took 19 of them to alter the course of America, and it will only take a dozen or so more to invalidate our constitution.&lt;br /&gt;&lt;br /&gt;I do not owe ANY gratitude to someone solely on grounds that he has fought, or is fighting, in Iraq.  Many of you did not make a conscious choice to fight in Iraq.  I understand that, and I'll be damned if your sacrifices are in vain.  There are plenty of organizations out there who will help you out.  We should all contribute.  We owe you our respect, our support and our pity for being wrapped up in a war that has accomplished NOTHING.  &lt;br /&gt;&lt;br /&gt;Some of you DID know what you were getting into.  You were wrong.  Fighting in Iraq is a shitty job which I wouldn't do for $1M per year.  You took the opportunity for peanuts.  So much contrary evidence has come out now that you either didn't try to know, or didn't care.&lt;br /&gt;&lt;br /&gt;Subversive use of language pisses me off.  Our inability to overcome tricks played by both parties pisses me off more.  &lt;br /&gt;&lt;br /&gt;(oh, P.S., marine dude: serving in peacetime IS service to our country.  Service during peacetime is a 50/50 gamble: will we fight a war in the next six years or no?  Maybe you got lucky.  Maybe you didn't.)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-3649956314717884075?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/3649956314717884075/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=3649956314717884075' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3649956314717884075'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3649956314717884075'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/10/gratitude.html' title='Gratitude'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-2543138372316107007</id><published>2008-10-05T22:01:00.002-04:00</published><updated>2008-10-05T23:03:42.175-04:00</updated><title type='text'>Two weekends, two marathons</title><content type='html'>&lt;iframe src="http://js.mapmyfitness.com/embed/blogview.html?r=f09973b03ce095e00423950ad8b77996&amp;u=e&amp;t=run" height="700px" width="100%" frameborder="0"&gt;&lt;a href="http://www.mapmyrun.com/run/united-states/in/indianapolis/462341278566"&gt;Chicago Lakefront 50k Training&lt;/a&gt;&lt;br/&gt;&lt;a href="http://www.mapmyrun.com/find-run/united-states/in/indianapolis"&gt;Find more Runs in Indianapolis, Indiana&lt;/a&gt;&lt;/iframe&gt;&lt;!-- MMF PARTNER TOOL --&gt;&lt;br /&gt;&lt;br /&gt;Well, I knew I'd get here in the course of training for the &lt;a href="http://www.chicagoultra.org/"&gt;Chicago Lakefront 50/50.&lt;/a&gt;  Six months ago, running two marathons in two weeks was out of the question.  These runs are just training, and I'm SLOW to boot, but I've put 54.5 miles on my feet in two long runs.&lt;br /&gt;&lt;br /&gt;I"m not sure I want to do this again :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-2543138372316107007?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/2543138372316107007/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=2543138372316107007' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2543138372316107007'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2543138372316107007'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/10/two-weekends-two-marathons.html' title='Two weekends, two marathons'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-7024450679425213387</id><published>2008-10-01T14:02:00.002-04:00</published><updated>2008-10-06T17:43:34.003-04:00</updated><title type='text'>Perl the way it should be</title><content type='html'>I have written this exact thing in perl so many ways, and none of them were two lines long:&lt;br /&gt;&lt;br /&gt;use Date::Calc qw(Today);&lt;br /&gt;print $blah = sprintf ("%4d%02d%02d", Today(time));&lt;br /&gt;&lt;br /&gt;Laugh all you want.  I like it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-7024450679425213387?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/7024450679425213387/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=7024450679425213387' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7024450679425213387'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7024450679425213387'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/10/perl-way-it-should-be.html' title='Perl the way it should be'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-6969053322688634933</id><published>2008-09-23T19:46:00.004-04:00</published><updated>2008-09-23T19:57:58.060-04:00</updated><title type='text'>SANS iGoogle "Widget"</title><content type='html'>A while ago I subscribed to a SANS iGoogle "Gadget", which is just an RSS feed of their daily security blog.  I used to subscribe to SANS, SecurityFocus, Bugtraq, et al, then I would shamefully discard my daily e-mails with the rest of the rubbish in my inbox every morning.  Instead, this little gadget sits in the middle of my home page, and I look at it when I get time, which really is once per day.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.google.com/ig/directory?q=SANS&amp;root=%2Fig&amp;dpos=top&amp;url=iscxml.sans.org/rssfeed.xml"&gt;http://www.google.com/ig/directory?q=SANS&amp;root=%2Fig&amp;dpos=top&amp;url=iscxml.sans.org/rssfeed.xml&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The gadget isn't the most comprehensive source of computing security info on the net, but I've found countless worthwhile links, like this one:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://packetlife.net/cheatsheets/"&gt;http://packetlife.net/cheatsheets/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;How often do you think of the intricacies of Multiple Spanning Tree?  Never.  Looking up the cheat sheet just for fun, though, I recall setting up MST and load balancing traffic between IST regions.  I'll keep this little link around for when I need ideas, and I'm going to pass it off to my NOC guys, who hopefully will appreciate the chance to geek out.&lt;br /&gt;&lt;br /&gt;Oh yeah, Old Man Gloom kills.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-6969053322688634933?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/6969053322688634933/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=6969053322688634933' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6969053322688634933'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6969053322688634933'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/09/sans-igoogle-widget.html' title='SANS iGoogle &quot;Widget&quot;'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-239752817450376286</id><published>2008-09-21T01:52:00.002-04:00</published><updated>2008-09-21T01:55:42.426-04:00</updated><title type='text'>A meal fit for a...</title><content type='html'>Today I woke up and I ate a package of pop tarts.  Then I drank a fair amount of coffee: not too much, mind you, because I needed to stay hydrated.  Later, I had a couple pieces of toast.  White bread, with real butter.&lt;br /&gt;&lt;br /&gt;Add a sour cream and chives baked potato at 12:00 PM and I was good!  At 6:00 I started my run.  24 miles.  After running 24 miles I never want to eat, so I made one of those protein drink thingies, grabbed Starbucks and drove back to Indianapolis from Michigan City.&lt;br /&gt;&lt;br /&gt;At 1:52 AM I have arranged:&lt;br /&gt;&lt;br /&gt;- Bush's baked beans&lt;br /&gt;- Beef franks.&lt;br /&gt;&lt;br /&gt;Hell yeah.  This may be the best meal ever.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-239752817450376286?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/239752817450376286/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=239752817450376286' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/239752817450376286'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/239752817450376286'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/09/meal-fit-for.html' title='A meal fit for a...'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-2106704219254016479</id><published>2008-09-18T22:16:00.001-04:00</published><updated>2008-09-18T22:16:55.405-04:00</updated><title type='text'>Republican Anti-Intellectualism is so tired</title><content type='html'>&lt;a href="http://hoosiersformccain.blogspot.com/2008/09/you-choose.html"&gt;Really?&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-2106704219254016479?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/2106704219254016479/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=2106704219254016479' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2106704219254016479'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2106704219254016479'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/09/republican-anti-intellectualism-is-so.html' title='Republican Anti-Intellectualism is so tired'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-4221430860587593303</id><published>2008-09-15T23:45:00.005-04:00</published><updated>2008-09-16T00:39:54.842-04:00</updated><title type='text'>John McCain thinks you're stupid</title><content type='html'>Two of John McCain's advisors, Phil Gramm and now Donald Luskin, have told us all to &lt;a href="http://www.washingtonpost.com/wp-dyn/content/article/2008/09/12/AR2008091202415.html"&gt;shut up&lt;/a&gt; and &lt;a href="http://www.nytimes.com/2008/07/11/us/politics/11campaign.html"&gt;quit whining&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Mr. Luskin thinks you're an idiot.  John McCain thinks his advisors are the smartest people on earth.  What business do YOU have perpetuating our mental recession?  Get back in line, friggin' terrorist.&lt;br /&gt;&lt;br /&gt;Of course, the column that came out yesterday was chock full of STATISTICS.  Luskin's article, beyond being flat wrong in many places, is misleading.  Of course, it's COMPLETELY valid to compare snapshots of hand-picked economic indicators to *similar* hand-picked economic data points during Clinton's reign of terror.  Everyone remembers how bad 1999 was, right?&lt;br /&gt;&lt;br /&gt;Personally, my recent career change, my first in nearly a decade, means that my own personal savings rate is now pegged with the national average (around 2.75%), and it's pissing me off.  I was stashing away 12% but to move to preserve my own sanity (and my paycheck!) I had to settle: health care or retirement?  As for my savings from my 20's?  I'm afraid to look.&lt;br /&gt;&lt;br /&gt;Unfortunately, those economic indicators are calculated regularly.  Rather than citing a few blips of data on an otherwise blank slate, Mr. Luskin is guilty of &lt;a href="http://www.realtor.org/wps/wcm/connect/874598004ad3d9c59b84fb1b407934f1/research__MSAPrice081408.pdf?MOD=AJPERES&amp;CACHEID=874598004ad3d9c59b84fb1b407934f1&amp;CACHEID=4a472e004ad389f29b69df0517252576&amp;CACHEID=4a472e004ad389f29b69df0517252576"&gt;lying&lt;/a&gt; &lt;a href="http://bp1.blogger.com/_pMscxxELHEg/R1hL6zRwQuI/AAAAAAAABTw/ZvDWIIhGTnA/s320/MBAMortgageDelinquency.jpg"&gt;outright&lt;/a&gt; and by &lt;a href="http://www.bea.gov/briefrm/saving.htm"&gt;omission&lt;/a&gt;.  Mr. Luskin's data plots along a graph and exposes that he's full of shit.  &lt;br /&gt;&lt;br /&gt;Remember, &lt;a href="http://finance.yahoo.com/echarts?s=FNM#chart1:symbol=fnm;range=my;indicator=volume;charttype=line;crosshair=on;ohlcvalues=0;logscale=on;source=undefined"&gt;Fannie Mae&lt;/a&gt; could skyrocket 30% tomorrow and in the end it'd be worth $0.92 a share.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-4221430860587593303?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/4221430860587593303/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=4221430860587593303' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/4221430860587593303'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/4221430860587593303'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/09/john-mccain-thinks-youre-stupid.html' title='John McCain thinks you&apos;re stupid'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-8091136482693419964</id><published>2008-09-14T03:23:00.003-04:00</published><updated>2008-09-18T22:17:34.854-04:00</updated><title type='text'>Dick Polman</title><content type='html'>I have read my first post from Dick Polman's blog and....wow.  I envy those who are astute enough to read between the lines in a conversation.  I'm so gullible that I'd bet on the Washington Generals if someone told me they'd win.  Mr. Polman's ability to analyze every phrase in a sentence mystifies me, and he gets it, dead on.&lt;br /&gt;&lt;br /&gt;Maybe I'm being too nice.  I've just read his blog for the first time but if he keeps it up I may actually take the time to figure out how to add him to my "blog roll."&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.philly.com/philly/blogs/americandebate/"&gt;http://www.philly.com/philly/blogs/americandebate/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-8091136482693419964?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/8091136482693419964/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=8091136482693419964' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8091136482693419964'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8091136482693419964'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/09/dick-polman.html' title='Dick Polman'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-1385300584664024035</id><published>2008-09-04T00:07:00.003-04:00</published><updated>2008-09-04T00:22:17.028-04:00</updated><title type='text'>Veepspeek</title><content type='html'>Let's see if I can remember the Palin speech:&lt;br /&gt;&lt;br /&gt;- Smalltalkish biography.  No controversy&lt;br /&gt;- Bash Obama&lt;br /&gt;- Drill for oil now!&lt;br /&gt;- Terrists!&lt;br /&gt;- Bash Obama&lt;br /&gt;- Obama wants to tax baby Jesus&lt;br /&gt;- POW&lt;br /&gt;- Bring out Levi Johnston&lt;br /&gt;&lt;br /&gt;This wouldn't be the first time two blog entries on the same page contraindicate each other.  Palin is toast.&lt;br /&gt;&lt;br /&gt;And since I'm on the political bent....&lt;br /&gt;&lt;br /&gt;For the past two years I've walked my daughter to our neighborhood playground we've had to pass this wingnut's house, where he prominently displays a "STOP THE INVASION!  SECURE OUR BORDERS!" sign above his front door.  He hates brown people.  This is Indiana.  Whatevs.&lt;br /&gt;&lt;br /&gt;Recently he's been laid off, I guess.  New signs are popping up:&lt;br /&gt;&lt;br /&gt;"I'm a bitter gun owner, and I vote!"&lt;br /&gt;"NOBama '08"&lt;br /&gt;&lt;br /&gt;Blah blah blah.  Then, today, my wife asks me, "what's up with the flag in his yard?"  What flag?  On the walk back, I cross the street to look.  Our patriot has hung a reproduction of the American flag upside down, written "Country in Distress!" and adorned it with yet more "No Obama!" logos.&lt;br /&gt;&lt;br /&gt;So I wrote him a letter.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;To whomever you are,&lt;br /&gt;&lt;br /&gt;Please review a copy of United States Code Section 4 Chapter 1, Paragraph 8: Respect for the Flag, attached.  I’ve taken the liberty of highlighting the relevant bits for you.&lt;br /&gt;&lt;br /&gt;Disrespecting the American flag is hardly the way of getting your point across in a constructive manner.  There are many opportunities for an inventive person such as yourself to get involved and do something you believe is right for our country.  Besides, you haven’t even lost yet.  You’re hardly in dire times.  The tides are turning; we’re all drifting into a big, gay, Mexican peace and love orgy but the beauty of our republic is that the power shifts from decade to decade.  You still have time to do something about this year’s election rather than using your yard as a soapbox. &lt;br /&gt;&lt;br /&gt;George W. Bush inspired me to hit the streets every two years.  Let’s hope Barack Obama can do the same for you.&lt;br /&gt;&lt;br /&gt;I also hope you’ll come to your senses soon and realize, as a responsible gun owner, that announcing your possessions to passers-by is foolhardy, and quite possibly dangerous.  Please stop advertising that your house holds the free guns to our city’s criminals.&lt;br /&gt;&lt;br /&gt;This is America.  Love it or leave it.  I look forward to seeing you at the polls.&lt;br /&gt;&lt;br /&gt;                        Sincerely, my signature, me and my address&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;"This is America.  Love it or leave it."  Who's the bitch NOW?  I mean, seriously, wingnuts are about to lose their first election in eight years, and disrespect to the flag is what we witness?  Grow up.  We dealt with your shitty farces of elections two terms in a row and we responded responsibly, by nominating a black man for the highest office.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-1385300584664024035?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/1385300584664024035/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=1385300584664024035' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1385300584664024035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1385300584664024035'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/09/veepspeek.html' title='Veepspeek'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-5177184492224705762</id><published>2008-09-01T10:16:00.002-04:00</published><updated>2008-09-01T10:18:55.389-04:00</updated><title type='text'>86.43....</title><content type='html'>Mon 19.87&lt;br /&gt;Tue 5&lt;br /&gt;Wed 9.34&lt;br /&gt;Thu 13.2&lt;br /&gt;Fri 9.1&lt;br /&gt;Sat 9.06&lt;br /&gt;Sun 20.86&lt;br /&gt;&lt;br /&gt;At this point in my hobby I am not ready to play in this league.  I'm looking forward to two days off and an easy 64 mile week.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-5177184492224705762?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/5177184492224705762/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=5177184492224705762' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5177184492224705762'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5177184492224705762'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/09/8643.html' title='86.43....'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-3012939175237354623</id><published>2008-08-29T14:11:00.003-04:00</published><updated>2008-08-29T14:34:34.005-04:00</updated><title type='text'>Palin</title><content type='html'>I am getting edgier about Obama's choice of veep candidate.  Kathleen Sebelius was elected Governor in a state where &lt;a href="http://www.cnn.com/2005/EDUCATION/11/08/evolution.debate.ap/"&gt;"Intelligent Design"&lt;/a&gt; is taught in schools. Social conservatism still has a fighting chance?  Pshaw.  Their governor is a Democratic two-termer.  There's hope for Kansas, yet.&lt;br /&gt;&lt;br /&gt;Sebelius has exploited &lt;a href="http://www.realclearpolitics.com/articles/2008/08/whats_wrong_with_kansas_republ.html"&gt;fragments&lt;/a&gt; in the Kansas GOP to block stupid ideas like clean coal. That she was coming to the end of her second term means that Dems had nothing to lose.  As sober as we are about losing this bid, I'm more and more convinced that today points out just how bad Obama's choice could be:  so what if it's obvious we stacked the deck with the most gratiuitous ticket ever?  McCain scored a huge victory after announcing Palin and I won't be surprised to find this race neck and neck in the next two weeks.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-3012939175237354623?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/3012939175237354623/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=3012939175237354623' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3012939175237354623'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3012939175237354623'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/08/palin.html' title='Palin'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-5315688397963151107</id><published>2008-08-26T00:04:00.002-04:00</published><updated>2008-08-26T00:05:21.974-04:00</updated><title type='text'>Cisco Partner Central</title><content type='html'>&lt;a href="http://www.cisco.com/web/partners/tools/quickreference/index.html"&gt;http://www.cisco.com/web/partners/tools/quickreference/index.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-5315688397963151107?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/5315688397963151107/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=5315688397963151107' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5315688397963151107'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5315688397963151107'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/08/cisco-partner-central.html' title='Cisco Partner Central'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-6979439185078130445</id><published>2008-08-25T22:37:00.005-04:00</published><updated>2008-08-25T22:58:08.166-04:00</updated><title type='text'>146th St.</title><content type='html'>146th St. is tougher than it looks:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_rXLiJSVUNUg/SLNs8jxPNpI/AAAAAAAAAAU/ai_vqKWsa4w/s1600-h/up.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_rXLiJSVUNUg/SLNs8jxPNpI/AAAAAAAAAAU/ai_vqKWsa4w/s400/up.png" alt="" id="BLOGGER_PHOTO_ID_5238650579211728530" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Somewhere around mile 6 I hopped on from Gray Rd.  Miles 6 - 10 I'd consider "rolling," with a slight headwind, no major gusts, ENE.  Very odd for us to have an easterly wind.  Thank you, Fay.  Mile 10 happened to strike directly on railroad tracks within a stone's throw of Indiana Highway 37 but the sidewalks stopped so I decided not to press my luck.  That was the turnaround point.&lt;br /&gt;&lt;br /&gt;Miles 10-17 were brutal.  I was low on fluids, as I didn't have time to stash any at the halfway point.  The gentle headwind which helped cool me off was now a tailwind of negligible proportions and I was running uphill, into the sun for six miles.  Thankfully today never got too hot: 78 tops.  Someone from hillier regions will read this and laugh, but I actually found myself cursing by the time I headed south for the last leg of my jaunt.  By the time I reached Rohrer Road, otherwise known as the north end of the Monon Greenway, I was quite thankful.  Half a mile in I stopped at the Rohrer Rd. access point, refilled the water bottle I was carrying and got my fill, taking off from a dead stop at 17 miles.  Should have done this last night.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-6979439185078130445?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/6979439185078130445/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=6979439185078130445' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6979439185078130445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6979439185078130445'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/08/146th-st.html' title='146th St.'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_rXLiJSVUNUg/SLNs8jxPNpI/AAAAAAAAAAU/ai_vqKWsa4w/s72-c/up.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-1158443306038583823</id><published>2008-08-24T23:32:00.004-04:00</published><updated>2008-08-24T23:43:04.169-04:00</updated><title type='text'>Biden</title><content type='html'>I am thrilled that Joe Biden could be my vice president.  He scores 91% on the ACLU scorecard -- just to the right of Russ Feingold.  It's about damn time we embrace our lefty principles.  I do hope that McCain doesn't trump us and choose some pro-lifer like Sarah Palin.  People really are dumb enough to fall for it, I fear.&lt;br /&gt;&lt;br /&gt;(And no, I wasn't a Clintonite.  I know how to pick 'em.  I donated all my cash this year to John Edwards and I've sent some to Elliot Spitzer in the past.)&lt;br /&gt;&lt;br /&gt;Grr.  It's 11:42 PM and I'm finally done working.  I had other plans....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-1158443306038583823?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/1158443306038583823/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=1158443306038583823' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1158443306038583823'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1158443306038583823'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/08/biden.html' title='Biden'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-3664539332640608359</id><published>2008-08-20T00:52:00.007-04:00</published><updated>2008-08-20T01:12:09.948-04:00</updated><title type='text'>weight lifting forums</title><content type='html'>I lift weights because it was a promise I made to myself while training for the last marathon.  I haven't been lifting long: four months, tops.  Now I'm drinking a beer and I have elbow pain after a 12 oz. curl.  Whaddup?&lt;br /&gt;&lt;br /&gt;As I am a true bonehead, my remedy is to Google my pain and someone will post a solution that says what I want to hear.  Note: I lifted tonight, shortening my reps from fifteen to ten, and I got my ass kicked on the overhead press, again.  (sigh...)  Wow, I have run smack dab into the txt msg culture.  For instance:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;iono why but when i do pushups i look straight ahead and do them...even if i only do about 10 pushups it still hurts...so u guys think this is serious?&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Seriously?  "Iono?"  Since when has Rocky Balboa established inroads to our vernacular?  When I was twelve, I lived with two body builders.  In 1989 they were into that crap (the Governator, Sylvester Stallone, etc.) long after its expiration date.  I am now reminiscing the bad days of IROCs, speedos and bodybuilder music.  Yes, there is bodybuilder music.  No, you don't want to hear it.&lt;br /&gt;&lt;br /&gt;Runners are much more articulate.  By the way, where the hell is my latest edition of Runners' World?  Speaking of running (and I always do), starting today my mininum contribution is nine miles per day.  Fun.  At least I broke the cherry on my second pair of Brooks Glycerin 5's today.  Today was nine miles of pure heaven.&lt;br /&gt;&lt;br /&gt;(If you find a pair of Brooks Glycerin 5's in size 13, please let me know.  They're getting harder to find nowadays and the Glycerin 6's just don't cut it.)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-3664539332640608359?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/3664539332640608359/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=3664539332640608359' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3664539332640608359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3664539332640608359'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/08/weight-lifting-forums.html' title='weight lifting forums'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-7551825339065346988</id><published>2008-08-13T00:37:00.003-04:00</published><updated>2008-08-13T02:17:08.490-04:00</updated><title type='text'>It's 2:00 AM and I have blown yet another evening</title><content type='html'>I have been ALL ABOUT Motorhead's "Overkill" lately.  I don't care if Lemmy Kilminster ran over your cat.  I don't care if he smacked your mama.  You should worship him because he is GOD.&lt;br /&gt;&lt;br /&gt;If it weren't for Lemmy, your dad's pot dealer wouldn't have gotten involved with the harder drugs.  The wild cocaine party your parents had in the 70's never would have happened and you wouldn't be here today.  With all due respect to Mr. Kilminster, I present "Limb From Limb."  Go forth, buy this shit and rock the fuck out.&lt;br /&gt;&lt;br /&gt;&lt;object width="320" height="266" class="BLOG_video_class" id="BLOG_video-f450a7004201331e" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="movie" value="http://www.youtube.com/get_player"&gt;&lt;param name="bgcolor" value="#FFFFFF"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="flashvars" value="flvurl=http://v15.nonxt4.googlevideo.com/videoplayback?id%3Df450a7004201331e%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1330221973%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D5FA091386A89CDE95C501F3B5840769AF6EF1737.63D67B0BA9299B7C9F539810CCB2CB8E3042805A%26key%3Dck1&amp;amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3Df450a7004201331e%26offsetms%3D5000%26itag%3Dw160%26sigh%3Dl8ODGFdJ6JOMCLSlIpqgo1xjvw4&amp;amp;autoplay=0&amp;amp;ps=blogger"&gt;&lt;embed src="http://www.youtube.com/get_player" type="application/x-shockwave-flash"width="320" height="266" bgcolor="#FFFFFF"flashvars="flvurl=http://v15.nonxt4.googlevideo.com/videoplayback?id%3Df450a7004201331e%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1330221973%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D5FA091386A89CDE95C501F3B5840769AF6EF1737.63D67B0BA9299B7C9F539810CCB2CB8E3042805A%26key%3Dck1&amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3Df450a7004201331e%26offsetms%3D5000%26itag%3Dw160%26sigh%3Dl8ODGFdJ6JOMCLSlIpqgo1xjvw4&amp;autoplay=0&amp;ps=blogger"allowFullScreen="true" /&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-7551825339065346988?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='enclosure' type='video/mp4' href='http://www.blogger.com/video-play.mp4?contentId=f450a7004201331e&amp;type=video%2Fmp4' length='0'/><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/7551825339065346988/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=7551825339065346988' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7551825339065346988'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7551825339065346988'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/08/its-200-am-and-i-have-blown-yet-another.html' title='It&apos;s 2:00 AM and I have blown yet another evening'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-2392365758087083029</id><published>2008-08-12T23:15:00.006-04:00</published><updated>2008-08-12T23:48:05.845-04:00</updated><title type='text'>On being a girl...</title><content type='html'>Someday I will actually have upper body strength.  Until then I will continue to embarrass myself at the YMCA.  I am but a lowly milquetoast.  I am lowest in the pecking order; the harmless herbivore, while the "kings of the jungle" roar over in the free weights.&lt;br /&gt;&lt;br /&gt;My nemesis at the gym is the overhead press machine.  I started out at the featherweight level, being a gangly computer nerd and all, lifting just 40 pounds.  Seriously, middle aged women press more than that.  It killed me.  In five months I've managed to *almost* double my weight, though 80 pounds is still laughable.  I don't know how similar overhead presses are to bench presses, but I think they're almost equivalent.  If I chucked 40 lbs. onto the bar on the free weights, those meatheads would give me a wedgie.&lt;br /&gt;&lt;br /&gt;Lately I've had serious problems with the overhead press machine.  A few times I've been able to do my normal routine: three sets of fifteen repetitions.  Today?  I'm just glad nobody watched.  The first two went ok, though by the end of set number two I'm sure I was making all sorts of contorted faces.  I know I was abandoning form.&lt;br /&gt;&lt;br /&gt;On the third set I failed to hit the top of the "range of motion indicator."  Yes, I need the machines with the little electronic gizmos to keep me in line.  You tough guys don't.  Anyway, because I failed and the counter just *had* to hit ten I did a set of eleven.  It was miserable, and I was disappointed in myself for not doing the full fifteen.  When plan A fails plan B kicks in: two sets of 15 and two sets of ten.&lt;br /&gt;&lt;br /&gt;Set number four was a mistake.  I came right off the shoulder press machine and decided, "hey, let's play around with the deltoid machine!"  Did a set of fifteen of those and by the end I really felt it.  I went immediately to the overhead press because some girl occupied the next slot in my rotation.&lt;br /&gt;&lt;br /&gt;One...twoo....mmhph...three....fooooooour.....psssslbt.  Done.  &lt;br /&gt;&lt;br /&gt;Four.&lt;br /&gt;&lt;br /&gt;Really?&lt;br /&gt;&lt;br /&gt;I got up, tail between my legs.  Walked around for a while, felt burning in my arms and then I got pissed.  I continued my circuit, but after the hip abduction set I attacked again.&lt;br /&gt;&lt;br /&gt;One. Two. Three. Four. Five....Six....Seeven...Eeeeight....N-i-n-e....&lt;br /&gt;&lt;br /&gt;On the last rep my legs chipped in because my arms would do no more.  The machine tilted back and finally my brain caught on to my illegal maneuver.  Before I flipped over backwards I got the signal.  "Hey dummy!  Stop that at once!"&lt;br /&gt;&lt;br /&gt;Next time I lift I'll see the greeting: "Last workout 80 lbs 9."  I'll be upset with myself right from the start.  This problem is starting to resemble *those* issues, where it's all in your head.  Performance anxiety in the gym.  Jeez.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-2392365758087083029?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/2392365758087083029/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=2392365758087083029' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2392365758087083029'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2392365758087083029'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/08/on-being-girl.html' title='On being a girl...'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-3383076394129709505</id><published>2008-08-11T00:36:00.004-04:00</published><updated>2008-08-11T01:10:55.798-04:00</updated><title type='text'>78.89</title><content type='html'>This is what an 80 mile week looks like:&lt;br /&gt;&lt;br /&gt;Monday: 18&lt;br /&gt;Tuesday: 4&lt;br /&gt;Wednesday: 13&lt;br /&gt;Thursday: 8.34&lt;br /&gt;Friday: 8&lt;br /&gt;Saturday: 8&lt;br /&gt;Sunday: 21&lt;br /&gt;&lt;br /&gt;Total: 80.34&lt;br /&gt;&lt;br /&gt;Shorten Tuesday to 2.55 and I ran 78.89 miles this week.  That extra one (21) today was unexpected because Indyparks doesn't have a 10 mile marker on the &lt;a href="http://www.indygreenways.org/monon/monon.htm"&gt;Monon Trail&lt;/a&gt;, and I ran it from the tip of Marion County to the end, at 10th Street and back.&lt;br /&gt;&lt;br /&gt;Considering my longest mileage per week used to be 66 and change, I'll settle.  Most importantly, I've managed to log *some* distance seven days in a row.&lt;br /&gt;&lt;br /&gt;Some people claim that bumping from a 60 mile week to an 80 mile week is beneficial.  This week is a fluke since I failed my long run last week, but who knows?  Considering I did it once, here's a "hypothetical" schedule to follow for the rest of this training session:&lt;br /&gt;&lt;br /&gt;Monday: lift, 6 &lt;br /&gt;Tuesday: 8-10&lt;br /&gt;Wednesday: long x .66, hilly&lt;br /&gt;Thursday: lift, 6&lt;br /&gt;Friday: 8-10, intervals&lt;br /&gt;Saturday: lift?, 8-10&lt;br /&gt;Sunday: long&lt;br /&gt;&lt;br /&gt;Assume long is greater than 20 miles, which it almost certainly will be from here through October.  The minimum I can log at this rate is 69 miles; not too shabby.  The longest possible week is 88, assuming I run the maximum distance, plus a 28 mile long run.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-3383076394129709505?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/3383076394129709505/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=3383076394129709505' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3383076394129709505'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3383076394129709505'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/08/7789.html' title='78.89'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-2365014637483807061</id><published>2008-08-04T16:13:00.006-04:00</published><updated>2008-08-04T16:43:27.305-04:00</updated><title type='text'>ID3 tags</title><content type='html'>To whomever tags songs upon an album's release (hip hop people take note!)....&lt;br /&gt;&lt;br /&gt;Some of us who consume music actually SEARCH BY ARTIST, then by album.  If I'm looking for Beck's work, in this instance his new album, "Modern Guilt," I'm looking for Beck, NOT "Beck Feat. Cat Power."  The album is catalogued under "Beck".  You wouldn't expect to look under "Beck, except for the two songs where Cat Power lent her voice" at the music store.&lt;br /&gt;&lt;br /&gt;Properly tagging tracks is important, considering we have unique lists of hundreds of artists to sort through just to drill down to the next layers (albums by artist, songs by album).&lt;br /&gt;&lt;br /&gt;AND NEVER, EVER, *EVER* MARK AN ALBUM AS A COMPILATION JUST BECAUSE MORE THAN ONE ARTIST CONTRIBUTED.  When you do that, the album hides under some peoples' "Compilations" group; check the advanced settings in iTunes.  This is an album; it's a whole unit.  A compilation is a loosely organized collection of tracks from numerous artists with no theme other than the compiler thought the artists are somehow related, or the compiler just likes that kind of music.&lt;br /&gt;&lt;br /&gt;You shouldn't abbreviate (nor capitalize) "featuring" either, but just STOP screwing with artist tags when you shouldn't, and you'll not have this problem.&lt;br /&gt;&lt;br /&gt;Cat Power's a contributor to two tracks.  Great.  Now I have to correct your mistakes, twice.  That Cat Power is involved is interesting material for LINER NOTES.  Liner notes are what I read when I have time to devote to an album and I catch extra voices with my ears.  I prefer not to be beaten over the head by your fanboy ravings about Cat Power:  such details are the joys of discovering music.&lt;br /&gt;&lt;br /&gt;As an aside, I don't believe you talk about Chan Marshall as Cat Power when she's not performing in Cat Power.  Cat Power is the name of the band; Chan Marshall is the name of the singer / guitarist, no?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-2365014637483807061?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/2365014637483807061/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=2365014637483807061' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2365014637483807061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2365014637483807061'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/08/id3-tags.html' title='ID3 tags'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-7575145945473541848</id><published>2008-07-30T14:26:00.003-04:00</published><updated>2008-07-30T14:28:07.760-04:00</updated><title type='text'>Ongoing PXE notes</title><content type='html'>It appears that this thread is invaluable.  I'm going to have to dump GRUB and resort back to syslinux, I believe?&lt;br /&gt;&lt;br /&gt;&lt;a href="http://syslinux.zytor.com/archives/2008-April/009786.html"&gt;http://syslinux.zytor.com/archives/2008-April/009786.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Microsoft has very detailed documentation of WDS here:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkId=81031"&gt;http://go.microsoft.com/fwlink/?LinkId=81031&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-7575145945473541848?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/7575145945473541848/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=7575145945473541848' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7575145945473541848'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7575145945473541848'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/07/ongoing-pxe-notes.html' title='Ongoing PXE notes'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-641002471833247537</id><published>2008-07-25T10:04:00.002-04:00</published><updated>2008-07-25T10:06:02.917-04:00</updated><title type='text'>Happy Sysadmin Day!</title><content type='html'>Just in case.... &lt;br /&gt;&lt;br /&gt;Happy &lt;a href="http://www.sysadminday.com/"&gt;sysadmin day&lt;/a&gt;, whoever you are!  This year I get to send the shout-outs because I'm a "network engineer."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-641002471833247537?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/641002471833247537/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=641002471833247537' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/641002471833247537'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/641002471833247537'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/07/happy-sysadmin-day.html' title='Happy Sysadmin Day!'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-8925743751685048792</id><published>2008-07-24T15:12:00.003-04:00</published><updated>2008-07-24T15:15:32.270-04:00</updated><title type='text'>Windows Unattended Installs</title><content type='html'>Windows Deployment Services are an extension of Microsoft's RIS:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://technet2.microsoft.com/WindowsVista/en/library/9e197135-6711-4c20-bfad-fc80fc2151301033.mspx?mfr=true"&gt;http://technet2.microsoft.com/WindowsVista/en/library/9e197135-6711-4c20-bfad-fc80fc2151301033.mspx?mfr=true&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;An alternative, BartPE, claims that WDS, and WinPE in particular, are out of my reach due to licensing:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.nu2.nu/pebuilder/"&gt;http://www.nu2.nu/pebuilder/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-8925743751685048792?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/8925743751685048792/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=8925743751685048792' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8925743751685048792'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8925743751685048792'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/07/windows-unattended-installs.html' title='Windows Unattended Installs'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-246627124211895467</id><published>2008-07-06T12:24:00.002-04:00</published><updated>2008-07-06T12:43:48.707-04:00</updated><title type='text'>nvidia drivers in xubuntu 8.04</title><content type='html'>Every time I update my computer, I have issues with my built-in nvidia card.  I'm running xubuntu on a Dell Latitude D630:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;(II) NVIDIA(0): NVIDIA GPU Quadro NVS 135M (G86GL) at PCI:1:0:0 (GPU-0)&lt;br /&gt;(--) NVIDIA(0): Memory: 262144 kBytes&lt;br /&gt;(--) NVIDIA(0): VideoBIOS: 60.86.47.00.09&lt;br /&gt;(II) NVIDIA(0): Detected PCI Express Link width: 16X&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;I *tried* following the ubuntu wiki for using binary drivers, but I think it's incomplete.  In order to get the driver working after a kernel upgrade, I had to go through a few steps (more than once, while I figured it out):&lt;br /&gt;&lt;br /&gt;sudo apt-get install nvidia-glx-new&lt;br /&gt;sudo apt-get install nvidia-kernel-common&lt;br /&gt;sudo apt-get install linux-restricted-modules-common&lt;br /&gt;sudo apt-get install linux-restricted-modules-server&lt;br /&gt;&lt;br /&gt;Note: My Latitude D630 has an Intel Core2 Duo CPU, which Ubuntu recognizes as an SMP-capable device.  Thus, I have the "server" kernel installed.  When in doubt, run "uname -a" and install a matching linux-restricted-modules package.&lt;br /&gt;&lt;br /&gt;Finally, some other posts instructed me to edit the /etc/default/linux-restricted-modules file and set:&lt;br /&gt;&lt;br /&gt;DISABLED_MODULES=""&lt;br /&gt;`&lt;br /&gt;For good measure, I added an "nvidia_new" line into /etc/modules.  I'm not sure it's necessary to do this, but it works.&lt;br /&gt;&lt;br /&gt;You must run /sbin/lrm-manager.  From what I can tell, lrm-manager links .o files in /lib/linux-restricted-modules/`uname -r`/&lt;module name&gt; into &lt;module name&gt;.ko files suitable for loading into the kernel, and stores the .ko files in /lib/modules/`uname -r`/volatile.&lt;br /&gt;&lt;br /&gt;Finally, run nvidia-xconfig and reboot.  You should see the nvidia splash screen before X actually starts, and you're in good shape.&lt;br /&gt;&lt;br /&gt;I think that, in the past, I've always given up since I tackled this problem at work and installed the NVidia packages straight from nvidia.com.  Perhaps now I'm following the Ubuntu way.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-246627124211895467?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/246627124211895467/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=246627124211895467' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/246627124211895467'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/246627124211895467'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/07/nvidia-drivers-in-xubuntu-804.html' title='nvidia drivers in xubuntu 8.04'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-1209156084700128165</id><published>2008-06-18T09:53:00.001-04:00</published><updated>2008-06-18T09:56:55.599-04:00</updated><title type='text'>Check Point FW-1 Supernetting Issue</title><content type='html'>http://blogs.conchango.com/robbainbridge/archive/2006/08/01/4299.aspx&lt;br /&gt;&lt;br /&gt;And...&lt;br /&gt;&lt;br /&gt;Symptoms&lt;br /&gt;&lt;br /&gt;    * "Encryption failure: packet is dropped as there is no valid SA" error message in the SmartView Tracker. &lt;br /&gt;&lt;br /&gt;Cause&lt;br /&gt;The ike_use_largest_possible_subnets option is set to true by default in the VPN-1/FireWall-1 NG. This causes the Security gateway to summarize the subnet information, sent in Phase 2 of IKE key exchange. This occurs when two subnets exist in the VPN domain, configured on the Security gateway, resulting in a calculated summary, a "supernet" mask will be sent.&lt;br /&gt;Solution&lt;br /&gt;To resolve the problem, set the ike_use_largest_possible_subnets option to false in the objects_5_0.C file.&lt;br /&gt;&lt;br /&gt;There are two methods to make this modification, either with the Check Point Database tool or with dbedit.&lt;br /&gt;...&lt;br /&gt;Dbedit Method:&lt;br /&gt;&lt;br /&gt;   1. Close all SmartDashboard sessions.&lt;br /&gt;&lt;br /&gt;   2. Run the dbedit command on the Management Server.&lt;br /&gt;&lt;br /&gt;   3. Run the following commands:&lt;br /&gt;      modify properties firewall_properties ike_use_largest_possible_subnets false&lt;br /&gt;      update properties firewall_properties&lt;br /&gt;      quit&lt;br /&gt;&lt;br /&gt;   4. Install the Security policy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-1209156084700128165?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/1209156084700128165/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=1209156084700128165' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1209156084700128165'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1209156084700128165'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/06/check-point-fw-1-supernetting-issue.html' title='Check Point FW-1 Supernetting Issue'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-8134099414235715940</id><published>2008-05-20T17:27:00.001-04:00</published><updated>2008-05-20T17:28:46.658-04:00</updated><title type='text'>Neat!</title><content type='html'>&lt;a href="http://davidgalan.opensolarisblog.org/easySMF/smfcreate.php"&gt;http://davidgalan.opensolarisblog.org/easySMF/smfcreate.php&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I felt particularly lazy today and said "why am I going to write yet another service manifest?"  Turns out I don't have to.  This brilliant little jewel will do it for me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-8134099414235715940?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/8134099414235715940/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=8134099414235715940' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8134099414235715940'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8134099414235715940'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/05/neat.html' title='Neat!'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-2564314322350670188</id><published>2008-05-18T23:20:00.005-04:00</published><updated>2008-05-18T23:31:50.518-04:00</updated><title type='text'>Madeline's extended bike range</title><content type='html'>How many four year olds can say they rode on their bicycles halfway across a metropolitan area?  Despite lugging a four-year-old kid behind me I still managed to pull this one off in 1:49:55.  All of this against a steady wind of 20-25mph, too.&lt;br /&gt;&lt;br /&gt;&lt;iframe src="http://js.mapmyfitness.com/embed/blogview.html?r=09163648731b1f297f6cc13121b56343&amp;amp;u=e&amp;amp;t=run" frameborder="0" height="700" width="100%"&gt;&amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;a href="http://www.mapmyrun.com/run/united-states/in/indianapolis/857922223202"&amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;half-marathon distance downtown to nora&amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;/a&amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;br/&amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;a href="http://www.mapmyrun.com/find-run/united-states/in/indianapolis"&amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;Find more Runs in Indianapolis, Indiana&amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;/a&amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;&lt;/iframe&gt;&lt;!-- MMF PARTNER TOOL --&gt;&lt;a href="http://www.wunderground.com/cgi-bin/wxStationGraphAll?day=18&amp;year=2008&amp;month=5&amp;ID=MIN028&amp;type=3&amp;width=500&amp;showtemp=1&amp;showpressure=1&amp;showwind=1&amp;showwinddir=1&amp;showrain=1"&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-2564314322350670188?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/2564314322350670188/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=2564314322350670188' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2564314322350670188'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2564314322350670188'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/05/madelines-extended-bike-range.html' title='Madeline&apos;s extended bike range'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-8345165147897422366</id><published>2008-04-26T22:51:00.003-04:00</published><updated>2008-04-26T23:04:26.032-04:00</updated><title type='text'>Piracy doesn't pay</title><content type='html'>Over the years I have bought at least three copies of the Cisco CCNA study guide by Wendell Odom, but for some odd reason I only take the exam when I study pirated copies of the material.  Sorry.&lt;br /&gt;&lt;br /&gt;Turns out I was so busy uncovering my tracks when I quit NIC that I never had time to steal toner/paper and print these PDFs.  Now I'm stuck with useless copies of a PDF that I have thus far been unable to annotate, and I want hard copies.  I would *possibly* try the standard "PDF cracker tools, etc." but I'm not inclined to take risks with shady software.  Cost of "legit" software? $49, and the trial version has been less than promising.  I just do better with hard copies.&lt;br /&gt;&lt;br /&gt;Enter FedexKinko's.  You can print stuff online!  I have just submitted a job to print ICND1, and you can choose an exciting variety of options, like how enviro-friendly you want to be (laser paper vs. 30% post-recycled tree hugger variety), double-sided vs. single-sided, etc.  The total cost, to print ICND1?  $44.59.&lt;br /&gt;&lt;br /&gt;I can buy the entire study guide, which consists of ICND1 and ICND2 bound in Cisco's charming green and white hardcover for $38 and change off Amazon, plus I get a CD-ROM with goodies that I won't use.  Piracy doesn't pay, I guess.&lt;br /&gt;&lt;br /&gt;So, Mr. Odom, I will buy copy *four* of your books.  They are very good.&lt;br /&gt;&lt;br /&gt;Today I crossed the double-digit mark for the first time since the National Marathon, running 10 miles and a couple extra feet in 82:something.  Awful.  So much for running the Geist Half, eh?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-8345165147897422366?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/8345165147897422366/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=8345165147897422366' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8345165147897422366'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8345165147897422366'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/04/piracy-doesnt-pay.html' title='Piracy doesn&apos;t pay'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-2925673793538838646</id><published>2008-04-12T23:31:00.002-04:00</published><updated>2008-04-12T23:32:03.800-04:00</updated><title type='text'>Goal?</title><content type='html'>&lt;strong&gt;If&lt;/strong&gt; I were to run in the Chicago 50/50 (50k, not 50 mi), my target time could be 4:08:32.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-2925673793538838646?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/2925673793538838646/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=2925673793538838646' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2925673793538838646'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2925673793538838646'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/04/goal.html' title='Goal?'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-3920816322227809062</id><published>2008-04-09T21:44:00.003-04:00</published><updated>2008-04-09T21:51:15.115-04:00</updated><title type='text'>The joy of not giving a shit</title><content type='html'>&lt;p&gt;&lt;/p&gt;&lt;p&gt;2 - 4/9/2008 4:34:15 PM - Swallow, Greg (Swallow, Greg) - Edit&lt;br /&gt;uncapitalized unpunctuated sentence fragment asking for more information&lt;br /&gt;&lt;/p&gt;&lt;p&gt;1 - 4/9/2008 4:33:12 PM - Helpdesk (Helpdesk) - Create&lt;br /&gt;Received in mailbox: IN-GOV-Other@altiris.doit.state.in.us &lt;/p&gt;&lt;p&gt;From: blah@netscape.com &lt;br&gt;Message:General Inquiry from IN.gov online helpdesk &lt;br&gt;Name: ronald mcdonald&lt;br&gt;Agency: dept. of revenue&lt;br&gt;E-mail: blah@netscape.com&lt;br&gt;Contact Phone Number: 000 000 0000&lt;br&gt;Describe any additional information: list of payments 2007&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-3920816322227809062?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/3920816322227809062/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=3920816322227809062' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3920816322227809062'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3920816322227809062'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/04/joy-of-not-giving-shit.html' title='The joy of not giving a shit'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-6500743187644462376</id><published>2008-04-06T09:05:00.003-04:00</published><updated>2008-04-06T09:06:21.849-04:00</updated><title type='text'>Greatest...interview...EVER!</title><content type='html'>Journalist / $4000-range ho interviews Snoop Dogg.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.guardian.co.uk/media/2008/apr/03/realitytv.television?gusrc=rss&amp;amp;feed=media"&gt;http://www.guardian.co.uk/media/2008/apr/03/realitytv.television?gusrc=rss&amp;amp;feed=media&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-6500743187644462376?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/6500743187644462376/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=6500743187644462376' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6500743187644462376'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6500743187644462376'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/04/greatestinterviewever.html' title='Greatest...interview...EVER!'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-257511079814879858</id><published>2008-03-25T00:29:00.003-04:00</published><updated>2008-03-25T00:48:34.251-04:00</updated><title type='text'>Sun / Active Directory Kerberos Issues</title><content type='html'>Lately I've noticed that I can't run kinit from several machines.  Turns out it's just my account; I'm a member of too many groups in Active Directory.  Windows 2003 will include a PAC, or a Privilege Attribute Certificate, in my Ticket Granting Ticket, which increases the size of its response to the point that it can no longer send my TGT over UDP, so it switches to TCP.&lt;br /&gt;&lt;br /&gt;Solaris versions 9 and below don't support Kerberos ticket exchanges over TCP.  Microsoft has summed this issue up very well here:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://support.microsoft.com/?kbid=832572"&gt;http://support.microsoft.com/?kbid=832572&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I think that other requirements, besides hotfixes I've already installed, include lessening the number of groups I'm a member of, or eliminating Kerberos pre-authentication to get a ticket (which, according to MS, increases the chances of someone brute-forcing my password).  I don't think I should have to relax security just to be able to authenticate.&lt;br /&gt;&lt;br /&gt;This problem has existed for at least three years, yet no fixes from Sun.  At least I know I haven't broken something, but integration issues like this are a bit lame.  Microsoft has come around and made AD a worthy product that integrates well with other platforms.  Linux and MIT-based versions of Kerberos are in line.  Why is Sun unable to support Kerberos over TCP after all this time?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-257511079814879858?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/257511079814879858/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=257511079814879858' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/257511079814879858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/257511079814879858'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/03/sun-active-directory-kerberos-issues.html' title='Sun / Active Directory Kerberos Issues'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-2669181176978051815</id><published>2008-03-19T23:01:00.003-04:00</published><updated>2008-03-19T23:03:34.244-04:00</updated><title type='text'>Mile 1000</title><content type='html'>Today I have passed mile 1,000 since I started training for this marathon.  I am at mile 1,002.  According to my iPod thingy I ran an average pace of 6:59 per mile, with peaks that I can tell around 6:45 and valleys around 7:11.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-2669181176978051815?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/2669181176978051815/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=2669181176978051815' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2669181176978051815'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2669181176978051815'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/03/mile-1000.html' title='Mile 1000'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-2700439009303929978</id><published>2008-03-09T20:17:00.002-04:00</published><updated>2008-03-09T20:26:31.454-04:00</updated><title type='text'>Someone please try this</title><content type='html'>Toying around in the kitchen.&lt;br /&gt;&lt;br /&gt;1 pkg potato gnocchi&lt;br /&gt;frozen corn&lt;br /&gt;black beans (I bet cannelli beans work better)&lt;br /&gt;frozen chopped spinach&lt;br /&gt;1 14.5 oz can swanson's veggie broth&lt;br /&gt;bleached all-purpose flour&lt;br /&gt;chopped garlic&lt;br /&gt;parmesan cheese&lt;br /&gt;evoo (blush :)&lt;br /&gt;bread-like item.&lt;br /&gt;&lt;br /&gt;I didn't measure anything.&lt;br /&gt;&lt;br /&gt;boil water, salted.&lt;br /&gt;cook gnocchi, drain &amp;amp; set aside.&lt;br /&gt;do what you have to do with the bread-like item.&lt;br /&gt;in a separate saucepan, heat evoo, add garlic, cook sensibly.&lt;br /&gt;lower heat and add two spoonfuls of flour? make a quick roux.&lt;br /&gt;add vegetable broth until you don't have paste.&lt;br /&gt;throw in as much corn and beans as you want, simmer a bit.&lt;br /&gt;throw in maybe 4 oz of the chopped spinach. let the liquid separate.&lt;br /&gt;when things look a bit dry, add the gnocchi and more veggie broth until things are bubbling again.&lt;br /&gt;add a generous amount of parmesan (better if you get the stuff already mixed with herbs.  yes, it's cheating :) until things stop bubbling.&lt;br /&gt;scoop on a plate and serve with the bread-like item.&lt;br /&gt;&lt;br /&gt;cooking time, 15 min.?  Please try this and leave comments.  thx.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-2700439009303929978?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/2700439009303929978/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=2700439009303929978' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2700439009303929978'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2700439009303929978'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/03/someone-please-try-this.html' title='Someone please try this'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-8246626962702868261</id><published>2008-03-07T20:52:00.002-05:00</published><updated>2008-03-07T20:53:48.584-05:00</updated><title type='text'>Let me have a sick day, fuckers.</title><content type='html'>The countdown to liberation begins...&lt;br /&gt;&lt;br /&gt;#!/bin/sh&lt;br /&gt;&lt;br /&gt;case $1 in&lt;br /&gt;&lt;br /&gt; -d)&lt;br /&gt; echo "Capitulation in progress...."&lt;br /&gt; echo "Stopping web servers...\c"&lt;br /&gt; for s in www ssl&lt;br /&gt; do&lt;br /&gt;   p="/web/servers/prod/apache-${s}-lb/sbin/apachectl"&lt;br /&gt;   if [ -f "$p" ]; then&lt;br /&gt;     $p stop &gt; /dev/null 2&gt;&amp;amp;1&lt;br /&gt;     echo "${s} \c"&lt;br /&gt;   fi&lt;br /&gt; done&lt;br /&gt; echo "done."&lt;br /&gt;&lt;br /&gt; sleep 10&lt;br /&gt; echo "Starting static web server....\c"&lt;br /&gt; p="/usr/local/web/servers/prod/apache-static/sbin/apachectl"&lt;br /&gt; if [ -f "$p" ]; then&lt;br /&gt;   $p start &gt; /dev/null 2&gt;&amp;amp;1&lt;br /&gt;   echo "done."&lt;br /&gt; fi&lt;br /&gt; echo "You may now resume sucking your thumb."&lt;br /&gt; ;;&lt;br /&gt;&lt;br /&gt; -u)&lt;br /&gt; echo "Probably wasn't worth taking the shaft, now was it?"&lt;br /&gt; echo "Stopping static web server....\c"&lt;br /&gt; p="/usr/local/web/servers/prod/apache-static/sbin/apachectl"&lt;br /&gt; if [ -f "$p" ]; then&lt;br /&gt;   $p stop &gt; /dev/null 2&gt;&amp;amp;1&lt;br /&gt;   echo "done."&lt;br /&gt; fi&lt;br /&gt;&lt;br /&gt; sleep 10&lt;br /&gt; echo "Starting web servers...\c"&lt;br /&gt; for s in www ssl&lt;br /&gt; do&lt;br /&gt;   p="/web/servers/prod/apache-${s}-lb/sbin/apachectl"&lt;br /&gt;   if [ -f "$p" ]; then&lt;br /&gt;     $p start &gt; /dev/null 2&gt;&amp;amp;1&lt;br /&gt;     echo "${s} \c"&lt;br /&gt;   fi&lt;br /&gt; done&lt;br /&gt; echo "done."&lt;br /&gt; ;;&lt;br /&gt;&lt;br /&gt; *)&lt;br /&gt; echo "Usage: capitulate.sh (-u|-d)"&lt;br /&gt; ;;&lt;br /&gt;esac&lt;br /&gt;&lt;br /&gt;exit 0&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-8246626962702868261?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/8246626962702868261/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=8246626962702868261' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8246626962702868261'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8246626962702868261'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/03/let-me-have-sick-day-fuckers.html' title='Let me have a sick day, fuckers.'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-344077915393370456</id><published>2008-03-05T00:05:00.006-05:00</published><updated>2008-03-05T00:34:00.787-05:00</updated><title type='text'>New speed record?</title><content type='html'>Constant niggles this close to marathon day are driving me batty, so I'm pulling rookie mistakes and proving myself worthy every day. Today we've had 2" of freezing rain so I followed my schedule for once and ran intervals on a treadmill.&lt;br /&gt;&lt;br /&gt;Mile 0 - .5: 7:53&lt;br /&gt;Mile .5 - 1.5: 7:30&lt;br /&gt;Mile 1.5 - 2.5: 6:53&lt;br /&gt;Mile 2.5 - 3.5: 7:30&lt;br /&gt;Mile 3.5 - 4.5: 6:40&lt;br /&gt;Mile 4.5 - 5.5: 7:30&lt;br /&gt;Mile 5.5 - 6.5: 6:27&lt;br /&gt;Mile 6.5 - 7.5: 7:30&lt;br /&gt;Mile 7.5 - 8.5: 6:18, .25 mile dip to 6:27.&lt;br /&gt;4 minute cool down, then stretch.&lt;br /&gt;&lt;br /&gt;Average speed over 8.5 miles = 7:05!  I'd like to do that in a half.  Intervals are good because they break the monotony.  And to the lady who insisted on using my machine before I had a chance to clean it, hope you don't get sick. Sorry, but I offered before you jumped on. :)&lt;br /&gt;&lt;br /&gt;Ohio has screwed up the last three elections; I think it's time to kick them out of the Union so they can elect their own leader -- some old rotarian geezer who drives a Buick and practices true compassionate conservatism. Sorry, pals, but there's no such animal. Ohio is just fucked up and in the past (like Indiana is any better, I know).&lt;br /&gt;&lt;br /&gt;Sure, people can blame Florida for 2000, and I do, but Ohio was just as guilty by going red by the oh-so-slimmest of margins. A victory along with Missouri would have meant no war in Iraq. And let's not forget 2004. That's the day I lost hope in America.&lt;br /&gt;&lt;br /&gt;Now I may actually have a say in who gets to run as a Democrat, and if it's Hillary I'm not sure we'll beat the Rove machine. I like Hillary, but I'm opposed to her candidacy for two reasons. First, she's a Clinton. I like the Clintons, but I don't want Bush-Clinton-Bush-Clinton. Oh, and NAFTA? Remember who sent it to Congress. Ok, that was 1B.&lt;br /&gt;&lt;br /&gt;Also (1C), aren't we supposed to think ahead, not behind? The Mongolians are wired, the Chinese are tired and the Mexicans are expired. We should set our protectionist sights on Asia. I'm not kidding.&lt;br /&gt;&lt;br /&gt;Second, people hate Hillary. Nobody hates Obama. I think there are a billion rednecks just outside my door who will do anything possible to keep a darkie out of the White House, but I think there just may be a greater amount of sensible (and insensible, let's face it) people who can push him over the top. Will he be a great president? Maybe. Will he be John McCain? Hell, no.&lt;br /&gt;&lt;br /&gt;So, thanks again, Ohio. I'm so glad I'm a native Buckeye. I sure hope to wake up in the morning and hear that news agencies were wrong again. Otherwise the Democratic primaries could be so tarnished by the convention that nobody will want to touch either candidate's ballot spot with a ten-foot pole.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-344077915393370456?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/344077915393370456/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=344077915393370456' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/344077915393370456'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/344077915393370456'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/03/new-speed-record.html' title='New speed record?'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-6619776358694853666</id><published>2008-03-03T14:41:00.002-05:00</published><updated>2008-03-03T15:00:38.899-05:00</updated><title type='text'>MPW record smashed!</title><content type='html'>This week I mustered 66.29 miles on the road, and of all weeks, I'd have thought this week was the least likely I'd accomplish anything at all.  Overall, this week was just bad.  Two Saturdays ago I was forced to do my long run on a treadmill, as there were no passable roads.  I finished 20 miles in just under 2:40, kicking up the pace a bit through the last two miles.&lt;br /&gt;&lt;br /&gt;Unfortunately, I was done in by that 20-miler on Saturday.  On Monday I gave up, and on Tuesday I erred on the cautious side and stayed home.  Having to take three days off from a 20 miler doesn't necessarily instill confidence when you're starting your last month of tough training before  race.&lt;br /&gt;&lt;br /&gt;By Wednesday, though, I was getting crazy from not running, so I ran gingerly on the treadmill.  Got ten done.  Thursday was a very rough day at work, so I took off in the afternoon, peoples' needs be damned, and got 11.7 done.  Took just about everything out of me.  On Friday I was exhausted from working until 2:00 AM the previous night, so I did 10.34, which was weird.  I had eaten at White Castle because I was starving at 2:00 AM, and at 10:00 PM the same day I was running by the same restaurant.&lt;br /&gt;&lt;br /&gt;Then came Saturday, the long run.  This week was supposed to be a 21 miler but I ran out of steam.  For the first time ever, I had to walk to a spot, pick up the phone and call for help.  I was angry and embarrassed, to say the least.  I've since pinned down my Saturday failure to fatigue and total lack of food prior to setting out.  Total distance:  12.75 miles, or 44.79 for the week.&lt;br /&gt;&lt;br /&gt;Last night I decided to give it another go and I managed to do 21.5 in 3:03:39, which rounds out to a terrible 8:33 per mile, but my mileage boosted to 66.29.  Started at 10:00 PM or so and finished at 1:05 AM.  So much for sleep, eh?&lt;br /&gt;&lt;br /&gt;Now I'm exhausted and I believe I'll tone down my average days to one hour tops, getting in more intervals and some more intense hill training.  This 60+ mpw stuff is likely bogus.  Marathons are great if you don't count all the training you have to do beforehand :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-6619776358694853666?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/6619776358694853666/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=6619776358694853666' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6619776358694853666'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6619776358694853666'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/03/mpw-record-smashed.html' title='MPW record smashed!'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-4193576394405038519</id><published>2008-02-17T22:51:00.006-05:00</published><updated>2008-02-17T23:42:19.951-05:00</updated><title type='text'>Yesterday</title><content type='html'>The true definition of hell is managing a Microsoft Exchange server. My "dream day" turned to shit on me while I was running through Louisville. On Friday, the e:\ drive on our exchange server went 90% full. Since it's 51GB in size, that meant I had 5.137 GB free. Obviously, that problem could wait until Monday, right?&lt;br /&gt;&lt;br /&gt;Wrong. Somewhere during my run my pager started blowing up, and after the week I'd already had I abandoned that foul little beast in the car. I work with 42 problems, and there's only one of me. I went to the High On Fire show and had a good time.&lt;br /&gt;&lt;br /&gt;My guilt drove me into the office from Louisville, and I found that the Indiana Secretary of State's Notary Search application had blown up. 30,000 e-mails sat in a queue. On top of that, I learned that I've inherited some backup issues, which kept logs from purging, which made the disk full. I purged the logs, cleared the queues as best I could and went home. My sign-out time was 5:21 AM.&lt;br /&gt;&lt;br /&gt;At 10:30 I woke up, went to check my e-mail and I quickly realized that life would suck on Monday if I didn't get this mess cleaned up. Since I'm pretty much clueless with Exchange -- I've only been administering this mess for a couple of months -- I started searching for ways to delete messages on the backend. See, on a sane mail system the storage is on the filesystem. A quick recursive find piped through xargs would fix the problem.&lt;br /&gt;&lt;br /&gt;Not with exchange. First I had to make a rash decision to upgrade Exchange 2007 to SP1, because "RTM" is garbage. By upgrading, this cmdlet is supposed to work:&lt;br /&gt;&lt;br /&gt;export-mailbox -identity gswallow -subjectKeywords "WWW : SOS Notary Search" -deletecontents&lt;br /&gt;&lt;br /&gt;But it DIDN'T. Instead, the tool coughed up some stupid "1056749164" error. Only Oracle could come up with a messaging scheme as lame. Bottom line is, Microsoft software doesn't work as advertised. Surprise, surprise. I spent a few hours trying to come up with a workaround; finally I gave in and called Microsoft. I agreed to pay FIVE HUNDRED AND FIFTEEN DOLLARS for after hours critical support. For $515 I got to hold for 45 minutes and I got an Indian.&lt;br /&gt;&lt;br /&gt;I spent two and a half hours on the phone with Indian #1, after which he had to talk to Indian #2. Because Indian #1 had to demonstrate my problem to Indian #2, we started working in loops. Fuck that -- each loop cost me half an hour. At 7:00 PM I hung up, disconnected my livehelp session and I got a call back from Indian #1 -- they were concerned that we lost each other. I demanded a rebate.&lt;br /&gt;&lt;br /&gt;(Oh, and before some MS troll whines about Domain Admins and conflicting permissions with Send-as and Receive-as, fuck off. MS tools should be smart enough to fail *before* attempting expensive operations. That fix doesn't work, either.)&lt;br /&gt;&lt;br /&gt;Tomorrow I get the joy of helping ten other people clean out their inboxes, 3,000 messagess at a time. Oh, and I get to explain this to my boss. Yay.&lt;br /&gt;&lt;br /&gt;If you're thinking about running Exchange, don't. I still can't figure out why someone would install GROUPWARE in 2008. That's all MS Exchange is -- a cheap-ass ripoff of Novell's collaboration suite, complete with proprietary data storage, half-functional tools and hopeless communications protocols. E-mail is e-mail. Keep it simple.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-4193576394405038519?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/4193576394405038519/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=4193576394405038519' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/4193576394405038519'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/4193576394405038519'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/02/yesterday.html' title='Yesterday'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-1577767943987197007</id><published>2008-02-15T23:10:00.005-05:00</published><updated>2008-02-15T23:21:04.247-05:00</updated><title type='text'>Tomorrow</title><content type='html'>Looking forward to this one:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.usatf.org/routes/view.asp?rID=60910"&gt;http://www.usatf.org/routes/view.asp?rID=60910&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;16 miles, 675 ft. of climb. Never ran in KY before unless you count a 17 miler on a treadmill, where I think I exceed 1,00 feet of "climb." Hell yeah.&lt;br /&gt;&lt;br /&gt;Tomorrow: Chuck E. Cheese -&gt; Vibes Music -&gt; drive to Louisville with Vibes vibes -&gt; run 16 -&gt; Ear X-tacy (yay!) -&gt; dinner -&gt; High on Fire show -&gt; drive home with Ear X-tacy vibes. Saturday is going to RULE (ok, all but the Chuck E. Cheese part). This reminds me: I need a new coffee cup. Must buy one tomorrow.&lt;br /&gt;&lt;br /&gt;Clutch is playing the VOGUE on 4/15/08.  That's TAX DAY, which means I'm grounded to a desk.  I have half  a mind to quit my 9-year career so I can catch Clutch.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-1577767943987197007?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/1577767943987197007/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=1577767943987197007' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1577767943987197007'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/1577767943987197007'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/02/tomorrow.html' title='Tomorrow'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-6917456983025640002</id><published>2008-02-09T23:12:00.000-05:00</published><updated>2008-02-09T23:14:27.334-05:00</updated><title type='text'>meh</title><content type='html'>Jesus may have walked on the water, but did he invent the combustion engine?  No.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.youtube.com/watch?v=AwOMAXCI-tM"&gt;http://www.youtube.com/watch?v=AwOMAXCI-tM&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-6917456983025640002?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/6917456983025640002/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=6917456983025640002' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6917456983025640002'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/6917456983025640002'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/02/meh.html' title='meh'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-7653490988306667027</id><published>2008-02-07T21:37:00.001-05:00</published><updated>2008-02-07T21:38:30.354-05:00</updated><title type='text'>Save the polar bear</title><content type='html'>&lt;a href="http://www.youtube.com/watch?v=XKbr-ZbRl-Y"&gt;http://www.youtube.com/watch?v=XKbr-ZbRl-Y&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Making cops wade through pools to arrest you is awesome.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-7653490988306667027?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/7653490988306667027/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=7653490988306667027' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7653490988306667027'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7653490988306667027'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/02/save-polar-bear.html' title='Save the polar bear'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-8901541144201430022</id><published>2008-02-04T22:18:00.000-05:00</published><updated>2008-02-04T22:31:23.074-05:00</updated><title type='text'>I'm probably overreacting</title><content type='html'>Yesterday I ran a 19-miler in 2:33:56, which isn't a bad time at all.  Were I to shave two minutes off of that time I'd be happier.  I felt a bit tight all weekend and lately I've had some hints from my upper thighs: "leave me alone."&lt;br /&gt;&lt;br /&gt;Today I suited up (55 degrees F!) and started what was to be an easier 7-mile run.  No dice.  I didn't make a quarter mile and I knew that I would in trouble.  Slowing down to a crawl seemed to spur my discomfort.  Discouraged, I walked a bit and tried again.  No dice.  I gave up and walked back home.  I've been mentally kicking myself ever since.&lt;br /&gt;&lt;br /&gt;Hopefully my schedule is just screwed up and I'll be fine.  I've never run the day after a long run; maybe I shouldn't?  The good news is that my shins have all but stopped complaining, so perhaps my thighs will follow suit.  My thighs are &lt;em&gt;lean, &lt;/em&gt;just like my calves had gotten when I had shin splints recently.&lt;br /&gt;&lt;br /&gt;Worst case, I could pretty much take this week off entirely, ramp back into a 15 miler next week and finish a respectable training course with March 29 in mind.  I think I'll find an Indy road runner's club soon, so I can stretch with a group and learn the ropes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-8901541144201430022?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/8901541144201430022/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=8901541144201430022' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8901541144201430022'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/8901541144201430022'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/02/im-probably-overreacting.html' title='I&apos;m probably overreacting'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-5175261051367980890</id><published>2008-02-02T22:51:00.000-05:00</published><updated>2008-02-02T23:17:01.630-05:00</updated><title type='text'>In Ra inbo ws (whatev)</title><content type='html'>Dear Radiohead,&lt;br /&gt;&lt;br /&gt;Most of us who buy your CD's are hamfisted shortbussers who can't do delicate things with our hands like make beautiful Radiohead music.  Nor can we open your friggin' CD without destroying the oh-so-delicate packaging.  Droolhrmph.&lt;br /&gt;&lt;br /&gt;Dear Load Records,&lt;br /&gt;&lt;br /&gt;Thank you, thank you and THANK YOU for releasing White Mice's Blassstphlegmeice.  The "endtro" riff on that album just fucking kills.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-5175261051367980890?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/5175261051367980890/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=5175261051367980890' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5175261051367980890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/5175261051367980890'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/02/in-ra-inbo-ws-whatev.html' title='In Ra inbo ws (whatev)'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-739717313076029117</id><published>2008-01-31T23:48:00.001-05:00</published><updated>2008-01-31T23:54:34.345-05:00</updated><title type='text'>Theft</title><content type='html'>Dear Load Records,&lt;br /&gt;&lt;br /&gt;I promise I'm only downloading five different records on your label so I can participate in your &lt;a href="http://www.loadrecords.com/"&gt;CD sale&lt;/a&gt;. Please don't sue me.   Oh, and could you please, please, PLEASE send Burmese on tour?  I'd really like to see them.  I'll drive as far as 12 hours in any direction.&lt;br /&gt;&lt;br /&gt;Payday + tax returns = Kayo Dot, Radiohead, Brutal Truth, Coughs, Fat Worm of Error, and one from either Sightings, Hair Police, Pink and Brown, Sword Heaven or the White Mice.   Yeah, I'm a junkie.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-739717313076029117?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/739717313076029117/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=739717313076029117' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/739717313076029117'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/739717313076029117'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/01/theft.html' title='Theft'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-7890136166617683164</id><published>2008-01-28T01:40:00.000-05:00</published><updated>2008-01-28T01:54:04.984-05:00</updated><title type='text'>Maybe it'll get easier now...</title><content type='html'>I FINALLY broke the 60 mpw mark this week, though just barely.  I did 60.3 miles, and that included 32.8 miles in two days.  Still, the 60 mpw marker has been nearly impossible to break.&lt;br /&gt;&lt;br /&gt;Let's call it 60-mile chili:&lt;br /&gt;2 lbs 90/10 lean ground beef&lt;br /&gt;1 lb bacon, chopped&lt;br /&gt;1 largish yellow onion (not sweet), coarsely chopped&lt;br /&gt;minced garlic&lt;br /&gt;3 jalapenos, 1.5 seeded, 1.5 raw, finely chopped&lt;br /&gt;2 red savina habaneros (yum), finely chopped&lt;br /&gt;brown sugar&lt;br /&gt;big can tomato juice&lt;br /&gt;1 can petite diced tomatoes&lt;br /&gt;two cans dark red kidney beans + one light, rinsed&lt;br /&gt;1 square unsweetened baking chocolate&lt;br /&gt;worchestershire sauce&lt;br /&gt;hot sauces if desired&lt;br /&gt;3? teaspoons cumin&lt;br /&gt;ground ancho&lt;br /&gt;ground cayenne&lt;br /&gt;black pepper&lt;br /&gt;2 bay leaves&lt;br /&gt;2 heaping teaspoons corn flour&lt;br /&gt;&lt;br /&gt;You'll likely have a lot of this laying around your kitchen.  Combine tomato juice, tomatoes, beans, peppers, ground spices, bay leaves, brown sugar, chocolate in a pot; set aside.&lt;br /&gt;&lt;br /&gt;Brown (?) bacon, add onions halfway through to sweat 'em.  When the bacon is safe and the onions are translucent, add the minced garlic.  Cook a bit longer, but avoid burning your garlic.  Drain into chili (mmm...bacon grease).&lt;br /&gt;&lt;br /&gt;Scrape pan to remove bits of onion and garlic as well as you can, add beef, season with worchestershire sauce, a little salt and some black pepper (on top of the salt / black pepper you used in the tomato mixture, so just a little).  Brown beef, drain everything into the chili.&lt;br /&gt;&lt;br /&gt;Stir chili well, bring to a soft boil.  Add corn flour to thicken.  Turn down the heat and simmer 1 hour, maybe 1:15.  Serve with corn bread if it's not 1:30 AM.  Makes a hell of a lot.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-7890136166617683164?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/7890136166617683164/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=7890136166617683164' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7890136166617683164'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7890136166617683164'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/01/maybe-itll-get-easier-now.html' title='Maybe it&apos;ll get easier now...'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-3372689039425455877</id><published>2008-01-24T15:56:00.000-05:00</published><updated>2008-01-24T15:59:51.355-05:00</updated><title type='text'>Warp for OS X 10.5</title><content type='html'>Warp for OS X is the BEST...SOFTWARE....EVER!&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ksuther.com/warp/"&gt;http://www.ksuther.com/warp/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;That is all.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-3372689039425455877?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/3372689039425455877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=3372689039425455877' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3372689039425455877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/3372689039425455877'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2008/01/warp-for-os-x-105.html' title='Warp for OS X 10.5'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-2526307253823037682</id><published>2007-12-23T00:43:00.000-05:00</published><updated>2007-12-23T01:00:15.263-05:00</updated><title type='text'>Oops</title><content type='html'>Went a little farther than I meant to today:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.usatf.org/routes/view.asp?rID=183731"&gt;http://www.usatf.org/routes/view.asp?rID=183731&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;True to form, I decided that I had cut my run short by getting lost in Eagle Creek Park. The only natural thing to do, at that point, is to make up for it. Having left at 3:00 PM, by 6:15 PM I was clinging dreadfully to the six inches of shoulder I had, running shirtless so people would see me. Probably didn't help, but I set out clad in my typical all-black wardrobe.&lt;br /&gt;&lt;br /&gt;Now? Man, I'm sore. I had 18 miles pegged for today, which was sane. Instead, I ended up extending last week's long run by nearly 5.5 miles, or 32.3%. Needless to say, Monday's run will be half of my normal daily distance, just so I can recuperate.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-2526307253823037682?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/2526307253823037682/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=2526307253823037682' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2526307253823037682'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2526307253823037682'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2007/12/oops.html' title='Oops'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-2943423360805984763</id><published>2007-12-01T00:28:00.000-05:00</published><updated>2007-12-01T00:42:07.121-05:00</updated><title type='text'>Washington DC this week</title><content type='html'>Why is it that whenever I visit a town that I have to fly to, there's nothing going on?  This will be the fourth or fifth time I'll visit Washington, DC and finally I'm of legal age to enjoy things like the 9:30 club, etc.  Nada.  Zilch.  This is a dead week for DC.  Bummer.&lt;br /&gt;&lt;br /&gt;Things I need to approach in DC:&lt;br /&gt;&lt;br /&gt;- Talk with Jeff Stoner about a Network Reorganization.  They need me out in Arizona.  I'm also unsure about how stable Arizona is?&lt;br /&gt;- Run with Candy and Arleen.  Why not?&lt;br /&gt;- Prepare for SANS training this weekend and downgrade OS X to 10.4.  Boo.&lt;br /&gt;- Catch up with Ashish.  I miss that guy.&lt;br /&gt;- Junipers, Junipers, Junipers!&lt;br /&gt;&lt;br /&gt;I like having friends across the country.  Everywhere I go, I have a place to stop.&lt;br /&gt;&lt;br /&gt;I just calculated my mileage for the last two weeks.  Wow.  I calculate my mileage so I don't overtrain and I know when to buy shoes.  Last week I put in 58.14 miles.  That's kinda nuts, considering I was dreading the 64 mile weeks I planned to eke out in February.  There's only a six mile difference.&lt;br /&gt;&lt;br /&gt;Still, I'm feeling shin-splinty, even after this easy week (only three days in so far, and only 17.75 miles logged?).  Tomorrow's my essential long run -- a breeze at 11 miles -- and I'm afraid, nay, certain that I won't be fully recovered by the time next week starts.  Next week is a return to hell, with 10 miles days punctuated by a 17+ mile long run.&lt;br /&gt;&lt;br /&gt;Long runs feel good.  Not afterwards, but during.  The next couple of weeks will be a real test though.  Last weekend's 16.8-miler probably felt good only because I had never gone that far before.  17 miles, three weekends in a row, is sure to get old.  Washington DC is titz, though.  Check out this run:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.usatf.org/routes/view.asp?rID=78720"&gt;http://www.usatf.org/routes/view.asp?rID=78720&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;AIDS Wolf is playing Chicago tomorrow night and I won't make it.  Grr.  I could make it, and I probably should.  Chloe is friggin' hot and she gets naked on stage.  Who knows?  Maybe I'll make the trip.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-2943423360805984763?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/2943423360805984763/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=2943423360805984763' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2943423360805984763'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/2943423360805984763'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2007/12/washington-dc-this-week.html' title='Washington DC this week'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6903891101761324538.post-7489128641932082609</id><published>2007-10-02T21:41:00.001-04:00</published><updated>2007-10-03T00:03:24.222-04:00</updated><title type='text'>Inaugural Torture a Runner Charity</title><content type='html'>I started running to get healthier back in February. Since then, I've run a long way. I've joined my first foot race, the &lt;a href="http://indianapolismarathon.org/"&gt;Indianapolis Marathon and Half Marathon&lt;/a&gt;, where I'll be running the half. The half marathon is a 2-hour ordeal for slower guys like me.&lt;br /&gt;&lt;br /&gt;I had thought that putting together a playlist for this race would be fun. Today I thought of a better idea -- the Inaugural Torture the Runner Charity Event. This charity is political in nature. I'm more liberal than Evo Morales, so you Bill O' fans should stop reading, NOW.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;What's the "Torture the Runner" Charity?&lt;/strong&gt;&lt;br /&gt;It's quite simple: you can buy time on my iPod that I must listen to while I run the race. Ideally, I will suffer. For example, you could buy a Queen song, or a Bee Gees song. You can supply a recording of yourself, telling me I'll never make it. Whatever.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;When is it?&lt;/strong&gt;&lt;br /&gt;The race is October 20. You have until October 14 to submit your torture.&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Which charity have you picked?&lt;/strong&gt;&lt;br /&gt;THIS PARAGRAPH IS A PLACEHOLDER. Proceeds go to ACTIVATE Grand Rapids, a counter-recruitment effort in Grand Rapids, MI. They are a chapter of SDS. The money goes to a scholarship fund which sends a kid to college, rather than to war. Yes, this is a lefty charity.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;I don't like your politics.&lt;/strong&gt;&lt;br /&gt;That's not a question. If you'd rather send kids to Iraq than to college then try sending your own.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Your charity sounds like fun. How much?&lt;/strong&gt;&lt;br /&gt;There are multiple price points:&lt;br /&gt;&lt;br /&gt;Each minute of the race costs $3.60. Minutes are always rounded up. For instance, you could buy "Bohemian Raphsody", by Queen -- it tracks in at 5:55. That'll cost you $21.60 (6 x $3.60 = $21.60). A song clocking in at 5:05 will still cost you $21.60 (hey, it's cheaper than phone sex).&lt;br /&gt;&lt;br /&gt;My daily workout routine usually runs anywhere from 45 minutes to an hour. For $10.00 a minute you can buy one minute of a 50-minute set that I have to listen to every day I work out until I run the race. Think about it -- for $500.00 you could make me listen to Meat Loaf's "Bat out of Hell" FIVE DAYS A WEEK for the next two and a half weeks. I know I've pissed some of you off bad enough that you're itchin' to do this. Did I mention that most people I know are Internet dorks who make way too much money?&lt;br /&gt;&lt;br /&gt;BONUS: for $250, plus the cost of shorts, I'll wear nothing but Umbro's while I run. We're getting close to prostitution, folks. I'm not exactly comfortable going "au naturale" in mixed company. I have a lot to apologize for when I do.&lt;br /&gt;&lt;br /&gt;I'll even have someone snap a photo. You have to buy the Umbros, though. For $750 you can have the Umbros back, unwashed. The $750 is a joke -- the photo isn't.&lt;br /&gt;&lt;br /&gt;To review:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;$3.60 a minute for race-day control of my ears. 70 minutes, plus whatever doesn't sell @ $10. &lt;/li&gt;&lt;li&gt;$10.00 hijacks a minute of my race AND my training runs. 50 minutes total.&lt;br /&gt;&lt;li&gt;$250.00 forces me to run in mixed company wearning nothing but short shorts. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;If you can't tell, I'm trying to raise $1,000 to keep a kid out of Iraq. &lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;Torture YOU? With MUSIC? How?&lt;/strong&gt;&lt;br /&gt;I own somewhere around 1,000 CD's, so I probably have many of yours. However, I have "eclectic" tastes in music. Most people say I have "terrible" taste in music. If you really want to torture me, then pick something mainstream. You can try picking:&lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Top-40&lt;br /&gt;&lt;li&gt;Chamber music&lt;br /&gt;&lt;li&gt;Rock operas&lt;br /&gt;&lt;li&gt;Pop country&lt;br /&gt;&lt;li&gt;Christmas music&lt;br /&gt;&lt;li&gt;Pretty much anything on a mainstream radio station.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;If you still need help, then try here: &lt;a href="http://www.billboard.com/bbcom/charts/yearend_chart_index.jsp"&gt;Billboard archives&lt;/a&gt; You can submit ANYTHING in MP3 format.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;How do I pay?&lt;/strong&gt; &lt;/p&gt;&lt;p&gt;Simple: click the button, and leave a note about your song / clip selection. Remember to round up.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;form action="https://www.paypal.com/cgi-bin/webscr" method="post"&gt;&lt;input type="hidden" value="_s-xclick" name="cmd"&gt;&lt;input type="image" alt="Make payments with PayPal - it's fast, free and secure!" src="https://www.paypal.com/en_US/i/btn/btn_donateCC_LG.gif" border="0" name="submit"&gt;&lt;img height="1" alt="" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" border="0" /&gt;&lt;input type="hidden" value="-----BEGIN PKCS7-----MIIHwQYJKoZIhvcNAQcEoIIHsjCCB64CAQExggEwMIIBLAIBADCBlDCBjjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtQYXlQYWwgSW5jLjETMBEGA1UECxQKbGl2ZV9jZXJ0czERMA8GA1UEAxQIbGl2ZV9hcGkxHDAaBgkqhkiG9w0BCQEWDXJlQHBheXBhbC5jb20CAQAwDQYJKoZIhvcNAQEBBQAEgYCWqIpSLqAAwWfdBWOqq9ciUPbTo04oES8qNbDmG/KxgCvaL2JiNETxhxTmP5VQbbTy6c8gvwTEPtVsx7emALMxJVUsSv6CJvDFNtvRl3ki75WXcIY509u5HyIZmH+oKesNX/7qurpVdYpwliPc8ed2+IH+SwEWVCSMrc9UMR2tVjELMAkGBSsOAwIaBQAwggE9BgkqhkiG9w0BBwEwFAYIKoZIhvcNAwcECEKwpfsx42LkgIIBGOVJ6Js8mgyeNM2keT72U1xNa689ZGFP4mjEBogNu86xcVfuXqMk+gT2YA1oDB/02txRDQEzdwL8rEFbTxZlO0h2fj/Sq9uz5/0M/C3a1XrYWYaepflbjU6OENCNhZkhvCZUvfy/lcfpG4XTHHLXe1mOYbYJbViOe6dOcf+XxIea3AyU4D7YM/4Snl+KdlWfXnQ0Er9zUIx2sZU9DgAVoothRpVH+OwFxsAuXD+A/wDVBjHxGSRRVnqkEC6rfo2tN4A9R/OJgeDuXXt9KF5r7/lGGKwWW7lEcw6UIpn2duFL9In9JVtTvH4HkLGykg7DJxM9JuVRoYug+w+7EmIsoc2MRpVaU9Smrz+BA2jxTlhzm69xREaRv4agggOHMIIDgzCCAuygAwIBAgIBADANBgkqhkiG9w0BAQUFADCBjjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtQYXlQYWwgSW5jLjETMBEGA1UECxQKbGl2ZV9jZXJ0czERMA8GA1UEAxQIbGl2ZV9hcGkxHDAaBgkqhkiG9w0BCQEWDXJlQHBheXBhbC5jb20wHhcNMDQwMjEzMTAxMzE1WhcNMzUwMjEzMTAxMzE1WjCBjjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtQYXlQYWwgSW5jLjETMBEGA1UECxQKbGl2ZV9jZXJ0czERMA8GA1UEAxQIbGl2ZV9hcGkxHDAaBgkqhkiG9w0BCQEWDXJlQHBheXBhbC5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMFHTt38RMxLXJyO2SmS+Ndl72T7oKJ4u4uw+6awntALWh03PewmIJuzbALScsTS4sZoS1fKciBGoh11gIfHzylvkdNe/hJl66/RGqrj5rFb08sAABNTzDTiqqNpJeBsYs/c2aiGozptX2RlnBktH+SUNpAajW724Nv2Wvhif6sFAgMBAAGjge4wgeswHQYDVR0OBBYEFJaffLvGbxe9WT9S1wob7BDWZJRrMIG7BgNVHSMEgbMwgbCAFJaffLvGbxe9WT9S1wob7BDWZJRroYGUpIGRMIGOMQswCQYDVQQGEwJVUzELMAkGA1UECBMCQ0ExFjAUBgNVBAcTDU1vdW50YWluIFZpZXcxFDASBgNVBAoTC1BheVBhbCBJbmMuMRMwEQYDVQQLFApsaXZlX2NlcnRzMREwDwYDVQQDFAhsaXZlX2FwaTEcMBoGCSqGSIb3DQEJARYNcmVAcGF5cGFsLmNvbYIBADAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4GBAIFfOlaagFrl71+jq6OKidbWFSE+Q4FqROvdgIONth+8kSK//Y/4ihuE4Ymvzn5ceE3S/iBSQQMjyvb+s2TWbQYDwcp129OPIbD9epdr4tJOUNiSojw7BHwYRiPh58S1xGlFgHFXwrEBb3dgNbMUa+u4qectsMAXpVHnD9wIyfmHMYIBmjCCAZYCAQEwgZQwgY4xCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEUMBIGA1UEChMLUGF5UGFsIEluYy4xEzARBgNVBAsUCmxpdmVfY2VydHMxETAPBgNVBAMUCGxpdmVfYXBpMRwwGgYJKoZIhvcNAQkBFg1yZUBwYXlwYWwuY29tAgEAMAkGBSsOAwIaBQCgXTAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0wNzEwMDMwMjM2MjhaMCMGCSqGSIb3DQEJBDEWBBQWIwq5gy276XeEN7mKT1VHWZxxYzANBgkqhkiG9w0BAQEFAASBgE0Xw4NMyI7NMTz4IfkerR2D3lhY1ayvoj2tu+Qr58zYAkavk/wKHkRHnnk0cuG9/BVn3KazZLFUcZ1LOcEhQvdCUlVDnVsXWTQX8sUuO0Z7mTiGQVJemFH5wGhzgpBYSXMOXGYSKq0IrVSDfuXCBWi2Gn4gvIIvNU10AsyBblKD-----END PKCS7-----" name="encrypted"&gt;&lt;/form&gt;&lt;/p&gt;&lt;p&gt;Do send an e-mail to my personal address: &lt;a href="mailto:gswallow@gmail.com"&gt;gswallow@gmail.com&lt;/a&gt;, when you pay. That way I can make sure I know who you are, and what you want to do to me.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;You say the "proceeds" go to this scholarship. Please explain?&lt;/strong&gt;&lt;br /&gt;The proceeds include EVERYTHING but paypal fees, which run around 3%. 97% of your donation will go to the scholarship fund. The only exception is the Umbros, which you must pay for.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;How do I know this is for real?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;I will review every song on the playlist. I'll also post the playlist for everyone to "enjoy" on this site.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Can I request a specific timeslot?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Sorry, no. The order will be larger donors first, followed by people I know most personally, followed by everyone else. Both lists of people will follow chronological order.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;What can I submit?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;ANYTHING! There are a few rules / suggestions. First, your submission must be in mp3 format. Second, please pay for the song you want to force upon me. Don't steal. You can supply whatever you want. You can make me listen to Nancy Reagan give "Just Say No" speeches. Again, the rules are wide open!&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;What if I stumped you?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Pshaw. Soulseek has EVERYTHING.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;What if you liked my song?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;You lose. Better luck next time :)&lt;/p&gt;&lt;p&gt;&lt;strong&gt;What if you trip/fall/get hit by a bus before you run?&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Things happen. If, for some odd reason, I can't run on October 20 and I'm healthy, I will make the day up. Trust me -- I do NOT want to miss this race. If, god forbid, I am NOT healthy, then proceeds still go to the charity, and I'll listen to your playlist from the hospital.&lt;/p&gt;&lt;p&gt;Thanks in advance, everyone, for helping out. Stay tuned to this site for official details.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6903891101761324538-7489128641932082609?l=gregswallow.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://gregswallow.blogspot.com/feeds/7489128641932082609/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6903891101761324538&amp;postID=7489128641932082609' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7489128641932082609'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6903891101761324538/posts/default/7489128641932082609'/><link rel='alternate' type='text/html' href='http://gregswallow.blogspot.com/2007/10/inaugural-torture-runner-charity.html' title='Inaugural Torture a Runner Charity'/><author><name>Greg Swallow</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
