<?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>ThinkOvi! - Website transfer and Server migration services</title>
	<atom:link href="http://www.thinkovi.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.thinkovi.com</link>
	<description>Get your website moved the right way by professionals</description>
	<lastBuildDate>Thu, 01 Jul 2010 07:22:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Earn money with ThinkOvi!</title>
		<link>http://www.thinkovi.com/earn-money-with-thinkovi/</link>
		<comments>http://www.thinkovi.com/earn-money-with-thinkovi/#comments</comments>
		<pubDate>Thu, 01 Jul 2010 06:58:35 +0000</pubDate>
		<dc:creator>Ovidiu</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[affiliate]]></category>
		<category><![CDATA[earn money]]></category>

		<guid isPermaLink="false">http://www.thinkovi.com/?p=473</guid>
		<description><![CDATA[ThinkOvi! team is proud to announce the launch of a new affiliate program where for all sales you deliver to our site you get a 20% commission. The affiliate program is available here http://www.thinkovi.com/aff/ The payout schedule for now if at the begging of each month for all affiliates that have over 20 USD in [...]]]></description>
			<content:encoded><![CDATA[<p>ThinkOvi! team is proud to announce <a href="http://www.thinkovi.com/aff/idevaffiliate.php?id=100_0_1_12"><img class="alignright" style="padding-right: 5px; border: 0pt none;" src="http://www.thinkovi.com/aff/banners/250x250.jpg" border="0" alt="" width="250" height="250" /></a>the launch of a new affiliate program where for all sales you deliver to our site you get a<span style="color: #339966;"><strong style="font-size:16px"> 20%</strong></span> commission.</p>
<p>The affiliate program is available here <a title="ThinkOvi! Affiliate Program" href="http://www.thinkovi.com/aff/">http://www.thinkovi.com/aff/<br />
</a></p>
<p>The payout schedule for now if at the begging of each month for all affiliates that have over 20 USD in balance and delivered at least 2 sales.</p>
<p>Earn money fast and easy with ThinkOvi! affiliate program.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinkovi.com/earn-money-with-thinkovi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Joomla password reset</title>
		<link>http://www.thinkovi.com/joomla-password-reset/</link>
		<comments>http://www.thinkovi.com/joomla-password-reset/#comments</comments>
		<pubDate>Wed, 26 May 2010 15:57:25 +0000</pubDate>
		<dc:creator>Ovidiu</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[joomla password reset]]></category>

		<guid isPermaLink="false">http://www.thinkovi.com/?p=462</guid>
		<description><![CDATA[So you are trying to access your Joomla site backend and notice the password you are using is no good? Well, here is a simple solution for you to reset your Joomla password in a few easy steps: login to your site hosting control panel and look for phpmyadmin access lookout for your Joomla database, [...]]]></description>
			<content:encoded><![CDATA[<p>So you are trying to access your Joomla site backend and notice the password you are using is no good?</p>
<p>Well, here is a simple solution for you to reset your Joomla password in a few easy steps:</p>
<p><span id="more-462"></span></p>
<ol>
<li>login to your site hosting control panel and look for <a href="http://www.phpmyadmin.net/" target="_blank">phpmyadmin</a> access</li>
<li>lookout for your Joomla database, select it, and open an SQL query window and type in it this query:</li>
</ol>
<p><strong>UPDATE  jos_users set password=md5(&#8216;mynewpass&#8217;) WHERE username=&#8221;admin&#8221;</strong></p>
<p>Now you will be able to login with mynewpass for the account admin, but i would advise a little bit of creativity in choosing another pass.<strong></strong></p>
<p>If it still does not work, give us a call, we might be able to help you faster in recovering your Joomla admin access details.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinkovi.com/joomla-password-reset/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google insights into human behaviour</title>
		<link>http://www.thinkovi.com/google-insights-into-human-behaviour/</link>
		<comments>http://www.thinkovi.com/google-insights-into-human-behaviour/#comments</comments>
		<pubDate>Wed, 26 May 2010 09:47:52 +0000</pubDate>
		<dc:creator>Ovidiu</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[google insights]]></category>

		<guid isPermaLink="false">http://www.thinkovi.com/?p=457</guid>
		<description><![CDATA[I was playing today with the google insights utility, and here some interesting search patterns based on the graphic shown, please note the repetitive patterns on the graphic for each year: insights for the term &#8220;future&#8221; shows an increasing in search around the end of the year in December, Canada users having an increased interest [...]]]></description>
			<content:encoded><![CDATA[<p>I was playing today with the <a href="http://www.google.com/insights/" target="_blank">google insights utility</a>, and here some interesting search patterns based on the graphic shown, please note the repetitive patterns on the graphic for each year:</p>
<ul>
<li>insights for the term &#8220;<a href="http://www.google.com/insights/search/#q=future&amp;cmpt=q" target="_blank">future</a>&#8221; shows an increasing in search around the end of the year in December, Canada users having an increased interest in the feature, followed by countries like India and Australia</li>
</ul>
<ul>
<li>insights for the term &#8220;<a href="http://www.google.com/insights/search/#q=jobs&amp;cmpt=q" target="_blank">jobs</a>&#8221; gains the highest interest in month July and decreases slowly until December, and then rebuilding the interest in the next year, Zimbabwe having an increased interest, followed by Kenya, Pakistan, and then again India</li>
</ul>
<p>If you have found similar insight patterns, please care to share with us&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinkovi.com/google-insights-into-human-behaviour/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Joomla hosting</title>
		<link>http://www.thinkovi.com/joomla-hosting/</link>
		<comments>http://www.thinkovi.com/joomla-hosting/#comments</comments>
		<pubDate>Wed, 26 May 2010 08:53:47 +0000</pubDate>
		<dc:creator>Ovidiu</dc:creator>
				<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[hosting review]]></category>
		<category><![CDATA[joomla hosting]]></category>

		<guid isPermaLink="false">http://www.thinkovi.com/?p=454</guid>
		<description><![CDATA[Since Joomla! popularity is considerable increasing, choosing a good hosting company for your website is an important factor for your online presence. Through our experience, here are some good joomla hosting companies we recommend, list will continue to be updated: - hostgator.com &#8211; from 4.95$ /month for Unlimited disk space and bandwidth - steadfast.net &#8211; [...]]]></description>
			<content:encoded><![CDATA[<p>Since <a href="http://www.joomla.org" target="_blank">Joomla!</a> popularity is considerable increasing, choosing a good hosting company for your website is an important factor for your online presence.</p>
<p>Through our experience, here are some good joomla hosting companies we recommend, list will continue to be updated:</p>
<p><span id="more-454"></span></p>
<p>- <a href="http://www.hostgator.com/shared.shtml" target="_blank">hostgator.com</a> &#8211; from 4.95$ /month for Unlimited disk space and bandwidth</p>
<p>- <a href="http://steadfast.net/services/shared.php" target="_blank">steadfast.net</a> &#8211; from 24.95$/year , they seem to have very responsive support even if the allocated disk space is not that large</p>
<p>- <a href="http://www.siteground.com/joomla-hosting.htm" target="_blank">siteground.com</a> &#8211; from 5.95$/month , they can also provide free domain name when singing up for a longer period</p>
<p>Usually the unlimited offers are just a selling point, nothing is unlimited, so make sure when signing up to read the full agreement details.</p>
<p>If you have a good host to recommend, please comment to this post and we will put it up. Good luck!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinkovi.com/joomla-hosting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linux online backup</title>
		<link>http://www.thinkovi.com/linux-online-backup/</link>
		<comments>http://www.thinkovi.com/linux-online-backup/#comments</comments>
		<pubDate>Wed, 26 May 2010 08:34:12 +0000</pubDate>
		<dc:creator>Ovidiu</dc:creator>
				<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[linux online backup]]></category>

		<guid isPermaLink="false">http://www.thinkovi.com/?p=448</guid>
		<description><![CDATA[Backing up your data is an essential procedure for your business safety! When talking Linux online backups, creating backups of your data and sending them to a safe location is a pretty straightforward task. Lets analyze some of the tasks that can be done only by the use of a secure command shell: 1. Creating [...]]]></description>
			<content:encoded><![CDATA[<p>Backing up your data is an essential procedure for your business safety! When talking Linux online backups, creating backups of your data and sending them to a safe location is a pretty straightforward task.</p>
<p>Lets analyze some of the tasks that can be done only by the use of a secure command shell:</p>
<p><span id="more-448"></span></p>
<p style="padding-left: 30px;">1. Creating a backup for your files &#8211; this <a href="http://www.debianhelp.co.uk/tarbackup.htm" target="_blank">simple tutorial from DebianHelp</a> shows how you can create a tar backup of your files, which can include one or more directories and files</p>
<p style="padding-left: 30px;">2. Creating a mysql database backup for one or multiple databases can be done by using the <a href="http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html" target="_blank">mysqldump</a> utility, <a href="http://www.thegeekstuff.com/2008/09/backup-and-restore-mysql-database-using-mysqldump/" target="_blank">this tutorial</a> might be of further use</p>
<p style="padding-left: 30px;">3. Sending your backup to another location, presuming an  ftp server, can be achieved with the <a href="http://wput.sourceforge.net/" target="_blank">wput utility</a></p>
<p style="padding-left: 30px;">Basic usage:  <strong>wput ftp://[username[:password]@]hostname[:port][/[path/][file]]</strong></p>
<p style="padding-left: 30px;">4. Advanced tools to look into:</p>
<p style="padding-left: 30px;"><a href="http://samba.anu.edu.au/rsync/" target="_blank">rsync</a>: open source utility for fast incremental file transfer</p>
<p style="padding-left: 30px;"><a href="http://www.bacula.org/" target="_blank">bacula</a>: open source network backup tool</p>
<p style="padding-left: 30px;"><a href="http://en.wikipedia.org/wiki/Cron" target="_blank">cron</a>: linux job scheduler that can be used to automatize the backup and transfer process</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinkovi.com/linux-online-backup/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Migrating your IMAP mail? Here&#8217;s how!</title>
		<link>http://www.thinkovi.com/migrating-your-imap-mail-heres-how/</link>
		<comments>http://www.thinkovi.com/migrating-your-imap-mail-heres-how/#comments</comments>
		<pubDate>Thu, 04 Feb 2010 09:25:17 +0000</pubDate>
		<dc:creator>Ovidiu</dc:creator>
				<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[imap email migration]]></category>
		<category><![CDATA[transfer email account]]></category>

		<guid isPermaLink="false">http://www.thinkovi.com/?p=385</guid>
		<description><![CDATA[For those of you who are changing their IMAP email account to a different server, there is a very nice utility called imapsync. The utility is actually written in PERL so it can run on any number of hosts that support PERL scripting, and while it has many config options, here is the actual command [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.thinkovi.com/wp-content/uploads/2010/02/email.jpg"><img class="alignright size-thumbnail wp-image-405" title="E-mail IMAP" border="0" src="http://www.thinkovi.com/wp-content/uploads/2010/02/email-150x150.jpg" alt="" width="150" height="150" /></a>For those of you who are changing their IMAP email account to a different server, there is a very nice utility called <a title="Imapsync tool" href="http://freshmeat.net/projects/imapsync/" target="_blank">imapsync</a>.</p>
<p>The utility is actually written in PERL so it can run on any number of hosts that support PERL scripting, and while it has many config options, here is the actual command we used to transfer an email account from our server to Google Apps Mail account(GMail is the same) from a Linux box:</p>
<h2>The command</h2>
<blockquote><p>imapsync \</p>
<p>&#8211;host1 thinkovi.com &#8211;user1 email@thinkovi.com &#8211;password1 mypass1 \</p>
<p>&#8211;host2 imap.gmail.com &#8211;user2 new@gmail.com &#8211;password2 pass2 \</p>
<p>&#8211;ssl2 &#8211;ssl1 &#8211;authmech1 PLAIN &#8211;authmech2 LOGIN</p></blockquote>
<ul>
<li>bear in mind that this utility will work only for email servers supporting IMAP protocol.</li>
</ul>
<ul>
<li>also, in the above code notice we have used SSL for both connections, and PLAIN authentication for the original server and LOGIN for the imap server at google</li>
</ul>
<p><span id="more-385"></span></p>
<h2>Result Message</h2>
<blockquote><p>++++ End looping on each folder ++++<br />
++++ Statistics ++++<br />
Time                   : 257 sec<br />
Messages transferred   : 170<br />
Messages skipped       : 0<br />
Total bytes transferred: 12914745<br />
Total bytes skipped    : 0<br />
Total bytes error      : 0<br />
Detected 0 errors</p></blockquote>
<ul>
<li>worth mentioning, the utility really worked and our gmail account contained in the end all email messages and folders from the original IMAP server</li>
</ul>
<p>The full usage options(&#8220;<strong>imapsync &#8211;help</strong>&#8220;) and more information can also be found on the<a title="Imapsync man page linux" href="http://linux.die.net/man/1/imapsync" target="_blank"> imapsync linux man page here</a>.</p>
<p>Please, thank the author (Gilles LAMIRAL) by giving him a book:<br />
<a title="Thank Gilles LAMIRAL" href="http://www.amazon.com/gp/registry/wishlist/1C9UNDIH3P7R7/" target="_blank">http://www.amazon.com/gp/registry/wishlist/1C9UNDIH3P7R7/</a></p>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 69px; width: 1px; height: 1px;">
<p>usage: /usr/bin/imapsync [options]</p>
<p>Several options are mandatory.</p>
<p>&#8211;host1       &lt;string&gt; : &#8220;from&#8221; imap server. Mandatory.<br />
&#8211;port1       &lt;int&gt;    : port to connect on host1. Default is 143.<br />
&#8211;user1       &lt;string&gt; : user to login on host1. Mandatory.<br />
&#8211;authuser1   &lt;string&gt; : user to auth with on host1 (admin user).<br />
Avoid using &#8211;authmech1 SOMETHING with &#8211;authuser1.<br />
&#8211;password1   &lt;string&gt; : password for the user1. Dangerous, use &#8211;passfile1<br />
&#8211;passfile1   &lt;string&gt; : password file for the user1. Contains the password.<br />
&#8211;host2       &lt;string&gt; : &#8220;destination&#8221; imap server. Mandatory.<br />
&#8211;port2       &lt;int&gt;    : port to connect on host2. Default is 143.<br />
&#8211;user2       &lt;string&gt; : user to login on host2. Mandatory.<br />
&#8211;authuser2   &lt;string&gt; : user to auth with on host2 (admin user).<br />
&#8211;password2   &lt;string&gt; : password for the user2. Dangerous, use &#8211;passfile2<br />
&#8211;passfile2   &lt;string&gt; : password file for the user2. Contains the password.<br />
&#8211;noauthmd5            : don&#8217;t use MD5 authentification.<br />
&#8211;authmech1   &lt;string&gt; : auth mechanism to use with host1:<br />
PLAIN, LOGIN, CRAM-MD5 etc. Use UPPERCASE.<br />
&#8211;authmech2   &lt;string&gt; : auth mechanism to use with host2. See &#8211;authmech1<br />
&#8211;ssl1                 : use an SSL connection on host1.<br />
&#8211;ssl2                 : use an SSL connection on host2.<br />
&#8211;folder      &lt;string&gt; : sync this folder.<br />
&#8211;folder      &lt;string&gt; : and this one, etc.<br />
&#8211;folderrec   &lt;string&gt; : sync this folder recursively.<br />
&#8211;folderrec   &lt;string&gt; : and this one, etc.<br />
&#8211;include     &lt;regex&gt;  : sync folders matching this regular expression<br />
&#8211;include     &lt;regex&gt;  : or this one, etc.<br />
in case both &#8211;include &#8211;exclude options are<br />
use, include is done before.<br />
&#8211;exclude     &lt;regex&gt;  : skips folders matching this regular expression<br />
Several folders to avoid:<br />
&#8211;exclude &#8216;fold1|fold2|f3&#8242; skips fold1, fold2 and f3.<br />
&#8211;exclude     &lt;regex&gt;  : or this one, etc.<br />
&#8211;prefix1     &lt;string&gt; : remove prefix to all destination folders<br />
(usually INBOX. for cyrus imap servers)<br />
you can use &#8211;prefix1 if your source imap server<br />
does not have NAMESPACE capability.<br />
&#8211;prefix2     &lt;string&gt; : add prefix to all destination folders<br />
(usually INBOX. for cyrus imap servers)<br />
use &#8211;prefix2 if your target imap server does not<br />
have NAMESPACE capability.<br />
&#8211;regextrans2 &lt;regex&gt;  : Apply the whole regex to each destination folders.<br />
&#8211;regextrans2 &lt;regex&gt;  : and this one. etc.<br />
When you play with the &#8211;regextrans2 option, first<br />
add also the safe options &#8211;dry &#8211;justfolders<br />
Then, when happy, remove &#8211;dry, remove &#8211;justfolders<br />
&#8211;regexmess   &lt;regex&gt;  : Apply the whole regex to each message before transfer.<br />
Example: &#8216;s/\000/ /g&#8217; # to replace null by space.<br />
&#8211;regexmess   &lt;regex&gt;  : and this one.<br />
&#8211;regexmess   &lt;regex&gt;  : and this one, etc.<br />
&#8211;regexflag   &lt;regex&gt;  : Apply the whole regex to each flags list.<br />
Example: &#8216;s/&#8221;Junk&#8221;//g&#8217; # to remove &#8220;Junk&#8221; flag.<br />
&#8211;regexflag   &lt;regex&gt;  : and this one, etc.<br />
&#8211;sep1        &lt;string&gt; : separator in case namespace is not supported.<br />
&#8211;sep2        &lt;string&gt; : idem.<br />
&#8211;delete               : delete messages on source imap server after<br />
a successful transfer. Useful in case you<br />
want to migrate from one server to another one.<br />
With imap, delete tags messages as deleted, they<br />
are not really deleted. See expunge.<br />
&#8211;delete2              : delete messages on the destination imap server that<br />
are not on the source server.<br />
&#8211;expunge              : expunge messages on source account.<br />
expunge really deletes messages marked deleted.<br />
expunge is made at the beginning on the<br />
source server only. newly transferred messages<br />
are expunged if option &#8211;expunge is given.<br />
no expunge is done on destination account but<br />
it will change in future releases.<br />
&#8211;expunge1             : expunge messages on source account.<br />
&#8211;expunge2             : expunge messages on target account.<br />
&#8211;uidexpunge2          : uidexpunge messages on the destination imap server<br />
that are not on the source server, requires &#8211;delete2<br />
&#8211;syncinternaldates    : sets the internal dates on host2 same as host1.<br />
Turned on by default.<br />
&#8211;idatefromheader      : sets the internal dates on host2 same as the<br />
&#8220;Date:&#8221; headers.<br />
&#8211;buffersize  &lt;int&gt;    : sets the size of a block of I/O.<br />
&#8211;maxsize     &lt;int&gt;    : skip messages larger than &lt;int&gt; bytes<br />
&#8211;maxage      &lt;int&gt;    : skip messages older than &lt;int&gt; days.<br />
final stats (skipped) don&#8217;t count older messages<br />
see also &#8211;minage<br />
&#8211;minage      &lt;int&gt;    : skip messages newer than &lt;int&gt; days.<br />
final stats (skipped) don&#8217;t count newer messages<br />
You can do (+ are the messages selected):<br />
past|&#8212;-maxage+++++++++++++++&gt;now<br />
past|+++++++++++++++minage&#8212;-&gt;now<br />
past|&#8212;-maxage+++++minage&#8212;-&gt;now (intersection)<br />
past|++++minage&#8212;&#8211;maxage++++&gt;now (union)<br />
&#8211;skipheader  &lt;regex&gt;  : Don&#8217;t take into account header keyword<br />
matching &lt;string&gt; ex: &#8211;skipheader &#8216;X.*&#8217;<br />
&#8211;useheader   &lt;string&gt; : Use this header to compare messages on both sides.<br />
Ex: Message-ID or Subject or Date.<br />
&#8211;useheader   &lt;string&gt;   and this one, etc.<br />
&#8211;skipsize             : Don&#8217;t take message size into account.<br />
&#8211;allowsizemismatch    : allow RFC822.SIZE != fetched msg size<br />
consider &#8211;skipsize to avoid duplicate messages<br />
when running syncs more than one time per mailbox<br />
&#8211;dry                  : do nothing, just print what would be done.<br />
&#8211;subscribed           : transfers subscribed folders.<br />
&#8211;subscribe            : subscribe to the folders transferred on the<br />
&#8220;destination&#8221; server that are subscribed<br />
on the &#8220;source&#8221; server.<br />
&#8211;nofoldersizes        : Do not calculate the size of each folder in bytes<br />
and message counts. Default is to calculate them.<br />
&#8211;justfoldersizes      : exit after printed the folder sizes.<br />
&#8211;syncacls             : Synchronises acls (Access Control Lists).<br />
&#8211;nosyncacls           : Does not synchronise acls. This is the default.<br />
&#8211;debug                : debug mode.<br />
&#8211;debugimap            : imap debug mode.<br />
&#8211;version              : print software version.<br />
&#8211;justconnect          : just connect to both servers and print useful<br />
information. Need only &#8211;host1 and &#8211;host2 options.<br />
&#8211;justlogin            : just login to both servers with users credentials<br />
and exit.<br />
&#8211;justfolders          : just do things about folders (ignore messages).<br />
&#8211;fast                 : be faster (just does not sync flags).<br />
&#8211;reconnectretry1 &lt;int&gt;: reconnect if connection is lost up to &lt;int&gt; times<br />
&#8211;reconnectretry2 &lt;int&gt;: reconnect if connection is lost up to &lt;int&gt; times<br />
&#8211;split1     &lt;int&gt;     : split the requests in several parts on source server.<br />
&lt;int&gt; is the number of messages handled per request.<br />
default is like &#8211;split1 1000<br />
&#8211;split2     &lt;int&gt;     : same thing on the &#8220;destination&#8221; server.<br />
&#8211;fastio1              : use fastio with the &#8220;from&#8221; server.<br />
&#8211;fastio2              : use fastio with the &#8220;destination&#8221; server.<br />
&#8211;timeout     &lt;int&gt;    : imap connect timeout.<br />
&#8211;help                 : print this.</p>
<p>Example: to synchronise imap account &#8220;foo&#8221; on &#8220;imap.truc.org&#8221;<br />
to  imap account &#8220;bar&#8221; on &#8220;imap.trac.org&#8221;<br />
with foo password stored in /etc/secret1<br />
and  bar password stored in /etc/secret2</p>
<p>/usr/bin/imapsync \<br />
&#8211;host1 imap.truc.org &#8211;user1 foo &#8211;passfile1 /etc/secret1 \<br />
&#8211;host2 imap.trac.org &#8211;user2 bar &#8211;passfile2 /etc/secret2</p>
<p>Here is a [linux] system (Linux ovidiu-desktop 2.6.31-16-generic #53-Ubuntu SMP Tue Dec 8 04:01:29 UTC 2009 i686)<br />
with perl 5.10.0<br />
Mail::IMAPClient  3.19<br />
IO::Socket        1.30_01<br />
IO::Socket::SSL<br />
Digest::MD5       2.36_01<br />
Digest::HMAC_MD5<br />
Term::ReadKey<br />
Date::Manip</p>
<p>$Id: imapsync,v 1.286 2009/07/24 15:53:04 gilles Exp gilles $</p>
<p>Happy with this free, open and gratis GPL software?<br />
Please, thank the author (Gilles LAMIRAL) by giving him a book:</p>
<p>http://www.amazon.com/gp/registry/wishlist/1C9UNDIH3P7R7/</p>
<p>or rate imapsync at http://freshmeat.net/projects/imapsync/</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.thinkovi.com/migrating-your-imap-mail-heres-how/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Redirecting url with a rewrite rule</title>
		<link>http://www.thinkovi.com/redirecting-urls-with-a-rewrite-rule/</link>
		<comments>http://www.thinkovi.com/redirecting-urls-with-a-rewrite-rule/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 14:21:37 +0000</pubDate>
		<dc:creator>Ovidiu</dc:creator>
				<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[rewrite rule]]></category>
		<category><![CDATA[url redirect]]></category>

		<guid isPermaLink="false">http://www.thinkovi.com/?p=363</guid>
		<description><![CDATA[Lets suppose you have made some changes to your website and you want to redirect some pages to their new url format, this .htaccess rewrite rule might come in handy: RewriteEngine on RewriteCond %{REQUEST_URI} ^(.*)subpage1/subpage2/mypage.html$ RewriteCond %{QUERY_STRING} Itemid=91&#38;page=mypage$ RewriteRule ^(.*)$ http://mynewurl.com/index.php?mypage=new What the above condition does is redirect /subpage1/subpage2/mypage.html?Itemid=91&#38;page=mypage url to http://mynewurl.com/index.php?mypage=new Obviously, you need [...]]]></description>
			<content:encoded><![CDATA[<p>Lets suppose you have made some changes to your website and you want to redirect some pages to their new url format, this .htaccess rewrite rule might come in handy:</p>
<blockquote><p>RewriteEngine on<br />
RewriteCond %{REQUEST_URI} ^(.*)subpage1/subpage2/mypage.html$<br />
RewriteCond %{QUERY_STRING} Itemid=91&amp;page=mypage$<br />
RewriteRule ^(.*)$ http://mynewurl.com/index.php?mypage=new</p></blockquote>
<p>What the above condition does is redirect <strong>/subpage1/subpage2/mypage.html?Itemid=91&amp;page=mypage</strong> url to <strong>http://mynewurl.com/index.php?mypage=new</strong></p>
<p>Obviously, you need to replace the above names with your actual site names</p>
<p>The second RewriteCond with QUERY_STRING is only needed if the url you want to rewrite has additional parameters like mypage.html?pages=mypage for instance</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinkovi.com/redirecting-urls-with-a-rewrite-rule/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Recovering from disk failures</title>
		<link>http://www.thinkovi.com/recovering-from-disk-failures/</link>
		<comments>http://www.thinkovi.com/recovering-from-disk-failures/#comments</comments>
		<pubDate>Sun, 22 Nov 2009 12:07:38 +0000</pubDate>
		<dc:creator>Ovidiu</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[data recovery]]></category>
		<category><![CDATA[ddrescue]]></category>
		<category><![CDATA[disk drive recovery]]></category>
		<category><![CDATA[disk failures recovery]]></category>
		<category><![CDATA[system recovery]]></category>

		<guid isPermaLink="false">http://www.thinkovi.com/?p=235</guid>
		<description><![CDATA[As you might know, disk drives, specially in high usage areas like hosting enviroments, have a tendency of crashing from time to time. Most crashes you will encounter are related to bad blocks on your hard drive which in some cases will stop your operating system from booting, leaving your server at a stop. There [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_239" class="wp-caption alignleft" style="width: 160px"><img class="size-thumbnail wp-image-239" title="top15" src="http://www.thinkovi.com/wp-content/uploads/2009/11/top15-150x150.png" alt="Data recovery" width="150" height="150" /><p class="wp-caption-text">Data recovery</p></div>
<p>As you might know, disk drives, specially in high usage areas like hosting enviroments, have a tendency of crashing from time to time.</p>
<p>Most crashes you will encounter are related to bad blocks on your hard drive which in some cases will stop your operating system from booting, leaving your server at a stop. There are several utilities which can help you detect and fix the bad blocks at a software level, like the <a title="File system check utility" href="http://en.wikipedia.org/wiki/Fsck">FSCK</a>(file system check) available for Linux, or <a title="CHKDSK" href="http://en.wikipedia.org/wiki/CHKDSK">CHKDSK</a> and <a title="SCANDISK" href="http://en.wikipedia.org/wiki/SCANDISK">SCANDISK</a> for Windows, however there are situations when the bad block can&#8217;t be fixed, most of the cases due to a critical error.</p>
<p>While this doesn&#8217;t happen constantly or too often, it would be nice to think that there might be ways to recover data that might be business critical, and here is how:</p>
<p><span id="more-235"></span><a title="DDRescue rescue utility" href="http://www.gnu.org/software/ddrescue/ddrescue.html">DDRescue</a> is recovery tool that will help you create an image of your hard drive, skip the bad blocks, and restore it on another hard disk! It copies data from one file or block device (hard disc, cdrom, etc) to another, trying hard to rescue data in case of read errors. While this utility mostly runs on unix systems, it can deal with any type of disk drive data, whether it&#8217;s a linux system, windows, mac osx or something else.</p>
<p>We found this <a title="Using ddrescue" href="http://www.debianadmin.com/recover-data-from-a-dead-hard-drive-using-ddrescue.html">article</a> to be fairly instructive giving all the restore procedures to handle a hard disk failure recovery.</p>
<p>If you are lucky, and the bad blocks were not containing some important booting data, your new cloned hard drive could be popped inside the server and ready to boot from it, resuming your server activity! If not, well you are still lucky <img src='http://www.thinkovi.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  you just need to do some more work to get the server up and booting again, fairly a system administrator job.</p>
<p>There are also hardware failures, when your hard disk might become unaccessible at a hardware level, in which case the best way to do is ship it back to the manufacturer company and let them replace the faulty parts, your important data might still get saved.</p>
<p>Best and always, make sure you always keep proper backups of your important data. Good luck!</p>
<h3><em>DDRescue help: <span style="text-decoration: underline;">ddrescue -h</span></em></h3>
<pre>GNU ddrescue - Data recovery tool.
Copies data from one file or block device to another,
trying hard to rescue data in case of read errors.

Usage: ddrescue [options] infile outfile [logfile]
You should use a logfile unless you know what you are doing.

Options:
  -h, --help                    display this help and exit
  -V, --version                 output version information and exit
  -b, --block-size=      sector size of input device [default 512]
  -B, --binary-prefixes         show binary multipliers in numbers [SI]
  -c, --cluster-size=  sectors to copy at a time [128]
  -C, --complete-only           do not read new data beyond logfile limits
  -d, --direct                  use direct disc access for input file
  -D, --synchronous             use synchronous writes for output file
  -e, --max-errors=          maximum number of error areas allowed
  -F, --fill=            fill given type blocks with infile data (?*/-+)
  -g, --generate-logfile        generate approximate logfile from partial copy
  -i, --input-position=
    starting position in input file [0]
  -m, --domain-logfile=   restrict domain to finished blocks in file
  -n, --no-split                do not try to split or retry failed blocks
  -o, --output-position=
   starting position in output file [ipos]
  -q, --quiet                   suppress all messages
  -r, --max-retries=         exit after given retries (-1=infinity) [0]
  -R, --retrim                  mark all failed blocks as non-trimmed
  -s, --max-size=        maximum size of input data to be copied
  -S, --sparse                  use sparse writes for output file
  -t, --truncate                truncate output file to zero size
  -T, --try-again               mark non-split, non-trimmed blocks as non-tried
  -v, --verbose                 verbose operation
Numbers may be followed by a multiplier: b = blocks, k = kB = 10^3 = 1000,
Ki = KiB = 2^10 = 1024, M = 10^6, Mi = 2^20, G = 10^9, Gi = 2^30, etc...</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.thinkovi.com/recovering-from-disk-failures/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Down and dirty with SquirrelMail</title>
		<link>http://www.thinkovi.com/down-and-dirty-with-squirrelmail/</link>
		<comments>http://www.thinkovi.com/down-and-dirty-with-squirrelmail/#comments</comments>
		<pubDate>Sat, 14 Nov 2009 13:08:23 +0000</pubDate>
		<dc:creator>Ovidiu</dc:creator>
				<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[squirrelmail]]></category>

		<guid isPermaLink="false">http://www.thinkovi.com/?p=187</guid>
		<description><![CDATA[I have to admit, the gmail and yahoo new email interfaces are great, if you don&#8217;t mind the advertising, and very easy to use, however i have been using for a long time SquirrelMail to access the email directly on my server! While the interface that comes with the cpanel installation is very basic, there [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_212" class="wp-caption alignright" style="width: 278px"><img class="size-full wp-image-212" title="squirrelmail_logo" src="http://www.thinkovi.com/wp-content/uploads/2009/11/squirrelmail_logo.png" alt="SquirrelMail Logo" width="268" height="82" /><p class="wp-caption-text">SquirrelMail Logo</p></div>
<p>I have to admit, the gmail and yahoo new email interfaces are great, if you don&#8217;t mind the advertising, and very easy to use, however i have been using for a long time SquirrelMail to access the email directly on my server!</p>
<p>While the interface that comes with the cpanel installation is very basic, there is one thing i would have liked to have, like in Yahoo, when you get an email, the page title automatically changes with the number of unread emails!</p>
<p><span id="more-187"></span></p>
<p>Now, squirrelmail already have this auto-refresh thing, so here is what you need to do in order to get the titles of the top frame updated:</p>
<ol>
<li> locate and open on your server the <strong>squirrelmail/src/left_main.php</strong> file</li>
<li> locate this line</li>
<pre class="php" name="code">/* Print unseen information. */
if ($unseen_string != '') {</pre>
<li> Add this code just before the if statement</li>
<pre class="php" name="code">if($mailbox == 'INBOX'){
   if ($unseen_string != ""){
      $line .= "&lt;script type='text/javascript'&gt;top.document.title='Inbox ".$unseen_string."'&lt;/script&gt;";
   }else{
      $line .= "&lt;script type='text/javascript'&gt;top.document.title='No unread messages'&lt;/script&gt;";
   }
}</pre>
</ol>
<p>Now, your squirellmail should look like this when getting a new email</p>
<p><img class="alignnone size-full wp-image-195" title="squirrelmail" src="http://www.thinkovi.com/wp-content/uploads/2009/11/squirrelmail.png" alt="squirrelmail" width="232" height="34" /></p>
<p>And obviously, this will only work for the INBOX folder!</p>
<p>Happy squirrelling <img src='http://www.thinkovi.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinkovi.com/down-and-dirty-with-squirrelmail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing PHP on Windows got easier! finally&#8230;.!</title>
		<link>http://www.thinkovi.com/installing-php-on-windows/</link>
		<comments>http://www.thinkovi.com/installing-php-on-windows/#comments</comments>
		<pubDate>Sat, 07 Nov 2009 23:23:07 +0000</pubDate>
		<dc:creator>Ovidiu</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[php installer]]></category>
		<category><![CDATA[web platform installer]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.thinkovi.com/?p=180</guid>
		<description><![CDATA[It seems that, earlier this year, Microsoft released a small application called Web Platform Installer , a utility meant to be dead simple to install a range of web applications and get your website up and going fast on a IIS server. Beside the usual Microsoft web applications support like ASP.NET and SQL SERVER, they [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_184" class="wp-caption alignright" style="width: 160px"><img class="size-thumbnail wp-image-184" title="wpi_feature" src="http://www.thinkovi.com/wp-content/uploads/2009/11/wpi_feature-150x150.jpg" alt="Microsoft Web Platform" width="150" height="150" /><p class="wp-caption-text">Microsoft Web Platform</p></div>
<p>It seems that, earlier this year, Microsoft released a small application called <a title="Microsoft Platform Installer" href="http://www.microsoft.com/Web/">Web Platform Installer</a> , a utility meant to be dead simple to install a range of web applications and get your website up and going fast on a IIS server.</p>
<p>Beside the usual Microsoft web applications support like ASP.NET and SQL SERVER, they also added support for PHP, facilitating this way the installation of a range of web publishing tools like Drupal, Moodle and WordPress, hope I see some Joomla! there as it&#8217;s fairly popular.</p>
<p>Would also be nice to hear they also added support for Python, so that we can start serving code to Google, kidding <img src='http://www.thinkovi.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> , but it wouldbe nice.</p>
<p>A small review of this service can be found <a href="http://articles.sitepoint.com/article/php-windows-web-platform-installer">here</a> , thanks to <a title="Find out more about this author" href="http://www.sitepoint.com/articlelist/586">Louis Simoneau</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinkovi.com/installing-php-on-windows/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
