<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>
<channel>
	<title>Netflow Developments</title>
	<atom:link href="http://blog.netflowdevelopments.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.netflowdevelopments.com</link>
	<description>The latest and greatest happenings in the world of Science, Technology and everything else Geek</description>
	<lastBuildDate>Sat, 04 Feb 2012 08:53:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>ffmpeg: Unsupported codec for output stream #0.0</title>
		<link>http://blog.netflowdevelopments.com/2012/02/04/ffmpeg-unsupported-codec-for-output-stream-0-0/</link>
		<comments>http://blog.netflowdevelopments.com/2012/02/04/ffmpeg-unsupported-codec-for-output-stream-0-0/#comments</comments>
		<pubDate>Sat, 04 Feb 2012 08:53:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux / Freebsd]]></category>
		<category><![CDATA[avi]]></category>
		<category><![CDATA[extra audio]]></category>
		<category><![CDATA[ffmpeg]]></category>
		<category><![CDATA[mp3]]></category>
		<category><![CDATA[Unsupported codec]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=834</guid>
		<description><![CDATA[Alrighty, so I was attempting to extract the audio from an .avi file today and was greeted with the following error: Unsupported codec for output stream #0.0 At first I thought this was the result of my missing the libavcodec packages but upon closer inspection and a little forum reading I realized that the error [...]]]></description>
			<content:encoded><![CDATA[<p>Alrighty, so I was attempting to extract the audio from an .avi file today and was greeted with the following error:</p>
<p>Unsupported codec for output stream #0.0</p>
<p>At first I thought this was the result of my missing the libavcodec packages but upon closer inspection and a little forum reading I realized that the error I was seeing (#0.0 not #0.1).  #0.0 refers to VIDEO and not audio as I had previous thought and so installing the audio packages did nothing to resolve my issue.</p>
<p>So, how to solve this problem you ask? Well that&#8217;s as simple as adding a nice little switch and extra optino in there that looks a little bit like this:</p>
<p>-acodec copy</p>
<p>Solves the problem immediate.. From what I understand it just means that if the codec doesn&#8217;t exist to decode the video ffmpeg can use a copy of one instead.  Easy peasy lemonsqueezy</p>
<p>&nbsp;</p>
<p>Oh and for anyone wanting to know how to extract audio from a video file it&#8217;s as simple as this:</p>
<p><strong>ffmpeg -i inputfile.avi -acodec copy -ab 256 outputfile.avi</strong></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2012/02/04/ffmpeg-unsupported-codec-for-output-stream-0-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Desktop Cube still showing second monitor space after it&#8217;s been unplugged</title>
		<link>http://blog.netflowdevelopments.com/2012/01/23/desktop-cube-still-showing-second-monitor-space-after-its-been-unplugged/</link>
		<comments>http://blog.netflowdevelopments.com/2012/01/23/desktop-cube-still-showing-second-monitor-space-after-its-been-unplugged/#comments</comments>
		<pubDate>Mon, 23 Jan 2012 23:11:43 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux / Freebsd]]></category>
		<category><![CDATA[cube]]></category>
		<category><![CDATA[desktop]]></category>
		<category><![CDATA[dual monitor]]></category>
		<category><![CDATA[extra]]></category>
		<category><![CDATA[remove]]></category>
		<category><![CDATA[still there]]></category>
		<category><![CDATA[unplug]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=831</guid>
		<description><![CDATA[So this is an interesting problem that has haunted me for the past week or so.  I was running dual monitors last week which allowed me 12 virtual desktops, one stacked on the other.  This made my desktop cube/hexagon twice as tall which was awesome.. The problem was that when I unplugged the monitor and [...]]]></description>
			<content:encoded><![CDATA[<p>So this is an interesting problem that has haunted me for the past week or so.  I was running dual monitors last week which allowed me 12 virtual desktops, one stacked on the other.  This made my desktop cube/hexagon twice as tall which was awesome.. The problem was that when I unplugged the monitor and restarted the desktop space for the second monitor was still there although I cuold no longer access it as the monitor was no longer plugged in.. I could spin the hexagon and see it but there was no accessing it.. Things would get lost up there, it just wasn&#8217;t a good time.. I went into my monitor config and my ATI config and both of them reported just one monitor, it was clear that linux knew there was now only one monitor connected, it just didn&#8217;t want to remove that additional desktop space.</p>
<p>Today I finally decided to tackle it and it turned out to be easier than I thought.  All you need to do is go into Configure display settings where you can set your resolutions and such, I just changed the resolution and click on apply and it removed that additional desktop space and got me back down to the proper desktop size for one monitor.  Huzzah!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2012/01/23/desktop-cube-still-showing-second-monitor-space-after-its-been-unplugged/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Able to ping IP&#8217;s but not domain names in Debian</title>
		<link>http://blog.netflowdevelopments.com/2012/01/23/able-to-ping-ips-but-not-domain-names-in-debian/</link>
		<comments>http://blog.netflowdevelopments.com/2012/01/23/able-to-ping-ips-but-not-domain-names-in-debian/#comments</comments>
		<pubDate>Mon, 23 Jan 2012 22:58:43 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux / Freebsd]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[domain]]></category>
		<category><![CDATA[IP]]></category>
		<category><![CDATA[name server]]></category>
		<category><![CDATA[ping]]></category>
		<category><![CDATA[router]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=828</guid>
		<description><![CDATA[Well a funny thing happened today and I think might have to do with me changing the router&#8217;s static DNS&#8217;s to google&#8217;s and then changing it back again.. Anyways somewhere along there debian forgot what a DNS was and lost the ability to resolve domains.. IP&#8217;s were fine, just not domains.  The router was able [...]]]></description>
			<content:encoded><![CDATA[<p>Well a funny thing happened today and I think might have to do with me changing the router&#8217;s static DNS&#8217;s to google&#8217;s and then changing it back again.. Anyways somewhere along there debian forgot what a DNS was and lost the ability to resolve domains.. IP&#8217;s were fine, just not domains.  The router was able to ping domains, just not my machine.</p>
<p>After fiddling with it for a bit I went into the WICD settings for that connection and specified static IP&#8217;s for the top 2 DNS entries.  Specifically 8.8.8.8 and 8.8.4.4 .  After reconnecting with those settings in place I was able to ping domains again(and consequentially write this post)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2012/01/23/able-to-ping-ips-but-not-domain-names-in-debian/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linux memory management and how to see actual RAM usage</title>
		<link>http://blog.netflowdevelopments.com/2012/01/22/linux-memory-management-and-how-to-see-actual-ram-usage/</link>
		<comments>http://blog.netflowdevelopments.com/2012/01/22/linux-memory-management-and-how-to-see-actual-ram-usage/#comments</comments>
		<pubDate>Mon, 23 Jan 2012 05:34:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux / Freebsd]]></category>
		<category><![CDATA[available]]></category>
		<category><![CDATA[free]]></category>
		<category><![CDATA[leak]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[management]]></category>
		<category><![CDATA[memory usage]]></category>
		<category><![CDATA[top]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=825</guid>
		<description><![CDATA[Where the hell did all my RAM go? So as some of you may or may not know linux allocates memory a little differently than windows and it may be a little disconcerting at first to rely on &#8216;top&#8217; for your memory usage breakdown as it starts to look like there is a big leak [...]]]></description>
			<content:encoded><![CDATA[<h2>Where the hell did all my RAM go?</h2>
<p>So as some of you may or may not know linux allocates memory a little differently than windows and it may be a little disconcerting at first to rely on &#8216;top&#8217; for your memory usage breakdown as it starts to look like there is a big leak happening somewhere.  This isn&#8217;t the case and I&#8217;ll take a quick paragraph to explain how it works.</p>
<p>At the end of the day the way that RAM works is that if it isn&#8217;t being used it&#8217;s being wasted and linux being as amazing as it is has a strict policy about wasting as little as possible so it uses the ram extensively to cache nearly anything it can get it&#8217;s hands on.  What ends up happening is that after a program is run the output or information from that program are cached so that every subsequent time it&#8217;s run the information can just be pulled out of the cache which is stored in RAM instead, giving it about 1000x increase in read speed for future executions.   Pretty cool eh?  Yea, well unless you don&#8217;t know this, setup a new production server in linux, turn it on for the first time and sit there watching top report your free memory going down and down and down and down until it reaches a read out like this:</p>
<p>Mem:   8197228k total,  6219696k used,  1977532k free when just 2 hours ago the same server running on FreeBSD was reporting 90% of it&#8217;s ram being free.</p>
<p>The thing to note of course is how big the Cache is.. In my case here it&#8217;s about 4.8GB large, meaning there&#8217;s all sorts of data stored in there that apache is reloading over and over and over again that is lightning fast.  Already I&#8217;m loving this new Debian server <img src='http://blog.netflowdevelopments.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h2>So how do I see my real memory usage?</h2>
<p>#free -m</p>
<p>This nifty little command will show you the memory usage with and without caching taken into account resulting in something like this:</p>
<p>total used free shared buffers cached<br />
Mem: 8005 6078 1926 0 487 4675<br />
-/+ buffers/cache: 915 7089<br />
Swap: 11442 4 11438</p>
<p>Telling me that I actually am only using 915MB of ram, not 6GB of it and I&#8217;ve got over 7GB of my available 8GB of memory to spare!  At this point you can breath a sigh of relief and give thanks that you are running an OS that is taking full advantage of all this juicy RAM that you have, which would otherwise just be sitting there taking up space <img src='http://blog.netflowdevelopments.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2012/01/22/linux-memory-management-and-how-to-see-actual-ram-usage/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Searching through your terminal buffer/history</title>
		<link>http://blog.netflowdevelopments.com/2012/01/16/searching-through-your-terminal-bufferhistory/</link>
		<comments>http://blog.netflowdevelopments.com/2012/01/16/searching-through-your-terminal-bufferhistory/#comments</comments>
		<pubDate>Mon, 16 Jan 2012 09:49:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux / Freebsd]]></category>
		<category><![CDATA[buffer]]></category>
		<category><![CDATA[history]]></category>
		<category><![CDATA[screen]]></category>
		<category><![CDATA[search]]></category>
		<category><![CDATA[terminal]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=823</guid>
		<description><![CDATA[For some reason I could have sworn this was as easy as pressing Ctrl-F but apparently it&#8217;s not.. Or maybe that&#8217;s something that was lost in the switch from Ubutntu to Debian.. Either way I needed a way to search a vast amount of terminal output quickly and easily and this is how I did [...]]]></description>
			<content:encoded><![CDATA[<p>For some reason I could have sworn this was as easy as pressing Ctrl-F but apparently it&#8217;s not.. Or maybe that&#8217;s something that was lost in the switch from Ubutntu to Debian.. Either way I needed a way to search a vast amount of terminal output quickly and easily and this is how I did it.</p>
<ol>
<li>Install screen &#8211; apt-get install screen</li>
<li>run your commands from inside screen.  If you need to search through 1000&#8242;s of lines of output you&#8217;ll probably need to adjust the output buffer size by adding this line to your ~/.screenrc: defscrollback 5000</li>
<li>After you&#8217;ve run your command(s) and it/they&#8217;ve spit out line upon line of output you need to go into copy mode to start searching through.. You do this with C-a [ .  I just did that to be a dick as I&#8217;ve seen it everywhere and no one bothers to explain what the bloody hell C-a is.  It means Ctrl+a , shorthand for those people too lazy to type the trl in Ctrl I guess..  Anyways press Ctrl-a and then [ and then you&#8217;ll be in copy mode</li>
<li>Search backwards by pressing ? and then typing in your search term.  You can then press &#8216;n&#8217; to go to the next instance</li>
<li>Search forwards by pressing / and again n will go to the next instance</li>
</ol>
<p>Easy peasy and way more 1337 than using ctrl-f .</p>
<p>&nbsp;</p>
<p>PS &#8211; another really handy command in screen is Ctrl-a ? which brings up all the commands.  Enjoy and happy searching</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2012/01/16/searching-through-your-terminal-bufferhistory/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Postfix spewing relay access denied errors for outgoing email</title>
		<link>http://blog.netflowdevelopments.com/2012/01/12/postfix-spewing-relay-access-denied-errors-for-outgoing-email/</link>
		<comments>http://blog.netflowdevelopments.com/2012/01/12/postfix-spewing-relay-access-denied-errors-for-outgoing-email/#comments</comments>
		<pubDate>Thu, 12 Jan 2012 20:38:38 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux / Freebsd]]></category>
		<category><![CDATA[dovecot]]></category>
		<category><![CDATA[outlook express]]></category>
		<category><![CDATA[postfix]]></category>
		<category><![CDATA[relay access]]></category>
		<category><![CDATA[send]]></category>
		<category><![CDATA[smtp]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=818</guid>
		<description><![CDATA[So out of the dozens of email accounts I setup on my new Debian server with postfix/dovecot one of them was unable to send emails.. No bloody idea why, maybe these guys were the only ones using outlook express, I don&#8217;t know but the bottom line is that none of the emails were going out [...]]]></description>
			<content:encoded><![CDATA[<p>So out of the dozens of email accounts I setup on my new Debian server with postfix/dovecot one of them was unable to send emails.. No bloody idea why, maybe these guys were the only ones using outlook express, I don&#8217;t know but the bottom line is that none of the emails were going out as they were all coming back with the following error:</p>
<p><em>NOQUEUE: reject: RCPT from unknown Relay access denied; from</em></p>
<p>After tonnes and tonnes of trial and error I narrowed it down to /etc/dovecot/dovecot.conf , much thanks to this post : <a href="http://www.linuxmail.info/postfix-smtp-auth-dovecot-sasl/">http://www.linuxmail.info/postfix-smtp-auth-dovecot-sasl/</a></p>
<p>In the end I needed</p>
<p>mechanisms = plain login</p>
<p>near the end of my .conf file so after the edit it looked like this:</p>
<p>auth default {<br />
user = root</p>
<p>passdb sql {<br />
args = /etc/dovecot/dovecot-sql.conf<br />
}</p>
<p>userdb static {<br />
args = uid=5000 gid=5000 home=/home/vmail/%d/%n allow_all_users=yes<br />
}</p>
<p>socket listen {<br />
master {<br />
path = /var/run/dovecot/auth-master<br />
mode = 0600<br />
user = vmail<br />
}</p>
<p>client {<br />
path = /var/spool/postfix/private/auth<br />
mode = 0660<br />
user = postfix<br />
group = postfix<br />
}<br />
}<br />
mechanisms = plain login<br />
}</p>
<p>&nbsp;</p>
<p>Yay, hopefully this is the last of the problems with this mail server</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2012/01/12/postfix-spewing-relay-access-denied-errors-for-outgoing-email/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pinging domain name results in &#8220;0.0     0.0     0.1     ::1&#8243; &#8211; booerns</title>
		<link>http://blog.netflowdevelopments.com/2012/01/09/pinging-domain-name-results-in-0-0-0-0-0-1-1-booerns/</link>
		<comments>http://blog.netflowdevelopments.com/2012/01/09/pinging-domain-name-results-in-0-0-0-0-0-1-1-booerns/#comments</comments>
		<pubDate>Tue, 10 Jan 2012 01:39:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux / Freebsd]]></category>
		<category><![CDATA[0.0.0.0]]></category>
		<category><![CDATA[bind]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[ipv6]]></category>
		<category><![CDATA[named]]></category>
		<category><![CDATA[nameserver]]></category>
		<category><![CDATA[resolve]]></category>
		<category><![CDATA[zone file]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=815</guid>
		<description><![CDATA[Well I was just about to make a final move off of my old VPS and I wanted to double check that eveyrthing on the new server was up to date and nothing got left behind.  I noticed however that for a couple websites in particular there was a lot of activity going on on [...]]]></description>
			<content:encoded><![CDATA[<p>Well I was just about to make a final move off of my old VPS and I wanted to double check that eveyrthing on the new server was up to date and nothing got left behind.  I noticed however that for a couple websites in particular there was a lot of activity going on on some domains for what should be a dead server.  So I checked some logs, did some pings and found a lot of bots spidering around but also found that about half of the location on just-ping.com would come back as: &#8221;0.0     0.0     0.1     ::1&#8243;  or you can see a full ping result below for a better example:</p>
<ol>
<li>
<div>Location       Result  min. rrt        avg. rrt        max. rrt        IP</div>
</li>
<li>
<div> Singapore, Singapore:  Okay    189.9   206.1   245.7   65.39.222.41</div>
</li>
<li>
<div> Amsterdam2, Netherlands:       Checkpoint temporarily not available    &#8211;       &#8211;       &#8211;       -</div>
</li>
<li>
<div> Florida, U.S.A.:       Okay    76.4    77.0    78.0    65.39.222.41</div>
</li>
<li>
<div> Amsterdam3, Netherlands:       Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> Hong Kong, China:      Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> Sydney, Australia:     Okay    183.2   183.6   184.7   65.39.222.41</div>
</li>
<li>
<div> MÃ¼nchen, Germany:   Okay    187.3   187.7   188.0   65.39.222.41</div>
</li>
<li>
<div> Cologne, Germany:      Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> New York, U.S.A.:      Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> Amsterdam1, Netherlands:       Okay    169.7   170.1   171.2   65.39.222.41</div>
</li>
<li>
<div> Stockholm, Sweden:     Okay    0.0     0.1     0.1     ::1</div>
</li>
<li>
<div> Santa Clara, U.S.A.:   Okay    25.4    26.1    26.6    65.39.222.41</div>
</li>
<li>
<div> Vancouver, Canada:     Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> Madrid, Spain: Okay    181.6   184.8   189.4   65.39.222.41</div>
</li>
<li>
<div> Padova, Italy: Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> Austin, U.S.A.:        Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> Amsterdam, Netherlands:        Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> Paris, France: Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> Melbourne, Australia:  Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> Shanghai, China:       Okay    162.4   163.4   163.8   65.39.222.41</div>
</li>
<li>
<div> Copenhagen, Denmark:   Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> Lille, France: Checkpoint temporarily not available    &#8211;       &#8211;       &#8211;       -</div>
</li>
<li>
<div> San Francisco, U.S.A.: Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> Zurich, Switzerland:   Okay    180.7   181.1   181.5   65.39.222.41</div>
</li>
<li>
<div> Mumbai, India: Okay    287.9   288.6   289.4   65.39.222.41</div>
</li>
<li>
<div> Chicago, U.S.A.:       Okay    0.0     0.0     0.1     ::1</div>
</li>
<li>
<div> Nagano, Japan: Okay    131.0   131.2   132.0   65.39.222.41</div>
</li>
<li>
<div> Haifa, Israel: Okay    247.1   247.8   248.3   65.39.222.41</div>
</li>
<li>
<div> Auckland, New Zealand: Okay    185.1   185.7   187.1   65.39.222.41</div>
</li>
<li>
<div> Antwerp, Belgium:      Okay    161.4   161.9   162.7   65.39.222.41</div>
</li>
<li>
<div> Groningen, Netherlands:        Okay    184.5   185.1   185.8   65.39.222.41</div>
</li>
<li>
<div> Moscow, Russia:        Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> Dublin, Ireland:       Okay    160.0   160.6   161.3   65.39.222.41</div>
</li>
<li>
<div> Oslo, Norway:  Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> Kharkov, Ukraine:      Okay    204.0   204.0   204.0   65.39.222.41</div>
</li>
<li>
<div> Vilnius, Lithuania:    Okay    206.8   209.4   211.0   65.39.222.41</div>
</li>
<li>
<div> Bucharest, Romania:    Okay    194.4   195.2   197.2   65.39.222.41</div>
</li>
<li>
<div> Bangkok, Thailand:     Okay    222.7   223.5   225.3   65.39.222.41</div>
</li>
<li>
<div> Kuala Lumpur, Malaysia:        Okay    188.3   189.7   193.3   65.39.222.41</div>
</li>
<li>
<div> Jakarta, Indonesia:    Okay    294.1   294.5   294.9   65.39.222.41</div>
</li>
<li>
<div> Cape Town, South Africa:       Okay    298.8   299.3   299.6   65.39.222.41</div>
</li>
<li>
<div> Glasgow, United Kingdom:       Okay    150.5   150.9   151.3   65.39.222.41</div>
</li>
<li>
<div> Lisbon, Portugal:      Okay    188.3   195.4   200.1   65.39.222.41</div>
</li>
<li>
<div> Chicago, U.S.A.:       Okay    0.0     0.0     0.1     ::1</div>
</li>
<li>
<div> Dallas, U.S.A.:        Okay    65.2    65.6    66.1    65.39.222.41</div>
</li>
<li>
<div> Buenos Aires, Argentina:       Okay    204.7   204.9   205.7   65.39.222.41</div>
</li>
<li>
<div> Istanbul, Turkey:      Okay    205.9   206.5   206.9   65.39.222.41</div>
</li>
<li>
<div> Gdansk, Poland:        Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> Beijing, China:        Okay    748.6   991.9   1,303.0 65.39.222.41</div>
</li>
<li>
<div> Belgrade, Serbia:      Okay    159.6   177.6   196.7   65.39.222.41</div>
</li>
<li>
<div> Toronto, Canada:       Okay    61.5    61.9    62.4    65.39.222.41</div>
</li>
<li>
<div> Novosibirsk, Russia:   Okay    275.4   275.9   276.9   65.39.222.41</div>
</li>
<li>
<div> Athens, Greece:        Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> Frankfurt, Germany:    Okay    0.0     0.0     0.0     ::1</div>
</li>
<li>
<div> Sofia, Bulgaria:       Okay    200.3   200.8   201.2   65.39.222.41</div>
</li>
<li>
<div> Budapest, Hungary:     Okay    177.3   177.9   178.9   65.39.222.41</div>
<div></div>
<div>So naturally I floundered around for an hour or two before putting two and two together and than in all of my zone files for the domains on the server I have this: <strong>@      IN      AAAA    ::1</strong></div>
<div>This is something I no doubt saw in a tutorial and just implemented.. Well it;s the cause of all of the grieve..   Removing fixed it right away but I&#8217;m still curious as to what the heck this is.  It is as I guessed the IPV6 record for the domain and obviously what was in there was a mistake.  So I could spend the time and learn about hwo to properly implement IPV6 domains but after checking on where the adoption rate is( around .40% according to <a href="http://www.google.com/intl/en/ipv6/statistics/">http://www.google.com/intl/en/ipv6/statistics/</a>) I don&#8217;t feel the pressing need to dedicate more of my life to this, although I certain will in the future.</div>
<div></div>
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2012/01/09/pinging-domain-name-results-in-0-0-0-0-0-1-1-booerns/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Corsair Gaming Headset HS1 &#8211; Complete Garbage</title>
		<link>http://blog.netflowdevelopments.com/2012/01/09/corsair-gaming-headset-hs1-complete-garbage/</link>
		<comments>http://blog.netflowdevelopments.com/2012/01/09/corsair-gaming-headset-hs1-complete-garbage/#comments</comments>
		<pubDate>Mon, 09 Jan 2012 07:58:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[bass]]></category>
		<category><![CDATA[corsair]]></category>
		<category><![CDATA[gargage]]></category>
		<category><![CDATA[hs1]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[quality]]></category>
		<category><![CDATA[review]]></category>
		<category><![CDATA[sound]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=812</guid>
		<description><![CDATA[I got this headset the other month as there was a crazy deal on it that I cuoldnt&#8217; turn down and immediately I regretted spending any amount of money on these pieces of garbage.  The sound quality on these is easily the worst I have heard in my life on a USB headset and some [...]]]></description>
			<content:encoded><![CDATA[<p>I got this headset the other month as there was a crazy deal on it that I cuoldnt&#8217; turn down and immediately I regretted spending any amount of money on these pieces of garbage.  The sound quality on these is easily the worst I have heard in my life on a USB headset and some of the worst on anything short of an airplane headset.. There is virtually no bass delivered at all on these 50mm drivers which I just assumed would have a much greater range than the 40mm drivers that I had in my old creative labs arena headsetup but there isn&#8217;t, it disappointed me from day one and didn&#8217;t stop disappointing me up until this very moment when the god damn cord just snapped for no good reason.  This shocked the hell out of me as the cord itself is encased in what feels like rope so you can literally take a section of it and pull as hard as you want and it won&#8217;t break.  What the brilliant shits at corsair DIDN&#8217;T do however was to secure this roping to where it connects into the volume control meaning that it&#8217;s basically just the copper wire inside that&#8217;s holding it in place there and the sligthest tug on that and out it snaps, rendering these things useless.  They are huge and bulky, the phone on the ears is soft and thin so all of the sound escapes to piss of people around you and they aren&#8217;t any more comfortable on my head than any others I&#8217;ve owned.</p>
<p>I got these for over 50% off and even then it was the single biggest waste of money I have ever spent in my entire life and the worst part is that I knew this the moment I put these pieces of garbage on my head.  Stay FAR FAR away from any of these products, Corsair needs to stick to the ram game because they are ruining their name by producing such underperformance, low grade pieces of garbage.</p>
<h2>Overall Rating:</h2>
<p>Sound Quality: 5/10</p>
<p>Bass Quality: 2/10</p>
<p>Construction: 3/10 (not counting the cord &#8211; 8/10)</p>
<p>Mic Quality: 7/10</p>
<p>Looks: 0/10</p>
<p>Value: Any price is too high</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2012/01/09/corsair-gaming-headset-hs1-complete-garbage/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Moving a live production web server from Ubuntu 11.04 to Debian 6.0.3</title>
		<link>http://blog.netflowdevelopments.com/2012/01/07/moving-a-live-production-web-server-from-ubuntu-11-04-to-debian-6-0-3/</link>
		<comments>http://blog.netflowdevelopments.com/2012/01/07/moving-a-live-production-web-server-from-ubuntu-11-04-to-debian-6-0-3/#comments</comments>
		<pubDate>Sat, 07 Jan 2012 09:05:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux / Freebsd]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[bind]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[dns. rsync]]></category>
		<category><![CDATA[dovecot]]></category>
		<category><![CDATA[migrate]]></category>
		<category><![CDATA[migration]]></category>
		<category><![CDATA[move]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[postfix]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[web]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=806</guid>
		<description><![CDATA[So 2 weeks ago I sadly moved my main server from FreeBSD 8.1 to a temporary home on an Ubuntu 11.04 VPS.  I say sadly because I&#8217;ve been using BSD for 10 years and in terms of stability and security I understand that it can&#8217;t be beat.. I also think I&#8217;m sad to see it [...]]]></description>
			<content:encoded><![CDATA[<p>So 2 weeks ago I sadly moved my main server from FreeBSD 8.1 to a temporary home on an Ubuntu 11.04 VPS.  I say sadly because I&#8217;ve been using BSD for 10 years and in terms of stability and security I understand that it can&#8217;t be beat.. I also think I&#8217;m sad to see it go because having a tuned and efficient BSD webserver comes with some street cred,  it&#8217;s less mainstream than all these linux servers so I got to feel a little 1337 and a little different than the rest of the bunch.  Unfortuantely I didn&#8217;t document the move in it&#8217;s entirety, although there were certainly a few posts about postfix which proved to be the biggest challenge as it was my first mail server setup, and on an unfamiliar server environment to boot.  Luckily enough I&#8217;ve been a long time Ubuntu home user, although I sport Debian, so it wasn&#8217;t all greek to me.</p>
<p>The reason I moved to the Ubuntu VPS was that my main server was being shut down, well in reality the entire Datacenter was being shut down, and I had 24 hours notice to move.  Nice eh?  Luckily enough that worked out to 72 hours which was enough time to setup a BIND DNS, also a first for me, and make sure we didn&#8217;t have any major downtime.  We were just without email for 3 days while postfix decided to kick my ass.  all of this so that the few hundred sites on that server had a place to live while the new dedicated box I ordered was being shipped to it&#8217;s new home in Seattle.  Pretty stoked about that because I&#8217;m going from an old Quad CPU Xeon server with 2GB of ram to a dual CPU, quad core(8 cores in total) newer Xeon with 8GB of ram and twice the hard drive(and even more importantly a hard drive with all it&#8217;s sectors in tact &#8211; goodbye fschk!).  <a href="http://ark.intel.com/products/33927/Intel-Xeon-Processor-E5420-(12M-Cache-2_50-GHz-1333-MHz-FSB)">Intel® Xeon® Processor E5420 (12M Cache, 2.50 GHz, 1333 MHz FSB)</a> to be exact!  So I got word today that the new Debian server is setup just the way I wanted it(which took a few tries) and so I&#8217;m setting about to migrate off this VPS(which I&#8217;ve already killed twice in 1 week) onto a much more stable and dedicated colo box that I can play with as rough as I want <img src='http://blog.netflowdevelopments.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>I figured that I would document the entire process as it&#8217;s bound to be a hell of a lot less eventful and painful now that we&#8217;re moving between Ubuntu and Debian, two distros that are about as similar as you can get &#8211; but different enough in their own right.</p>
<h2>Why Debian:</h2>
<p>Well this is a question worthy of an entire blog post but I&#8217;ll give you my opinion to be taken as that and only that.  First off Debian is more stable and that stability comes at the expense of not being on the cutting edge in terms of kernel releases.  People will argue that I could just stick to the Ubuntu LTS but I don&#8217;t know if I could trust myself with that holding back <img src='http://blog.netflowdevelopments.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   If this wasn&#8217;t such a critical production server, responsible for 100&#8242;s of websites and dozens of businesses than I might not care as much but knowing that Debian functions on the philosophy of only releasing new updates when they are 110% good and ready and not a bloody minute before really re-assures me that a server of this size, diversity and importance is going to be as stable as possible.</p>
<p>Secondly, I recently switched off Ubuntu on my home machines onto Debian 6.  This is part of my solitary boycott of Ubuntu now ever since 11.10 and <del>the release of</del> Unity was shoved down our throats.  Ubuntu has taken the path of appealing to the lowest common demoninator with this move and that comes at the price of alienating the hard core linux users that put it on the map in the fist place.  So philosophically I refuse to use Ubuntu straight out but much to my surprise, when I switched onto Debian, I noticed gigantic performance increases in almost every area.   I read through a ton of reviews of all linux distros before making my choice and was full ready to go to Fedora, Arch or CentOS instead of going to Debian which is so similar to Ubuntu and at the end of it all of the reviews said the same thing.. Pound for pound Debian is the best linux distro in there, it&#8217;s leaner, it&#8217;s meaner and as I&#8217;ve learned it allows us hardcore users to customize our experience out the wazoo without facing the wrath of Canonical.   Like I was saying Ubuntu is much like the windows of the linux world.. As far as linux goes it&#8217;s designed to appeal to as many users as possible and this causes it&#8217;s fair share of bloat with the default install.. Debian comes stripped down and if you want extras(hell rsync isn&#8217;t even installed by default) you need to put them on.. The end result is a much more streamlined and efficient operating system, which is exactly what I want for my server.</p>
<p>The last reason is compatibility.  I would hands down still be with FreeBSD right now if it wasn&#8217;t for compatibility issues.. I prefer the more draconian approach BSD takes to things, it&#8217;s simpler, less flashy and just makes sense to me after 10 years of working with it.  I like going into my ports tree and doing a make install instead of apt-get install.  I like having everything in /usr/local/etc/apache22 instead of /etc/apache2.  Or I should say I&#8217;m used to it because using Ubuntu for the past week has made me udnerstand why they do it the way they do and the benefits to that(but still honestly does every single apache module need it&#8217;s own .conf file?  come on, just make a section in the httpd.conf for modules).  Anyways, there are some really really cool server applications that I just can&#8217;t run on BSD and trust you me I&#8217;ve tried.  The main one is Big Blue Button.  Probably the single coolest server application I&#8217;ve ever seen that will enable me to take my collaborative teams to a whole new level of connectivity.  Unfortunately it&#8217;s made for Ubuntu and fortunately enough for me Debian is close enough for it to work pretty flawlessly.  There is a BSD port but I cannot even begin to describe the nightmare of getting that to work properly.  Oh wait, I just remembered that I already did describe what it took to get it to work here: <a href="http://groups.google.com/group/bigbluebutton-users/browse_thread/thread/27f89c10aae707c2/0a5ad6064ec95aa1?#0a5ad6064ec95aa1">http://groups.google.com/group/bigbluebutton-users/browse_thread/thread/27f89c10aae707c2/0a5ad6064ec95aa1</a></p>
<p>So all in all my need for comparability, stability and performance coupled with my need to be a little less mainstream than Ubuntu landed me with a fresh new Debian install.</p>
<h2>Installation:</h2>
<p>So first things first, let&#8217;s get the damn OS installed.. Or more specifically lets get a damn tech at the DC to get the damn OS installed <img src='http://blog.netflowdevelopments.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   It&#8217;s a total barebones installation but I did specify that everything except for  /tmp should be ext4.  For some reason the techs went with ext3 on the first run around which I spanked them for and got them to reinstall it all with ext4.  Now I was running XFS on my BSD box and from what I understand overall that&#8217;s a better FS however I am not using the filesystem for anything that would need XFS at all, as amazing as it is.  That and in the last 2 years I chewed through 4 hard drives, not saying it was all XFS but I wanted something new that I haven&#8217;t destroyed.  I run ext4 at home and have been for 1-2 years now and have had no issues.  I also researched the hell out of it and for the most part it comes out well on top of ext3 in performance so I went with that.  Now I said everything but /tmp before and for that I went with tmpfs as my filesystem..  Remember, for the past 6 years I&#8217;ve been running an ever expanding and demanding empire of websites on an old server with inadequate memory and so i&#8217;ve developed this obsession with squeezing every ounce of performance out of the server(my apache res memory size on my tuned box is 29MB versus the 95MB that it is on  one of the shared servers I have some websites).  Somewhere in this obsession I stumbled across an article about running  /tmp on a tmpfs instead of ext4 and the big performance gains you see from that(assuming you have enough ram) and so here I am, going to test it out.  In the end my partition table ended up like this(It&#8217;s a 500GB drive):</p>
<p>Filesystem Type 1K-blocks Used Available Use% Mounted on<br />
/dev/sda4 ext4 392287828 341664 372019076 1% /<br />
tmpfs tmpfs 4098612 0 4098612 0% /lib/init/rw<br />
udev tmpfs 4093808 140 4093668 1% /dev<br />
tmpfs tmpfs 4098612 0 4098612 0% /dev/shm<br />
/dev/sda2 ext4 28836860 475212 26896816 2% /usr<br />
/dev/sda3 ext4 48061320 318892 45301008 1% /var<br />
tmpfs tmpfs 523356 0 523356 0% /tmp</p>
<p>It has a 12GB Swap, overkill yes I know but i&#8217;ve got room to spare.  Anyways, I won&#8217;t get into the explanation for why I went this way, it was through a lot of research and I&#8217;m sure if yuo want to verify that this is a good or bad setup you can head over to google and do some digging yourself.</p>
<h2>Post-Install</h2>
<p>So as I mentioned, a stock Debian install comes pretty barebones.  Not even rsync is installed.. So there&#8217;s some basic stuff we need to setup to enable us to even install any further packages and to transfer the other server over.   If your techs are a little bit on the lazy side, as it seems mine were, then you&#8217;ll notice that when you try your first apt-get install it will find the package and just sit at 0%.  Good times.. A quick trip into /etc/apt/sources.list shows that they left source as the CD-ROM disc, which now wasn&#8217;t in the drive.  So you&#8217;ll need to uncomment out the internet sources and as I noted in my previous post you are going to need to  put another repo in the sources to grab some pretty important packages.  In the end my sources.list looked like this:</p>
<p># deb cdrom:[Debian GNU/Linux 6.0.3 _Squeeze_ - Official amd64 DVD Binary-1 20111008-14:36]/ squeeze contrib main</p>
<blockquote><p>deb http://security.debian.org/ squeeze/updates main contrib<br />
deb-src http://security.debian.org/ squeeze/updates main contrib<br />
deb http://ftp.debian.org/debian/ squeeze-updates main contrib<br />
deb-src http://ftp.debian.org/debian/ squeeze-updates main contrib<br />
deb http://backports.debian.org/debian-backports squeeze-backports main<br />
deb http://http.us.debian.org/debian/ squeeze contrib non-free main</p></blockquote>
<p>From here I ran apt-get update &amp;&amp; apt-get upgrade and ugpraded my kernel to the latest version.  A quick reboot with my fingers crossed and now uname -a shows this:</p>
<p>Linux ded 2.6.32-5-amd64 #1 SMP Thu Nov 3 03:41:26 UTC 2011 x86_64 GNU/Linux</p>
<p>Which again is a testament to how anal the Debian people are about their kernel release as the latest kernel out is .39 or higher I believe.  Now the server is ready to be used.</p>
<p>The first thing I install is rsync as I want to start moving everything over from the vps.  The first thing I&#8217;m moving over are all of the user accounts.  Because Debian and Ubuntu use the same hash algorithm it is possible to just copy passwd group and shadow over and it will work for the most part but problems will crop up down the road because of some small differences with group names across the two distros.  So your best bet is to go into your passwd, group and shadow files and find all of the missing user accounts and groups on your production server that haven&#8217;t yet been created on the new server.  It&#8217;s as simple as copying and pasting them onto the end of the file in question. *NOTE: You should avoid copying over any of the package specific usernames that get created upon package installation.  You&#8217;ll run into problems here and there and it&#8217;s best just to let the installer do it&#8217;s own thing*  Do all of this before hand will make it possible to just move the entire /home directory tree over and maintain all of the existing file ownerships.  Which is exactly what I&#8217;m going to get going in the background while I start installing all of the needed packages.</p>
<p>One of my BSD habits that I take with me is simple directory structure.. I absolutely can&#8217;t stand seeing /var/www/home/user1/site.com/public-html/ .  Who the hell needs all of that?  I&#8217;ve been running servers for 10 years and I have never in my life seen a need to distinguish public-html and private-html, what the hell is private-html anyways?  Are so many people in need of this that it really needs to be the <strong>default</strong> directory structure?  Hell no, anything in ./site.com/ is what&#8217;s going to show up on www.site.com so why not mirror that on the server if possible?  So everything on my servers just goes into /home/ which is symlinked to /usr/home to appease some programs.</p>
<p>So the first thing I&#8217;m doing is moving everything over from the old server&#8217;s home directory: #rsync -avpl -e &#8220;ssh&#8221; root@oldserver.com:/home/ /home/   and off she goes!  Transfering the 120 GB over should buy me enough time to setup some of the modules.</p>
<p>After that I&#8217;m going to go through the installed packages on the Ubuntu server and start installing them all manually according to what I actually need.  Remember that Ubuntu will install a bit of bloat that you don&#8217;t need by default, so make sure you know what everything instead of just installing it all over as you&#8217;ll no doubt be loosing some of the lean meanness of Debian that way.</p>
<h2>Installing needed packages:</h2>
<p>So we need to see what&#8217;s installed on the old server and install it on the new one.. There are going to be some obvious ones here like apache2, php5.3, mysql, etc etc but it&#8217;s good to make sure you&#8217;ve got a full list and don&#8217;t miss anything important.  For this we need to use the following command: <strong>dpkg &#8211;get-selections on </strong>on both servers and then compare the list, going through the ubuntu one carefully and making sure we are only moving over the necessary packages and not bringing all of it&#8217;s bloat with it.</p>
<p>How much bloat you ask?  Well out of a freak of coincidence the Ubuntu server has EXACTLY double the installed packages as the Debian server.  531 on the Ubuntu box and 265 on the Debian box.  Now given the Ubuntu server is a life and functioning web server and with that come a few installed packages but I can assure you that I have not installed 265 additional packages since I took ownership of that VPS.  So what I do is  I take the output from both servers, copy and paste them into two separate .txt files on my local machine here and run diff to see where the differences lie.  Time to get busy!</p>
<p><strong> *Word from the wise* :  </strong>A lesson I learned from an old sysadmin is that the first thing you should be installing when setting up a new server remotely, via ssh without KVM, is the screen package.  Take it from my experience, there will be a time when your 25 minuets into a big package installation and your connection to the server will die, or something horrible will happen forcing you to clean up and start over.  Save yourself the headache and do everything from within a screen that will ensure your procs will stay running even if you don&#8217;t.</p>
<h2></h2>
<h2>Mysql Transfer :</h2>
<p>So if you&#8217;re like me then you have a good number of databases, users and the like to move over.  Again because the two distros are so similar you can literally just use rsync to pull the contents of /var/lib/mysql off your old server onto the new one.. I just moved /var/lib/mysql to /var/lib/mysql_bak on the new server incase anything goes wrong and I need to reference the old files and then just pulled the mysql from the old server onto the new one.  The only issue here was that I was seeing this error on the initial startup:  ERROR 1045 (28000): Access denied for user &#8216;debian-sys-maint&#8217;@'localhost&#8217; (using password: YES) followed by my inability to stop the server, etc, etc.    Because of how similar they are the /etc/mysql directory was one of the only ones I didn&#8217;t overwrite frmo the old server.  I figured if anything is going to have distro specific shit in there it&#8217;s going to be mysql, so best to leave the new installs files as they are.. Unfortunately that wasn&#8217;t the case and in order to get through this error I just needed to go into the /etc/mysql/debian.cnf file on the old server and copy the &#8216;password =&#8217; value over.  Fixed everything from there on in.</p>
<h2>Bind9:</h2>
<p>As with most everything else you can pretty much copy the entire contents of /etc/bind and be fine with all of the configurations moving over.. The only area where you are going to need to do a little surgery is in regards to the IP addresses.  When moving to a new server in a new location chances are that you&#8217;re going to be assigned a whole new lot of IP addresses and you&#8217;ll need to migrate everything on over to the new ranges.  Now I suppose you could do some clever bash scripting for this with two arrays of IP addresses if you have a few dozen IP&#8217;s on the server but if you have 15 or less your probably better of just using some find and sed magic.</p>
<p>As with anytime you are making a ton of changes automatically let&#8217;s back up our /etc/bind/zones/ directory and then use the following command as many times as need be to replace all of the old IP&#8217;s with all of the new ones.  Keep in mind that you should be inside of /etc/bind/ before running this or it might take a while <img src='http://blog.netflowdevelopments.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&nbsp;</p>
<p><strong>find . -exec sed -i &#8216;s/<em>old.IP.address.here</em>/<em>new.IP.address.here</em>/g&#8217; {} \;</strong></p>
<p>From here it&#8217;s probably a good idea to run a cat * | more and just go through all of the files to make sure that everything is looking peachy and that you didn&#8217;t miss anything</p>
<h2>Apache and Nginx:</h2>
<p>Now depending on how you have your server setup you might have to do the same thing that yuo just did with bind except with apache as well.  Running find and replacing all of your old IP&#8217;s in apache conf files with new ones.  If you are like me however, apache is just acting as a proxy for nginx and in which case you need to do the same as with bind but with nginx.</p>
<h2>Postfix / Dovecot:</h2>
<p>I&#8217;m knocking on wood and crossing my fingers but this was incredibly painless to move over(now that it&#8217;s actually setup).  Just make sure that you carry all your certs over if you&#8217;ve setup SSL and that you&#8217;ve recreated  /var/spool/postfix/var/run/saslauthd so that everyone&#8217;s happy.  I spent a solid week setting this damn email server up the first time and I&#8217;m tickled pink to see it seamless transfer over and work right off the bat.  Again you should double check all of the conf files to make extra sure there&#8217;s nothing that needs altering and then telnet into 25, 587, 110 or 995 to test everything out</p>
<h2>Testing:</h2>
<p>So everything is pretty much moved over now but before you go ahead and edit your nameserver info at your registrar to point at the new server you better test the hell out of everything.  This is pretty easily accomplished by editing your /etc/hosts file(or localhost in windows) and putting in a list of domains you want to test and manually specifying what IP your computer should look for them on, essentially bypassing the nameservers.</p>
<p>something like 127.0.0.1 example.com would mean that instead of going to the actual IP for example.com it would look at the 127 IP instead.  This will allow you to test all of the domains you want to make sure are functioning properly.. It will allow you to check that mysql is doing what it needs to do, that php5 is happy and of course apache/nginx are working properly.  I was pleasantly surprised(shocked is a better word) that it all showed up immediately and perfectly as expected.</p>
<p>If you have a mail server setup you should also put your mail server address(ie: mail.example.com) in your hosts file to test that out with whatever email client you are using</p>
<p>&nbsp;</p>
<p>I cannot express the true depth of my shock when everything came up working almost immediately.. Remember I initially moved 100+ domains and databases off of a BSD server that was having all the nameserver and email stuff managed externally onto an Ubuntu server where I was taking care of all of the nameserver and email stuff internally.  It was hell to say the least, mostly because I had to learn the nuances of the new OS and I had to re-setup everything by hand(or well with the help of some bash scripts I wrote) in terms of the domains, the email addresses, the dns entries, apache, nginx, etc etc.  This time it was as simple as copying everything over, double checking a few things and what took me 7-8 days of strife and stress now took me about 3-4 hours of work with everything basically working exactly as it should have and the troubles I did encounter were straight forward and easily solvable.  I could get used to this <img src='http://blog.netflowdevelopments.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&nbsp;</p>
<p>So there you have it, I didn&#8217;t bother to document a lot of the setup of the individual components as there are all sorts of great guides out there written by people far more intelligent than I about that</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2012/01/07/moving-a-live-production-web-server-from-ubuntu-11-04-to-debian-6-0-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Having a non-executable /tmp (noexec) wreaks havoc with apt-get</title>
		<link>http://blog.netflowdevelopments.com/2012/01/05/having-a-non-executable-tmp-noexec-wreaks-havoc-with-apt-get/</link>
		<comments>http://blog.netflowdevelopments.com/2012/01/05/having-a-non-executable-tmp-noexec-wreaks-havoc-with-apt-get/#comments</comments>
		<pubDate>Fri, 06 Jan 2012 05:49:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux / Freebsd]]></category>
		<category><![CDATA[apt-get]]></category>
		<category><![CDATA[configure]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[fail]]></category>
		<category><![CDATA[install]]></category>
		<category><![CDATA[noexec]]></category>
		<category><![CDATA[tmp]]></category>
		<category><![CDATA[tmpfs]]></category>
		<guid isPermaLink="false">http://blog.netflowdevelopments.com/?p=807</guid>
		<description><![CDATA[For performance reasons I choose tmpfs as the filesystem of choice for /tmp and for security reasons I always make sure that /tmp has a noexec flag attached to it.  I&#8217;ve been admining webservers for 10 years now and by far the single greatest system wide breach of security happens with a script being placed [...]]]></description>
			<content:encoded><![CDATA[<p>For performance reasons I choose tmpfs as the filesystem of choice for /tmp and for security reasons I always make sure that /tmp has a noexec flag attached to it.  I&#8217;ve been admining webservers for 10 years now and by far the single greatest system wide breach of security happens with a script being placed in /tmp and being executed.  8 times out of 10 I would say.  So of course we can make sure that /tmp doesnt&#8217; allow anything to be executed from inside of it however when it comes time to use apt-get and a program needs to be preconfigured you are going to run into a little problem, that being that nothing works and the program won&#8217;t install, spewing out the following:</p>
<blockquote><p>Preconfiguring packages &#8230;<br />
Can&#8217;t exec &#8220;/tmp/ssl-cert.config.16841&#8243;: Permission denied at /usr/share/perl/5.10/IPC/Open3.pm line 168.<br />
open2: exec of /tmp/ssl-cert.config.16841 configure failed at /usr/share/perl5/Debconf/ConfModule.pm line 59<br />
ssl-cert failed to preconfigure, with exit status 255<br />
dpkg: unrecoverable fatal error, aborting:<br />
syntax error: unknown group &#8216;Debian-exim&#8217; in statoverride file<br />
E: Sub-process /usr/bin/dpkg returned an error code (2)</p></blockquote>
<p>So to get around that the boys over at <a href="http://www.debian-administration.org/articles/57">Debian-Administration</a> we&#8217;re kind enough to post the following solution:</p>
<blockquote><p>Add the following to the file <tt>/etc/apt/apt.conf</tt>:</p>
<pre>DPkg::Pre-Invoke{"mount -o remount,exec /tmp";};
DPkg::Post-Invoke {"mount -o remount /tmp";};</pre>
<pre>This contains two lines, one running before any packing installation and one afterwards. They merely execute the commands required to add and remove the execute permissions on the <tt>/tmp</tt></pre>
</blockquote>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.netflowdevelopments.com/2012/01/05/having-a-non-executable-tmp-noexec-wreaks-havoc-with-apt-get/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

