<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet href="/templates/default/atom.css" type="text/css" ?>

<feed 
   xmlns="http://www.w3.org/2005/Atom"
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/">
    <link href="http://www.undrground.org/index.php?/feeds/atom.xml" rel="self" title="Undrblog" type="application/atom+xml" />
    <link href="http://www.undrground.org/"                        rel="alternate"    title="Undrblog" type="text/html" />
    <link href="http://www.undrground.org/rss.php?version=2.0"     rel="alternate"    title="Undrblog" type="application/rss+xml" />
    <title type="html">Undrblog</title>
    <subtitle type="html"></subtitle>
    <icon>http://www.undrground.org/templates/bulletproof/img/s9y_banner_small.png</icon>
    <id>http://www.undrground.org/</id>
    <updated>2010-08-22T19:12:04Z</updated>
    <generator uri="http://www.s9y.org/" version="1.4.1">Serendipity 1.4.1 - http://www.s9y.org/</generator>
    <dc:language>en</dc:language>

    <entry>
        <link href="http://www.undrground.org/index.php?/archives/108-Blackberry-storm,-long-term-review..html" rel="alternate" title="Blackberry storm, long term review." />
        <author>
            <name>War</name>
                    </author>
    
        <published>2010-08-22T19:12:04Z</published>
        <updated>2010-08-22T19:12:04Z</updated>
        <wfw:comment>http://www.undrground.org/wfwcomment.php?cid=108</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.undrground.org/rss.php?version=atom1.0&amp;type=comments&amp;cid=108</wfw:commentRss>
    
    
        <id>http://www.undrground.org/index.php?/archives/108-guid.html</id>
        <title type="html">Blackberry storm, long term review.</title>
        <content type="xhtml" xml:base="http://www.undrground.org/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                I've had my blackberry storm for a little over a year now.  I've decided to follow up on my previous posts regarding this phone and my opinion of it.. <br />
<br />
What this phone is good at: <br />
<br />
Email, that's about it.  <br />
Its interaction with BIS to handle email is pretty trouble free.  Except if you're setting up multiple accounts, I actually had to call Verizon and have them reset my login because the setup wizard creates a basically useless accound on the BIS, to add a second you here to get that unlocked. Which brings me to the relative stupidity of this email model. Yes, it works, and works well once configured, but why do things this way?  Why can my phone not talk directly to my e-mail server?  What is RIM protecting it from?  I'm an e-mail administrator, in the case of every e-mail address I use, I am in complete control of both the server, and the client.  Why can't this be done on my phone as well?  Instead RIM needs to put their server in the middle?  Still, this aside, the blackberry does do email well.  <br />
<br />
What this phone is not good at: <br />
Everything else. <br />
Seriously, I've not found one other thing that this phone does well enough that I'm willing to look past its flaws.  <br />
<br />
Web Browsing<br />
The browser is slow, clunky, and is actually painful to use.  I rarely use the browser because of its difficulties. <br />
<br />
Apps<br />
I'd like to say that this phone has decent app support.  But it doesn't.   If you want a phone with lots of apps, get an Android device, or an iPhone.  No one seems to make decent apps for the BB.  Yes, theres apps, you can usually find something to make your BB do what you want it to, but it's never a fit and polished as an app for more popular devices.  <br />
<br />
Text input<br />
For a Blackberry, the text input on this phone is actually rather horrid.  The Surepress screen, while comforting at first, becomes clumbsey, and actually slows you down.  At the point where you'd be getting used to touch-screen input on another device, you find that now you're held back by this damned press screen.  I use the SureType input method. This is similar to the BlackBerry Pearl's input method, where you're presented with a qwerty format, where each key is shared by two letters.  Its the closest thing to a qwerty keyboard that you can use with one hand.  In landscape mode, you get a true qwerty, but its even slower than Suretype because of this damned surepress screen.  On top of that, you don't get very good feedback on what key you're about to press.  <br />
<br />
Overall performance<br />
The phone performs ok, but not for long.  After a few days the phone starts to slow down, and eventually becomes so painful to use that it needs to be reset by pulling the battery.  <br />
<br />
On top of all that, the phone lacks one of the things that I think all smart phones on the market today should have.  ActiveSync support.  Any business phone should be able to talk to an ActiveSync server if it wants to be a contender.  RIM doesn't want you to have this feature, because they want you, or your company, to buy a BES.  I purchased an app, which adds ActiveSync, but running it in the background eats up resources like you wouldn't believe.  If i run it, i get about 3 days between reboots on the phone.  If I don't run it, i get about a week. <br />
<br />
<br />
<br />
All that being said, I intend to upgrade to a Droid device as soon as I can.   
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.undrground.org/index.php?/archives/107-its-a-girl!.html" rel="alternate" title="it's a girl!" />
        <author>
            <name>War</name>
                    </author>
    
        <published>2010-08-18T14:41:15Z</published>
        <updated>2010-08-18T14:41:15Z</updated>
        <wfw:comment>http://www.undrground.org/wfwcomment.php?cid=107</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.undrground.org/rss.php?version=atom1.0&amp;type=comments&amp;cid=107</wfw:commentRss>
    
            <category scheme="http://www.undrground.org/index.php?/categories/2-General" label="General" term="General" />
    
        <id>http://www.undrground.org/index.php?/archives/107-guid.html</id>
        <title type="html">it's a girl!</title>
        <content type="xhtml" xml:base="http://www.undrground.org/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                I'm a few days late reporting this, because I've been busy, but on 8/13 my wife delivered our baby girl!  A full account of this ordeal can be found <a href='http://www.littlelagers.com/index.php?/archives/38-The-nursery....-Is-complete..html'>here</a>.<br />
<br />
 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.undrground.org/index.php?/archives/106-Civil-rights-has-failed..html" rel="alternate" title="Civil rights has failed." />
        <author>
            <name>War</name>
                    </author>
    
        <published>2010-06-13T16:28:51Z</published>
        <updated>2010-06-13T16:28:51Z</updated>
        <wfw:comment>http://www.undrground.org/wfwcomment.php?cid=106</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.undrground.org/rss.php?version=atom1.0&amp;type=comments&amp;cid=106</wfw:commentRss>
    
    
        <id>http://www.undrground.org/index.php?/archives/106-guid.html</id>
        <title type="html">Civil rights has failed.</title>
        <content type="xhtml" xml:base="http://www.undrground.org/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                Yesterday I hopped on to Facebook to check in for the evening.  I found a friend of mine had posted a link to a news article.  His comments made me think (before i even read the article) that he was shocked at the content, and disagreed with it. After I read the article, and watched the attached broadcast news clip, I understood why. <br />
<br />
The article, <a href="http://www.aolnews.com/article/hallmark-yanks-card-after-complaints-of-slur-against-black-women/19513764?icid=main%7Cnetscape%7Cdl1%7Clink5%7Chttp%3A%2F%2Fwww.aolnews.com%2Farticle%2Fhallmark-yanks-card-after-complaints-of-slur-against-black-women%2F19513764">about a Hallmark graduation card, which offended the NAACP</a> went on to describe how one of these greeting cards, with the cheapo internal speakers, that plays a greeting when you open it, was demeaning to black people, and the <a href="http://www.naacp.org/home/index.htm">NAACP</a> was making a stink over it.  Hallmark, in order to avoid offending people (which is noble enough) decided to remove the card from shelves and apologized.  They also stated that the card had been out on shelves for 3 years, and no one had complained thus far.   <br />
<br />
The complaint, to sum up for anyone who hasn't read the article, was that the audio in the card used the term "black whores", and this was obviously intended to stifle the aspirations of black women.  I'll say this.  If the card ACTUALLY SAID THIS, I'd agree 100%, lead the charge against Hallmark for being such insensitive ass holes, and probably wouldn't be writing this blog post....   Yea, so that's what I'd be doing if there was a legitimate complaint there.  The card didn't say that however, it said "black holes".  The card was themed after the solar system, talking about how the graduate could take on anything.  I wasn't able to find a full transcript from the card, as that would give you, you know, CONTEXT, but here's the offending snip.<br />
<br />
<blockquote>And you black holes, you are so ominous. Watch your back</blockquote><br />
<br />
What are these people thinking?  How could someone seriously believe that hallmark would really release a card with such an obviously racist, no, outright offensive, statement?  Short answer?  These people are LOOKING FOR A FIGHT.  The race issue, in my opinion, is calming down.  We have after all elected a mixed race president, and you know what, the man's race never enters my mind.  I disagree with his politics, but that's how it should be, right?  If you ask me, racism would slowly vanish if groups, and individuals would stop playing the victim and bringing it back to the forefront.  <br />
<br />
Let me show you where I'm coming from before I go down the rant highway.  I'm in my early 30's, I live in a nice neighbourhood, I have a wife, two dogs, and a kid on the way.  I have a steady job, I work for what I have, and I like it that way.  Yea, sure, everyone likes something for free, and I'm no exception, but I refuse to live off of someone else.  I live within my means as best as I'm able.  I'm not racist.  Personally I think that the majority of our society have moved past race.  Yea, it's still out there, but it's not like a minorities have to fight for the right to sit and eat at a restaurant, or get a job where they're competing with white people. <br />
<br />
In fact, it's to the point where things are almost the opposite.  It's more difficult for me to live, as your average white guy, because I'm paying for government programs that help out minorities.  Tuition, assistance, all sorts of leeway for anyone who's not white.  I'm starting to feel like <em>I</em> am the minority here!  <br />
<br />
This is what I mean when i say civil rights has failed.  Not that the minorities and those with disabilities that this is meant to help are not getting help, but that they're getting so much help that it's actually hurting the rest of us. <br />
<br />
 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.undrground.org/index.php?/archives/105-Migrating-accounts-and-user-data-from-one-Zimbra-OSE-to-another..html" rel="alternate" title="Migrating accounts and user data from one Zimbra OSE to another." />
        <author>
            <name>War</name>
                    </author>
    
        <published>2010-06-02T13:32:01Z</published>
        <updated>2010-06-03T14:00:56Z</updated>
        <wfw:comment>http://www.undrground.org/wfwcomment.php?cid=105</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.undrground.org/rss.php?version=atom1.0&amp;type=comments&amp;cid=105</wfw:commentRss>
    
    
        <id>http://www.undrground.org/index.php?/archives/105-guid.html</id>
        <title type="html">Migrating accounts and user data from one Zimbra OSE to another.</title>
        <content type="xhtml" xml:base="http://www.undrground.org/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                A few months ago, I inherited a used server, and decided to install xen on it, and then create myself web and mail vm's.  This would then replace my current web server. <br />
<br />
I installed a web vm, which works nicely, a second web vm for a friend, and finally, a Zimbra VM. The Zimbra vm was troublesome.  My hardware was old, it wasn't the best platform for virtualization, and zimbra seems unhappy in a xen VM. <br />
<br />
After i finished migrating all of my data from my old web server to the new web vm, i decided to give zimbra a shot on metal.  So i installed Zimbra on my old web server (after stripping out all of my web related accounts and services of course).  Performance was better, and zimbra seemed happier.  So i set about trying to find a nice clean way to move all of my zimbra data from the VM, to the new install. <br />
<br />
Well,  Open Source Edition does not include the nice backup features of Network Edition, which would have probably made this a lot easier.  So I was left to find my own means. I found some talk on the zimbra forums about how this might be accomplished.  Simply install zimbra on the target server, then copy /opt/zimbra from the source server, to the destination server.  This depends on similar configurations on both ends though, and this did not end well for me.  After hours of work (and hours of an scp copy) i ended up with a zimbra install that appeared to function, but postfix was hosed beyond belief.  This seems at least partially due to the fact that my target system had a different hostname than the source system. This was almost a necessity for me, as my vm server, and my old web server are located in different datacenter's, many many miles apart. <br />
<br />
So i decided to give something else a shot.  Let's take zimbra's ldap, mysql, and store, and just tear it out of the source and import it into the target.  Here's how i did it:<br />
<br />
I started out with two servers.  One the production server (source, "interchange") and one the newly setup server (target, "stimpson").  On the target, i installed zimbra, fresh and clean.  I did a few customizations during the install such as time zone, and alert e-mails, but nothing fancy. <br />
<br />
<br />
First, you'll want to stop your MTA on the source, so new mail coming in is queued at the sender.  This way you're sure not to miss any mail. <br />
<br />
<pre><br />
[zimbra@interchange ~]$ zmmtactl stop<br />
</pre><br />
<br />
Now, zimbra is still running, but it's not accepting mail.  Any mesages sent to our server should be queued at the sender, and re-tried later.  Don't leave your system in this state for too long however, as you have no idea how long the sending server will queue these messages.  A few hours is probably a safe bet. <br />
<br />
Now, backup all of your data. <br />
<br />
ldap:<br />
Zimbra, in zcs 6, includes a slapcat like script, for just this purpose.<br />
<pre><br />
[zimbra@interchange ~]$ /opt/zimbra/libexec/zmslapcat /tmp/foo<br />
</pre><br />
This places an ldap.bak file in /tmp/foo.  This is an ldif file, you can rename it.  I called mine interchange.ldif<br />
<br />
Mysql:<br />
I had to create a script for mysqldump, this was included in earlier versions of zimbra, but they removed it.  I'm not sure why.  <br />
I took ~zimbra/bin/mysql and copied it to ~zimbra/bin/mysqldump, and then modified it such:<br />
<pre><br />
[zimbra@interchange ~]$ cat ~zimbra/bin/mysqldump <br />
#!/bin/bash<br />
# <br />
# ****<strong> BEGIN LICENSE BLOCK ****</strong><br />
# <br />
# Zimbra Collaboration Suite Server<br />
# Copyright (C) 2004, 2005, 2006, 2007 Zimbra, Inc.<br />
# <br />
# The contents of this file are subject to the Yahoo! Public License<br />
# Version 1.0 ("License"); you may not use this file except in<br />
# compliance with the License.  You may obtain a copy of the License at<br />
# http://www.zimbra.com/license.<br />
# <br />
# Software distributed under the License is distributed on an "AS IS"<br />
# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied.<br />
# <br />
# ****<strong> END LICENSE BLOCK ****</strong><br />
# <br />
<br />
source `dirname $0`/zmshutil || exit 1<br />
zmsetvars mysql_directory mysql_socket zimbra_mysql_user zimbra_mysql_password<br />
<br />
exec ${mysql_directory}/bin/mysqldump -S ${mysql_socket} \<br />
    -u ${zimbra_mysql_user} --password=${zimbra_mysql_password} "$@"<br />
<br />
</pre><br />
<br />
Then, just dump mysql, as you would on any mysql server, you do not need to specify login credentials however, you'll see, that s included in the script. <br />
<pre><br />
[zimbra@interchange ~]$ mysqldump --all-databases > /tmp/foo/interchange.sql<br />
</pre><br />
<br />
Store:<br />
The store is simple (this includes the index as well). <br />
<pre><br />
[zimbra@interchange ~]$ tar czf /tmp/foo/interchange_store.tar.gz /opt/zimbra/store /opt/zimbra/index<br />
</pre><br />
<br />
Now, however its convenient for you, get all of these files to the target server. <br />
<br />
On the target, stop zimbra. <br />
<pre><br />
[zimbra@stimpson ~]$ zmcontrol stop<br />
Host stimpson.undrground.org<br />
	Stopping stats...Done.<br />
	Stopping mta...Done.<br />
	Stopping spell...Done.<br />
	Stopping snmp...Done.<br />
	Stopping archiving...Done.<br />
	Stopping antivirus...Done.<br />
	Stopping antispam...Done.<br />
	Stopping imapproxy...Done.<br />
	Stopping memcached...Done.<br />
	Stopping mailbox...Done.<br />
	Stopping logger...Done.<br />
	Stopping ldap...Done.<br />
</pre><br />
<br />
Now, i had to do some modification to my data files.  because of hostname changes and whatnot.  <br />
<br />
If you want to make a backup of /opt/zimbra in case something goes wrong, and you need to start with a fresh install, now's the time to do it. <br />
<br />
<pre><br />
[root@stimpson /opt]# cp -rp zimbra/ zimbra.fresh<br />
</pre><br />
<br />
Ldap contains all of your account data, AND a lot of your configuration.  I found it cleanest to strip all but the account data out.  This was done by beheading the ldif of the first 1615 lines.  You may need to look at your ldif and see if this is the right number for you, i found that an ldif i slapcatted from the target server (for comparison) had about 100 fewer lines that needed to be hacked off, so you'll have to look.  I found in the ldif file where the COS definitions started, and hacked off every thing before that.  This worked mostly well, i did run into one issue with one domain.  I'll cover that later.  <br />
<br />
I also searched for any occurance of "interchange" and swapped it with "stimpson". <br />
<br />
The sql file we dumped also needs to be updated.  A simple global search/replace for your old hostname, to your new hostname is all you need.  In my case, i searched for interchange, and replaced it with stimpson. <br />
<br />
Now, the real fun begins. <br />
<br />
Import ldap:<br />
Be sure zimbra is stopped (see above).<br />
Import your ldif with the following command:<br />
<pre><br />
[zimbra@stimpson ~]$  ~zimbra/openldap-2.4.21.3z/sbin/slapadd -F ~zimbra/data/ldap/config -l interchange.ldif<br />
</pre><br />
I did not capture the output of this command, it returns a progress bar, and then a success message. <br />
<br />
Mysql:<br />
In order to import mysql, you'll need mysql running.  It's safe to start up zimbra at this point, so go ahead. <br />
<pre><br />
[zimbra@stimpson ~]$ zmcontrol start<br />
Host stimpson.undrground.org<br />
	Starting ldap...Done.<br />
	Starting logger...Done.<br />
	Starting mailbox...Done.<br />
	Starting antispam...Done.<br />
	Starting antivirus...Done.<br />
	Starting snmp...Done.<br />
	Starting spell...Done.<br />
	Starting mta...Done.<br />
	Starting stats...Done.<br />
</pre><br />
<br />
You'll need to grab some information from your source, and target servers now.  Namely, the mysql password.  It will be different from one server to the next, and once you import your mysql dump, it will be reset (unless you go into the .sql file, and remove the piece which resets it.. up to you). <br />
<br />
<pre><br />
[zimbra@interchange ~]$ zmlocalconfig -s | grep zimbra_mysql_password<br />
zimbra_mysql_password = bob<br />
<br />
[zimbra@stimpson ~]$ zmlocalconfig -s | grep zimbra_mysql_password<br />
zimbra_mysql_password = joe<br />
</pre><br />
<br />
Yes, i've changed these passwords, theyre not actually bob and joe, i cant go giving my mysql password out to the world.  What you'll have here is some long, random, password.  Make note of both of them, and which servers they belong to. <br />
<br />
Once zimbra is started, mysql will also be running, so now we can import our database. <br />
<br />
<pre><br />
[zimbra@stimpson ~]$ mysql < interchange.sql<br />
</pre><br />
<br />
Once its imported, you'll find that you can no longer access mysql. <br />
<br />
<pre><br />
[zimbra@stimpson ~]$ mysql<br />
ERROR 1045 (28000): Access denied for user 'zimbra'@'localhost' (using password: YES)<br />
<br />
</pre><br />
<br />
This is because zimbra@localhost's password has changed.  The simplest way around this is to take zimbra's mysql script, and hack it up again. <br />
So i took ~zimbra/bin/mysql and copied it to ~zimbra/bin/mysql.mod then made the following change<br />
<br />
<pre><br />
[[zimbra@stimpson ~]$ cat ~zimbra/bin/mysql.mod <br />
#!/bin/bash<br />
# <br />
# ****<strong> BEGIN LICENSE BLOCK ****</strong><br />
# Zimbra Collaboration Suite Server<br />
# Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010 Zimbra, Inc.<br />
# <br />
# The contents of this file are subject to the Zimbra Public License<br />
# Version 1.3 ("License"); you may not use this file except in<br />
# compliance with the License.  You may obtain a copy of the License at<br />
# http://www.zimbra.com/license.<br />
# <br />
# Software distributed under the License is distributed on an "AS IS"<br />
# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied.<br />
# ****<strong> END LICENSE BLOCK ****</strong><br />
# <br />
<br />
source `dirname $0`/zmshutil || exit 1<br />
zmsetvars mysql_directory mysql_socket zimbra_mysql_user zimbra_mysql_password<br />
		<br />
exec ${mysql_directory}/bin/mysql -S ${mysql_socket} \<br />
    -u ${zimbra_mysql_user} --password=bob "$@"<br />
</pre><br />
Notice that --password says bob now. <br />
<br />
Now connect to mysql, and issue the following commands.  This is to reset zimbra's mysql password to what it was before the import.<br />
<br />
<pre><br />
[zimbra@stimpson ~]$ mysql.mod<br />
Welcome to the MySQL monitor.  Commands end with ; or \g.<br />
Your MySQL connection id is 328<br />
Server version: 5.0.90-log Source distribution<br />
<br />
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.<br />
<br />
mysql> use mysql;<br />
Reading table information for completion of table and column names<br />
You can turn off this feature to get a quicker startup with -A<br />
<br />
Database changed<br />
<br />
mysql> set password for 'zimbra'@'localhost' = password('joe');<br />
Query OK, 0 rows affected (0.02 sec)<br />
<br />
mysql> set password for 'zimbra'@'localhost.localdomain' = password('joe');<br />
Query OK, 0 rows affected (0.00 sec)<br />
<br />
mysql> set password for 'zimbra'@'%' = password('joe');<br />
Query OK, 0 rows affected (0.00 sec)<br />
<br />
mysql> quit<br />
Bye<br />
</pre><br />
<br />
Now mysql should be accessible to zimbra again. <br />
<br />
Now, the store, this is the easy part. <br />
<br />
Stop zimbra, you may not really need to do this, but it feels cleaner to me.<br />
<br />
Depending on the path included in your tar archive (remember, mine was /opt/zimbra/store) you'll want to change to the appropriate directory. Since mine includes the absolute path, i'm moving to /, as root. <br />
<br />
<pre><br />
[root@stimpson /]# tar xvzf interchange_store.tar.gz<br />
</pre><br />
Your store will decompress, in my case to /opt/zimbra/store<br />
<br />
Once it's complete, reset perms on /opt/zimbra store so that its owned by zimbra:zimbra. <br />
<br />
<pre><br />
[root@stimpson /]# chown -R zimbra:zimbra /opt/zimbra/store /opt/zimbra/index<br />
</pre><br />
<br />
Done!  Now you should be set to go, start up zimbra! <br />
<br />
Now you should be able to re-direct DNS, so that your MX for your zimbra domains are pointing to the proper place.  Also, whatever your webmail addresses are should be updated. <br />
<br />
For good measure, i also chkconfig off'd zimbra on the source server. <br />
<br />
Issues i had:<br />
I mentioned earlier that one of my domains didnt transfer over properly. I have about a half a dozen domains hosted.  One of them, which happens to be the first domain i setup, didnt come over completely.  All of the mailboxes were there, and i could login to them via webmail,.  The only time i saw an issue was when i viewed the domains in the zimbra admin, or if a piece of e-mail came in for one of the addresses at the broken domain.  They'd get bounced.  <br />
<br />
It seems to me that the ldap data i imported must have been incomplete.  I was able to fix it rather easily though. <br />
<br />
If i used zmprov to view all domains, the domain was listed.<br />
<br />
<pre><br />
zmprov getalldomains<br />
</pre><br />
<br />
But, if i tried to view detail on the broken domain, it returned an error stating that the domain didnt exist. <br />
<br />
<pre><br />
zmprov getdomain brokendomain.com<br />
</pre><br />
<br />
I assumed that zimbra added some sanity checking into their zmprov utility, and thought i'd give a simple modification to the domain a shot, and see if this fixed anything. <br />
<br />
I renamed the domain via zmprov, and then renamed it back to its original name.  <br />
<br />
<pre><br />
zmprov -l renameDomain brokendomain.com brokeddomain.com<br />
<br />
zmprov -l renameDomain borkeddomain.com brokendomain.com<br />
</pre><br />
<br />
This resolved the issue.<br />
<br />
<br />
<br />
Update:<br />
See my <a href="http://www.zimbra.com/forums/administrators/40576-migrating-zimbra-open-source-edition.html#post185615">thread</a> on zimbra's forums for another method.  Looks like I may have been able to accomplish this using the "Copy zimbra's home dir" method if i'd know about zmsetservername!<br />
<br />
Ah well, i like my method better anyway.  <img src="http://www.undrground.org/templates/default/img/emoticons/tongue.png" alt=":-P" style="display: inline; vertical-align: bottom;" class="emoticon" /><br />
<br />
<br />
Update: <br />
I found that my zimbra documents were not working, probably due to the wiki account changing.  <br />
<br />
The fix is simple, once you track it down. <br />
Find out what your global wiki account is,  you can get it with the following command:<br />
<pre><br />
[zimbra@stimpson ~]$ zmprov gacf | grep zimbraNotebookAccount<br />
zimbraNotebookAccount: wiki@stimpson.(domain.name)<br />
</pre><br />
(domain.name) is your actual top level domain, of course.  this is generally the fqdn of the first domain you setup, which is generally the fqdn of your zimbra server.<br />
<br />
Now do the following:<br />
<pre><br />
[zimbra@stimpson ~]$ zmprov in wiki@stimpson.(domain.name)<br />
Initializing folders <br />
Creating folder Template<br />
[zimbra@stimpson ~]$ zmprov ut -h stimpson.(domain.name) /opt/zimbra/wiki/Template/updating global wiki account wiki@stimpson.(domain.name)<br />
Initializing...<br />
Creating wiki page _PathBodyTemplate in folder Template<br />
Creating wiki page _Index in folder Template<br />
Creating wiki page _TocItemTemplate in folder Template<br />
Creating wiki page _TitleBar in folder Template<br />
Creating wiki page _PathItemTemplate in folder Template<br />
Creating wiki page _VersionTitleBar in folder Template<br />
Creating wiki page _Template in folder Template<br />
Creating wiki page _VersionIndex in folder Template<br />
Creating wiki page _TemplateStyles_unused in folder Template<br />
Creating wiki page _SideBar in folder Template<br />
Creating file document Logo.gif in folder Template<br />
Creating wiki page _VersionTemplate in folder Template<br />
Creating wiki page _TocVersionBodyTemplate in folder Template<br />
Creating wiki page _TocVersionItemTemplate in folder Template<br />
Creating wiki page _TemplateStyles in folder Template<br />
Creating wiki page _Footer in folder Template<br />
Creating wiki page _Header in folder Template<br />
Creating wiki page _TocBodyTemplate in folder Template<br />
Creating wiki page _PathSeparator in folder Template<br />
</pre> 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.undrground.org/index.php?/archives/104-Kernel-2.6.32-and-nVidia-issues..html" rel="alternate" title="Kernel 2.6.32 and nVidia issues." />
        <author>
            <name>War</name>
                    </author>
    
        <published>2010-05-27T16:43:33Z</published>
        <updated>2010-05-27T17:09:49Z</updated>
        <wfw:comment>http://www.undrground.org/wfwcomment.php?cid=104</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.undrground.org/rss.php?version=atom1.0&amp;type=comments&amp;cid=104</wfw:commentRss>
    
    
        <id>http://www.undrground.org/index.php?/archives/104-guid.html</id>
        <title type="html">Kernel 2.6.32 and nVidia issues.</title>
        <content type="xhtml" xml:base="http://www.undrground.org/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                I run Fedora on my workstation at work.  The machine has an nVidia Quadro 570 in it.  <br />
I have a cron job setup to use yum to check for updates and install them automatically every night.  This means i can keep my system up to date, and not have to really think about it.  This works mostly well. <br />
<br />
Well, I was running FC 12, which was on a 2.6.31 kernel. Once night the updates ran, and i was moved to a 2.6.32 kernel.  After a kernel upgrade, I need to rebuild my nVidia graphics driver against the new kernel. So i went through the routine of doing just that.  <br />
<br />
The problem is that, this time, X wouldnt load after the rebuild.  It would throw both of my displays into power save, and then completely hang my console input.  I didn't have much time to put into it when it first happened.  I worked on it for an hour or so, couldnt find the problem, and found that booting the old kernel (the 2.6.31.x kernel) i could get X to work as expected.  So i told yum to stop bothering to upgrade the kernel, and kept my working kernel, all was well. <br />
<br />
Yesterday however, I decided to upgrade to FC13.  After the upgrade process was complete, i found myself in the same boat, broken X, and this time, no option to drop back to an older kernel! So for the time being i threw in the stock nouveau driver, and got X up and running, so i could at least get back to work.  Today I dug a little deeper, and ran across a <a href='http://forums.fedoraforum.org/showthread.php?p=1325400'>thread on Fedora Forum</a> which seemed very similar to my issue.  It recomends adding the following to your kernel line in grub.conf:<br />
<br />
<pre><br />
iommu=soft<br />
</pre><br />
<br />
So i did just that, i ended up with:<br />
<br />
<pre><br />
title Fedora (2.6.33.4-95.fc13.x86_64)<br />
	root (hd0,0)<br />
	kernel /vmlinuz-2.6.33.4-95.fc13.x86_64 ro root=/dev/mapper/vg_lagermeister-lv_root rhgb SYSFONT=latarcyrheb-sun16 LANG=en_US.UTF-8 KEYTABLE=us nouveau.modeset=0 vga=0x318 iommu=soft<br />
	initrd /initramfs-2.6.33.4-95.fc13.x86_64.img<br />
</pre><br />
<br />
I'm venturing a guess here, but I think this means that my CPU supports IOMMU.  Possibly that the 2.6.31 and previous kernels did not have IOMMU enabled, and that in 2.6.32 it was enabled by default.  Thus, i had to deal with it at boot. Why this had any affect on my video card... I have no idea. <br />
<br />
This worked splendidly!  I'm up and running on the proprietary nVidia driver (which supports 3D, where nouveau dies not, yet), and all is well.  I seem to have a little bug where my displays flicker every so often, but otherwise, all is well.  <br />
 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.undrground.org/index.php?/archives/103-Jaton-GeForce-9500GT-cooling-problems,-with-a-slightly-creative-fix..html" rel="alternate" title="Jaton GeForce 9500GT cooling problems, with a slightly creative fix." />
        <author>
            <name>War</name>
                    </author>
    
        <published>2010-05-27T01:57:13Z</published>
        <updated>2010-05-27T01:57:13Z</updated>
        <wfw:comment>http://www.undrground.org/wfwcomment.php?cid=103</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.undrground.org/rss.php?version=atom1.0&amp;type=comments&amp;cid=103</wfw:commentRss>
    
            <category scheme="http://www.undrground.org/index.php?/categories/8-Hardware" label="Hardware" term="Hardware" />
            <category scheme="http://www.undrground.org/index.php?/categories/1-Technology" label="Technology" term="Technology" />
    
        <id>http://www.undrground.org/index.php?/archives/103-guid.html</id>
        <title type="html">Jaton GeForce 9500GT cooling problems, with a slightly creative fix.</title>
        <content type="xhtml" xml:base="http://www.undrground.org/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                A few months ago, around February, I built myself a new PC.  I decided to finally move into the multi-core and 64-bit arena.  I built a nice dual-core AMD 64-bit machine, with just shy of 2tb of storage, spread over 3 SATA drives.  I had them raid 5'd, to get 1.2tb, but, well, we'll just say that didnt end well.  I now have three individual drives, but thats a whole other blog entry. <br />
<br />
When I built this machine, I had planned on a rather nice (and rather expensive) video card.  It was $250 at the time.  Well, when it came time to put the system together, I'd found that i was lacking in the toy fund when it came to purchase the video card.  Star Trek Online was released, and my old machine wasnt cutting it, so i was itching to get this thing together, so i compromised on a temporary card.  I went to NewEgg's bargain bin (refurbs and returns) and picked out a decently spec'd video card which was returned, for $50.  The price was right, if i get a few months of use out of it I'm happy.  <br />
<br />
What I ended up with is a Jaton nVidia GeForce 9500 GT, and it works well, except for one major issue.  After a few minutes of gameplay, i get horrible framerates.  This will last for anywhere from a few seconds, to a few minutes, then it just clears up, for a bit, and then it comes back again.  Its outright painful at times.  <br />
<br />
So i set out trying to troubleshoot the issue.  My first thought was that it was a glitch in Star Trek Online (the only game I was playing at the time).  After hitting up the forums, and doing some troubleshooting on my own, i found that this was not the case.  I eventually found that the issue occurred in other games.  Including World of Warcraft, and Quake 4.  <br />
<br />
So I went and downloaded nVidia's monitor app.  Which allows you to watch things like memory utilization cpu, and temperature on the video card.  <br />
<br />
What i found was definite proof of what was wrong.  Heat!  The card would slowly build up to about 235 degrees F, and then hit some sort of threshold (probably a limiter which is there to keep it from overheating) until it cooled off a bit.  Then after it cooled sufficiently, the card would kick back in and perform properly.  Then I'd inevitably hit the limit again, and the sequence repeats. <br />
<br />
I started trying to come up with other ideas on how to keep this card cool.  My first thought was "What a piece of crap, they couldnt even design a chip cooler to keep this thing cool?!".  <br />
<br />
The case i put this machine in has a multitude of fans.  One of which actually blows DIRECTLY ON the video card. <br />
<br />
<a href='http://www.undrground.org/albums/videocool/DSC02250_Annotated.jpg'><img border='0' src='http://www.undrground.org/albums/videocool/DSC02250_Annotated.sized.jpg'></a><br />
<br />
I tried turning this fan around, as it seems that out of the box, ALL of the fans were intake fans, and no exhaust.  I turned this one around thinking it would help draw heat away from the video card.  This didnt help at all.  <br />
<br />
So i turned to the heat-sink on the card. Have a look at this thing. <br />
<br />
<a href='http://www.undrground.org/albums/videocool/DSC02253.jpg'><img border='0' src='http://www.undrground.org/albums/videocool/DSC02253.sized.jpg'></a><br />
<br />
I see the idea here.  The fan to the right is intended to blow (or pull?) air through the enclosure.  You cant see it very well in the picture, but its open at the left, exposing an aluminum heat sink.  My issue is that this obviously isn't working well.  So I took the card out and started having a look at it.  On the bottom of the card, there are four screws which hold the whole fan and heat sink on. <br />
<br />
<a href='http://www.undrground.org/albums/videocool/DSC02258_Annotated.jpg'><img border='0' src='http://www.undrground.org/albums/videocool/DSC02258_Annotated.sized.jpg'></a><br />
<br />
So i pulled out my old video card, which was getting almost no use in my old pc, which is now a media server.  I swapped it with an even older card i had laying around, and had a look at the fan/heat sink on this card. I noticed that it too is removable. <br />
<br />
<a href='http://www.undrground.org/albums/videocool/DSC02259_Annotated.jpg'><img border='0' src='http://www.undrground.org/albums/videocool/DSC02259_Annotated.sized.jpg'></a><br />
<br />
BTW, <a href='http://deadgentlemen.com/projects/the-gamers/the-gamers-dorkness-rising/'>The Gamers, Dorkness Rising</a>, excellent movie for ANYONE who's ever played DnD for any extent of time. <br />
<br />
<a href='http://www.undrground.org/albums/videocool/DSC02259_Dorkness.jpg'><img border='0' src='http://www.undrground.org/albums/videocool/DSC02259_Dorkness.sized.jpg'></a><br />
<br />
So anyway, I considered thieving the fan from the old card, and placing it on the Jaton.  This went well, until i realized that the mounting posts on the older cards fan, are about 1cm wider than the mounting posts on the Jaton card.  I briefly pictured breaking out my cordless drill, but decided against it. <br />
<br />
So I made a decision. <br />
<br />
<a href='http://www.undrground.org/albums/videocool/DSC02253_annotated.jpg'><img border='0' src='http://www.undrground.org/albums/videocool/DSC02253_annotated.sized.jpg'></a><br />
<br />
Basically, it seemed to me that the fan was inadequate, so it would make sense to allow more air to the aluminum fins.  This could be done with the case fan i pointed out earlier, or worse case scenario, one of those fans which mounts in an open expansion slot.  <br />
<br />
So I did just that. <br />
<br />
<a href='http://www.undrground.org/albums/videocool/DSC02256_Annotated.jpg'><img border='0' src='http://www.undrground.org/albums/videocool/DSC02256_Annotated.sized.jpg'></a><br />
<br />
Put the card back in the pc, and booted it up, the card is now idle at around 130 degrees F, and it seems to stay around there when i utilize the card (tested a few minutes in WoW, followed by a few minutes in Quake 4).  HOWEVER, I have noticed one case where the temp rose again, up to the limit, causing the old framerate issue.  I exited my game, and let the system rest for a bit, the temp hung around 200 degrees for a long time, and then suddenly dropped to 130 again.  This leads me to believe that the fan on the card is actually failing. Or, perhaps the fan is controlled by something, and it kicks on and off.  Though, i'd expect it to kick ON when the system is under load, and not when it's been idle for 15 minutes.  I think the next step will be one of the previously mentioned slot fans.  This should solve the problem permanently.  
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.undrground.org/index.php?/archives/102-How-apple-is-stifling-innovation..html" rel="alternate" title="How apple is stifling innovation." />
        <author>
            <name>War</name>
                    </author>
    
        <published>2010-05-23T01:14:38Z</published>
        <updated>2010-05-23T01:14:38Z</updated>
        <wfw:comment>http://www.undrground.org/wfwcomment.php?cid=102</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.undrground.org/rss.php?version=atom1.0&amp;type=comments&amp;cid=102</wfw:commentRss>
    
            <category scheme="http://www.undrground.org/index.php?/categories/4-Rants" label="Rants" term="Rants" />
            <category scheme="http://www.undrground.org/index.php?/categories/1-Technology" label="Technology" term="Technology" />
    
        <id>http://www.undrground.org/index.php?/archives/102-guid.html</id>
        <title type="html">How apple is stifling innovation.</title>
        <content type="xhtml" xml:base="http://www.undrground.org/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                Has anyone else noticed this?  I have, for a very long time, been opposed to the popular game in town, and instead rooted for the little guy.  In high school I never strove to be popular, I ran cross country instead of trying to get on the football team.  A junior in high school, i started trying to move to linux, getting away from Microsoft.  I've always done things based on my own research, what works for me, and not based on current trends.  So read this article, knowing that I personally feel that Apple is becoming "Trendy", and I am somewhat bias against "Trendy".<br />
<br />
Next time you're at a high school, shopping mall, college campus, grocery store, or anywhere that a lot of people with cel phones.  Look around.  Look at people using their phones, and see if you can identify some of what you see kids fiddling with while theyre waiting in line to check out, what devices people are hugging to their cheek.  You may notice an abundance of iPhones.  Ok, so I see a lot of reasons for that.  First, Apple is very good at marketing.  Apple is also very good at writing decent software.  And on top of all of that, well, the iPhone is indeed a slick device.  So what the hell am i complaining about?  <br />
<br />
There are a ton of touch screen phones out there.  A ton of popular smart phones in general. Ever hear of a little manufacturer called BlackBerry?  Theyve been producing phones for much longer than Apple.  It's easy to see however why the iPhone is more popular, its more fun, its got a slicker interface, and apple's marketing machine is no less than stellar. <br />
<br />
So you're still wondering what I'm getting at. <br />
<br />
Ok, here we go. How many people out there have left Microsoft to go to Apple?  I'm going to say... a lot.  Now, how many have left Microsoft to go to Linux?  Not nearly as many.  How many people do you see going out and spending less on a PC, and then installing linux on it.  Versus how many people you see spending a fortune on similar hardware, for the privilege of using an Apple?  Linux could kill Microsoft.  Linux, a project which is free for anyone to install/use.  A system which is more secure than windows.  A system which is infinitely customizable.  A system... which is only used by geeks and open source activists.  <br />
<br />
This is my point.  If apple weren't so popular, if they weren't convincing people that the privilege of using an apple was worth the extra price tag... Then other projects might get more attention.  There are projects that have been terminated because of apple's success.  An example is HP's slate.  It was dropped shortly after the release of the iPad. <br />
<br />
Look at MP3 players.  The mp3 music sales industry caters to the iPod, and all other mp3 players need to live up to the standard that the iPod has set.  Even if these other players may feature more options, other features, more storage space, if theyre not a clone of an iPod, theyre not accepted.  Everyone wants the iPod.  <br />
<br />
Am i saying everyone should boycott apple, and start looking for other products?  No, i'm just ranting.  Take it for what its worth.  <img src="http://www.undrground.org/templates/default/img/emoticons/laugh.png" alt=":-D" style="display: inline; vertical-align: bottom;" class="emoticon" /> 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.undrground.org/index.php?/archives/100-Your-role-as-a-netizen..html" rel="alternate" title="Your role as a netizen." />
        <author>
            <name>War</name>
                    </author>
    
        <published>2010-04-27T21:06:02Z</published>
        <updated>2010-04-27T21:06:02Z</updated>
        <wfw:comment>http://www.undrground.org/wfwcomment.php?cid=100</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.undrground.org/rss.php?version=atom1.0&amp;type=comments&amp;cid=100</wfw:commentRss>
    
            <category scheme="http://www.undrground.org/index.php?/categories/1-Technology" label="Technology" term="Technology" />
    
        <id>http://www.undrground.org/index.php?/archives/100-guid.html</id>
        <title type="html">Your role as a netizen.</title>
        <content type="xhtml" xml:base="http://www.undrground.org/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                This somewhat links to my post on <a href='http://www.undrground.org/index.php?/archives/99-Privacy-online..html'>Privacy Online</a>, if you want a little bit of back story, well, there it is.  I thought I'd follow up with a little bit about what we should all be responsible for in our online lives.  This is all my opinion.  I don't claim to be an authority, but this is my bog dammit.  Read if it you want, otherwise, go look up some porn, or start a flame war on Facebook. That's what the internet's for, right?  Looking up illicit material, and getting into arguments over politics, religion, pet ownership, or whatever.  Right?  <br />
<br />
Well, not really.  That's what the internet has turned into.  Here's a brief and history lesson (which admittedly comes from my memory, and cites no references).  The internet, in its infancy, was used for communication, and early on, but colleges.  It was used to internetwork research labs, and libraries, and pass factual information around.  So a student in California could collaborate with a student in New York, without leaving his lab.  One of my first memories of the internet was researching for a science paper that I had due.  It was a bout black holes.  My dad had just gotten an internet connection, and we decided to put this thing to use.  So we hopped on our blazing fast 14.4kbps dial-up connection, and went to Webcrawler, and started searching.  We found a pamphlet online on the subject, it came direct from Greenwich Observatory, in England.  This was astounding to me!  We'd gone into a computer in England, and gotten information and saved it on my dad's computer, all for the cost of a monthly subscription to an ISP, and a telephone line.  Wow! <br />
<br />
Today, that's not so amazing.  I mean, you can video chat with some dude in Asia, while downloading your porn and reading the NY Times.  It's second nature to us now, its become integral to our lives.  The little story about the research paper, that was only about 15 years ago.  Since then, connectivity to the internet has changed, a lot!  Bandwidth that would have cost a fortune, and required a leased optical line to your premises back then is now commonplace, and sold for $40/month from your digital cable or DSL provider. At that price, everyone's online now.  Even if theyre at the lower end, or even still using the dreaded dial-up service.  You'd be hard pressed to find someone who has NO contact with the internet.  And its not just on your computer anymore, cel phones, media players, and other hand-held devices.  You can pull a device out of your pocket, or off of your belt, or in some cases out of your back pack, and there you have the wealth of information that is the internet at your disposal. <br />
<br />
I use the term wealth of information loosely.  Now you'll see how my little stroll down memory lane ties into the subject of YOUR role as a participant in this global thing called the Internet.  See, back in 1995, when i was working on my research paper on black holes, the internet was a different place.  Yes, there was porn, and there was illicit material, and even some illegal activities, but there was also this huge amount of <u><strong>factual</strong></u> information.  Yea, you heard me right, information, based on fact, as in, the kind you can reference.  Not ridiculous opinions presented as fact, not flat out lies presented as fact, but actual fact.  Yes, it's still out there, but you need to know how to find it.  Is this right?  When you go to the library, do you have to read 4 books on the same subject in order to decide if the information you're reading in one book is correct?  Sure, if you want to be thorough, but really, if you pick up a book at the library, and its presented to you as fact, there's a pretty good chance that it ACTUALLY IS FACT.  <br />
<br />
What does this have to do as your role as a netizen?  Well, not a whole lot, except that you should try to do your best to avoid propagating lies as fact.  A good example is these viral chain e-mails and microblog posts about how some such event is going to change the face of (insert service here) and the only way to prevent it is to (insert action here).  I can remember these from back as far as the early ICQ days.  This was before AOL bought out <a href='http://en.wikipedia.org/wiki/Mirabilis_%28company%29'>Mirabillis</a>, and the ICQ service became their property, mid 90's or so.  There were messages that spread like wildfire saying things like "Mirabillis is going to start charging for ICQ unless you send this message to every flipping person on the planet!".  Or the famous, "Bill gates will send you money if you forward this e-mail on", which went on to say how Microsoft is tracking this e-mail, and if you send it to people, you'll get your slice of some exorbitant amount of money.  Nevermind the fact that it's almost impossible for someone to accurately track an e-mail like that.  Its not like an e-mail can phone home.  At least, not without some sort of attached application.  This method of spreading panic has moved its way on to pretty much every social network i've ever been a part of.  I see it on facebook, i've seen it on myspace, and so many others before them.  Before you spread something like this, think about it, i mean really think about it.  Take a ride over to <a href='http://www.snopes.com'>Snopes</a> and try to find an article referencing the item that you're about to continue to spread.  If you find reason to believe it's true, then ok, post away, but if you find evidence to the contrary, stop in there, or even better, spread the correct information in its place! <br />
<br />
Now comes the good part.  Protecting yourself online... Imagine the battlefields of old, where wars were waged with swords, maces, bows and arrows.  Warriors went into battle wearing armour, and carrying some weapon with which to defend themselves.  To do otherwise would be suicide.  Now imagine the internet as that battlefield, and your computer as the warrior.  If your computer isn't wearing its armour, it's going to get killed.  There are a lot of threats out there.  Spyware, viruses, adware, attackers... Sounds like a lot to deal with, right?  Well, not if you're prepared.  First, it's good to be knowledgeable of what you're getting into.  Be aware of current threats.  I don't mean that you need to go and get a Computer Science degree, but keep an ear to the ground for threats.  There are lot of web sites which publish these things.  Subscribe to an RSS feed, or just hit up one or two of these sites a few times a week, just to see what's out there.  Know your enemy so to speak.  <br />
<br />
Next, consider your computer.  Think about what OS you're running, and what its vulnerable to.  It's pretty common knowledge that Windows is a target for many viruses and malware.  There are a number of reasons for this, but I could write a whole other post about that.  So if you're running windows, you need to be on the alert.  Keep your computer up to date.  Microsoft makes this relatively easy by building automatic updates into your OS.  If you cant be bothered with actively going and installing these updates ever so often, then turn on auto-updates, and let them install for you while you're sleeping.  The next thing to consider is Anti-Virus.  Keep one on your computer, keep it running, and keep it up to date.  I personally use <a href='http://free.avg.com/us-en/homepage'>AVG Free</a> on my windows machines. Is this the best on the market?  No, but it's free, and it works well for me.  The last thing to consider is a firewall.  Personally, i run a pretty lax firewall on my pc's, but then i protect my network with a firewall in between me and the internet.  I do this via a <a href='http://www.smoothwall.org'>Smoothwall Express</a> machine acting as my internet gateway.  It's connected to my cable modem, and then my network accesses the internet through it.  You could also use a personal firewall, such as the windows firewall, or a 3rd party application.  I could get into a long talk on network security, but I'll spare you. <br />
<br />
Yea, that was all about Windows, the same ideas apply to other OS's.  Personally, I like linux.  I run linux on my workstation at work (solely linux, no dual-boot), and my laptop, and home pc both dual boot Windows 7 and Linux.  IMHO, you cant beat the security on linux.  Again, i could go nuts listing the reasons, but we'll just say that at a core level, linux is just more secure than Windows.  Much of this applies to MacOS X as well.  The same basic principles apply however.  Anti-Virus, and Firewalls are still a good idea. <br />
<br />
So, we've covered your pc, and the spread of nonsense.  How about you, as the user?  It's simple really.  In the words of Wil Wheaton, "Don't be a dick".  Yea, I know it's fun to poke at people from across the world because they have no way to retaliate, other than poking back at you, but really... If you wouldn't do it to someone's face, don't hide behind your computer and do it.  We're all guilty of this from time to time, but make an effort, and the 'net will be a better place.  Other than that, just try to educate yourself on how the magical machine you're sitting behind works!  Yes, I know it's daunting, I know that your dvd player, your computer, and your cel phone all hold quite a bit of mystery.  A computer is not that complex of a device when you get down to it.  Well, it is, but you can get a general understanding of its parts and what they do without spending 4 years in higher education.  Once you have that basic knowledge, you're really much better off than most of the average users on the internet.  Go read about it, and learn things, you'd be surprised how simple some of this computer magic really is!<br />
<br />
Last but not least, protect your identity.  There are a lot of people out there who want to collect as much information about you as possible, and use it against you.  Whether its for advertising, or identity theft.  See my entry on Privacy (linked above) for a more in-depth look at protecting your privacy online.  If you get an e-mail, asking you for personal information, please take a really good hard look at it before you blindly reply.  Any company who's asking you for your password in an e-mail really needs to take a good hard look at their security practices.  Under no circumstances should you ever send someone your personal information in an e-mail unless you've encrypted it using a method that only the intended recipient can decrypt.  I mean it, seriously, if a legitimate company asks you for your password in an e-mail, you should either stop dealing with them, or call them and ask them if they're really serious.  E-mail, unless you've made an effort to make it otherwise, is clear text.  If someone intercepts your message, they can see what's in it. <br />
<br />
So anyway, there it is, now go, be a productive member of the 'net.   
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.undrground.org/index.php?/archives/99-Privacy-online..html" rel="alternate" title="Privacy online." />
        <author>
            <name>War</name>
                    </author>
    
        <published>2010-04-01T14:05:43Z</published>
        <updated>2010-04-01T14:54:37Z</updated>
        <wfw:comment>http://www.undrground.org/wfwcomment.php?cid=99</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.undrground.org/rss.php?version=atom1.0&amp;type=comments&amp;cid=99</wfw:commentRss>
    
            <category scheme="http://www.undrground.org/index.php?/categories/2-General" label="General" term="General" />
            <category scheme="http://www.undrground.org/index.php?/categories/1-Technology" label="Technology" term="Technology" />
    
        <id>http://www.undrground.org/index.php?/archives/99-guid.html</id>
        <title type="html">Privacy online.</title>
        <content type="xhtml" xml:base="http://www.undrground.org/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                So I'm listening to online radio, and one of the commercials i keep hearing is for this service called Privacy Defender.  They tell you how all of this information that you thought might be private is floating around the internet.  The continue to scare the crap out of you by stating that prospective employers, significant others, and others might go find this information online, and it could affect their opinion of you. <br />
<br />
First I'd like to say that this is nothing more than a company preying on your fear and dis-information to try to make a buck.  The idea that you could hire someone to go about erasing your identity from the internet is ridiculous.  You may or may not be aware of how "The Internet" works.  So I'll give you a basic run down.  There is no thing called "The Internet" which is operated or controlled by some group.  The network that we perceive as this mysical thing which you can go play games on, chat with your friends, or (imagine this) research things you'd like to know more about, is a conglomeration of many computers, all containing data, which is then shared out to all the rest of the members on the network.  If you're reading this blog, on your computer, sitting in your living room, you're an equal member of this network as any other machine that's connected.  You could be a web server, you could be a mail server, providing that your ISP allows you to.  <br />
<br />
You control your information.  If you don't want others to have it.... Dont share it!  Keep in mind, that a lot of your information is considered public knowledge, and can be obtained through the court house, or even your local library.  If you've already jumped in both feet, and your information is everywhere, well, go try to get it back.  A lot of web site administrators will cooperate with you if you go to them in a professional manner.  I don't know if they're legally obligated (or, even if they should be) to remove your data, but ask them, if theyre reasonable, they'll help you out.  If they won't, don't sue them.  It's different if they've obtained private data about you and published it without your knowledge. If you've posted some embarrassing pictures of you and your college room mate making out at some frat house party in college, you put it there, you should have thought better of it before you posted it.  If someone else posted it because they were at the frat house party, and took a picture of you, and you let it happen, then maybe you should have thought of that and tackled them and deleted the picture from their phone.  Contacting the site operator is essentially what services like Privacy Defender would do.  Of course, i don't know what goes on under the sheets of Privacy Defender, but knowing what i know about running a web server, what else could they do?  They can't go and remove things from my server, they have to go to Me, the operator of the server, and ask nicely.  The only power they have that you might not, is a knowledge of the law and perhaps sleazy lawyers that know how to exploit it.<br />
<br />
I recently watched an interesting video, where Eben Moglen spoke in front of a group about "Freedom in the cloud".  I'll embed the video in a moment, if you'd like to watch it.  He made some very good points regarding privacy, a user's role in the internet, and how we've all blindly given our information away.  If you use Facebook, i'd highly recommend you watch this video.  It's a little dry, and some of it's a bit technical, but it brings out some very important details about what the guys at facebook (and other social networking sites for that matter) can do with your data! <br />
<br />
<object width="640" height="385"><param name="movie" value="http://www.youtube.com/v/QOEMv0S8AcA&hl=en_US&fs=1&color1=0x2b405b&color2=0x6b8ab6"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/QOEMv0S8AcA&hl=en_US&fs=1&color1=0x2b405b&color2=0x6b8ab6" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="640" height="385"></embed></object><br />
<br />
So, why am I posting this?  Well, watching that video really made me think about our society, and how intertwined our lives are with our online lives.  Slowly they're becoming one and the same.  This is a cool trend, but also a scary one!  When companies like facebook can, via a nicely worded EULA, claim ownership of all of the data you decide to post, where does your privacy go?  <br />
<br />
When i started getting involved with computers, BBS's, web communities, and things of the like.  I always used an alias, an avatar, to identify myself.  This is how it was done, this is how everyone did it.  If someone signed up with their full name as their username, you knew they were naive, and not privacy minded.  At that time, if you chose to sign up with some online community, the only person who had access to your data (other than the data you chose to make public) was the operator.  Was there still a chance of that operator doing nasty things with your data? Yes, but that was your responsibility.  You tried to keep track of who you were giving your data to, and what you gave them.  <br />
<br />
Today, we share some of our most private data without a through on sites like MySpace, and Facebook.  Sexual preference, the town you live in, how many kid's you've got, what their names are, what your favorite hobbies are, where you work, your political affiliation.  I could build a profile on you based on the information you post daily on Facebook.  On top of that, i can find out what you looked like from your picture gallery, or if i were a predator, what you're 14 year old daughter looked like... Combine all of that data, and someone could literally show up at your door, or stalk you at work, or god forbid, your children at school. <br />
<br />
Am i saying we should all leave social networking en-mass?  No, just be careful what you make public.  Keep in mind that ANYONE on the internet can find that data.  Dont set the password to your bank account online to some data that i could phish out of your facebook profile.  <br />
<br />
-War 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.undrground.org/index.php?/archives/97-4.2U-Wii,-homebrew-hack..html" rel="alternate" title="4.2U Wii, homebrew hack." />
        <author>
            <name>War</name>
                    </author>
    
        <published>2010-01-21T13:59:18Z</published>
        <updated>2010-01-21T16:38:21Z</updated>
        <wfw:comment>http://www.undrground.org/wfwcomment.php?cid=97</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.undrground.org/rss.php?version=atom1.0&amp;type=comments&amp;cid=97</wfw:commentRss>
    
            <category scheme="http://www.undrground.org/index.php?/categories/6-Games" label="Games" term="Games" />
            <category scheme="http://www.undrground.org/index.php?/categories/1-Technology" label="Technology" term="Technology" />
    
        <id>http://www.undrground.org/index.php?/archives/97-guid.html</id>
        <title type="html">4.2U Wii, homebrew hack.</title>
        <content type="xhtml" xml:base="http://www.undrground.org/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                A while ago, a <a href="http://www.facebook.com/inbox/?ref=mb#/profile.php?id=1492462077">friend of mine</a> helped me exploit my Wii, so that I could run the Homebrew channel.  There are many advantages to doing this, and for lots of reasons.  Not just game piracy.  Homebrew lets you install 3rd party apps on your Wii, which allow you to get some creative use out of the system.  You can also connect USB storage to your Wii, and use it to store your games, so that you dont need to swap discs around when you want to play a game. <br />
<br />
When we hacked the Wii, it was running update 3.6.  I'd stopped updating the Wii from Nintendo's update procedure because I assumed that they would probably tromp on my hacked wii, and restore the OS to its pristine condition, and I'd then have to go through re-hacking. <br />
<br />
Well, I knew this time would come.  I was forced into an update, so I could run the New Super Mario Brothers game.  I guess it has something to do with the ability for the players to interact as they do in the game.  So, i bit the bullet, and ran the update. It wasn't until after i ran the update that i found a number of reports on the 'net about how to update a hacked Wii, without actually running nintendo's update.  This would have kept my Homebrew intact, and still gotten me the update.  But, oh well, I was committed at this point.<br />
<br />
After some digging, I found a number of how-to's on the subject of hacking a 4.2U Wii.  4.2U being the most recent update.  I tried a number of them, and none of them worked.  Until i found <a href="http://forums.afterdawn.com/t.cfm/f-154/4_2_firmware_softmod_guide-all_systems_except_for_korean-823377">this how-to</a>, which was SOOOOO much easier to follow than some of the others.  <br />
<br />
Since i'd been through so many other failed attempts at hacking this system, and since it was hacked once before, i decided now was a good time to backup my save data, and format the Wii's system memory.  Luckily, i was able to backup all of my save data to an SD card, and then save that data to my PC.  I then performed the format, but wasnt able to put my save data back on the Wii until after i'd run each game at least once.  This meant i either had to break out all of my discs, or get homebrew and the usb loader working before i could get my save data off of my sd card.  So i started down the road to Wii-freedom.  In the end, it wasnt all that difficult, and i ended up with bootmii, which is a more secure replacement for Wii's boot2 loader, and the homebrew channel.  I also have all of my USB capability back, and once i get all of my homebrew software reinstalled, i'll have all of the functionality that i had before the format.  <br />
<br />
On top of all that, i can play Mario now.  <img src="http://www.undrground.org/templates/default/img/emoticons/laugh.png" alt=":-D" style="display: inline; vertical-align: bottom;" class="emoticon" /> 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.undrground.org/index.php?/archives/96-Some-good-ol-house-music-for-your-Tuesday..html" rel="alternate" title="Some good ol house music for your Tuesday." />
        <author>
            <name>War</name>
                    </author>
    
        <published>2009-12-29T14:18:40Z</published>
        <updated>2009-12-29T14:18:40Z</updated>
        <wfw:comment>http://www.undrground.org/wfwcomment.php?cid=96</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.undrground.org/rss.php?version=atom1.0&amp;type=comments&amp;cid=96</wfw:commentRss>
    
            <category scheme="http://www.undrground.org/index.php?/categories/7-Music" label="Music" term="Music" />
    
        <id>http://www.undrground.org/index.php?/archives/96-guid.html</id>
        <title type="html">Some good ol house music for your Tuesday.</title>
        <content type="xhtml" xml:base="http://www.undrground.org/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                I'm into quite a few types of music.  Mostly anything that has a good beat, and a deep sound.  I always imagine that a lot of people who have been exposed to my taste in music are baffled by the seeming variety of genre's I listen to. There's a theme believe it or not.  Its hard to describe.  I like bass, and I like guitar.  If its got a deep sound, I like it.  This can be found in a few genre's commonly.  Mostly electronic music, like House, and Trance, and a lot of Rock/Metal has the same element.  So, most of what I listen to falls into these few genre's. <br />
<br />
One of the DJ's that I started following while XM's "The System" was still on the satellite waves, is Zoltar.  He had two shows, The Mutant Dance Party, and Subterranean.  Both are shows where he plays mixes of club music.  Mostly house.  One of these shows can still be heard on Sirius/XM's "Area", though its never on when I'm able to listen since Sirius/XM has so royally screwed up the pricing for XM customers that I can no longer listen online (as i refuse to pay extra for a service which used to be included in my package), but i'm getting off topic.  You can still download podcasts of Zoltar at http://zoltar.podomatic.com, so this is how I currently listen to Zoltar.  <br />
<br />
I downloaded his most recent show, which is a year-end review, a best-of 2009 show. One of the songs that caught my eye.. er.. ear was Melleefresh, and Deadmau5 doing "Hey baby".  Nice beat, suggestive lyrics, but that's ok.  So I started hunting around online for an MP3, so I can listen to just that song whenever i'd like.  I found one, but in my search I also found a rather amusing YouTube video.  Something to think about before watching this video is this.  These are usually one-off DJ tracks.  A lot of them are not really professionally recorded.  Most of them do not have videos produced by the artist.  So, fans will create videos which sort of fit.  Most of them are videos just for the sake of being videos, some feature a still image and just play the music.  This one is a mash-up of a ton of different suggestive animations, which have been floating around the 'net forever.  So, if you don't mind suggestive lyrics, lots of looped almost-nakedness, and a deep progressive beat, then check out this video.  <img src="http://www.undrground.org/templates/default/img/emoticons/laugh.png" alt=":-D" style="display: inline; vertical-align: bottom;" class="emoticon" /><br />
<br />
<object width="560" height="340"><param name="movie" value="http://www.youtube.com/v/CUyPiohk1ck&hl=en_US&fs=1&"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/CUyPiohk1ck&hl=en_US&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340"></embed></object> 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.undrground.org/index.php?/archives/95-Star-Trek-Online..html" rel="alternate" title="Star Trek Online." />
        <author>
            <name>War</name>
                    </author>
    
        <published>2009-12-23T20:31:15Z</published>
        <updated>2009-12-23T20:31:15Z</updated>
        <wfw:comment>http://www.undrground.org/wfwcomment.php?cid=95</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.undrground.org/rss.php?version=atom1.0&amp;type=comments&amp;cid=95</wfw:commentRss>
    
            <category scheme="http://www.undrground.org/index.php?/categories/6-Games" label="Games" term="Games" />
    
        <id>http://www.undrground.org/index.php?/archives/95-guid.html</id>
        <title type="html">Star Trek Online.</title>
        <content type="xhtml" xml:base="http://www.undrground.org/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                Well, it looks like the game's going to make it out the gate!  After quite a bit of ups and downs.  Cryptic recently announced a release date (02/02/2010) and the game is available for pre-order. <br />
<br />
You also get some cool extra's for pre-ordering. <br />
<br />
I've pre-ordered, you should too!  <img src="http://www.undrground.org/templates/default/img/emoticons/tongue.png" alt=":-P" style="display: inline; vertical-align: bottom;" class="emoticon" /><br />
 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.undrground.org/index.php?/archives/93-Categories.html" rel="alternate" title="Categories" />
        <author>
            <name>War</name>
                    </author>
    
        <published>2009-10-21T13:14:15Z</published>
        <updated>2009-10-21T13:14:15Z</updated>
        <wfw:comment>http://www.undrground.org/wfwcomment.php?cid=93</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.undrground.org/rss.php?version=atom1.0&amp;type=comments&amp;cid=93</wfw:commentRss>
    
            <category scheme="http://www.undrground.org/index.php?/categories/2-General" label="General" term="General" />
    
        <id>http://www.undrground.org/index.php?/archives/93-guid.html</id>
        <title type="html">Categories</title>
        <content type="xhtml" xml:base="http://www.undrground.org/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                Just a quick note. <br />
<br />
I've taken a little time to setup categories, and then took a bit more time moving all of my entries into their appropriate categories. <br />
<br />
Given the random nature of this blog, i thought this would be helpful for those of you who like reading my tech articles, but dont really care about my other topics.  Now you can subscribe via RSS to just the categories you'd like to read. <br />
<br />
Enjoy!<br />
 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.undrground.org/index.php?/archives/91-SLES-10,-your-kernel-is-not-safe!.html" rel="alternate" title="SLES 10, your kernel is not safe!" />
        <author>
            <name>War</name>
                    </author>
    
        <published>2009-10-07T19:34:00Z</published>
        <updated>2009-10-21T12:32:23Z</updated>
        <wfw:comment>http://www.undrground.org/wfwcomment.php?cid=91</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.undrground.org/rss.php?version=atom1.0&amp;type=comments&amp;cid=91</wfw:commentRss>
    
            <category scheme="http://www.undrground.org/index.php?/categories/3-Linux" label="Linux" term="Linux" />
    
        <id>http://www.undrground.org/index.php?/archives/91-guid.html</id>
        <title type="html">SLES 10, your kernel is not safe!</title>
        <content type="xhtml" xml:base="http://www.undrground.org/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                So, i recently came across a startling discovery. On a SLES 10 server, when you install a kernel update, the update process kindly DELETES your old kernel.  It's not clear to me yet if it does this after its next succesful reboot, or if it does it during the update. In other words, the people at SuSE/Novell are <u>SO</u> confident that you'll never have a problem with a brand spankin new kernel, that they perform without a net.  I'm a very conservative sysadmin.  I don't like to do anything without a backup plan.  When it comes to kernel updates, that backup plan is option 1 in my grub.conf (option 1 being the second option in my boot list, generally, my old kernel). From what I'm reading, there's also no way to tell the update process NOT to delete the old kernel.  So you're sort of stuck with this behaviour.  This actually bit us a few days ago, when due to some rather odd circumstances, we ended up with a SLES that was trying to boot a kernel that was 1 revision old.  Because SLES thought it had cleaned up this kernel, the /lib/modules/<kernelversion>/ directory for this kernel was empty.  This obviously caused some confusion on the kernel's part, and it refused to boot.  If the update process had left the older boot/module files alone, and left it up to a responsible sysadmin to clean up old kernels when they saw fit, this wouldn't have happened. Granted, in this case, the server had other issues, but that's a different story. <br />
<br />
So I've set out to fix this.  Giving yourself some peace of mind is as simple as taking your kernel, and its modules, and locking copies of them away in a safe deposit box (or at least a backup directory) during the update process.  And then putting them somewhere accessible afterwards, then re-add ing the old kernel to grub. This is all well and good, if you had one, maybe two servers to worry about, go ahead and do it manually.  If you have a couple dozen, this is a considerable amount of work to do manually, and it takes up your time! <br />
<br />
So, i wrote a script to do it for you!  It's a perl script, and it should run on a base install of SLES (or, so it has in my testing).  <br />
You can download it <a href="scripts/kernel_saver.tar.gz">here</a>.<br />
<br />
Just download it to your SLES server, and run it, it'll do the work for you.  Run it before your update, and select option 1, which backs up the kernel.  Then run it again after the update, and select option 2, which restores the kernel. <br />
<br />
Enjoy!<br />
<br />
-War 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://www.undrground.org/index.php?/archives/92-Zettabyte-File-System-ZFS.html" rel="alternate" title="Zettabyte File System (ZFS)" />
        <author>
            <name>War</name>
                    </author>
    
        <published>2009-10-06T18:35:48Z</published>
        <updated>2009-10-21T12:32:49Z</updated>
        <wfw:comment>http://www.undrground.org/wfwcomment.php?cid=92</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://www.undrground.org/rss.php?version=atom1.0&amp;type=comments&amp;cid=92</wfw:commentRss>
    
            <category scheme="http://www.undrground.org/index.php?/categories/1-Technology" label="Technology" term="Technology" />
    
        <id>http://www.undrground.org/index.php?/archives/92-guid.html</id>
        <title type="html">Zettabyte File System (ZFS)</title>
        <content type="xhtml" xml:base="http://www.undrground.org/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                We've been doing a lot of storage research lately, and there's been a lot of talk about ZFS.  I'm going to spare you the magazine article (if you want to read more on what it is, and where it comes from, look elsewhere) and give you some guts. <br />
<br />
ZFS is a 128-bit file system, and unfortunately isnt likely to be built into the linux kernel anytime soon.  You can however, use it in userspace, using zfs-fuse, similarly to how you might use NTFS on linux (for those of us still dual booting).  The machine i'm running on, runs solely Fedora Core 11, and has a handsome amount of beef behind it.  It's also got 500gb of local storage, so I can play around with huge files no sweat.  You can do the same things i'm doing, with smaller files, if you'd like. <br />
<br />
First of all, you'll need to install zfs-fuze, this was simple on Fedora. <br />
<br />
<pre><br />
$ sudo yum install zfs-fuse<br />
</pre><br />
<br />
Next some blank disk images to toy with. <br />
<br />
<pre><br />
$ mkdir zfs<br />
$ cd zfs<br />
$ for i in $(seq 8); do dd if=/dev/zero of=$i bs=1024 count=2097152;done<br />
</pre><br />
<br />
This gives me 8, 2gb blobs. Make these smaller if you'd like.  I wanted enough space to throw some large files at zfs.  You'll see in a bit. <br />
<br />
Now let's make our first zfs pool. <br />
<br />
<pre><br />
$ sudo zpool create jose ~/zfs/1 ~/zfs/2 ~/zfs/3 ~/zfs/4 <br />
</pre><br />
<br />
I named my pool jose.  I like it when my blog entries have personality.  <img src="http://www.undrground.org/templates/default/img/emoticons/tongue.png" alt=":-P" style="display: inline; vertical-align: bottom;" class="emoticon" /><br />
<br />
zfs list will give you a list of your zfs pools.<br />
<br />
<pre><br />
$ sudo zfs list<br />
NAME   USED  AVAIL  REFER  MOUNTPOINT<br />
jose    72K  7.81G    18K  /jose<br />
</pre><br />
<br />
Creating the pool also mounts it.<br />
<br />
<pre><br />
$ df -h<br />
Filesystem            Size  Used Avail Use% Mounted on<br />
/dev/mapper/VolGroup00-LogVol00<br />
                      454G  210G  221G  49% /<br />
/dev/sda1             190M   30M  151M  17% /boot<br />
tmpfs                 2.0G   25M  2.0G   2% /dev/shm<br />
jose                  7.9G   18K  7.9G   1% /jose<br />
</pre><br />
<br />
An interesting note.  I never created a file system on this pool, i just told zfs to have at it.  zfs must work at a block level with the drives.<br />
<br />
Now, let's poke jose with a stick, and see what he does. <br />
<br />
<pre><br />
$ sudo dd if=/dev/zero of=/jose/testfile bs=1024 count=2097512<br />
2097512+0 records in<br />
2097512+0 records out<br />
2147852288 bytes (2.1 GB) copied, 118.966 s, 18.1 MB/s<br />
<br />
$ sudo zfs list<br />
NAME   USED  AVAIL  REFER  MOUNTPOINT<br />
jose  2.00G  5.81G  2.00G  /jose<br />
<br />
</pre><br />
<br />
Its worth note, that with a zpool add <poolname> /dev/whatever you can add space to a pool of this sort. <br />
<br />
That's all fun, but this is essentially just a large file system.  No really cool features yet.  Let's see what we can really so with this thing. <br />
<br />
Let's make a raid group, instead of just a standard pool. <br />
<br />
Goodbye Jose<br />
<pre><br />
$ sudo zpool destroy jose<br />
</pre><br />
<br />
From jose's ashes, lets make a new pool. <br />
<br />
<pre><br />
$ sudo zpool create susan raidz ~/zfs/1 ~/zfs/2 ~/zfs/3 ~/zfs/4<br />
$ sudo zfs list<br />
NAME    USED  AVAIL  REFER  MOUNTPOINT<br />
susan  92.0K  5.84G  26.9K  /susan<br />
</pre><br />
<br />
Notice that susan is smaller than jose, using the same disks.  This isn't because susan has made more trips to the gym than jose, rather it's because of the raid set.  This is similar to raid 5, where one disk is taken for parity.  So you lose a one disk worth of capacity. <br />
<br />
Let's remedy that, by throwing more (virtual) hardware at it.<br />
<br />
You cant expand a raid group, by adding a disk, so we'll do it by recreating the group. <br />
<br />
<pre><br />
$ sudo zpool destroy susan<br />
$ sudo zpool create susan raidz ~/zfs/1 ~/zfs/2 ~/zfs/3 ~/zfs/4 ~/zfs/5<br />
$ sudo zfs list<br />
NAME    USED  AVAIL  REFER  MOUNTPOINT<br />
susan  98.3K  7.81G  28.8K  /susan<br />
</pre><br />
<br />
And there you go, about 8gb again. <br />
Now let's poke susan with a stick. <br />
<br />
First, here's her status:<br />
<pre><br />
$ sudo zpool status<br />
  pool: susan<br />
 state: ONLINE<br />
 scrub: scrub completed after 0h0m with 0 errors on Tue Oct  6 15:22:24 2009<br />
config:<br />
<br />
	NAME                    STATE     READ WRITE CKSUM<br />
	susan                   ONLINE       0     0     0<br />
	  raidz1                ONLINE       0     0     0<br />
	    /home/lagern/zfs/1  ONLINE       0     0     0<br />
	    /home/lagern/zfs/2  ONLINE       0     0     0<br />
	    /home/lagern/zfs/3  ONLINE       0     0     0<br />
	    /home/lagern/zfs/4  ONLINE       0     0     0<br />
	    /home/lagern/zfs/5  ONLINE       0     0     0<br />
<br />
errors: No known data errors<br />
</pre><br />
<br />
Now we'll dd another file to susan, and we'll see if we can damage the array. <br />
<br />
<pre><br />
$ sudo dd if=/dev/zero of=/susan/testfile bs=1024 count=2097512<br />
</pre><br />
<br />
Then, in another terminal...<br />
<br />
<pre><br />
$ sudo zpool offline susan ~/zfs/4<br />
$ sudo zpool status<br />
  pool: susan<br />
 state: DEGRADED<br />
status: One or more devices has been taken offline by the administrator.<br />
	Sufficient replicas exist for the pool to continue functioning in a<br />
	degraded state.<br />
action: Online the device using 'zpool online' or replace the device with<br />
	'zpool replace'.<br />
 scrub: scrub completed after 0h0m with 0 errors on Tue Oct  6 15:22:24 2009<br />
config:<br />
<br />
	NAME                    STATE     READ WRITE CKSUM<br />
	susan                   DEGRADED     0     0     0<br />
	  raidz1                DEGRADED     0     0     0<br />
	    /home/lagern/zfs/1  ONLINE       0     0     0<br />
	    /home/lagern/zfs/2  ONLINE       0     0     0<br />
	    /home/lagern/zfs/3  ONLINE       0     0     0<br />
	    /home/lagern/zfs/4  OFFLINE      0     0     0<br />
	    /home/lagern/zfs/5  ONLINE       0     0     0<br />
<br />
errors: No known data errors<br />
</pre><br />
<br />
The dd is still running. <br />
<br />
<pre><br />
$ sudo zpool online susan ~/zfs/4<br />
</pre><br />
<br />
DD's still going.....<br />
<br />
DD finally finished, and it took a little longer than the first copy, but it finished, and the file appears correct. <br />
<br />
Now, let's try something else.  With raid, you generally wont just take a drive offline, and then bring it right back, so let's see what happens if you replace the drive. <br />
<br />
Another dd session, and then the drive swap commands. <br />
<br />
<pre><br />
$ sudo dd if=/dev/zero of=/susan/testfile2 bs=1024 count=2097512<br />
</pre><br />
<br />
In another terminal...<br />
<br />
<pre><br />
$ sudo zpool status<br />
  pool: susan<br />
 state: ONLINE<br />
 scrub: resilver completed after 0h0m with 0 errors on Tue Oct  6 15:26:06 2009<br />
config:<br />
<br />
	NAME                    STATE     READ WRITE CKSUM<br />
	susan                   ONLINE       0     0     0<br />
	  raidz1                ONLINE       0     0     0<br />
	    /home/lagern/zfs/1  ONLINE       0     0     0<br />
	    /home/lagern/zfs/2  ONLINE       0     0     0<br />
	    /home/lagern/zfs/3  ONLINE       0     0     0<br />
	    /home/lagern/zfs/4  ONLINE       0     0     0<br />
	    /home/lagern/zfs/5  ONLINE       0     0     0<br />
<br />
errors: No known data errors<br />
$ sudo zpool offline susan ~/zfs/4<br />
$ sudo zpool replace susan ~/zfs/4 ~/zfs/6<br />
$ sudo zpool status<br />
  pool: susan<br />
 state: DEGRADED<br />
status: One or more devices is currently being resilvered.  The pool will<br />
	continue to function, possibly in a degraded state.<br />
action: Wait for the resilver to complete.<br />
 scrub: resilver in progress for 0h1m, 25.87% done, 0h3m to go<br />
config:<br />
<br />
	NAME                      STATE     READ WRITE CKSUM<br />
	susan                     DEGRADED     0     0     0<br />
	  raidz1                  DEGRADED     0     0     0<br />
	    /home/lagern/zfs/1    ONLINE       0     0     0<br />
	    /home/lagern/zfs/2    ONLINE       0     0     0<br />
	    /home/lagern/zfs/3    ONLINE       0     0     0<br />
	    replacing             DEGRADED     0     0     0<br />
	      /home/lagern/zfs/4  OFFLINE      0     0     0<br />
	      /home/lagern/zfs/6  ONLINE       0     0     0<br />
	    /home/lagern/zfs/5    ONLINE       0     0     0<br />
<br />
errors: No known data errors<br />
</pre><br />
<br />
This procedure seriously degraded the speed of the dd.  It also made my music chop, once. <br />
After the dd finished, the status was happy again:<br />
<br />
<pre><br />
$ sudo dd if=/dev/zero of=/susan/testfile2 bs=1024 count=2097512<br />
2097512+0 records in<br />
2097512+0 records out<br />
2147852288 bytes (2.1 GB) copied, 356.92 s, 6.0 MB/s<br />
<br />
$ sudo zpool status<br />
  pool: susan<br />
 state: ONLINE<br />
 scrub: resilver completed after 0h4m with 0 errors on Tue Oct  6 15:35:52 2009<br />
config:<br />
<br />
	NAME                    STATE     READ WRITE CKSUM<br />
	susan                   ONLINE       0     0     0<br />
	  raidz1                ONLINE       0     0     0<br />
	    /home/lagern/zfs/1  ONLINE       0     0     0<br />
	    /home/lagern/zfs/2  ONLINE       0     0     0<br />
	    /home/lagern/zfs/3  ONLINE       0     0     0<br />
	    /home/lagern/zfs/6  ONLINE       0     0     0<br />
	    /home/lagern/zfs/5  ONLINE       0     0     0<br />
<br />
errors: No known data errors<br />
</pre><br />
<br />
Note that 4 is now replaced with 6. <br />
<br />
Time for some coffee...........<br />
<br />
<br />
Now lets look at some really neat things. <br />
<br />
I mentioned that you couldn't expand a raid volume.  What you can do is replace the disks, with larger ones.  Its unclear how this affects your data though (at least, it is unclear to me!) so I'm going to try it. <br />
<br />
First let's make some larger "disks".<br />
<br />
<pre><br />
for i in $(seq 9 13); do dd if=/dev/zero of=$i bs=1024 count=4195024; done<br />
</pre><br />
<br />
Here we are at the beginning<br />
<br />
<pre><br />
$ sudo zpool status<br />
  pool: susan<br />
 state: ONLINE<br />
 scrub: resilver completed after 0h4m with 0 errors on Tue Oct  6 15:35:52 2009<br />
config:<br />
<br />
	NAME                    STATE     READ WRITE CKSUM<br />
	susan                   ONLINE       0     0     0<br />
	  raidz1                ONLINE       0     0     0<br />
	    /home/lagern/zfs/1  ONLINE       0     0     0<br />
	    /home/lagern/zfs/2  ONLINE       0     0     0<br />
	    /home/lagern/zfs/3  ONLINE       0     0     0<br />
	    /home/lagern/zfs/6  ONLINE       0     0     0<br />
	    /home/lagern/zfs/5  ONLINE       0     0     0<br />
<br />
errors: No known data errors<br />
<br />
$ sudo zfs list<br />
NAME    USED  AVAIL  REFER  MOUNTPOINT<br />
susan  4.00G  3.82G  4.00G  /susan<br />
</pre><br />
<br />
The new disks i created are 4GB,  So we should be able to double the capacity in this pool using these disks. <br />
<br />
<pre><br />
$ sudo zpool replace susan ~/zfs/1 ~/zfs/9<br />
$ sudo zpool replace susan ~/zfs/2 ~/zfs/10<br />
$ sudo zpool status<br />
  pool: susan<br />
 state: ONLINE<br />
status: One or more devices is currently being resilvered.  The pool will<br />
	continue to function, possibly in a degraded state.<br />
action: Wait for the resilver to complete.<br />
 scrub: resilver in progress for 0h0m, 12.94% done, 0h6m to go<br />
config:<br />
<br />
	NAME                       STATE     READ WRITE CKSUM<br />
	susan                      ONLINE       0     0     0<br />
	  raidz1                   ONLINE       0     0     0<br />
	    replacing              ONLINE       0     0     0<br />
	      /home/lagern/zfs/1   ONLINE       0     0     0<br />
	      /home/lagern/zfs/9   ONLINE       0     0     0<br />
	    replacing              ONLINE       0     0     0<br />
	      /home/lagern/zfs/2   ONLINE       0     0     0<br />
	      /home/lagern/zfs/10  ONLINE       0     0     0<br />
	    /home/lagern/zfs/3     ONLINE       0     0     0<br />
	    /home/lagern/zfs/6     ONLINE       0     0     0<br />
	    /home/lagern/zfs/5     ONLINE       0     0     0<br />
<br />
errors: No known data errors<br />
$ sudo zpool replace susan ~/zfs/3 ~/zfs/11<br />
$ sudo zpool replace susan ~/zfs/6 ~/zfs/12<br />
$ sudo zpool replace susan ~/zfs/5 ~/zfs/13<br />
$ sudo zpool status<br />
  pool: susan<br />
 state: ONLINE<br />
status: One or more devices is currently being resilvered.  The pool will<br />
	continue to function, possibly in a degraded state.<br />
action: Wait for the resilver to complete.<br />
 scrub: resilver in progress for 0h0m, 8.21% done, 0h5m to go<br />
config:<br />
<br />
	NAME                       STATE     READ WRITE CKSUM<br />
	susan                      ONLINE       0     0     0<br />
	  raidz1                   ONLINE       0     0     0<br />
	    replacing              ONLINE       0     0     0<br />
	      /home/lagern/zfs/1   ONLINE       0     0     0<br />
	      /home/lagern/zfs/9   ONLINE       0     0     0<br />
	    replacing              ONLINE       0     0     0<br />
	      /home/lagern/zfs/2   ONLINE       0     0     0<br />
	      /home/lagern/zfs/10  ONLINE       0     0     0<br />
	    replacing              ONLINE       0     0     0<br />
	      /home/lagern/zfs/3   ONLINE       0     0     0<br />
	      /home/lagern/zfs/11  ONLINE       0     0     0<br />
	    replacing              ONLINE       0     0     0<br />
	      /home/lagern/zfs/6   ONLINE       0     0     0<br />
	      /home/lagern/zfs/12  ONLINE       0     0     0<br />
	    replacing              ONLINE       0     0     0<br />
	      /home/lagern/zfs/5   ONLINE       0     0     0<br />
	      /home/lagern/zfs/13  ONLINE       0     0     0<br />
<br />
errors: No known data errors<br />
</pre><br />
<br />
This took a while, and really hit my system hard.  I'd recommend doing this one drive at a time.  <br />
<br />
<pre><br />
$ top<br />
<br />
top - 16:12:10 up 25 days,  5:27, 25 users,  load average: 11.36, 9.27, 6.20<br />
Tasks: 280 total,   2 running, 278 sleeping,   0 stopped,   0 zombie<br />
Cpu0  : 10.2%us,  1.3%sy,  0.0%ni, 61.0%id, 27.5%wa,  0.0%hi,  0.0%si,  0.0%st<br />
Cpu1  :  1.6%us,  2.9%sy,  0.0%ni,  5.5%id, 89.6%wa,  0.0%hi,  0.3%si,  0.0%st<br />
Cpu2  :  0.7%us,  0.7%sy,  0.0%ni, 92.7%id,  5.9%wa,  0.0%hi,  0.0%si,  0.0%st<br />
Cpu3  :  3.9%us,  2.0%sy,  0.0%ni, 94.1%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st<br />
Cpu4  :  1.0%us,  0.3%sy,  0.0%ni, 98.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st<br />
Cpu5  :  1.3%us,  2.0%sy,  0.0%ni,  9.8%id, 86.9%wa,  0.0%hi,  0.0%si,  0.0%st<br />
Cpu6  :  5.4%us,  6.8%sy,  0.0%ni, 87.3%id,  0.0%wa,  0.0%hi,  0.6%si,  0.0%st<br />
Cpu7  :  1.6%us,  1.3%sy,  0.0%ni, 97.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st<br />
Mem:   4121040k total,  4004956k used,   116084k free,    13756k buffers<br />
Swap:  5406712k total,   322328k used,  5084384k free,  1441452k cached<br />
<br />
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                       <br />
11021 lagern    20   0 1417m 1.1g  35m S 14.2 26.8   2393:07 VirtualBox                                                    <br />
  313 lagern    20   0 1077m 555m  13m R 12.6 13.8   1089:52 firefox                                                       <br />
22170 root      20   0  565m 221m 1428 S  6.6  5.5   5:57.71 zfs-fuse     <br />
</pre><br />
<br />
I think i'll go read some things on my laptop while this finishes. <br />
<br />
Done!  Took about 15 minutes to complete.  My test files are still present in the pool, <br />
<br />
<pre><br />
$ ls -lh /susan<br />
total 4.0G<br />
-rw-r--r-- 1 root root 2.1G 2009-10-06 15:27 testfile<br />
-rw-r--r-- 1 root root 2.1G 2009-10-06 15:35 testfile2<br />
</pre><br />
<br />
My pool does not yet show the new size....<br />
<br />
<pre><br />
$ sudo zfs list<br />
NAME    USED  AVAIL  REFER  MOUNTPOINT<br />
susan  4.00G  3.82G  4.00G  /susan<br />
</pre><br />
<br />
I remounted...<br />
<br />
<pre><br />
$ sudo zfs umount /susan<br />
$ sudo zfs mount susan<br />
</pre><br />
<br />
No change....<br />
<br />
According to <a href="http://harryd71.blogspot.com/2008/08/how-to-resize-zfs.html">harryd</a> a reboot is necesasry.  I'm not in the rebooting mood at the moment.  I'll try this, and report back if it doesnt work. <br />
<br />
So, there you have it, zfs!  Oh, another note.  raidz is not the only raid option.  raidz2 supports two parity drives.  Like raid6.  You can specify this via the zpool create command, using raidz2 where raidz was.  <br />
<br />
Enjoy!<br />
<br />
<br />
-War 
            </div>
        </content>
        
    </entry>

</feed>