<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>Jacques Marneweck&apos;s Blog</title>
    <link rel="alternate" type="text/html" href="http://www.powertrip.co.za/blog/" />
    <link rel="self" type="application/atom+xml" href="http://www.powertrip.co.za/blog/atom.xml" />
   <id>tag:www.powertrip.co.za,2012:/blog//1</id>
    <link rel="service.post" type="application/atom+xml" href="http://www.powertrip.co.za/blog/mt-atom.cgi/weblog/blog_id=1" title="Jacques Marneweck's Blog" />
    <updated>2012-10-15T16:50:58Z</updated>
    <subtitle>PHP, FreeBSD, MySQL, python and whatever I else that I just happen to be busy with</subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type 4.38</generator>
 

<entry>
    <title>Fixing Helpspot&apos;s incorrect gziping of css and javascript</title>
    <link rel="alternate" type="text/html" href="http://www.powertrip.co.za/blog/archives/000639.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.powertrip.co.za/blog/mt-atom.cgi/weblog/blog_id=1/entry_id=639" title="Fixing Helpspot's incorrect gziping of css and javascript" />
    <id>tag:www.powertrip.co.za,2012:/blog//1.639</id>
    
    <published>2012-10-15T16:42:52Z</published>
    <updated>2012-10-15T16:50:58Z</updated>
    
    <summary>Ran into a strange gzip encoding bug with HelpSpot my preferred Help Desk solution where it would return gzip encoded content for it&apos;s css and javascript php combiner scripts even when Nginx was configured to not gzip content, compressing outbound...</summary>
    <author>
        <name>Jacques Marneweck</name>
        <uri>http://www.powertrip.co.za/</uri>
    </author>
    
        <category term="Work" />
    
        <category term="PHP" />
    
    <content type="html" xml:lang="en" xml:base="http://www.powertrip.co.za/blog/">
        <![CDATA[<p>Ran into a strange gzip encoding bug with <a href=http://www.helpspot/" class="extlink">HelpSpot</a> my preferred Help Desk solution where it would return gzip encoded content for it's css and javascript php combiner scripts even when Nginx was configured to not gzip content, compressing outbound data was disabled from php (confirmed via phpinfo()). Confirmed that using curl returned the uncompressed data.</p>

<p>Passing a HTTP header HTTP_ACCEPT_ENCODING set to none back to HelpSpot via nginx's fastcgi parameter solved the issue of HelpSpot deciding to gzip data for it's css and javascript file combiner php code:</p>

<p><script src="https://gist.github.com/3893541.js?file=vhost.conf"></script></p>

<p>Turning gzip compression on inside nginx works as expected now with HelpSpot's css and javascript combiner scripts.</p>]]>
        
    </content>
</entry>

<entry>
    <title>Reverse Proxying Confluence and JIRA</title>
    <link rel="alternate" type="text/html" href="http://www.powertrip.co.za/blog/archives/000638.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.powertrip.co.za/blog/mt-atom.cgi/weblog/blog_id=1/entry_id=638" title="Reverse Proxying Confluence and JIRA" />
    <id>tag:www.powertrip.co.za,2012:/blog//1.638</id>
    
    <published>2012-09-01T18:19:23Z</published>
    <updated>2012-09-01T18:34:23Z</updated>
    
    <summary>At my $dayjob we use various products from Atlassian. Following the latest cohort of the JIRA security advisory, we needed a way to lock down access to our JIRA via our reverse proxies. Seeing we use Apache I placed the...</summary>
    <author>
        <name>Jacques Marneweck</name>
        <uri>http://www.powertrip.co.za/</uri>
    </author>
    
        <category term="Apache" />
    
        <category term="Systems Administration" />
    
        <category term="Work" />
    
    <content type="html" xml:lang="en" xml:base="http://www.powertrip.co.za/blog/">
        <![CDATA[<p>At my $dayjob we use various products from <a href="http://www.atlassian.com/">Atlassian</a>.  Following the latest cohort of the <a href="https://confluence.atlassian.com/display/JIRA051/JIRA+Security+Advisory+2012-08-28">JIRA security advisory</a>, we needed a way to lock down access to our JIRA via our reverse proxies.</p>

<p>Seeing we use Apache I placed the usual Apache directives in the configuration file for users to authenticate against the company replicated LDAP pair I had setup previously.  Later it was reported some folks were having issues with a tomcat error page relating to basic authentication from when we used an outsourced IT company to handle user management they decided to drop the email prefix so the added awesome side effect of users being logged into JIRA or Confluence when getting past the HTTP Authentication dialog box required another Apache directive to not forward the Authorisation bits onto Tomcat.</p>

<p>The directive is:</p>

<p><!--<br />
<blockqutote><br />
RequestHeader unset Authorization<br />
<blockqutote><br />
--></p>

<p><script src="https://gist.github.com/3582569.js"> </script></p>]]>
        
    </content>
</entry>

<entry>
    <title>Learning from others mistakes - move configs out of your boot loader</title>
    <link rel="alternate" type="text/html" href="http://www.powertrip.co.za/blog/archives/000635.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.powertrip.co.za/blog/mt-atom.cgi/weblog/blog_id=1/entry_id=635" title="Learning from others mistakes - move configs out of your boot loader" />
    <id>tag:www.powertrip.co.za,2011:/blog//1.635</id>
    
    <published>2011-03-19T20:34:36Z</published>
    <updated>2011-03-19T22:25:30Z</updated>
    
    <summary>I&apos;m a keen believer of learning from other folks mistakes and attempting to not repeat them. Source code disclosure and even worse configuration disclosure which happened with tumblr. One thing to remember, if you keep your configuration for your app...</summary>
    <author>
        <name>Jacques Marneweck</name>
        <uri>http://www.powertrip.co.za/</uri>
    </author>
    
        <category term="CVS" />
    
        <category term="PHP" />
    
        <category term="Subversion" />
    
        <category term="git" />
    
    <content type="html" xml:lang="en" xml:base="http://www.powertrip.co.za/blog/">
        <![CDATA[<p>I'm a keen believer of learning from other folks mistakes and attempting to not repeat them.  Source code disclosure and even worse configuration disclosure which happened with tumblr.  One thing to remember, if you keep your configuration for your app outside your webroot, you reduce the chances of you actually accidentally disclosing your configuration.  Typically one could even do something like:</p>

<p><code><span style="color: #000000"><br />
<span style="color: #0000BB">&lt;?php<br /></span><span style="color: #007700">require_once&nbsp;</span><span style="color: #0000BB">dirname</span><span style="color: #007700">(</span><span style="color: #0000BB">dirname</span><span style="color: #007700">(</span><span style="color: #0000BB">__FILE__</span><span style="color: #007700">))&nbsp;.&nbsp;</span><span style="color: #DD0000">'/bootstrap.php'</span><span style="color: #007700">;<br /></span><br />
</span><br />
</code></p>

<p>Rather than having everything in your index.php file.  Separating your configuration directives out to a separate configuration file outside the webroot and modifying that when making changes.</p>

<p>One can use your version control pre commit scripts to check that you've not borked a the file - checking for php scripts being of a file type php script vs file is one way of doing this - foo.php contains a php script starting with "i?php" and bar.php has same code starting with "<?php":</p>

<pre>
$ file foo.php 
foo.php: PHP script text
$ file bar.php 
bar.php: ASCII text
</pre>]]>
        
    </content>
</entry>

<entry>
    <title>Atlassian JIRA and URL rewriting</title>
    <link rel="alternate" type="text/html" href="http://www.powertrip.co.za/blog/archives/000633.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.powertrip.co.za/blog/mt-atom.cgi/weblog/blog_id=1/entry_id=633" title="Atlassian JIRA and URL rewriting" />
    <id>tag:www.powertrip.co.za,2011:/blog//1.633</id>
    
    <published>2011-01-03T19:23:02Z</published>
    <updated>2011-01-03T19:40:56Z</updated>
    
    <summary>Prior to JIRA 4.2.2, there was a bug JSP-70163 which can be easily fixed by telling apache to rewrite the URL when you use a different base via tomcat i.e. /jira instead of / when doing https://hub.yourdomain.com/jira/ To fix the...</summary>
    <author>
        <name>Jacques Marneweck</name>
        <uri>http://www.powertrip.co.za/</uri>
    </author>
    
        <category term="Apache" />
    
    <content type="html" xml:lang="en" xml:base="http://www.powertrip.co.za/blog/">
        <![CDATA[<p>Prior to JIRA 4.2.2, there was a bug <a href="https://support.atlassian.com/browse/JSP-70163" class="extlink">JSP-70163</a> which can be easily fixed by telling apache to rewrite the URL when you use a different base via tomcat i.e. /jira instead of / when doing https://hub.yourdomain.com/jira/</p>

<p>To fix the issue where screenshots get uploaded and don't redirect properly you can make use of apache's redirects to send anything destined prefixed by /browse to /jira/browse by adding the following to your virtualhost config:</p>

<p><code><br />
Redirect /browse https://hub.yourdomainname.com/jira/browse<br />
</code></p>]]>
        
    </content>
</entry>

<entry>
    <title>Locking down rpcbind on OpenSolaris</title>
    <link rel="alternate" type="text/html" href="http://www.powertrip.co.za/blog/archives/000632.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.powertrip.co.za/blog/mt-atom.cgi/weblog/blog_id=1/entry_id=632" title="Locking down rpcbind on OpenSolaris" />
    <id>tag:www.powertrip.co.za,2010:/blog//1.632</id>
    
    <published>2010-11-02T19:36:35Z</published>
    <updated>2010-11-02T19:50:49Z</updated>
    
    <summary>Every now and again one is asked how one can lock down rpcbind from with a shared-ip zone without being able to use ipfilter from within the zone. Fortunately tcpwrappers save the day by allowing us to enable rcpbind to...</summary>
    <author>
        <name>Jacques Marneweck</name>
        <uri>http://www.powertrip.co.za/</uri>
    </author>
    
        <category term="OpenSolaris" />
    
    <content type="html" xml:lang="en" xml:base="http://www.powertrip.co.za/blog/">
        <![CDATA[<p>Every now and again one is asked how one can lock down rpcbind from with a shared-ip zone without being able to use ipfilter from within the zone.  Fortunately tcpwrappers save the day by allowing us to enable rcpbind to use the tcpwrapper functionality to lockdown who can connect to port 111 (the port which Sun RPC use).</p>

<p>You have run rpcinfo against a zone and it returns numerous lines saying that rpcbind and additional rpc based serivces are available remotely.</p>

<pre>
rpcinfo -p IP.AD.DR.ESS
   program vers proto   port  service
    100000    4   tcp    111  rpcbind
    100000    3   tcp    111  rpcbind
    100000    2   tcp    111  rpcbind
    100000    4   udp    111  rpcbind
    100000    3   udp    111  rpcbind
    100000    2   udp    111  rpcbind
    100024    1   udp  62025  status
    100024    1   tcp  36015  status
    100133    1   udp  62025
    100133    1   tcp  36015
    100021    1   udp   4045  nlockmgr
    100021    2   udp   4045  nlockmgr
    100021    3   udp   4045  nlockmgr
    100021    4   udp   4045  nlockmgr
    100021    1   tcp   4045  nlockmgr
    100021    2   tcp   4045  nlockmgr
    100021    3   tcp   4045  nlockmgr
    100021    4   tcp   4045  nlockmgr
</pre>

<p>For tcpwrappers to allow and deny traffic to rpcbind, we need to create two files namely hosts.deny and hosts.allow both under the /etc directory.</p>

<p><code><br />
echo "rpcbind: ALL" >> /etc/hosts.deny<br />
echo "rcpbind: 10. 192.168. 127." >> /etc/hosts.allow<br />
</code></p>

<p>Once this has been done, we are now ready to enable tcpwrappers to disallow access to rpcbind:</p>

<p><code><br />
svccfg -s rpc/bind setprop config/enable_tcpwrappers=true<br />
svcadm refresh rpc/bind<br />
</code></p>

<p>One can also run a quick script which I quickly put together that will run the four commands mentioned above for you:</p>

<p><code><br />
curl http://github.com/jacques/adminscripts/raw/master/lockdownrpcbind.sh | sh -x<br />
</code></p>

<p>One can verify that rcp/bind is sitting behind tcpwrappers using by running:</p>

<p><code><br />
# svcprop -p config/enable_tcpwrappers rpc/bind<br />
true<br />
</code></p>

<p>And remotely one can verify this by running:</p>

<p><code><br />
# rpcinfo -p IP.AD.DR.ESS<br />
rpcinfo: can't contact portmapper: RPC: Rpcbind failure - RPC: Failed (unspecified error)<br />
</code></p>]]>
        
    </content>
</entry>

<entry>
    <title>Getting java to trust a SSL Certificate</title>
    <link rel="alternate" type="text/html" href="http://www.powertrip.co.za/blog/archives/000631.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.powertrip.co.za/blog/mt-atom.cgi/weblog/blog_id=1/entry_id=631" title="Getting java to trust a SSL Certificate" />
    <id>tag:www.powertrip.co.za,2010:/blog//1.631</id>
    
    <published>2010-10-30T20:23:33Z</published>
    <updated>2010-10-30T20:32:10Z</updated>
    
    <summary>After fixing a few bugs in vimfluence, I tried to connect edit some wiki pages on my personal Confluence wiki which sits behind a self-signed SSL certificate. It works something like: $ personalwiki HOME Unable to log in to server:...</summary>
    <author>
        <name>Jacques Marneweck</name>
        <uri>http://www.powertrip.co.za/</uri>
    </author>
    
        <category term="Java" />
    
    <content type="html" xml:lang="en" xml:base="http://www.powertrip.co.za/blog/">
        <![CDATA[<p>After fixing a few bugs in vimfluence, I tried to connect edit some wiki pages on my personal Confluence wiki which sits behind a self-signed SSL certificate.  It works something like:</p>

<pre>
$ personalwiki HOME
Unable to log in to server: https://hub.example.com//rpc/soap-axis/confluenceservice-v1 with user: username.
 Cause: ; nested exception is: 
	javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
could not close pipe at ./vimfluence line 94.
</pre>

<p>A bit of an annoyance with Java is that you have to tell Java that it has to implicitly trust a self-signed SSL certificate if you want to connect to it via some jar.  In my case I'm using vimfluence to connect to a wiki sitting behind a self-signed SSL certificate.  To import the certificate into the keystore, one uses a binary called keytool which brings back strange memories of Actaris's biz.switch documentation from a previous joblet.</p>

<pre>
(cd /Library/Java/Home/lib/security && sudo keytool -import -keystore cacerts -alias example-wild -file ~admin/example-wild.crt)
</pre>

<p>One can easily get the SSL certificate by running:</p>

<pre>
openssl s_client -connect hub.example.com:443
</pre>]]>
        
    </content>
</entry>

<entry>
    <title>Some gsed magic to insert a line below the regex matched text</title>
    <link rel="alternate" type="text/html" href="http://www.powertrip.co.za/blog/archives/000630.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.powertrip.co.za/blog/mt-atom.cgi/weblog/blog_id=1/entry_id=630" title="Some gsed magic to insert a line below the regex matched text" />
    <id>tag:www.powertrip.co.za,2010:/blog//1.630</id>
    
    <published>2010-10-30T15:20:52Z</published>
    <updated>2010-10-30T15:30:01Z</updated>
    
    <summary>So I&apos;m working on finishing automating as much of my install fresh installations of Crowd, Confluence and JIRA. One of the things I was looking for is how to use gsed to insert some thing after a specific line has...</summary>
    <author>
        <name>Jacques Marneweck</name>
        <uri>http://www.powertrip.co.za/</uri>
    </author>
    
        <category term="Personal" />
    
    <content type="html" xml:lang="en" xml:base="http://www.powertrip.co.za/blog/">
        <![CDATA[<p>So I'm working on finishing automating as much of my install fresh installations of Crowd, Confluence and JIRA.  One of the things I was looking for is how to use gsed to insert some thing after a specific line has been matched with regex.  For example if I insert a line before something I used something.</p>

<p>Before I started testing I created a test text file:</p>

<pre>
[jacques@auriga ~]$ cat far
hello
ABOVE
BELOW
ayoba
</pre>

<p>Then I wanted to insert the word testing above the word ABOVE:</p>

<pre>
[jacques@auriga ~]$ gsed -i"" -e "/ABOVE/i\
testing" far
[jacques@auriga ~]$ cat far
hello
testing
ABOVE
BELOW
ayoba
</pre>

<p>So that works well - after quite a bit of fiddling it was discovered to insert a line after something I needed to change the i script modifier to an a:</p>

<pre>
[jacques@auriga ~]$ gsed -i"" -e "/BELOW/a\
testing" far
[jacques@auriga ~]$ cat far
hello
testing
ABOVE
BELOW
testing
ayoba
</pre>]]>
        
    </content>
</entry>

<entry>
    <title>Getting Crowd 2.0.7 to behave itself under SMF</title>
    <link rel="alternate" type="text/html" href="http://www.powertrip.co.za/blog/archives/000629.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.powertrip.co.za/blog/mt-atom.cgi/weblog/blog_id=1/entry_id=629" title="Getting Crowd 2.0.7 to behave itself under SMF" />
    <id>tag:www.powertrip.co.za,2010:/blog//1.629</id>
    
    <published>2010-10-30T14:31:41Z</published>
    <updated>2010-10-30T14:45:54Z</updated>
    
    <summary>I was chatting to Jerry Jelinek during the week on IM about an issue that I was working on debugging - the reason Crowd 2.0.7 was not behaving under SMF - it was being randomly killed off and never transitioning...</summary>
    <author>
        <name>Jacques Marneweck</name>
        <uri>http://www.powertrip.co.za/</uri>
    </author>
    
        <category term="Java" />
    
        <category term="OpenSolaris" />
    
    <content type="html" xml:lang="en" xml:base="http://www.powertrip.co.za/blog/">
        <![CDATA[<p>I was chatting to <a href="http://dtrace.org/blogs/jerry/">Jerry Jelinek</a> during the week on IM about an issue that I was working on debugging - the reason <a href="http://www.atlassian.com/software/crowd/" class="extlink">Crowd 2.0.7</a> was not behaving under SMF - it was being randomly killed off and never transitioning to an online state even though it's start_crowd.sh script had cleanly exited with an exit code of zero.</p>

<p>Looking at the scripts that <a href="http://www.atlassian.com/software/confluence/" class="extlink">Confluence</a> and <a href="http://www.atlassian.com/software/jira" class="extlink">JIRA</a> comes both of those start tomcat up with passing the argument of start to the catalina.sh script which starts tomcat up.</p>

<p>When doing a "svcs -p crowd" it would keep showing that the state was "offline*" - randomly it would get killed and I would have a cronjob running every minute to clear the service while digging into this.</p>

<p>Turns out the dear Atlassian folks regressed and put in start_crowd.sh a "run" instead of "start" for apache tomcats catalina.sh script which due to the way it starts java SMF thinks that it is still running the command and will zap the java process when the timeout comes around.  So to fix this, one has to edit the start_crowd.sh and change run to start and then one is good to go.  Crowd starts behaving itself while under SMF and life is good once again.</p>

<p>The manifests which I use for Crowd, Confluence and JIRA are available on <a href="http://github.com/jacques/smf-manifests/" class="extlink">GitHub</a>.</p>]]>
        
    </content>
</entry>

<entry>
    <title>Debugging an Apache 403 error and .htaccess issues</title>
    <link rel="alternate" type="text/html" href="http://www.powertrip.co.za/blog/archives/000628.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.powertrip.co.za/blog/mt-atom.cgi/weblog/blog_id=1/entry_id=628" title="Debugging an Apache 403 error and .htaccess issues" />
    <id>tag:www.powertrip.co.za,2010:/blog//1.628</id>
    
    <published>2010-10-28T15:37:26Z</published>
    <updated>2010-10-30T14:27:54Z</updated>
    
    <summary>Seems that apache can have some misleading logfile entries. When you see something about: &quot;cfg_openfile: unable to check htaccess file, ensure it is readable&quot; You can either be out of file handles or the parent directory is not readable or...</summary>
    <author>
        <name>Jacques Marneweck</name>
        <uri>http://www.powertrip.co.za/</uri>
    </author>
    
        <category term="Apache" />
    
    <content type="html" xml:lang="en" xml:base="http://www.powertrip.co.za/blog/">
        <![CDATA[<p>Seems that <a href="http://httpd.apache.org/">apache</a> can have some misleading logfile entries.  When you see something about: </p>

<p><blockqutote><br />
"cfg_openfile: unable to check htaccess file, ensure it is readable"<br />
</blockqutote></p>

<p>You can either be out of file handles or the parent directory is not readable or infact the .htaccess file is not readable by the user running apache.</p>]]>
        
    </content>
</entry>

<entry>
    <title>Preventing source code in your .git directory being viewed</title>
    <link rel="alternate" type="text/html" href="http://www.powertrip.co.za/blog/archives/000626.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.powertrip.co.za/blog/mt-atom.cgi/weblog/blog_id=1/entry_id=626" title="Preventing source code in your .git directory being viewed" />
    <id>tag:www.powertrip.co.za,2010:/blog//1.626</id>
    
    <published>2010-10-16T15:34:57Z</published>
    <updated>2010-10-16T15:48:14Z</updated>
    
    <summary>Adding some lines to your apache configuration file can prevent people from viewing files under your .git directory or files like .gitmodules. Depending on whether you have other files/directories which you to stop folks reading, you can easily add more...</summary>
    <author>
        <name>Jacques Marneweck</name>
        <uri>http://www.powertrip.co.za/</uri>
    </author>
    
        <category term="Apache" />
    
        <category term="Security" />
    
    <content type="html" xml:lang="en" xml:base="http://www.powertrip.co.za/blog/">
        <![CDATA[<p>Adding some lines to your apache configuration file can prevent people from viewing files under your .git directory or files like .gitmodules.  Depending on whether you have other files/directories which you to stop folks reading, you can easily add more similar directives.</p>

<p><script src="http://gist.github.com/629927.js?file=apache%20configuration%20directives.conf"></script></p>

<p>I'm running a git clone of <a href="http://github.com/exflickr/flamework">flamework</a> for testing some stuff and was looking to see if the I could view files under the .git directory.  So I looked to see what files exist under .git and chose HEAD and went to my browser and pulled up http://flamework.example.com/.git/HEAD and it showed the file contents.  After adding the snippet above to my apache config, I was no longer able to view files under the .git directory or the .gitmodules files.</p>]]>
        
    </content>
</entry>

<entry>
    <title>Crowd randomly dying issues</title>
    <link rel="alternate" type="text/html" href="http://www.powertrip.co.za/blog/archives/000625.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.powertrip.co.za/blog/mt-atom.cgi/weblog/blog_id=1/entry_id=625" title="Crowd randomly dying issues" />
    <id>tag:www.powertrip.co.za,2010:/blog//1.625</id>
    
    <published>2010-09-05T19:46:59Z</published>
    <updated>2010-09-05T19:54:48Z</updated>
    
    <summary>Dear Lazyweb, Does anyone have a solution for Atlassian Crowd keeping on crashing. I recently upgraded from 2.0.6 to 2.0.7 and that is were the issue started. Crowd randomly crashed every couple of minutes after startup. I have a cronjob...</summary>
    <author>
        <name>Jacques Marneweck</name>
        <uri>http://www.powertrip.co.za/</uri>
    </author>
    
        <category term="Java" />
    
        <category term="OpenSolaris" />
    
    <content type="html" xml:lang="en" xml:base="http://www.powertrip.co.za/blog/">
        <![CDATA[<p>Dear Lazyweb,</p>

<p>Does anyone have a solution for Atlassian Crowd keeping on crashing.  I recently upgraded from 2.0.6 to 2.0.7 and that is were the issue started.  Crowd randomly crashed every couple of minutes after startup.  I have a cronjob that runs svcadm clear crowd every minute to try and keep the downtime to a minimum.  Is there something like xdebug (for php) for java?</p>]]>
        
    </content>
</entry>

<entry>
    <title>OpenSolaris and VMWare boot issues</title>
    <link rel="alternate" type="text/html" href="http://www.powertrip.co.za/blog/archives/000624.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.powertrip.co.za/blog/mt-atom.cgi/weblog/blog_id=1/entry_id=624" title="OpenSolaris and VMWare boot issues" />
    <id>tag:www.powertrip.co.za,2010:/blog//1.624</id>
    
    <published>2010-05-18T19:41:01Z</published>
    <updated>2010-05-18T20:23:07Z</updated>
    
    <summary><![CDATA[When running OpenSolaris SX:CE &gt;= snv_100 on different flavours of VMWare (Fusion, ESX, etc.) one needs to change edit the grub menu to include "disable-pcieb=true" at the end of the kernel line. To do this you will need to hit...]]></summary>
    <author>
        <name>Jacques Marneweck</name>
        <uri>http://www.powertrip.co.za/</uri>
    </author>
    
        <category term="OpenSolaris" />
    
        <category term="Sun" />
    
        <category term="Systems Administration" />
    
    <content type="html" xml:lang="en" xml:base="http://www.powertrip.co.za/blog/">
        <![CDATA[<p>When running OpenSolaris SX:CE &gt;= snv_100 on different flavours of VMWare (Fusion, ESX, etc.) one needs to change edit the grub menu to include "disable-pcieb=true" at the end of the kernel line.  To do this you will need to hit "e" to edit on the grub menu item, and then "e" on the line for the kernel.  At the end of the line if there is no "-B" with options after that, add the "-B disable-pcieb=true".  Once you have installed OpenSolaris, you can go ahead and edit your /boot/grub/menu.lst and add this there as well.</p>]]>
        
    </content>
</entry>

<entry>
    <title>How many drafts do you have in your blog software?</title>
    <link rel="alternate" type="text/html" href="http://www.powertrip.co.za/blog/archives/000623.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.powertrip.co.za/blog/mt-atom.cgi/weblog/blog_id=1/entry_id=623" title="How many drafts do you have in your blog software?" />
    <id>tag:www.powertrip.co.za,2009:/blog//1.623</id>
    
    <published>2009-12-22T21:07:34Z</published>
    <updated>2009-12-22T21:09:33Z</updated>
    
    <summary>I currently have 43 draft entries in my blog software (movable type) that I&apos;ve not yet published as I have not gotten round to posting some of the posts....</summary>
    <author>
        <name>Jacques Marneweck</name>
        <uri>http://www.powertrip.co.za/</uri>
    </author>
    
        <category term="Blogging" />
    
    <content type="html" xml:lang="en" xml:base="http://www.powertrip.co.za/blog/">
        <![CDATA[<p>I currently have 43 draft entries in my blog software (movable type) that I've not yet published as I have not gotten round to posting some of the posts.</p>]]>
        
    </content>
</entry>

<entry>
    <title>Google &quot;Public DNS&quot; to compete against OpenDNS</title>
    <link rel="alternate" type="text/html" href="http://www.powertrip.co.za/blog/archives/000622.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.powertrip.co.za/blog/mt-atom.cgi/weblog/blog_id=1/entry_id=622" title="Google &quot;Public DNS&quot; to compete against OpenDNS" />
    <id>tag:www.powertrip.co.za,2009:/blog//1.622</id>
    
    <published>2009-12-03T17:36:28Z</published>
    <updated>2009-12-03T17:56:19Z</updated>
    
    <summary>Google have launched their &quot;Public DNS&quot; service - a similar service to the OpenDNS public dns resolvers. It is going to be interesting to see how much competition occurs. It is usually faster to use the OpenDNS public dns resolvers...</summary>
    <author>
        <name>Jacques Marneweck</name>
        <uri>http://www.powertrip.co.za/</uri>
    </author>
    
        <category term="Google" />
    
        <category term="Internet Industry" />
    
    <content type="html" xml:lang="en" xml:base="http://www.powertrip.co.za/blog/">
        <![CDATA[<p><a href="http://www.google.com/">Google</a> have launched their "<a href="http://code.google.com/speed/public-dns/">Public DNS</a>" service - a similar service to the <a href="http://www.opendns.com/">OpenDNS</a> public dns resolvers.  It is going to be interesting to see how much competition occurs.  It is usually faster to use the OpenDNS public dns resolvers than one's upstream ISP's one.  Not sure when Google will start adding additional features like OpenDNS like blocking access to malware sites, ability to see how many DNS queries you are making, etc.</p>

<p>If you want a non-filtered service at this point in time use the Google Public DNS servers (they are using Level3 for their upstream connectivity):</p>

<blockquote>8.8.8.8 and 8.8.4.4</blockquote>

<p>And if you like filtered DNS results you would want to use the OpenDNS ones:</p>

<blockquote>208.67.222.222 and 208.67.220.220</blockquote>

<p><strong>UPDATE</strong>:</p>

<p>Quick stat from doing DNS queries against Google, IS and OpenDNS's cache servers:</p>

<p>Google: 546ms and 243ms<br />
IS: 303ms and 36ms<br />
OpenDNS: 432ms and 297ms</p>

<p>Looks like all three cache the results on their anycast clusters.</p>]]>
        
    </content>
</entry>

<entry>
    <title>How do you use MySQL as a DBA?</title>
    <link rel="alternate" type="text/html" href="http://www.powertrip.co.za/blog/archives/000621.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.powertrip.co.za/blog/mt-atom.cgi/weblog/blog_id=1/entry_id=621" title="How do you use MySQL as a DBA?" />
    <id>tag:www.powertrip.co.za,2009:/blog//1.621</id>
    
    <published>2009-12-03T17:18:21Z</published>
    <updated>2009-12-03T17:27:44Z</updated>
    
    <summary>Interesting question for MySQL DBA&apos;s: do you prefer using the mysql cli interface and know the SQL statements to execute in order to do your admin work like creating databases or do you prefer using the mysqladmin interface? Personally I...</summary>
    <author>
        <name>Jacques Marneweck</name>
        <uri>http://www.powertrip.co.za/</uri>
    </author>
    
        <category term="MySQL" />
    
    <content type="html" xml:lang="en" xml:base="http://www.powertrip.co.za/blog/">
        <![CDATA[<p>Interesting question for <a class="extlink" href="http://www.mysql.com/" title="MySQL" rel="homepage">MySQL</a> DBA's: do you prefer using the mysql cli interface and know the SQL statements to execute in order to do your admin work like creating databases or do you prefer using the mysqladmin interface?  Personally I prefer using the mysql cli interface and executing things like 'CREATE DATABASE foo' rather than 'mysqladmin create blah' - I suppose I like the SQL queries over remembering the other way of doing things.</p>]]>
        
    </content>
</entry>

</feed> 

