<?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>SupportSages</title>
	<atom:link href="http://www.supportsages.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.supportsages.com/blog</link>
	<description>Technical Support and Server Management : Musings in the fox hole.</description>
	<lastBuildDate>Fri, 11 May 2012 04:03:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>A story of Ubuntu &#8211; I am what I am because of who we all are :)</title>
		<link>http://www.supportsages.com/blog/2012/05/a-story-of-ubuntu-i-am-what-i-am-because-of-who-we-all-are/</link>
		<comments>http://www.supportsages.com/blog/2012/05/a-story-of-ubuntu-i-am-what-i-am-because-of-who-we-all-are/#comments</comments>
		<pubDate>Fri, 11 May 2012 04:03:30 +0000</pubDate>
		<dc:creator>George</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Training]]></category>
		<category><![CDATA[linux history]]></category>
		<category><![CDATA[story]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.supportsages.com/blog/?p=2082</guid>
		<description><![CDATA[An anthropologist studying the habits and customs of an African tribe found himself surrounded by children most days. So he decided to play a little game with them. He managed to get candy from the nearest town and put it all in a decorated basket at the foot of a tree.

Then he called the children and suggested they play the game. When the anthropologist said "now", the children had to run to the tree and the first one to get there could have all the candy to him/herself.

So the children all lined up waiting for the signal. When the anthropologist ...]]></description>
			<content:encoded><![CDATA[<p>An anthropologist studying the habits and customs of an African tribe found himself surrounded by children most days. So he decided to play a little game with them. He managed to get candy from the nearest town and put it all in a decorated basket at the foot of a tree.</p>
<p>Then he called the children and suggested they play the game. When the anthropologist said &#8220;now&#8221;, the children had to run to the tree and the first one to get there could have all the candy to him/herself.</p>
<p>So the children all lined up waiting for the signal. When the anthropologist said &#8220;now&#8221;, all of the children took each other by the hand ran together towards the tree. They all arrived at the same time divided up the candy, sat down and began to happily munch away.</p>
<p>The anthropologist went over to them and asked why they had all run together when any one of them could have had the candy all to themselves.</p>
<p>The children responded: &#8220;Ubuntu. How could any one of us be happy if all the others were sad?&#8221;</p>
<p>Ubuntu is a philosophy of African tribes that can be summed up as &#8220;I am what I am because of who we all are.&#8221;</p>
<p>Bishop Desmond Tutu gave this explanation in 2008 :</p>
<p>&#8220;One of the sayings in our country is Ubuntu – the essence of being human. Ubuntu speaks particularly about the fact that you can&#8217;t exist as a human being in isolation. It speaks about our interconnectedness. You can&#8217;t be human all by yourself, and when you have this quality –<br />
Ubuntu – you are known for your generosity. We think of ourselves far too frequently as just individuals, separated from one another, whereas you are connected and what you do affects the whole World. When you do well, it spreads out; it is for the whole of humanity.&#8221;</p>
<p>This is the true spirit of human development and cause of human evolution. Ubuntu. Once again, we are proud to say Ubuntu, I am what I am because of who we all are.. This is not a story as such, but a feeling to be expressed.</p>
<div class="tweetthis" style="text-align:left;"><p> <a  class="tt" href="http://twitter.com/home/?status=A+story+of+Ubuntu+-+I+am+what+I+am+because+of+who+we+all+are+%3A%29+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F2082" title="Post to Twitter"><img class="nothumb" src="http://www.supportsages.com/blog/wp-content/plugins/tweet-this/icons/en/twitter/tt-twitter3.png" alt="Post to Twitter" /></a> <a  class="tt" href="http://twitter.com/home/?status=A+story+of+Ubuntu+-+I+am+what+I+am+because+of+who+we+all+are+%3A%29+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F2082" title="Post to Twitter">Tweet This Post</a></p></div>]]></content:encoded>
			<wfw:commentRss>http://www.supportsages.com/blog/2012/05/a-story-of-ubuntu-i-am-what-i-am-because-of-who-we-all-are/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing CDP-Agent for R1Soft Enterprise Edition 3.0</title>
		<link>http://www.supportsages.com/blog/2012/05/installing-cdp-agent-for-r1soft-enterprise-edition-3-0/</link>
		<comments>http://www.supportsages.com/blog/2012/05/installing-cdp-agent-for-r1soft-enterprise-edition-3-0/#comments</comments>
		<pubDate>Thu, 10 May 2012 06:00:16 +0000</pubDate>
		<dc:creator>sarath</dc:creator>
				<category><![CDATA[cPanel]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[authenticate cdp-agent]]></category>
		<category><![CDATA[CDP Agent]]></category>
		<category><![CDATA[installing cdp-agent]]></category>
		<category><![CDATA[kernel module cdp-agent]]></category>
		<category><![CDATA[R1soft]]></category>

		<guid isPermaLink="false">http://www.supportsages.com/blog/?p=2062</guid>
		<description><![CDATA[Before we start lets see what R1soft is. <strong>R1Soft</strong> is an affordable, easy-to-use, high performance backup, restore, and disaster recovery software. Its a software application which is used to backup the data in a client(R1Soft agent) which is assigned to R1Soft server based upon the configurations which we define. R1soft can also be used to restore files and databases which I'll be explaining later.

For a client to communicate with R1soft server an R1soft agent cdp-agent must be installed on the client. Once the cdp-agent is installed, we can add it to the R1soft server for processing.

Let us assume that R1soft ...]]></description>
			<content:encoded><![CDATA[<p>Before we start lets see what R1soft is. <strong>R1Soft</strong> is an affordable, easy-to-use, high performance backup, restore, and disaster recovery software. Its a software application which is used to backup the data in a client(R1Soft agent) which is assigned to R1Soft server based upon the configurations which we define. R1soft can also be used to restore files and databases which I&#8217;ll be explaining later.</p>
<p>For a client to communicate with R1soft server an R1soft agent cdp-agent must be installed on the client. Once the cdp-agent is installed, we can add it to the R1soft server for processing.</p>
<p>Let us assume that R1soft Server Enterprise Edition is already configured and running on IP xxx.xxx.xxx.xxx. I&#8217;ll explain on how to install cdp-agent on a  new client (agent) so that it can be added to the R1soft Server.</p>
<p>The steps I follow here will help you to install cdp-agent on a redhat, fedora or Centos platform. However the installation steps on a Debian version are also similar with slight changes. You can get more details on installing cdp-agent on a Debian platform by following http://wiki.r1soft.com/display/CDP3/Installing+Agent+on+Debian+and+Ubuntu . Once the cdp-agent is installed in the client, we&#8217;ll see the steps to add it to the R1soft Server.</p>
<p>So lets start <img src='http://www.supportsages.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>INSTALLING CDP-AGENT on a client</strong><br />
<strong> &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</strong><br />
There are two methods by which you can install a cdp-agent to a linux server:</p>
<p><strong>1. Automatic:</strong></p>
<p>Here we add the R1Soft packages repository to the yum configuration first and then install the Agent using yum.</p>
<p><strong>2 . Manual:</strong></p>
<p>Here we download the R1Soft binary packages first and then intstall them using rpm.</p>
<p>Wondering what these are actually? Dont worry, We will see the installation using both yum and rmp below:</p>
<p><strong>-&gt;Installing Agent Using YUM (Automatic method):</strong><br />
<strong>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</strong>&#8212;&#8211;</p>
<p>YUM is the easiest way to keep programs up-to-date on RedHat-compatible distributions. YUM downloads and installs the latest version of a program.</p>
<p><strong>Configure YUM Repository</strong><br />
<strong> &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</strong></p>
<p>First, create a .repo file for yum with the R1Soft repository information:</p>
<p><strong>#cd /etc/yum.repos.d</strong></p>
<p>Open a new file named r1soft.repos using vi or ant text editors like nano, vim etc: I&#8217;m using vi text editor in this tutorial.</p>
<p><strong>#vi r1soft.repo</strong></p>
<p>Then insert the following text into the file and save the file:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
<strong>[r1soft]</strong><br />
<strong> name=R1Soft Repository Server</strong><br />
<strong> baseurl=http://repo.r1soft.com/yum/stable/$basearch/</strong><br />
<strong> enabled=1</strong><br />
<strong> gpgcheck=0</strong><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p>To verify what is written to the r1soft.repos file, use the following command:</p>
<p><strong>#cat r1soft.repo</strong></p>
<p>This command should print the contents which we added in the r1soft.repo file.</p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/05/cat.png" class="thickbox no_icon" rel="gallery-2062" title="cat"><img class="aligncenter size-medium wp-image-2063" title="cat" src="http://www.supportsages.com/blog/wp-content/uploads/2012/05/cat-300x83.png" alt="" width="300" height="83" /></a></p>
<p>Once the yum repository is configured we can use the yum command to install the cdp-agent.</p>
<p><strong>Installing The Package For CDP-AGENT</strong><br />
<strong> &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</strong><br />
Once you have configured the YUM repository, you can use the following command to install CDP Agent for Enterprise Edition:</p>
<p><strong># yum install r1soft-cdp-enterprise-agent</strong></p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/05/yum-agent.png" class="thickbox no_icon" rel="gallery-2062" title="yum-agent"><img class="aligncenter size-medium wp-image-2066" title="yum-agent" src="http://www.supportsages.com/blog/wp-content/uploads/2012/05/yum-agent-300x200.png" alt="" width="300" height="200" /></a></p>
<p>Enter &#8220;<strong>y</strong>&#8221; to initiate install process.</p>
<p><strong><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/05/yum-ag-y.png" class="thickbox no_icon" rel="gallery-2062" title="yum-ag-y"><img class="aligncenter size-medium wp-image-2067" title="yum-ag-y" src="http://www.supportsages.com/blog/wp-content/uploads/2012/05/yum-ag-y-300x168.png" alt="" width="300" height="168" /></a></strong></p>
<p><strong><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/05/yum-ag-y.png"></a>-&gt;Installing Agent Manually (Using RPM)</strong><br />
<strong>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</strong></p>
<p>In the automatic installation using YUM, the agent was automatically downloaded and installed. But here we need to manually download the agent  and then install it using rpm command. I&#8217;m explaining the steps below:</p>
<p><strong>Download CDP Agent first:</strong><br />
<strong> &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</strong></p>
<p>This is an important step because we have to carefully choose the agent meeting our OS architecture.</p>
<p>First find out whether the client has a <strong>32bit or 64 bit</strong> OS by typing the command:</p>
<p>#getconf LONG_BIT</p>
<p>You will get the exact OS bit as the output <img src='http://www.supportsages.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Once the OS bit is known choose the file accordingly.</p>
<p>Please follow <strong>http://wiki.r1soft.com/display/CDP3/Obtaining+Linux+CDP+Enterprise+Agent</strong> for obtaining Linux CDP Enterprise Agent.</p>
<p>In normal cases the files will be named as mentioned below for different OS types:</p>
<p><strong>For a 32-bit system:</strong></p>
<p>File name &#8211; R1Soft-EnterpriseAgent-linux32-3.18.2.zip<br />
File size &#8211; 37.3 MB</p>
<p><strong>For a 64-bit system:</strong></p>
<p>File name &#8211; R1Soft-EnterpriseAgent-linux64-3.18.2.zip<br />
File size &#8211; 41.04 MB</p>
<p>Before you download the file create a new directory named cdp-agent and then download the file into that directory. You can create the directory using the mkdir command:</p>
<p><strong>#mkdir cdp-agent</strong></p>
<p><strong>#cd cdp-agent</strong></p>
<p>Now download the files into this directory.<br />
As you can see the downloaded files have a <strong>.zip extension</strong> which requires <strong>unzip</strong> tool for extraction.</p>
<p>Most Linux distributions come with the unzip utility pre-installed. To determine if you have the unzip utility, run:</p>
<p><strong># which unzip</strong></p>
<p>This should return an output showing the path to unzip binary, something similar to the following:</p>
<p><strong>/usr/bin/unzip</strong></p>
<p>If it returns the following output, you need to install the unzip utility first:</p>
<p><strong>unzip: Command not found.</strong></p>
<p>To install unzip on RHE, CentOS, and Fedora:</p>
<p><strong># yum install unzip</strong></p>
<p><a href="http://www.supportsages.com/blog/wp-content/uploads/2012/05/install-standard.png"><img class="aligncenter size-medium wp-image-2069" title="install standard" src="http://www.supportsages.com/blog/wp-content/uploads/2012/05/install-standard-267x300.png" alt="" width="267" height="300" /></a></p>
<p>Now that we have the unzip utility ready for its work. We need to extract the downloaded file using unzip command as follows:</p>
<p><strong># unzip r1soft-enterprise-agent-linux64-3.18.2.zip</strong></p>
<p>Once all the packages are extracted its time for the installation to start.</p>
<p><strong>Installing the Package:</strong><br />
<strong>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</strong>&#8212;&#8212;&#8212;</p>
<p>You must be a Linux <strong>root user </strong>to install CDP Agent. <img src='http://www.supportsages.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>The files you have extracted now contains two folders: one with .deb packages (for Debian Platform-deb-linux64) and one with .rpm packages (&#8220;for RedHat platform-rpm-linux64). Since we use RedHatplatform select the .rpm package.</p>
<p>Each folder contains a set of CDP components:</p>
<p><strong>r1soft-setup</strong><br />
<strong> r1soft-cdp-enterprise-agent</strong><br />
<strong> r1soft-cdp-agent</strong><br />
<strong> r1soft-cdp-async-agent-2-6</strong></p>
<p>You will need to install all of them in one step. Use the cd command to go to the folder with the packages (in our case, <strong>rpm-linux64</strong>) and run the following command:</p>
<p><strong>#rpm -i *.rpm</strong></p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/05/rpm-agent.png" class="thickbox no_icon" rel="gallery-2062" title="rpm-agent"><img class="aligncenter size-medium wp-image-2070" title="rpm-agent" src="http://www.supportsages.com/blog/wp-content/uploads/2012/05/rpm-agent-300x57.png" alt="" width="300" height="57" /></a>Now that we have our <strong>cdp-agen installed</strong>.</p>
<p>Once this is done we have to <strong>install the kernel sources:</strong></p>
<p>By default the RPM package installation will attempt to download a kernel module matching your running kernel. The RPM Package installation may be able to automatically load the binary kernel module.</p>
<p>If you see the following output, you can safely skip this step. The RPM packages were able to directly download a binary-compatible kernel module:</p>
<p><strong>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</strong><br />
<strong> Attempting to get a kernel module from &#8216;krnlbld.r1soft.com&#8217;</strong></p>
<p><strong>Module downloaded successfully.</strong><br />
<strong> /etc/init.d/cdp-agent start: cdp started</strong><br />
<strong> You will need to assign a username and password to the R1Soft CDP Server.</strong><br />
<strong> You can do this with &#8216;/usr/bin/r1soft-setup&#8217; utility.</strong><br />
<strong> Use &#8216;/usr/bin/r1soft-setup &#8211;help&#8217; for more information.</strong><br />
<strong> &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</strong></p>
<p>If you see the following output, you need to install the CDP kernel module manually:</p>
<p><strong>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</strong><br />
<strong> Attempting to get a kernel module from &#8216;krnlbld.r1soft.com&#8217;</strong><br />
<strong> You will need to assign a username and password to the R1Soft CDP Server.</strong><br />
<strong> You can do this with &#8216;/usr/bin/r1soft-setup&#8217; utility.</strong><br />
<strong> Use &#8216;/usr/bin/r1soft-setup &#8211;help&#8217; for more information.</strong><br />
<strong> &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</strong></p>
<p>First we have to see the <strong>current version of kernel</strong>. To see the version of the running kernel, execute the following command:</p>
<p><strong>#uname -r</strong></p>
<p>Compare the version string you see with the name of the directory containing kernel sources under <strong>/usr/src/kernel</strong>. To do this, cd into /usr/src/kernels:</p>
<p><strong># cd /usr/src/kernels</strong><br />
<strong> # ls -al</strong></p>
<p>Here, if you are not able to find the directory for the kernel version specified in uname -r output, run the following command:</p>
<p><strong>#yum install kernel-devel-`uname -r`</strong></p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/05/install-devel-r.png" class="thickbox no_icon" rel="gallery-2062" title="install-devel-r"><img class="aligncenter size-medium wp-image-2071" title="install-devel-r" src="http://www.supportsages.com/blog/wp-content/uploads/2012/05/install-devel-r-300x162.png" alt="" width="300" height="162" /></a><br />
This command makes sure that the kernel devel version matches your current version. Proceed with the installation. Once the kernel-devel is completed you will get the directory for the current kernel in /usr/src/kernels</p>
<p><strong>Now that we have to build the CDP Kernel Module:</strong><br />
<strong> &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</strong></p>
<p><strong># r1soft-setup &#8211;no-binary &#8211;kernel-dir /usr/src/kernels/YOUR_KERNEL_TREE</strong></p>
<p>After running this command, you will see:</p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/05/adv13.png" class="thickbox no_icon" rel="gallery-2062" title="adv13"><img class="aligncenter size-medium wp-image-2073" title="adv13" src="http://www.supportsages.com/blog/wp-content/uploads/2012/05/adv13-300x68.png" alt="" width="300" height="68" /></a></p>
<p><strong>LAST STEP :</strong><br />
<strong>&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</strong></p>
<p>Restart the cdp-agen by entering the following command:</p>
<p><strong>#/etc/init.d/cdp-agent restart</strong></p>
<p>Thats it you have done it!! You have cdp-agent instlled on the client.</p>
<p>Now we will look into how to authenticate the new client to the R1soft agent:</p>
<p><strong>Authenticating The Agent:</strong><br />
<strong> &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</strong></p>
<p>For security reasons, CDP Agent accepts connections only from known CDP Servers. To authorize a CDP Server to CDP Agent, you must add the CDP Server&#8217;s public key to Agent&#8217;s configuration.</p>
<p>1. Run the following command on the Agent machine:</p>
<p><strong>#r1soft-setup &#8211;get-key [Server_URL]</strong></p>
<p>in our case the server URL is <strong>http://xxx.xxx.xxx.xxx</strong> because I mentioned at the begining that R1soft server is installed on xxx.xxx.xxx.xxx <img src='http://www.supportsages.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>You can view the installed keys using the following command:</p>
<p><strong>#r1soft-setup &#8211;list-key</strong></p>
<p>Once this is done allow the R1soft server IP in our firewall using :</p>
<p><strong>#csf -a xxx.xxx.xxx.xxx </strong> (for running this command csf should be installed. you can get tutorials on installing csf firewall from search engines. Here&#8217;s one URL http://www.webhostgear.com/432.html)</p>
<p>Thats it you have done everything that needs to be done on the Agent end. Now login to the GUI of R1soft Server Enterprise Edition to add the new agent to the server.</p>
<div class="tweetthis" style="text-align:left;"><p> <a  class="tt" href="http://twitter.com/home/?status=Installing+CDP-Agent+for+R1Soft+Enterprise+Edition+3.0+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F2062" title="Post to Twitter"><img class="nothumb" src="http://www.supportsages.com/blog/wp-content/plugins/tweet-this/icons/en/twitter/tt-twitter3.png" alt="Post to Twitter" /></a> <a  class="tt" href="http://twitter.com/home/?status=Installing+CDP-Agent+for+R1Soft+Enterprise+Edition+3.0+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F2062" title="Post to Twitter">Tweet This Post</a></p></div>]]></content:encoded>
			<wfw:commentRss>http://www.supportsages.com/blog/2012/05/installing-cdp-agent-for-r1soft-enterprise-edition-3-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ERROR FROM PARK WRAPPER: UNABLE TO FIND OUT WHICH USER OWNS THE PARKED DOMAIN addon.com cPanel/WHM</title>
		<link>http://www.supportsages.com/blog/2012/05/error-from-park-wrapper-unable-to-find-out-which-user-owns-the-parked-domain-addon-com-cpanelwhm/</link>
		<comments>http://www.supportsages.com/blog/2012/05/error-from-park-wrapper-unable-to-find-out-which-user-owns-the-parked-domain-addon-com-cpanelwhm/#comments</comments>
		<pubDate>Tue, 08 May 2012 04:55:45 +0000</pubDate>
		<dc:creator>sarath</dc:creator>
				<category><![CDATA[cPanel]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[add-on domain]]></category>
		<category><![CDATA[park wrapper]]></category>

		<guid isPermaLink="false">http://www.supportsages.com/blog/?p=2034</guid>
		<description><![CDATA[Before going into the steps to resolve the issue we should know where exactly we are getting this error. Here I'm using the domain addon.com which is configured as an add-on domain in cPanel under an account primarydomain.com.

The said error is encountered when you try to delete the add-on domain addon.com from your cPanel.

<a href="http://www.supportsages.com/blog/wp-content/uploads/2012/05/Screenshot-8.png"><img class="aligncenter size-medium wp-image-2037" title="Screenshot-8" src="http://www.supportsages.com/blog/wp-content/uploads/2012/05/Screenshot-8-300x124.png" alt="" width="300" height="124" /></a>

(Click to enlarge image)

<!-- p { margin-bottom: 0.08in; } -->So what exactly is the reason for this error?

Before knowing the reason for this error it is important to know how an add-on domain is created using cPanel. ...]]></description>
			<content:encoded><![CDATA[<p>Before going into the steps to resolve the issue we should know where exactly we are getting this error. Here I&#8217;m using the domain addon.com which is configured as an add-on domain in cPanel under an account primarydomain.com.</p>
<p>The said error is encountered when you try to delete the add-on domain addon.com from your cPanel.</p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/05/Screenshot-8.png" class="thickbox no_icon" rel="gallery-2034" title="Screenshot-8"><img class="aligncenter size-medium wp-image-2037" title="Screenshot-8" src="http://www.supportsages.com/blog/wp-content/uploads/2012/05/Screenshot-8-300x124.png" alt="" width="300" height="124" /></a></p>
<p>(Click to enlarge image)</p>
<p><!-- p { margin-bottom: 0.08in; } -->So what exactly is the reason for this error?</p>
<p>Before knowing the reason for this error it is important to know how an add-on domain is created using cPanel. When you create an add-on domain using your cPanel, there are a lot of tasks running in the background.  You might be knowing that an add-on domain is a domain parked on top of a sub-domain. So when you create an add-on domain named addon.com, a sub-domain with prefix as the username of the addon domain is also created. That means here a sub-domain addon.primarydomain.com is created automatically.</p>
<p>Another most important thing is the creation of entries for that particular add-on domain in certain files. I&#8217;ll explain all the necessary files where entries are made automatically while creating an add-on named addon.com via cPanel.</p>
<p>When you create an add-on domain addon.com the following entries are created:</p>
<p><strong>1. File &#8211; /etc/localdomains</strong></p>
<p><strong>Entry:</strong></p>
<p>addon.com</p>
<p>addon.primarydomain.com</p>
<p><strong>2.<span style="font-family: Liberation Serif,serif;"> </span><span style="font-family: Liberation Serif,serif;">File -</span><span style="font-family: Liberation Serif,serif;"> /etc/userdomains</span></strong></p>
<p><span style="font-family: Liberation Serif,serif;"><strong>Entry:</strong></span></p>
<p><span style="font-family: Liberation Serif,serif;"><strong> </strong> addon.com: username (where username is the username of the main account primarydomain.com)</span></p>
<p><span style="font-family: Liberation Serif,serif;">addon.primarydomain.com: username </span></p>
<p><strong><span style="font-family: Liberation Serif,serif;">3. File &#8211; /etc/userdatadomains</span></strong></p>
<p><!-- p { margin-bottom: 0.08in; } --><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><strong>Entry</strong>:<br />
</span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"> </span><span style="font-size: small;">addon.com: </span><span style="font-size: small;">username</span><span style="font-size: small;">==root==addon==addon.</span><span style="font-size: small;">primarydomain</span><span style="font-size: small;">.com==/home/</span><span style="font-size: small;">username</span><span style="font-size: small;">/public_html/addon.com==</span><span style="font-size: small;">IP.</span><span style="font-size: small;">IP.IP.IP</span><span style="font-size: small;">:80== </span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">addon.primarydomain.com: username==root==sub==primarydomain.com==/home/username/public_html/addon.com==IP.IP.IP.IP:80== </span></span></p>
<p><!-- p { margin-bottom: 0.08in; } --><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Here the first entry specifies that addon.com is an addon domain for  primarydomain.com and the second line specifies that  addon.primarydomain.com is a subdomain for primarydomain.com. Also the IP field specifies the IP of your prmary domain.</span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><strong>4. File</strong> &#8211; 	<strong>/var/cpanel/users/username</strong></span></span></p>
<p><!-- p { margin-bottom: 0.08in; } --><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><strong>Entry:</strong> </span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">DNS52=addon.priamrydomain.com </span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">DNS53=addon.com </span></span></p>
<p><!-- p { margin-bottom: 0.08in; } --><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">Here note that the entry should be prefixed with DNS, because entry with prefix as XDNS means that the DNS zone for addon.com existed, but removed.</span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"><strong>5. File 	- /var/cpanel/userdata/</strong><strong>username</strong><strong>/</strong><strong>main</strong> (Note that username is the username of the primary account as I 	mentioned before)</span></span></p>
<p><!-- p { margin-bottom: 0.08in; } --><strong>Entry:</strong></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">addon_domains: </span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">addon.com: addon.primarydomain.com </span></span><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"> </span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">main_domain: primarydomain.com </span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">parked_domains: [] </span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;"> </span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">sub_domains: </span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">- addon.primarydomain.com</span></span><span style="font-family: Liberation Serif,serif;"> </span></p>
<p><strong>6. File &#8211; /var/cpanel/userdata/username/cache</strong> (which is generated based on main)</p>
<p><strong>Entry:</strong></p>
<p>addon.com: username==root==addon==addon.primarydomain.com==/home/username/public_html/addon.com==IP.IP.IP.IP:80==<br />
addon.primardomain.com: username==root==sub==primarydomain.com==/home/username/public_html/addon.com==IP.IP.IP.IP:80==<br />
primarydomain.com: username==root==main==primarydomain.com==/home/username/public_html==IP.IP.IP.IP:80==</p>
<p><!-- p { margin-bottom: 0.08in; } --><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">This file has somewhat similar entries as in file <strong>/etc/userdatadomains</strong></span></span></p>
<p><strong>7. DNS</strong></p>
<p>A DNS zone file for the domain addon.com exist in <strong>/var/named</strong> directory assuming BIND is the DNS server.<br />
You can use the cPanel script<strong> /scripts/killdns </strong>to remove a DNS Zone from the server</p>
<p>Example: #]<strong>/scripts/killacct addon.com</strong><br />
<strong>8. APACHE (</strong>Webserver used<strong>)</strong></p>
<p>Apache configuration file (<strong>/usr/local/apache/conf/httpd.conf</strong>) should have a virtual host entry with minimum parameters as described below for the add-on domain <strong>addon.com:</strong></p>
<p><!-- p { margin-bottom: 0.08in; }a:link {  } --><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">&lt;VirtualHost IP:80&gt; </span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">ServerName addon.com </span></span></p>
<p><span style="font-size: xx-small;"><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">ServerAlias <a  href="http://www.nabdrinks.com/">www.addon.com</a> </span></span></span></p>
<p><span style="font-size: small;"><span style="font-family: Liberation Serif,serif;">DocumentRoot </span><span style="font-family: Liberation Serif,serif;">/home/</span><span style="font-family: Liberation Serif,serif;">username</span><span style="font-family: Liberation Serif,serif;">/public_html/addon.com</span><span style="font-family: Liberation Serif,serif;"> </span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">&lt;/VirtualHost&gt; </span></span></p>
<p><!-- p { margin-bottom: 0.08in; } --><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">You can check the apache configuration file located at /usr/local/apache/conf/httpd.conf after creating an add-on domain to see the entries entries created for that add-on domain. </span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">So all these files mentioned above will have the said entries when we create an add-on domain via cPanel. Also all these entries should be there in the respective files for an add-on domain to be removed via cPanel. Check for the said entries in all the said files and append the corresponding entry if any entry is missed out in any files. Once its made sure that the entries are present in all the files, you can remove the add-on domain from your cPanel without any errors. Most commonly you get the  “<span style="text-decoration: underline;"><strong>UNABLE TO FIND OUT WHICH USER OWNS THE PARKED DOMAIN” </strong></span>when you dont have the entry for addon.com in httpd.conf file . In such case just add minimum entries as I mentioned above to the httpd.conf file and then remove the add-on domain via cPanel. </span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">There is another method to remove the addon. This is by not logging in to your cPanel. To do this, remove all the entries mentioned above from all the said files so that the add-on domain gets removed automatically. Do remember to remove the DNS zone file using /scripts/killdns  addon.com. Once this is done you can login to your cPanel and you can see that there is no add-on domain configured as addon.com. <img src='http://www.supportsages.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">So in short, for an add-on domain to be removed via cPanel all the entries mentioned should be present in the respective files. Or else remove the entries from all the files so that the add-on domain gets removed from the add-on domain list in your cPanel automatically. </span></span></p>
<p><span style="font-family: Liberation Serif,serif;"><span style="font-size: small;">These are the common steps to follow for all errors related to <strong>park wrapper. :</strong><strong>)</strong></span></span></p>
<p><strong><br />
</strong></p>
<div class="tweetthis" style="text-align:left;"><p> <a  class="tt" href="http://twitter.com/home/?status=ERROR+FROM+PARK+WRAPPER%3A+UNABLE+TO+FIND+OUT+WHICH+USER+OWNS+THE+PARKED+DOMAIN+addon.com+cPanel%2FWHM+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F2034" title="Post to Twitter"><img class="nothumb" src="http://www.supportsages.com/blog/wp-content/plugins/tweet-this/icons/en/twitter/tt-twitter3.png" alt="Post to Twitter" /></a> <a  class="tt" href="http://twitter.com/home/?status=ERROR+FROM+PARK+WRAPPER%3A+UNABLE+TO+FIND+OUT+WHICH+USER+OWNS+THE+PARKED+DOMAIN+addon.com+cPanel%2FWHM+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F2034" title="Post to Twitter">Tweet This Post</a></p></div>]]></content:encoded>
			<wfw:commentRss>http://www.supportsages.com/blog/2012/05/error-from-park-wrapper-unable-to-find-out-which-user-owns-the-parked-domain-addon-com-cpanelwhm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Undefined Index URL Error In Email Template For Magento 1.3.2.4</title>
		<link>http://www.supportsages.com/blog/2012/04/undefined-index-url-error-in-email-template-for-magento-1-3-2-4/</link>
		<comments>http://www.supportsages.com/blog/2012/04/undefined-index-url-error-in-email-template-for-magento-1-3-2-4/#comments</comments>
		<pubDate>Tue, 01 May 2012 00:16:43 +0000</pubDate>
		<dc:creator>sarath</dc:creator>
				<category><![CDATA[magento]]></category>
		<category><![CDATA[cPanel]]></category>
		<category><![CDATA[Email Template]]></category>
		<category><![CDATA[HTML Encoding]]></category>
		<category><![CDATA[Undefined Index]]></category>

		<guid isPermaLink="false">http://www.supportsages.com/blog/?p=1997</guid>
		<description><![CDATA[Before we start we should know where exactly we get this error in a Magento website. We get this error while trying to preview an email template or loading a template etc using the Transactional email options in your Magento admin panel.

<span style="text-decoration: underline;"><strong>STEPS TO DUPLICATE THE ISSUE:</strong></span>

Login to your Magento admin panel by following<strong> </strong><strong>h</strong><strong>ttp://yourdomainname.com/admin</strong>

<strong>
</strong>

<a href="http://www.supportsages.com/blog/wp-content/uploads/2012/04/0.png"><img class="aligncenter size-medium wp-image-1999" title="0" src="http://www.supportsages.com/blog/wp-content/uploads/2012/04/0-300x134.png" alt="" width="300" height="134" /></a>

(Click to enlarge images)

Goto <strong>Transactional Emails </strong>under the <strong>system</strong> tab.

<a href="http://www.supportsages.com/blog/wp-content/uploads/2012/04/1.png"><img class="aligncenter size-medium wp-image-2006" title="1" src="http://www.supportsages.com/blog/wp-content/uploads/2012/04/1-300x134.png" alt="" width="300" height="134" /></a>

Add a new template using the <strong>Add New Template </strong>option.

<a href="http://www.supportsages.com/blog/wp-content/uploads/2012/04/2.png"><img class="aligncenter size-medium wp-image-2009" title="2" src="http://www.supportsages.com/blog/wp-content/uploads/2012/04/2-300x123.png" ...]]></description>
			<content:encoded><![CDATA[<p>Before we start we should know where exactly we get this error in a Magento website. We get this error while trying to preview an email template or loading a template etc using the Transactional email options in your Magento admin panel.</p>
<p><span style="text-decoration: underline;"><strong>STEPS TO DUPLICATE THE ISSUE:</strong></span></p>
<p>Login to your Magento admin panel by following<strong> </strong><strong>h</strong><strong>ttp://yourdomainname.com/admin</strong></p>
<p><strong><br />
</strong></p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/04/0.png" class="thickbox no_icon" rel="gallery-1997" title="0"><img class="aligncenter size-medium wp-image-1999" title="0" src="http://www.supportsages.com/blog/wp-content/uploads/2012/04/0-300x134.png" alt="" width="300" height="134" /></a></p>
<p>(Click to enlarge images)</p>
<p>Goto <strong>Transactional Emails </strong>under the <strong>system</strong> tab.</p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/04/1.png" class="thickbox no_icon" rel="gallery-1997" title="1"><img class="aligncenter size-medium wp-image-2006" title="1" src="http://www.supportsages.com/blog/wp-content/uploads/2012/04/1-300x134.png" alt="" width="300" height="134" /></a></p>
<p>Add a new template using the <strong>Add New Template </strong>option.</p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/04/2.png" class="thickbox no_icon" rel="gallery-1997" title="2"><img class="aligncenter size-medium wp-image-2009" title="2" src="http://www.supportsages.com/blog/wp-content/uploads/2012/04/2-300x123.png" alt="" width="300" height="123" /></a></p>
<p>Here you can see an option to <strong>Load a default Template</strong></p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/04/3.png" class="thickbox no_icon" rel="gallery-1997" title="3"><img class="aligncenter size-medium wp-image-2010" title="3" src="http://www.supportsages.com/blog/wp-content/uploads/2012/04/3-300x133.png" alt="" width="300" height="133" /></a></p>
<p>Select a template from the Template drop down box and then select <strong>Load Template</strong> so that the loaded template information gets loaded in the <strong>Template Information</strong> area which is just below.</p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/04/4.png" class="thickbox no_icon" rel="gallery-1997" title="4"><img class="aligncenter size-medium wp-image-2011" title="4" src="http://www.supportsages.com/blog/wp-content/uploads/2012/04/4-300x123.png" alt="" width="300" height="123" /></a></p>
<p>Now trying to preview the template using the <strong>Preview Template</strong> option gives you the <strong>Undefined index:  url error</strong> as shown in the screenshot.</p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/04/5.png" class="thickbox no_icon" rel="gallery-1997" title="5"><img class="aligncenter size-medium wp-image-2012" title="5" src="http://www.supportsages.com/blog/wp-content/uploads/2012/04/5-300x108.png" alt="" width="300" height="108" /></a><br />
<strong> </strong></p>
<p><strong>ERROR:</strong></p>
<p>Notice: Undefined index:  url  in /home/username/public_html/app/code/core/Mage/Core/Model/Email/Template/Filter.php on line 253</p>
<p>Trace: #0 /home/username/public_html/app/code/core/Mage/Core/Model/Email/Template/Filter.php(253): mageCoreErrorHandler(8, &#8216;Undefined index&#8230;&#8217;, &#8216;/home/username/&#8230;&#8217;, 253, Array)</p>
<p>#1 /home/username/public_html/lib/Varien/Filter/Template.php(134): Mage_Core_Model_Email_Template_Filter-&gt;storeDirective(Array)</p>
<p>#2 /home/username/public_html/app/code/core/Mage/Core/Model/Email/Template.php(283): Varien_Filter_Template-&gt;filter(Array, Array)</p>
<p>#3 /home/username/public_html/app/code/core/Mage/Adminhtml/Block/System/Email/Template/Preview.php(50): Mage_Core_Model_Email_Template-&gt;getProcessedTemplate(&#8216;</p>
<p><strong>Troubleshooting:</strong></p>
<p>As you can see, in the Template Information section  the Template Content is filled up with some codes as shown below.</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>&lt;td valign=&#8221;top&#8221;&gt;&lt;a href=&#8221;{{store%20url=&#8221; &#8220;}}&#8221;=&#8221;"&gt;&lt;img src=&#8221;{{skin%20url=&#8221; images=&#8221;" logo_email.gif&#8221;=&#8221;" _area=&#8221;frontend&#8221; }}&#8221;=&#8221;" alt=&#8221;Magento&#8221; style=&#8221;margin-bottom: 10px&#8221; border=&#8221;0&#8243; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;!&#8211; [ middle starts here] &#8211;&gt;</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p><!-- [ middle starts here] --></p>
<p>In the above codes you can find a character<strong> %20</strong> . What exactly is this? This is <strong>HTML URL Encoding</strong> . URL encoding converts characters into a format that can be transmitted over the Internet.</p>
<p>The codes in templates for certain Magento versions have HTML encoding of certain characters. In HTML URL encoding %20 stands for a blank space.  To overcome this issue, <strong>replace the %20 in the Template Content code with a blank space</strong>.</p>
<p>In the above code for Template, you can see the store url is defined as store%20url, which is the reason for the error. Replace the %20 with a blank space as shown below:</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>&lt;td valign=&#8221;top&#8221;&gt;&lt;a href=&#8221;{{store url=&#8221; &#8220;}}&#8221;=&#8221;"&gt;&lt;img src=&#8221;{{skin url=&#8221; images=&#8221;" logo_email.gif&#8221;=&#8221;" _area=&#8221;frontend&#8221; }}&#8221;=&#8221;" alt=&#8221;Magento&#8221; style=&#8221;margin-bottom: 10px&#8221; border=&#8221;0&#8243; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;!&#8211; [ middle starts here] &#8211;&gt;</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p><!-- [ middle starts here] --></p>
<p><strong>Wherever you find a %20 in the template code replace it with a blank space.</strong></p>
<p><strong> </strong><br />
You can learn more about HTML URL encoding from search engines like Google. Here is one such tutorial for HTML URL ENCODING <strong>http://www.tutorialspoint.com/html/html_url_encoding.htm</strong> .</p>
<p>Now use the <strong>Preview</strong> option to preview your template. You will get an output as shown below:<br />
<a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/04/6.png"></a></p>
<p><a href="http://www.supportsages.com/blog/wp-content/uploads/2012/04/6.png"><img class="aligncenter size-medium wp-image-2013" title="6" src="http://www.supportsages.com/blog/wp-content/uploads/2012/04/6-300x174.png" alt="" width="300" height="174" /></a></p>
<p><strong>Bingo!! You have done it!!</strong></p>
<div class="tweetthis" style="text-align:left;"><p> <a  class="tt" href="http://twitter.com/home/?status=Undefined+Index+URL+Error+In+Email+Template+For+Magento+1.3.2.4+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F1997" title="Post to Twitter"><img class="nothumb" src="http://www.supportsages.com/blog/wp-content/plugins/tweet-this/icons/en/twitter/tt-twitter3.png" alt="Post to Twitter" /></a> <a  class="tt" href="http://twitter.com/home/?status=Undefined+Index+URL+Error+In+Email+Template+For+Magento+1.3.2.4+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F1997" title="Post to Twitter">Tweet This Post</a></p></div>]]></content:encoded>
			<wfw:commentRss>http://www.supportsages.com/blog/2012/04/undefined-index-url-error-in-email-template-for-magento-1-3-2-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SupportSages offers 20% discount on Hire-A-Sage plan</title>
		<link>http://www.supportsages.com/blog/2012/04/supportsages-offers-20-discount-on-hire-a-sage-plan/</link>
		<comments>http://www.supportsages.com/blog/2012/04/supportsages-offers-20-discount-on-hire-a-sage-plan/#comments</comments>
		<pubDate>Sun, 08 Apr 2012 12:52:42 +0000</pubDate>
		<dc:creator>George</dc:creator>
				<category><![CDATA[Offers]]></category>
		<category><![CDATA[Special Offers]]></category>
		<category><![CDATA[SupportSages]]></category>
		<category><![CDATA[WHT Offers]]></category>

		<guid isPermaLink="false">http://www.supportsages.com/blog/?p=1992</guid>
		<description><![CDATA[<strong>Why SupportSages?</strong>
<ul> Linux certified engineering graduate admins
Splendid talent pool
Excellent customer care skills
Good command over English language
Total transparency and work ethics
Realization of 24/7 support
Guaranteed non-canned response time of 15 minutes
Any time pro-rated refund
Payment methods - PayPal, Moneybookers and WireTransfer
Swift setup</ul>
The team is divided in to the following levels based on their expertise and experience in hosting support industry

Level 1 or L1  -  0-1 years
Level 2 or L2  -  1-3 years
Level 3 or L3   -  3-7 years
Level 3 (Escalation) or L3E - 7+ years

We offer the following plans to cater your requirements

<strong>Hire A sage</strong>

Hire A ...]]></description>
			<content:encoded><![CDATA[<p><strong>Why SupportSages?</strong></p>
<ul> Linux certified engineering graduate admins<br />
Splendid talent pool<br />
Excellent customer care skills<br />
Good command over English language<br />
Total transparency and work ethics<br />
Realization of 24/7 support<br />
Guaranteed non-canned response time of 15 minutes<br />
Any time pro-rated refund<br />
Payment methods &#8211; PayPal, Moneybookers and WireTransfer<br />
Swift setup</ul>
<p>The team is divided in to the following levels based on their expertise and experience in hosting support industry</p>
<p>Level 1 or L1  &#8211;  0-1 years<br />
Level 2 or L2  &#8211;  1-3 years<br />
Level 3 or L3   &#8211;  3-7 years<br />
Level 3 (Escalation) or L3E &#8211; 7+ years</p>
<p>We offer the following plans to cater your requirements</p>
<p><strong>Hire A sage</strong></p>
<p>Hire A sage plan gives you the freedom to select the admins according to your requirements. The hired admin will work exclusively for you 8 hours a day 6 days per week (9 hours with one hour break in between each break no more than 30 minutes). The weekly off day can be decided in accordance with your preference.</p>
<p>L3E            &#8211; US $1600<br />
L3             &#8211; US $1200<br />
L2             &#8211; US $800<br />
L1             &#8211; US $400</p>
<p><strong>Semi-Dedicated Team</strong></p>
<p>We offer two types of semi dedicated plans namely</p>
<ul> 1/2 semi-dedicated<br />
1/3 semi-dedicated</ul>
<p>In the first plan, the team will be handling another client of the same package and will resolve your issues as and when it pops up. The second plan implies that the team assigned to you will work for other two hosting companies as well. This simply means that the team is not entirely dedicated for you alone. But the quality of support will be same but the charge will reduced in accordance with the number of teams to which the admin is being shared.</p>
<p>You can hand pick your team as per your criteria. A team consists of 3+1 admins to cover the off days of the regular admins.The monthly charges for most popular combinations are given below</p>
<pre>+----------------+-------------------+----------------+
|                |                   |                |
| Team           |1/2 Semi-Dedicated |1/3 Semi-Ded    |
+----------------|-------------------|----------------+
|  3L2 + 1L3     |     USD 1800      |    USD 1200    |
+----------------|-------------------|----------------+
|  3L3 + 1L3E    |     USD 2600      |    USD 1750    |
+----------------+-------------------+----------------+</pre>
<p><strong>Dedicated Team</strong></p>
<p>A dedicated team consists of 4 admins and they work exclusively for you 24*7 to meet your customer expectations. You can either choose a team of equally skilled admins or a blend of varying capacities. The charges for the most popular plans are</p>
<p>3 L2 + 1 L3 &#8212; US $3600<br />
3 L3 + 1 L3E &#8212; US $5200</p>
<p>Please note that you can create a team of your own depending on the skills each shift requires.</p>
<p>NB : You won&#8217;t be able to continue an L1 person over a period of one year. There could be chances that you like an admin and would like to continue him even after an year. In addition to a 10-50% hike in such cases, every year we also assume that you provide him with tough challenges to solve.</p>
<p>Otherwise Knowledge Transfer will happen and an L1 admin will be replaced with the new admin. This applies only for an L1 admin.</p>
<p>For ordering and knowing more details, please email sales [ at ] supportsages.com or maddy [ at ] supportsages.com</p>
<div class="tweetthis" style="text-align:left;"><p> <a  class="tt" href="http://twitter.com/home/?status=SupportSages+offers+20%25+discount+on+Hire-A-Sage+plan+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F1992" title="Post to Twitter"><img class="nothumb" src="http://www.supportsages.com/blog/wp-content/plugins/tweet-this/icons/en/twitter/tt-twitter3.png" alt="Post to Twitter" /></a> <a  class="tt" href="http://twitter.com/home/?status=SupportSages+offers+20%25+discount+on+Hire-A-Sage+plan+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F1992" title="Post to Twitter">Tweet This Post</a></p></div>]]></content:encoded>
			<wfw:commentRss>http://www.supportsages.com/blog/2012/04/supportsages-offers-20-discount-on-hire-a-sage-plan/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL &amp; phpMyAdmin &#8211; Truncate didnt free the innoDB space</title>
		<link>http://www.supportsages.com/blog/2012/04/mysql-phpmyadmin-truncate-didnt-free-the-innodb-space/</link>
		<comments>http://www.supportsages.com/blog/2012/04/mysql-phpmyadmin-truncate-didnt-free-the-innodb-space/#comments</comments>
		<pubDate>Sat, 07 Apr 2012 17:27:30 +0000</pubDate>
		<dc:creator>George</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[Optimizing MySQL table]]></category>
		<category><![CDATA[phpmyadmin]]></category>
		<category><![CDATA[table maintenance]]></category>

		<guid isPermaLink="false">http://www.supportsages.com/blog/?p=1989</guid>
		<description><![CDATA[Situation : Configured the mysql server with innodb per table. There was a table comments having approximate 600+ MB size all because of comment spamming. I went to the table field in phpMyAdmin and clicked on "Empty" and all went good in regards to truncation. 

Table has no records or zero record. But the phpmyAdmin still said 

"InnoDB free: 67778911 KB" and when I checked the size by logging to the server in backend, it also showed the size. 

12K	/var/lib/mysql/db_gallery/comments.frm
653M 	/var/lib/mysql/db_gallery/comments.ibd

What could be the issue.? Won't truncate  work by actually removing the data from the .ibd file ? What ...]]></description>
			<content:encoded><![CDATA[<p>Situation : Configured the mysql server with innodb per table. There was a table comments having approximate 600+ MB size all because of comment spamming. I went to the table field in phpMyAdmin and clicked on &#8220;Empty&#8221; and all went good in regards to truncation. </p>
<p>Table has no records or zero record. But the phpmyAdmin still said </p>
<p>&#8220;InnoDB free: 67778911 KB&#8221; and when I checked the size by logging to the server in backend, it also showed the size. </p>
<p>12K	/var/lib/mysql/db_gallery/comments.frm<br />
653M 	/var/lib/mysql/db_gallery/comments.ibd</p>
<p>What could be the issue.? Won&#8217;t truncate  work by actually removing the data from the .ibd file ? What is happening ?</p>
<p>I googled and found this link at StackOverFlow http://dba.stackexchange.com/questions/10779/problem-with-innodb-per-table-file-sizes</p>
<p>Went ahead to Operations tab &#8211;> Table Maintenance &#8211;> &#8220;Optimize table&#8221;  and it&#8217;s fixed. It showed &#8220;InnoDB free: 0 kB&#8221; and a backend listing showed the below size history too <img src='http://www.supportsages.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>12K	/var/lib/mysql/db_gallery/comments.frm<br />
100K	/var/lib/mysql/db_gallery/comments.ibd</p>
<div class="tweetthis" style="text-align:left;"><p> <a  class="tt" href="http://twitter.com/home/?status=MySQL+%26+phpMyAdmin+-+Truncate+didnt+free+the+innoDB+space+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F1989" title="Post to Twitter"><img class="nothumb" src="http://www.supportsages.com/blog/wp-content/plugins/tweet-this/icons/en/twitter/tt-twitter3.png" alt="Post to Twitter" /></a> <a  class="tt" href="http://twitter.com/home/?status=MySQL+%26+phpMyAdmin+-+Truncate+didnt+free+the+innoDB+space+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F1989" title="Post to Twitter">Tweet This Post</a></p></div>]]></content:encoded>
			<wfw:commentRss>http://www.supportsages.com/blog/2012/04/mysql-phpmyadmin-truncate-didnt-free-the-innodb-space/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Plesk and database deletion woes once again!</title>
		<link>http://www.supportsages.com/blog/2012/04/plesk-and-database-deletion-woes-once-again/</link>
		<comments>http://www.supportsages.com/blog/2012/04/plesk-and-database-deletion-woes-once-again/#comments</comments>
		<pubDate>Mon, 02 Apr 2012 07:04:09 +0000</pubDate>
		<dc:creator>George</dc:creator>
				<category><![CDATA[Howtos]]></category>
		<category><![CDATA[Plesk]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[DB deletion]]></category>
		<category><![CDATA[MSSQL]]></category>
		<category><![CDATA[sysdatabases]]></category>

		<guid isPermaLink="false">http://www.supportsages.com/blog/?p=1984</guid>
		<description><![CDATA[<div>Recently we had a request regarding the  deletion of a database. And as usual, selected the database, clicked the "Remove database" and option and voila! I was welcomed with the generalized error</div>
<br />
<div>" The  operation you were performing failed.You can retry the operation with  or without changing its parameters. You may also want to report this  problem to our support so that we could help you as soon as possible".</div><br />
<div>I wondered whether the issue was with the database user deletion. Hence I decided to delete the user first and try again. There also the  problem exists. ...]]></description>
			<content:encoded><![CDATA[<div>Recently we had a request regarding the  deletion of a database. And as usual, selected the database, clicked the &#8220;Remove database&#8221; and option and voila! I was welcomed with the generalized error</div>
<p></p>
<div>&#8221; The  operation you were performing failed.You can retry the operation with  or without changing its parameters. You may also want to report this  problem to our support so that we could help you as soon as possible&#8221;.</div>
<p></p>
<div>I wondered whether the issue was with the database user deletion. Hence I decided to delete the user first and try again. There also the  problem exists. Time for handson!! <img src='http://www.supportsages.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </div>
<p></p>
<div>Fired up Microsoft SQL server Management Studio  Express and found the requested database and tried deleting those manually. Got the error that one of the table already exists. Why does it alert me that a table exists when I am trying to delete a database itself ? Deleted the table first and then tried deleting the DB itself from plesk and unfortunately that didn&#8217;t work either.</div>
<p></p>
<div>So I went ahead with  deleting the corresponding database through the Microsoft SQL server  Management Studio Express. The database deleted, but the entry in plesk  was still there. I couldn&#8217;t delete the entry from plesk. Poor plesk rightly pointed  out that it couldn&#8217;t locate the entry in sysdatabase for the  particular database.</div>
<p></p>
<blockquote>
<div><strong>Delete database user failed: Could not locate entry in sysdatabases for database &#8216;db_name_name&#8217;. No entry found with that name. Make sure that the name is entered correctly</strong></div>
</blockquote>
<p></p>
<div>So in order to overcome this issue, I had to fool around, by manually creating a new database with the same database name of the  previously deleted one. This time it was not in a mood to let go of my spirit that easily <img src='http://www.supportsages.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </div>
<p></p>
<div>It showed some error that it couldn&#8217;t  create the database as the .mdf of the previously  deleted database was there in the specified path.</div>
<p></p>
<blockquote>
<div><strong>Create failed for Database &#8216;db_name_name&#8217;. (Microsoft.SqlServer.Express.Smo)</strong></div>
<div><strong>CREATE DATABASE failed. Some file names listed could not be created. Check related errors. Cannot create file &#8216;C:\Program Files\Microsft SQL Server\MSSQL.1\MSSQL\DATA\db_name_name.mdf&#8217; because it already exists. Change the file path or the file name, and retry the operation.</strong></div>
</blockquote>
<p></p>
<div>Solution was to move the .mdf  file of the previous database which was not deleted from the previous deletion to some other location and tried again, creating the database. This time it worked and created the database with  the same name.  That enabled me to delete the entry of the  particular database from the plesk panel and from the DB itself.</div>
<p></p>
<div>Wohoo that was the end of yet another DB deletion story .</div>
<div class="tweetthis" style="text-align:left;"><p> <a  class="tt" href="http://twitter.com/home/?status=Plesk+and+database+deletion+woes+once+again%21+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F1984" title="Post to Twitter"><img class="nothumb" src="http://www.supportsages.com/blog/wp-content/plugins/tweet-this/icons/en/twitter/tt-twitter3.png" alt="Post to Twitter" /></a> <a  class="tt" href="http://twitter.com/home/?status=Plesk+and+database+deletion+woes+once+again%21+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F1984" title="Post to Twitter">Tweet This Post</a></p></div>]]></content:encoded>
			<wfw:commentRss>http://www.supportsages.com/blog/2012/04/plesk-and-database-deletion-woes-once-again/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>.htaccess based mod_rewrite not working with Godaddy ?</title>
		<link>http://www.supportsages.com/blog/2012/04/htaccess-based-mod_rewrite-not-working-with-godaddy/</link>
		<comments>http://www.supportsages.com/blog/2012/04/htaccess-based-mod_rewrite-not-working-with-godaddy/#comments</comments>
		<pubDate>Sun, 01 Apr 2012 14:08:16 +0000</pubDate>
		<dc:creator>George</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Howtos]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[.htaccess]]></category>
		<category><![CDATA[godaddy]]></category>
		<category><![CDATA[mod_rewrite]]></category>
		<category><![CDATA[rewrite engine]]></category>

		<guid isPermaLink="false">http://www.supportsages.com/blog/?p=1981</guid>
		<description><![CDATA[We had a situation, very recently where we had to move a cPanel based hosting account to Godaddy. Move went successful. We had to setup the Free Hosting Account which Godaddy has given to the customer, FTP Transfer was done (I guess it was FXP) and we did made sure that all the files were transferred as well. But unfortunately a few links were giving us 404 File Not Found Error.

After a initial round of checking and re-assuring that all the files were indeed moved, we realized that it is a few mod_rewrite rules which is causing the issues. We ...]]></description>
			<content:encoded><![CDATA[<p>We had a situation, very recently where we had to move a cPanel based hosting account to Godaddy. Move went successful. We had to setup the Free Hosting Account which Godaddy has given to the customer, FTP Transfer was done (I guess it was FXP) and we did made sure that all the files were transferred as well. But unfortunately a few links were giving us 404 File Not Found Error.</p>
<p>After a initial round of checking and re-assuring that all the files were indeed moved, we realized that it is a few mod_rewrite rules which is causing the issues. We wondered what would have gone wrong and had to google. A few tips, like adding</p>
<p>Options +FollowSymlinks</p>
<p>Escaping the characters were seen and tried in .htaccess, but eventually it was the small directive modification seen below which fixed the issue.</p>
<p>I have added, before the directive &#8220;RewriteEngine On&#8221; and before any mod_rewrite rules.</p>
<p><strong>Options -Multiviews</strong></p>
<p>When Multiviews is on it will expand, a redirect like products/foo/bar to products.php/foo/bar but those won&#8217;t get expanded to the real wanted one like products.php?pid=foo&amp;id=bar . Though not mandatory, another reason is products.php is already there and it is getting a block by another conflicting rule, RewriteCond -f.</p>
<p>For more, read out</p>
<p>http://support.godaddy.com/godaddy/apache-multiviews/</p>
<p>Wohoo. Thanks Google and Godaddy <img src='http://www.supportsages.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<div class="tweetthis" style="text-align:left;"><p> <a  class="tt" href="http://twitter.com/home/?status=.htaccess+based+mod_rewrite+not+working+with+Godaddy+%3F+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F1981" title="Post to Twitter"><img class="nothumb" src="http://www.supportsages.com/blog/wp-content/plugins/tweet-this/icons/en/twitter/tt-twitter3.png" alt="Post to Twitter" /></a> <a  class="tt" href="http://twitter.com/home/?status=.htaccess+based+mod_rewrite+not+working+with+Godaddy+%3F+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F1981" title="Post to Twitter">Tweet This Post</a></p></div>]]></content:encoded>
			<wfw:commentRss>http://www.supportsages.com/blog/2012/04/htaccess-based-mod_rewrite-not-working-with-godaddy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Chapter 12 All about a process running in linux</title>
		<link>http://www.supportsages.com/blog/2012/01/all-about-a-process-running-in-linux/</link>
		<comments>http://www.supportsages.com/blog/2012/01/all-about-a-process-running-in-linux/#comments</comments>
		<pubDate>Tue, 03 Jan 2012 06:00:40 +0000</pubDate>
		<dc:creator>vince</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.supportsages.com/blog/?p=1954</guid>
		<description><![CDATA[<!-- p { margin-bottom: 0.08in; }h3 { margin-bottom: 0.08in; }pre.cjk { font-family: "DejaVu LGC Sans Mono",monospace; } -->
<ul><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;"><strong>Program 	Vs Process</strong></span></span>&#160;
	<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;">A 	program is an executable file, while a process is a program in 	execution. A<span style="color: #000000;"> program is a set of instructions written down to do something, while </span><span style="color: #000000;">a 	process is the result of executing a program.</span></span></span></li>
</ul>
<ul>
	<li><span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;"><strong>Process 	Vs Thread</strong></span></span></span></li>
</ul>
<a href="http://www.supportsages.com/blog/wp-content/uploads/2012/01/pic.jepg_.png"><img class="aligncenter size-medium wp-image-1955" title="pic.jepg" src="http://www.supportsages.com/blog/wp-content/uploads/2012/01/pic.jepg_-291x300.png" alt="" width="291" height="300" /></a>
<ul><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="color: ...]]></description>
			<content:encoded><![CDATA[<p><!-- p { margin-bottom: 0.08in; }h3 { margin-bottom: 0.08in; }pre.cjk { font-family: "DejaVu LGC Sans Mono",monospace; } --></p>
<ul><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;"><strong>Program 	Vs Process</strong></span></span>&nbsp;</p>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;">A 	program is an executable file, while a process is a program in 	execution. A<span style="color: #000000;"> program is a set of instructions written down to do something, while </span><span style="color: #000000;">a 	process is the result of executing a program.</span></span></span></li>
</ul>
<ul>
<li><span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;"><strong>Process 	Vs Thread</strong></span></span></span></li>
</ul>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/01/pic.jepg_.png" class="thickbox no_icon" rel="gallery-1954" title="pic.jepg"><img class="aligncenter size-medium wp-image-1955" title="pic.jepg" src="http://www.supportsages.com/blog/wp-content/uploads/2012/01/pic.jepg_-291x300.png" alt="" width="291" height="300" /></a></p>
<ul><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="color: #000000;"><span style="font-size: small;">A 	process and a thread is almost the same, and the only worthwhile 	difference between a thread and a process is that threads share the 	same address space completely and hence require less creation time. 	P</span></span><span style="color: #000000;">rocesses 	are independent execution units that contain their own state 	information, use their own address spaces, and only interact with 	each other via inter-process communication mechanisms. A</span><span style="color: #000000;"><span style="font-size: small;"> thread is a coding construct that doesn&#8217;t affect the architecture of 	an application. A single process might contains multiple threads; 	all threads within a process share the same state and same memory 	space, and can communicate with each other directly, because they 	share the same variables.<br />
</span></span></span>&nbsp;</p>
<li><span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;">User 	process is a process run by a human user</span></span></span></li>
<li><span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;">A 	service or a daemon process which can be time based or event based 	usually triggered by root or the system itself while on bootup and 	infact a never ending process which triggers other processes.</span></span></span></li>
<li><span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;"><strong>PID</strong> &#8211; Process ID &#8211; The id of a process, each process running on a system 	is assigned itś own process ID.</span></span></span></li>
</ul>
<ul>
<li><span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;"><strong>PPID</strong> &#8211; Parent Process ID &#8211; PID of the process that created the child 	process. pstree shows the relation b/w parent process and other 	process, starting from  init.</span></span></span></li>
<li><span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;"><strong>Job 	ID</strong> &#8211; Job ID is unique to a shell instance. Can be displayed using 	the command &#8220;jobs&#8221;. A process when hit a &#8220;Ctrl+Z&#8221; 	shows the job id, when it says Stopped .The command jobs shows 	background processes, both stopped and running. The process having a 	+ symbol toward the right of job id means that process will be 	responding to fg without options (without job id being passed as 	argument) and the &#8211; sign to any process, if any indicates that it is 	that process which inherits the + sign after the process having + 	sign is done with.</span></span></span></li>
<li><span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;">bg 	%job_id or bg PID will let the process with job_id to run again.<br />
</span></span></span></li>
</ul>
<p><span style="color: #000000;"> <span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;">A few process related commands with options:</span></span><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;"> </span></span></span></p>
<p><span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;">ps command (process status) will display snapshot information of all active processes.</span></span></span></p>
<h3><span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;">To display all the processes running in the system</span></span></span></h3>
<p><span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;">Use “ps aux”, as shown below.</span></span></span></p>
<pre><span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;"><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/01/pasaux1.jpg" class="thickbox no_icon" rel="gallery-1954" title="pasaux"><img class="aligncenter size-full wp-image-1967" title="pasaux" src="http://www.supportsages.com/blog/wp-content/uploads/2012/01/pasaux1.jpg" alt="" width="625" height="423" /></a>
</span></span></span><span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;">You can also use “ps -ef | more”, to get a similar output</span></span></span></pre>
<p><a name="more-283"></a> <span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;">Use ¨pstree¨ to get output like this:</span></span></span></p>
<p><a href="http://www.supportsages.com/blog/wp-content/uploads/2012/01/pstree.jpg"><img class="aligncenter size-full wp-image-1970" title="pstree" src="http://www.supportsages.com/blog/wp-content/uploads/2012/01/pstree.jpg" alt="" width="616" height="416" /></a></p>
<ul>
<li><span style="color: #111111;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;"><strong>Nice 	Value:</strong></span></span></span><span style="color: #111111;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;">It 	is used to run a program with modified scheduling priority . 	Nicenesses  range  from  -20 (most favorable scheduling) to 19 	(least favorable). Nice is to start a process with a priority like 	nice -n 10 mp3blaster</span></span></span></li>
<li><span style="color: #111111;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;"><strong>Renice</strong> &#8211; renice is to change the priority of an existing process like : 	renice 10 PID</span></span></span></li>
</ul>
<ul>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><strong>kill</strong> &#8211; terminate a process<br />
The  command  kill  sends  the specified 	signal to the specified process or  process group.  If no signal is 	specified, the TERM signal  is  sent. </span></li>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">kill 	- kill %job_id or kill PID / man 7 signal </span></li>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">kill 	-15 PID &#8211; cleaner or soft killing of process &#8211; 			  SIGTERM </span></li>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">kill 	-9 PID &#8211; hard kill  &#8211; SIGKILL </span></li>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">kill 	-19 PID &#8211; Stop the process &#8211; STOP </span></li>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">kill 	-18 PID &#8211; resume the stopped process &#8211; SIGCONT </span></li>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">kill 	-2 PID &#8211; equivalent to Ctrl + C &#8211; SIGINT </span></li>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">kill 	-1 PID &#8211; Hangup  &#8211; SIGHUP </span></li>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">kill 	-3 PID &#8211; end process &amp; core dump</span></li>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">killall</span></li>
</ul>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">More information regarding &#8216;kill&#8217; can be found at the man page</span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">[root@localhost ~]# man kill </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><br />
</span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><strong>Top</strong> &#8211; Display Linux tasks</span></p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/01/top.jpg" class="thickbox no_icon" rel="gallery-1954" title="top"><img class="aligncenter size-full wp-image-1972" title="top" src="http://www.supportsages.com/blog/wp-content/uploads/2012/01/top.jpg" alt="" width="613" height="411" /></a></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">The  top program provides a dynamic real-time view of a running system.  It can display system summary information as well as a list of tasks currently  being managed by the Linux kernel.</span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">top &#8211; Sort by CPU -&gt; P </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">Sort by MEM -&gt; M </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">Sort by PID -&gt; N </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">Kill by PID -&gt; k </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">Renice by PID -&gt; r </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">List by user -&gt; u </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">Active processes or non idle process -&gt; i</span></p>
<ul>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><strong>nohup</strong> &#8211; will stop a process from being killed even if you logs off the 	system before it completes. It ignores the hangup and quit signals.</span></li>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><strong>pgrep</strong></span><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"> &#8211; process grep.</span></li>
</ul>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"> pgrep looks through the currently running processes and lists  the  process IDs  which matches the selection criteria to stdout.  All the criteria have  to match. </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">For example, pgrep -u root sshd </span></p>
<ul>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><strong>pidof</strong></span><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"> &#8211;  find the process ID of a running program.  finds the process id’s 	(pids) of the named programs. It prints those  id’s on the 	standard output. An example is given below</span></li>
</ul>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/01/pidof.jpg" class="thickbox no_icon" rel="gallery-1954" title="pidof"><img class="aligncenter size-full wp-image-1974" title="pidof" src="http://www.supportsages.com/blog/wp-content/uploads/2012/01/pidof.jpg" alt="" width="626" height="423" /></a><br />
</span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"> </span></p>
<ul>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><strong>PPID</strong></span><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"> &#8211; Parent Process ID </span></li>
</ul>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">The process parent PID, the creator of the process.</span></p>
<ul>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><strong>STAT</strong> &#8211; Process Status</span></li>
</ul>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">These functions return information about the specified file. You do not need any access right to the file to get this information but you need search rights to all directories named in the path to the file.</span></p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/01/stat.jpg" class="thickbox no_icon" rel="gallery-1954" title="stat"><img class="aligncenter size-full wp-image-1975" title="stat" src="http://www.supportsages.com/blog/wp-content/uploads/2012/01/stat.jpg" alt="" width="622" height="420" /></a></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">TTY &#8211; Controlling Terminal</span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">It  print the file name of the terminal connected to standard input .</span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">[root@localhost ~]# tty </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">/dev/pts/5 </span></p>
<ul>
<li><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><strong>PRI</strong> &#8211; Priority number.</span></li>
</ul>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">Lower the number, higher the priority, from +19 to -20. The priority numbers available for the system is from +39 to -60, while -20 to -60 is reserved for kernel threads. A normal user can have priorities from 0 to +20, and negative values as well as reducing the values are allowed only to root.</span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">NI &#8211; Dynamic priority value , ranges from +19 to -20</span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">TIME &#8211; total CPU time used</span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">Process Status (STAT) Codes can be of any of these. </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">D   uninterruptible sleep (usually IO) &#8211; cannot be terminated at          		the moment. </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">R   runnable (on run queue) &#8211; can be run </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">S   sleeping &#8211; waiting for an external event </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">T   traced or stopped &#8211; is suspended. </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">Z   a defunct (&#8220;zombie&#8221;) process &#8211; has terminated itself. </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">X   Extinct &#8211; is dead </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">Setting limits on the number of processes that can run.</span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">The command &#8220;ulimit&#8221; is used to limit the number of processes users can run along with available system resources. All processes which will be started from the shell (bash in many cases), will have the same resource limits. To set the limits for daemons which are running at boot time add ulimit </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">command to boot scripts. See apache startup script. </span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">/etc/security/limits.conf</span></p>
<p><span style="font-family: Bitstream Vera Sans Mono,sans-serif;">For example:</span></p>
<pre><span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;">[root@localhost ~]#ulimit -S -m 1000000</span></span></span>
<span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;">[root@localhost ~]# ulimit -S -v 500000</span></span></span></pre>
<p><span style="color: #000000;"><span style="font-family: Bitstream Vera Sans Mono,sans-serif;"><span style="font-size: small;">With this value set, the system will kill any process that tries to take up more resources than you have set as a limit.</span></span></span></p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2012/01/ulimit-a.jpg" class="thickbox no_icon" rel="gallery-1954" title="ulimit-a"><img class="aligncenter size-full wp-image-1976" title="ulimit-a" src="http://www.supportsages.com/blog/wp-content/uploads/2012/01/ulimit-a.jpg" alt="" width="621" height="422" /></a></p>
<div class="tweetthis" style="text-align:left;"><p> <a  class="tt" href="http://twitter.com/home/?status=Chapter+12+All+about+a+process+running+in+linux+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F1954" title="Post to Twitter"><img class="nothumb" src="http://www.supportsages.com/blog/wp-content/plugins/tweet-this/icons/en/twitter/tt-twitter3.png" alt="Post to Twitter" /></a> <a  class="tt" href="http://twitter.com/home/?status=Chapter+12+All+about+a+process+running+in+linux+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F1954" title="Post to Twitter">Tweet This Post</a></p></div>]]></content:encoded>
			<wfw:commentRss>http://www.supportsages.com/blog/2012/01/all-about-a-process-running-in-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>cPanel Website Transfer &#8211; Part 2 &#8211; cPanel to cPanel Migration</title>
		<link>http://www.supportsages.com/blog/2011/08/cpanel-website-transfer-part-2-cpanel-to-cpanel-migration/</link>
		<comments>http://www.supportsages.com/blog/2011/08/cpanel-website-transfer-part-2-cpanel-to-cpanel-migration/#comments</comments>
		<pubDate>Sat, 06 Aug 2011 11:48:54 +0000</pubDate>
		<dc:creator>vince</dc:creator>
				<category><![CDATA[cPanel]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Training]]></category>

		<guid isPermaLink="false">http://www.supportsages.com/blog/?p=1870</guid>
		<description><![CDATA[<h3><strong><em><span style="color: #ff0000;">Transferring a Website from One cPanel server to another</span></em></strong></h3>
<strong>Skill Level : Beginner</strong>

In this post, I will explain how to transfer a website from one cPanel server to other.

<strong>Pre Requisites</strong>

Server Platform : Linux

User requires     : cPanel and SSH access (root) to at-least the Destination server (where the account is restoring)

<strong>The Process</strong>

From the Target server, Generate a Full cPanel backup of the account using either cPanel or through root shell access.

(i) By cPanel

Login to cPanel. Go to Files -&#62; Backups

<a href="http://www.supportsages.com/blog/wp-content/uploads/2011/06/Files.png"><img class="alignleft size-full wp-image-1875" title="Files" src="http://www.supportsages.com/blog/wp-content/uploads/2011/06/Files.png" alt="" width="329" height="115" /></a>

Click "Download or Generate a Full Website Backup". Choose Backup Destination ...]]></description>
			<content:encoded><![CDATA[<h3><strong><em><span style="color: #ff0000;">Transferring a Website from One cPanel server to another</span></em></strong></h3>
<p><strong>Skill Level : Beginner</strong></p>
<p>In this post, I will explain how to transfer a website from one cPanel server to other.</p>
<p><strong>Pre Requisites</strong></p>
<p>Server Platform : Linux</p>
<p>User requires     : cPanel and SSH access (root) to at-least the Destination server (where the account is restoring)</p>
<p><strong>The Process</strong></p>
<p>From the Target server, Generate a Full cPanel backup of the account using either cPanel or through root shell access.</p>
<p>(i) By cPanel</p>
<p>Login to cPanel. Go to Files -&gt; Backups</p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2011/06/Files.png" class="thickbox no_icon" rel="gallery-1870" title="Files"><img class="alignleft size-full wp-image-1875" title="Files" src="http://www.supportsages.com/blog/wp-content/uploads/2011/06/Files.png" alt="" width="329" height="115" /></a></p>
<p>Click &#8220;Download or Generate a Full Website Backup&#8221;. Choose Backup Destination as &#8220;Home Directory&#8221; (Make sure you&#8217;ve enough Disk Space before you proceed) and a valid E-mail address to notify you once the Backup is generated.</p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2011/06/Full_Backup.png" class="thickbox no_icon" rel="gallery-1870" title="Full_Backup"><img class="alignleft size-full wp-image-1878" title="Full_Backup" src="http://www.supportsages.com/blog/wp-content/uploads/2011/06/Full_Backup.png" alt="" width="580" height="262" /></a></p>
<p>Once the Backup is completed, a mail will arrive on the E-mail you&#8217;ve mentioned above (if specified) and the &#8216;Backups Available for Download&#8217; will be populated with the name of the backup file generated like :</p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2011/06/Backup_Complete.png" class="thickbox no_icon" rel="gallery-1870" title="Backup_Complete"><img class="alignleft size-full wp-image-1879" title="Backup_Complete" src="http://www.supportsages.com/blog/wp-content/uploads/2011/06/Backup_Complete.png" alt="" width="580" height="49" /></a></p>
<p>Do you know why the backup generated is the form tar.gz ? Its because, in the tar format all files are preserved with their appropriate permissions and then its compressed to gz (gzip) for obtaining the least possible file size.</p>
<p>The process in the Target server is finished. Now login as Root in the server which requires the account to be restored. We&#8217;ve to download the backup file generated there to this server. There are number of ways to do this. Some are weird <img src='http://www.supportsages.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>Method 1</strong></p>
<p>If you have the cPanel details of that server, you can use it for FTP access. And since the Backup is generated on the Home directory there, its all about downloading the backup.</p>
<p># root@server [/home]# ftp <span style="color: #ff0000;"><strong>oldserver.com</strong></span> or <strong><span style="color: #ff0000;">IP</span></strong></p>
<p>Connected to oldserver.com.<br />
220&#8212;&#8212;&#8212;- Welcome to Pure-FTPd [privsep] [TLS] &#8212;&#8212;&#8212;-<br />
220-You are user number 3 of 50 allowed.<br />
220-Local time is now 17:28. Server port: 21.<br />
220-IPv6 connections are also welcome on this server.<br />
220 You will be disconnected after 15 minutes of inactivity.<br />
Name (oldserver.com:root): <strong><span style="color: #ff0000;">user</span></strong><br />
331 User user OK. Password required<br />
Password:<br />
230 OK. Current restricted directory is /<br />
Remote system type is UNIX.<br />
Using binary mode to transfer files.<br />
ftp&gt; get <span style="color: #ff0000;"><strong>backup-6.2.2011_06-23-57_account.tar.gz</strong></span></p>
<p><span style="color: #ff0000;"><span style="color: #000000;">This will download the backup. You need root access to restore it. Before you restore you need to check whether there is an account or domain which already exists by the name which you intend to restore.</span></span></p>
<p><span style="color: #ff0000;"><span style="color: #000000;">cPanel script to check whether the domain/account name exists </span></span></p>
<p><strong># grep account /etc/userdomains</strong></p>
<p><strong>Method 2</strong></p>
<p><strong>Generating a cPanel backup through Remote FTP (Passive Mode transfer)</strong></p>
<p>It is possible to generate a Remote backup of the account in a server, where the backup has to be restored. Go to cPanel -&gt; Backups -&gt; Download or Generate a Full website backup. Select the Backup Destination as Remote FTP Server (passive mode transfer). Follow the screenshot :</p>
<p><a  href="http://www.supportsages.com/blog/wp-content/uploads/2011/07/remote_ftp.png" class="thickbox no_icon" rel="gallery-1870" title="remote_ftp"><img class="alignleft size-full wp-image-1900" title="remote_ftp" src="http://www.supportsages.com/blog/wp-content/uploads/2011/07/remote_ftp.png" alt="" width="759" height="544" /></a></p>
<p>cPanel script to restore the account</p>
<p># nice -n 19 /scripts/restorepkg &#8211;skipres &lt;username&gt;</p>
<p>For the script to run, the backup should be in any of the following locations in the server :  /, /home, /home2, /home3, /misc, /net, /root, /usr, /usr/home, /var/lib/nfs/rpc_pipefs, /var/tmp, /web</p>
<p>This feature will restore full backups, cPanel backups and cPanel move files in one of the following formats:</p>
<p>cpmove-{USER}<br />
cpmove-{USER}.tar<br />
cpmove-{USER}.tar.gz<br />
USER.tar<br />
USER.tar.gz<br />
backup-{BACKUP-DATE_TIME}_{USER}.tar<br />
backup-{BACKUP-DATE_TIME}_{USER}.tar.gz</p>
<div class="tweetthis" style="text-align:left;"><p> <a  class="tt" href="http://twitter.com/home/?status=cPanel+Website+Transfer+-+Part+2+-+cPanel+to+cPanel+Migration+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F1870" title="Post to Twitter"><img class="nothumb" src="http://www.supportsages.com/blog/wp-content/plugins/tweet-this/icons/en/twitter/tt-twitter3.png" alt="Post to Twitter" /></a> <a  class="tt" href="http://twitter.com/home/?status=cPanel+Website+Transfer+-+Part+2+-+cPanel+to+cPanel+Migration+http%3A%2F%2Fwww.supportsages.com%2Fblog%2F1870" title="Post to Twitter">Tweet This Post</a></p></div>]]></content:encoded>
			<wfw:commentRss>http://www.supportsages.com/blog/2011/08/cpanel-website-transfer-part-2-cpanel-to-cpanel-migration/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

