<?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>A Technical Guy&#039;s Blog &#187; Solution</title>
	<atom:link href="http://www.technicalguy.org/category/solution/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.technicalguy.org</link>
	<description>Technical Stuff is boring but Technical Guy is funny</description>
	<lastBuildDate>Wed, 31 Mar 2010 14:49:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Chrome, don&#8217;t Browse</title>
		<link>http://www.technicalguy.org/2008/09/03/chrome-dont-browse/</link>
		<comments>http://www.technicalguy.org/2008/09/03/chrome-dont-browse/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 08:23:57 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Free Tools]]></category>
		<category><![CDATA[Fun]]></category>
		<category><![CDATA[Solution]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/09/03/chromed-dont-browse/</guid>
		<description><![CDATA[<img class='img-shadow' src="http://www.technicalguy.org/wp-content/uploads/2008/09/google-chrome.gif" alt="" />

<a href="http://tools.google.com/chrome/?hl=en-US">Google Chrome</a> is a browser that combines a minimal design with sophisticated technology to make the web faster, safer, and easier.]]></description>
			<content:encoded><![CDATA[<p><img class='img-shadow' src="http://www.technicalguy.org/wp-content/uploads/2008/09/google-chrome.gif" alt="" /></p>
<p><a href="http://tools.google.com/chrome/?hl=en-US">Google Chrome</a> is a browser that combines a minimal design with sophisticated technology to make the web faster, safer, and easier.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/09/03/chrome-dont-browse/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>ExpanDrive&#8217;s SFTP Client</title>
		<link>http://www.technicalguy.org/2008/08/30/expandrives-sftp-client/</link>
		<comments>http://www.technicalguy.org/2008/08/30/expandrives-sftp-client/#comments</comments>
		<pubDate>Fri, 29 Aug 2008 21:34:49 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Solution]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/?p=114</guid>
		<description><![CDATA[Map your SSH server as a Windows drive letter over SFTP with ExpanDrive.]]></description>
			<content:encoded><![CDATA[<p>Map your SSH server as a Windows drive letter over SFTP with ExpanDrive.</p>
<div id="attachment_115" class="wp-caption alignnone" style="width: 430px"><a href="http://www.technicalguy.org/wp-content/uploads/2009/05/expandrive.gif"><img src="http://www.technicalguy.org/wp-content/uploads/2009/05/expandrive.gif" alt="ExpanDrive acts just like a USB drive plugged into your PC" title="expandrive" width="420" height="180" class="size-full wp-image-115" /></a><p class="wp-caption-text">ExpanDrive acts just like a USB drive plugged into your PC</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/08/30/expandrives-sftp-client/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Idiot Proof Pendrive Mounting in Linux</title>
		<link>http://www.technicalguy.org/2008/08/27/idiot-proof-pendrive-mounting-in-linux/</link>
		<comments>http://www.technicalguy.org/2008/08/27/idiot-proof-pendrive-mounting-in-linux/#comments</comments>
		<pubDate>Wed, 27 Aug 2008 09:54:47 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Solution]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/?p=94</guid>
		<description><![CDATA[Ok, I admit, I just need a quicker way to mount my pendrive. My problem is, I always forget the correct command and it really takes a while to learn if the pendrive is sda or sdb or sdb1, etc. See, it is confusing :) 1. Copy a new file (test.txt) in your pendrive using [...]]]></description>
			<content:encoded><![CDATA[<p>Ok, I admit, I just need a quicker way to mount my pendrive. My problem is, I always forget the correct command and it really takes a while to learn if the pendrive is sda or sdb or sdb1, etc. See, it is confusing :)</p>
<p>1. Copy a new file (test.txt) in your pendrive using your Windows machine.</p>
<p>2. Insert the pendrive to your Linux machine.</p>
<p>3. Create a new folder /usb</p>
<p>4. Type mount -t vfat /dev/xxx /usb. The trick here is, xxx can be replaced by sda, sda1, sda2, sda2, sdb, sdb1, sdc, etc&#8230; </p>
<p>5. After successful mount, go to /usb and check if you can see the file test.txt. If you can see, it is the right mount. If not, use umount /dev/xxx and then you can try again. When umount, make sure you are not in /usb folder, otherwise it will show busy sign.</p>
<p>Good luck</p>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/08/27/idiot-proof-pendrive-mounting-in-linux/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Install Windows XP over Vista on Dell Vostro Notebook</title>
		<link>http://www.technicalguy.org/2008/08/10/install-windows-xp-over-vista-on-dell-vostro-notebook/</link>
		<comments>http://www.technicalguy.org/2008/08/10/install-windows-xp-over-vista-on-dell-vostro-notebook/#comments</comments>
		<pubDate>Sun, 10 Aug 2008 11:05:08 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Lesson]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[bootable]]></category>
		<category><![CDATA[slipstreaming]]></category>
		<category><![CDATA[vista]]></category>
		<category><![CDATA[xp]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/08/10/install-windows-xp-over-vista-on-dell-vostro-notebook/</guid>
		<description><![CDATA[Most recent Dell notebook comes with SATA harddrive and Windows Vista preloaded. For those who wish to install Windows XP over Vista, you might run into problems because your XP CD doesn't come with SATA driver support.

In other words, you will get an error message of disk can not found when booting your XP installation CD. To fix this, 

1. Copy ALL content in your Windows XP CD into your computer
2. Go to Dell Support to download SATA Driver for your notebook model (under Windows XP)
3. <a href="http://maxeasyguide.blogspot.com/2008/04/preparations-for-winxp-installation-cd.html">Follow this guide</a> to Slipstreaming SATA driver into XP bootable CD using nLite
4. nLite create the new image file burn into a bootable new XP CD with SATA support!]]></description>
			<content:encoded><![CDATA[<p>Most recent Dell notebook comes with SATA harddrive and Windows Vista preloaded. For those who wish to install Windows XP over Vista, you might run into problems because your XP CD doesn&#8217;t come with SATA driver support.</p>
<p>In other words, you will get an error message of disk can not found when booting your XP installation CD. To fix this, </p>
<p>1. Copy ALL content in your Windows XP CD into your computer<br />
2. Go to Dell Support to download SATA Driver for your notebook model (under Windows XP)<br />
3. <a href="http://maxeasyguide.blogspot.com/2008/04/preparations-for-winxp-installation-cd.html">Follow this guide</a> to Slipstreaming SATA driver into XP bootable CD using nLite<br />
4. nLite create the new image file burn into a bootable new XP CD with SATA support!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/08/10/install-windows-xp-over-vista-on-dell-vostro-notebook/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Best Web Hosting Company in Malaysia</title>
		<link>http://www.technicalguy.org/2008/08/07/best-web-hosting-company-in-malaysia/</link>
		<comments>http://www.technicalguy.org/2008/08/07/best-web-hosting-company-in-malaysia/#comments</comments>
		<pubDate>Thu, 07 Aug 2008 07:29:14 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Solution]]></category>
		<category><![CDATA[Web Hosting]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[budget]]></category>
		<category><![CDATA[Email]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[infra]]></category>
		<category><![CDATA[malaysia]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/08/07/best-web-hosting-company-in-malaysia/</guid>
		<description><![CDATA[I always believe running a web hosting business is not easy. You can have a Plesk system to manage your web hosting customers, but you can't easily filter out those customers who are abusing your web server, running malicious script that loop forever in your server...

Yet, price war makes business owner to believe that monthly web hosting fee should not be any expensive than buying a McD meal. You will be surprised that many online business owners are subscribing to cutting-throat web hosting package, while hoping their online business to grow as second Google.
<a href="http://www.technicalguy.org/2008/08/07/best-web-hosting-company-in-malaysia/#respond">
<strong>Share with us your hosting experience</strong></a>]]></description>
			<content:encoded><![CDATA[<p>I always believe running a web hosting business is not easy. You can have a Plesk system to manage your web hosting customers, but you can&#8217;t easily filter out those customers who are abusing your web server, running malicious script that loop forever in your server&#8230;</p>
<p>Yet, price war makes business owner to believe that monthly web hosting fee should not be any expensive than buying a McD meal. You will be surprised that many online business owners are subscribing to cutting-throat web hosting package, while hoping their online business to grow as second Google.<br />
<a href="http://www.technicalguy.org/2008/08/07/best-web-hosting-company-in-malaysia/#respond"><br />
<strong>Share with us your hosting experience</strong></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/08/07/best-web-hosting-company-in-malaysia/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>The Unofficial Streamyx FAQ</title>
		<link>http://www.technicalguy.org/2008/07/26/the-unofficial-streamyx-faq/</link>
		<comments>http://www.technicalguy.org/2008/07/26/the-unofficial-streamyx-faq/#comments</comments>
		<pubDate>Fri, 25 Jul 2008 16:35:09 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Network]]></category>
		<category><![CDATA[Solution]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/07/26/the-unofficial-streamyx-faq/</guid>
		<description><![CDATA[One thing I've noticed over the months, it seems that keywords relating to 'streamyx' are relatively popular, especially on network setup, fixed IP, Streamyx DNS, etc. I've been using Streamyx when it first launched.

This is definitely not another pay-per-post article, or a replacement of FAQ to Streamyx official website. I wish my little share can help.

<strong>Advantage of signing up fixed IP package</strong>
Streamyx offers their broadband packages in fixed or dynamic IP package. Fixed one is generally more expensive even with same bandwidth. If you run some file server or VPN and would like to allow outside access, you might need this. One good thing is, my office subscribed to fixed IP package for roughtly more than 5 years and the IP address never changed. If you are looking for how to setup the ADSL Modem for Streamyx Fixed IP Package, <a href="http://www.technicalguy.org/2008/09/05/adsl-modem-setup-for-streamyx-with-fixed-ip/">check this out</a>.

<strong>What is the DNS of Streamyx</strong>
Most people search for the DNS of Streamyx. I guess this is because you want to key in into your Router and make resolving faster. Check this out, TM's primary nameserver (202.188.0.133) and secondary nameserver (202.188.1.5). If you need alternate nameserver of other network provider, or as the third and forth DNS in your router, or for some reason your TM's DNS servers are down - <a href="http://www.emailhosting.com.my/2008/01/24/domain-name-resolving-problem/">check this out</a>.

<strong>How to check Streamyx Email?</strong>
When you sign up with Streamyx, you get an email automatically. Through we don't suggest you to use it, simply because it is not reliable and has serious Spam problem. If you need a email solution for your business, <a href="http://www.emailhosting.com.my/2007/12/25/uptime-report-of-various-email-hosting-companies-in-malaysia/">check this out</a>. If you just need a Free email for your own personal use, sign up one from <a href="http://www.gmail.com">Gmail</a>. Still, the quickest way to retrieve your Streamyx email is to go to <a href="http://webmail.tm.net.my">webmail.tm.net.my</a>, enter your username (xxxx@streamyx.com) and password. If you want to setup your email in your email clients, both the incoming and outgoing mail servers are pop.streamyx.com and smtp.streamyx.com respectively. I couldn't find Lost Password in <a href="http://www.streamyx.com.my/customer_care/customer_care.php?id=customer_care_faq">Streamyx FAQ</a>. If you lost your password, please call Streamyx directly.

<strong>I can't send out my email?</strong>
Streamyx is blocking all SMTP server in its network except their own, which is smtp-proxy.tm.net.my. In <a href="http://www.emailhosting.com.my/2008/03/18/inconsiderate-streamyx/">TM's press release</a>, it is a measure to fight Spam <strike>filter our messages</strike>. This has created lot of email problem, <a href="http://www.emailhosting.com.my/2008/05/12/tms-smtp-nightmare/">check this out</a>.

<strong>What can I do when my broadband is down?</strong>
Most of the time, you can fix the problem by restarting your router. Ask your neighbour, if the whole area is out of service, chances nothing wrong to your router. You can lodge a report with Streamyx, write down the case number and you can request for a refund/compensation to the downtime. I tried, it works. The rebate some in your next month bill.

<strong>How to setup Router?</strong>
Nowadays, you get a free Router with build in modem. If you have only one PC and you are fine without wireless, chances that you just need to plug and play and setup should be pretty easy. But, most of the time, this is not the case. Many of you prefer a wireless environment. Remember to buy wireless router with build in modem, so that you don't have to use the one comes with TM. But, if your router doesn't come with build in modem, then you will need to connect your router to TM's modem. In this case, remember to disable the router capability in your TM's modem, this is crucial to your Streamyx network setup.

<a href="http://www.technicalguy.org/2008/09/05/adsl-modem-setup-for-streamyx-with-fixed-ip/"><strong>ADSL Modem Setup for Streamyx with Fixed IP</strong></a>
]]></description>
			<content:encoded><![CDATA[<p>One thing I&#8217;ve noticed over the months, it seems that keywords relating to &#8216;streamyx&#8217; are relatively popular, especially on network setup, fixed IP, Streamyx DNS, etc. I&#8217;ve been using Streamyx when it first launched.</p>
<p>This is definitely not another pay-per-post article, or a replacement of FAQ to Streamyx official website. I wish my little share can help.</p>
<p><strong>Advantage of signing up fixed IP package</strong><br />
Streamyx offers their broadband packages in fixed or dynamic IP package. Fixed one is generally more expensive even with same bandwidth. If you run some file server or VPN and would like to allow outside access, you might need this. One good thing is, my office subscribed to fixed IP package for roughtly more than 5 years and the IP address never changed. If you are looking for how to setup the ADSL Modem for Streamyx Fixed IP Package, <a href="http://www.technicalguy.org/2008/09/05/adsl-modem-setup-for-streamyx-with-fixed-ip/">check this out</a>.</p>
<p><strong>What is the DNS of Streamyx</strong><br />
Most people search for the DNS of Streamyx. I guess this is because you want to key in into your Router and make resolving faster. Check this out, TM&#8217;s primary nameserver (202.188.0.133) and secondary nameserver (202.188.1.5). If you need alternate nameserver of other network provider, or as the third and forth DNS in your router, or for some reason your TM&#8217;s DNS servers are down &#8211; <a href="http://www.emailhosting.com.my/2008/01/24/domain-name-resolving-problem/">check this out</a>.</p>
<p><strong>How to check Streamyx Email?</strong><br />
When you sign up with Streamyx, you get an email automatically. Through we don&#8217;t suggest you to use it, simply because it is not reliable and has serious Spam problem. If you need a email solution for your business, <a href="http://www.emailhosting.com.my/2007/12/25/uptime-report-of-various-email-hosting-companies-in-malaysia/">check this out</a>. If you just need a Free email for your own personal use, sign up one from <a href="http://www.gmail.com">Gmail</a>. Still, the quickest way to retrieve your Streamyx email is to go to <a href="http://webmail.tm.net.my">webmail.tm.net.my</a>, enter your username (xxxx@streamyx.com) and password. If you want to setup your email in your email clients, both the incoming and outgoing mail servers are pop.streamyx.com and smtp.streamyx.com respectively. I couldn&#8217;t find Lost Password in <a href="http://www.streamyx.com.my/customer_care/customer_care.php?id=customer_care_faq">Streamyx FAQ</a>. If you lost your password, please call Streamyx directly.</p>
<p><strong>I can&#8217;t send out my email?</strong><br />
Streamyx is blocking all SMTP server in its network except their own, which is smtp-proxy.tm.net.my. In <a href="http://www.emailhosting.com.my/2008/03/18/inconsiderate-streamyx/">TM&#8217;s press release</a>, it is a measure to fight Spam <strike>filter our messages</strike>. This has created lot of email problem, <a href="http://www.emailhosting.com.my/2008/05/12/tms-smtp-nightmare/">check this out</a>.</p>
<p><strong>What can I do when my broadband is down?</strong><br />
Most of the time, you can fix the problem by restarting your router. Ask your neighbour, if the whole area is out of service, chances nothing wrong to your router. You can lodge a report with Streamyx, write down the case number and you can request for a refund/compensation to the downtime. I tried, it works. The rebate some in your next month bill.</p>
<p><strong>How to setup Router?</strong><br />
Nowadays, you get a free Router with build in modem. If you have only one PC and you are fine without wireless, chances that you just need to plug and play and setup should be pretty easy. But, most of the time, this is not the case. Many of you prefer a wireless environment. Remember to buy wireless router with build in modem, so that you don&#8217;t have to use the one comes with TM. But, if your router doesn&#8217;t come with build in modem, then you will need to connect your router to TM&#8217;s modem. In this case, remember to disable the router capability in your TM&#8217;s modem, this is crucial to your Streamyx network setup.</p>
<p><a href="http://www.technicalguy.org/2008/09/05/adsl-modem-setup-for-streamyx-with-fixed-ip/"><strong>ADSL Modem Setup for Streamyx with Fixed IP</strong></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/07/26/the-unofficial-streamyx-faq/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>List Of Linux Server Commands</title>
		<link>http://www.technicalguy.org/2008/02/14/list-of-linux-server-commands/</link>
		<comments>http://www.technicalguy.org/2008/02/14/list-of-linux-server-commands/#comments</comments>
		<pubDate>Thu, 14 Feb 2008 01:35:39 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Lesson]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[Web Hosting]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/02/14/list-of-linux-server-commands/</guid>
		<description><![CDATA[List of Commands Add New User /usr/sbin/groupadd &#60;groupname&#62; /usr/sbin/useradd &#60;username&#62; –g &#60;groupname&#62; chown &#60;username&#62;.&#60;groupname&#62; /path/to/usernamefolder chmod 755 /path/to/usernamefolder Set User Password passwd &#60;yourusername&#62; &#60;enter new password&#62; &#60;enter again new password&#62; Check RPM Status rpm –q &#60;rpmname&#62; Eg. rpm –q imap Extract a .tar File tar –zxvf &#60;filename&#62; Manual on a Specific Command man &#60;command&#62; Eg. [...]]]></description>
			<content:encoded><![CDATA[<h2>
<p>List of Commands</p>
</h2>
<h3>
<p>Add New User</p>
</h3>
<blockquote><p>/usr/sbin/groupadd &lt;groupname&gt;<br />
/usr/sbin/useradd &lt;username&gt; –g &lt;groupname&gt;<br />
chown &lt;username&gt;.&lt;groupname&gt; /path/to/usernamefolder<br />
chmod 755 /path/to/usernamefolder</p></blockquote>
<h3>
<p>Set User Password</p>
</h3>
<blockquote><p>passwd &lt;yourusername&gt;<br />
&lt;enter new password&gt;<br />
&lt;enter again new password&gt;
</p></blockquote>
<h3>
<p>Check RPM Status</p>
</h3>
<blockquote><p>rpm –q &lt;rpmname&gt;<br />
Eg. rpm –q imap
</p></blockquote>
<h3>
<p>Extract a .tar File</p>
</h3>
<blockquote><p>tar –zxvf &lt;filename&gt;</p></blockquote>
<h3>
<p>Manual on a Specific Command</p>
</h3>
<blockquote><p>man &lt;command&gt;<br />
Eg. man sendmail</p></blockquote>
<h3>
<p>End a Session</p>
</h3>
<blockquote><p>Ctrl + Z</p></blockquote>
<h3>
<p>./&lt;command&gt;</p>
</h3>
<blockquote><p>[root@kuittho /usr]# ./edquota<br />
Specifies that the command edquota is located inside current folder /usr.</p></blockquote>
<h3>
<p>View Current Date</p>
</h3>
<blockquote><p>date</p></blockquote>
<h3>
<p>View Who’s Using Computer</p>
</h3>
<blockquote><p>who</p></blockquote>
<h3>
<p>List Name of Files in Current Directory</p>
</h3>
<blockquote><p>ls -la</p></blockquote>
<h3>
<p>Create Text File</p>
</h3>
<blockquote><p>touch &lt;name&gt;</p></blockquote>
<h3>
<p>View File Content</p>
</h3>
<blockquote><p>cat &lt;filename&gt;</p></blockquote>
<h3>
<p>Move or Rename File/Directory</p>
</h3>
<blockquote><p>mv &lt;filename1&gt; &lt;filename2&gt;</p></blockquote>
<h3>
<p>Symlink</p>
</h3>
<blockquote><p>ln –s &lt;originalfilename&gt; &lt;newshortcutname&gt;</p></blockquote>
<h3>
<p>Remove File</p>
</h3>
<blockquote><p>rm &lt;filename&gt;</p></blockquote>
<h3>
<p>Read Mail</p>
</h3>
<blockquote><p>mail</p></blockquote>
<h3>
<p>View Current User</p>
</h3>
<blockquote><p>who am i</p></blockquote>
<h3>
<p>Send Mail</p>
</h3>
<blockquote><p>mail &lt;emailaddress&gt;<br />
subject &lt;subject&gt;<br />
&lt;message&gt;<br />
cc. &lt;ccemailaddress&gt;</p>
<p>To end your message, go to new line and type . and &lt;enter&gt;</p></blockquote>
<h3>
<p>Sort File</p>
</h3>
<blockquote><p>sort &lt;filename&gt;</p></blockquote>
<h3>
<p>Show User Group</p>
</h3>
<blockquote><p>groups &lt;username&gt;</p></blockquote>
<h3>
<p>Change User Information</p>
</h3>
<blockquote><p>chfn</p></blockquote>
<h3>
<p>List the Content of a tar File</p>
</h3>
<blockquote><p>tar -tvf &lt;filename&gt;</p></blockquote>
<h3>
<p>Switch to Root User</p>
</h3>
<blockquote><p>su root</p></blockquote>
<h3>
<p>Make Directory</p>
</h3>
<blockquote><p>mkdir &lt;directoryname&gt;</p></blockquote>
<h3>
<p>Restart Server</p>
</h3>
<blockquote><p>/sbin/shutdown –r now</p></blockquote>
<h3>
<p>Shutdown Server</p>
</h3>
<blockquote><p>/sbin/shutdown –h now</p></blockquote>
<h3>
<p>Uptime</p>
</h3>
<blockquote><p>Uptime</p></blockquote>
<h3>
<p>Show Ports Information</p>
</h3>
<blockquote><p>lsof -i</p></blockquote>
<h3>
<p>Exit from Current Shell</p>
</h3>
<blockquote><p>Ctrl + D</p></blockquote>
<h3>
<p>Start X-Window System</p>
</h3>
<blockquote><p>startx</p></blockquote>
<h3>
<p>Edit file with VI Editor</p>
</h3>
<blockquote><p>vi &lt;filename&gt;</p></blockquote>
<h3>
<p>Copy File</p>
</h3>
<blockquote><p>cp &lt;filename&gt; &lt;targetfolder&gt;</p></blockquote>
<h3>
<p>$bash or [user@host /directory]$</p>
</h3>
<blockquote><p>If you have no home directory on a shell, your regular login will look like:<br />
bash$, or else, it should look like: [user@host /directory]$</p></blockquote>
<h3>
<p>Boot Linux in Single Mode </p>
</h3>
<blockquote><p>During Linux booting, press Ctrl + X to switch into Text mode.<br />
LILO bot: linux single</p></blockquote>
<h3>
<p>Remove Whole Directory</p>
</h3>
<blockquote><p>rm –rf<br />
** This command remove all sub-directories and contens within!</p></blockquote>
<h3>
<p>Operating System Information</p>
</h3>
<blockquote><p>uname -a</p></blockquote>
<h3>
<p>Install RPM</p>
</h3>
<blockquote><p>rpm –Uvh &lt;rpmname&gt;</p></blockquote>
<h3>
<p>Uninstall RPM</p>
</h3>
<blockquote><p>rpm –e &lt;rpmname&gt; , find rpm name using rpm –q  &lt;rpmname&gt;</p></blockquote>
<h3>
<p>Disk Usage</p>
</h3>
<pre>
<blockquote>du –sh /var/log /home

3.5M 		/var/log
500M		/home

du –sh *</blockquote>
</pre>
<h3>
<p>File System Usage</p>
</h3>
<blockquote><p>df</p></blockquote>
<h3>
<p>Process Status</p>
</h3>
<blockquote><p>ps ax , process status of all processes for all users and system</p></blockquote>
<h3>
<p>Top Process</p>
</h3>
<blockquote><p>top , this command display a full screen of top processes.</p></blockquote>
<h3>
<p>System Info</p>
</h3>
<blockquote><p>procinfo</p>
<p>Full information about Last Boot time, Load Average, average number of jobs running, number of runnable processes, total number of processes, PID of the last process run (idem), Swap info, Memory resources, Number of disks, IRQ info, Installed modules (with the -a or -m option) and File Systems (with the -a or -m option)</p></blockquote>
<h3>
<p>Add .htpasswd</p>
</h3>
<blockquote><p>/usr/local/apache/bin/htpasswd –c &lt;directory&gt;/.htpasswd &lt;login_name&gt;<br />
Enter password: &lt;your_password_here&gt;<br />
Noted: Add –c if you are creating the .htpasswd file</p></blockquote>
<h3>
<p>| more</p>
</h3>
<blockquote><p>ls | more<br />
ls | less</p></blockquote>
<h3>
<p>Mount CD-ROM</p>
</h3>
<blockquote><p>mount /dev/cdrom<br />
cd /mnt/cdrom</p></blockquote>
<h3>
<p>Unmount CD-ROM</p>
</h3>
<blockquote><p>umount /dev/cdrom</p></blockquote>
<h3>
<p>SUID Root</p>
</h3>
<blockquote><p>Allows the program to run as root<br />
chmod u+s &lt;filename&gt;</p></blockquote>
<h3>
<p>wget</p>
</h3>
<blockquote><p>wget –P /usr/src http://www.linux.com/filename.tar.gz</p>
<p>Wget Directory<br />
wget –P &lt;save-to-directory&gt; -r \ ftp://&lt;username&gt;:&lt;password&gt;@host;type=&lt;type&gt;</p>
<p>&lt;type&gt; : a-ASCii I-Binary</p>
<p>Wget File<br />
wget –P &lt;save-to-directory&gt; \ ftp://&lt;username&gt;:&lt;password&gt;@host/filename;type=&lt;type&gt;</p>
<p>&lt;type&gt; : a-ASCii I-Binary</p></blockquote>
<h3>
<p>Show Installed Perl Module Path</p>
</h3>
<blockquote><p>su &lt;user_other_than_root&gt;<br />
perldoc –l Gnokii::GSM</p></blockquote>
<h3>
<p>Set Date and Time</p>
</h3>
<blockquote><p>To set the system clock<br />
date MMDDTTTTYY</p>
<p>Eg. date 1203133002<br />
sets the date to Dec 3 2002 and 1.30pm</p>
<p>To set the hardware clock to the current system clock<br />
hwclock &#8211;systohc</p></blockquote>
<h3>
<p>Show Perl Module Directory</p>
</h3>
<blockquote><p>perl –le “print foreach @INC”</p></blockquote>
<h3>
<p>Yank Command in VI Editor</p>
</h3>
<blockquote><p><strong>Marking a line</strong></p>
<p>Type the letter &#8220;m&#8221; and any other letter to mark the start of line.<br />
Eg. mt</p>
<p><strong>Capture lines into the buffer</strong></p>
<p>Yanks a single line (defined by current cursor position):<br />
yy</p>
<p>Yanks from current cursor position to the line marked &#8220;t&#8221;<br />
y’t</p>
<p><strong>Paste yanked lines</strong><br />
p</p></blockquote>
<h3>
<p>Create tar File</p>
</h3>
<blockquote><p>tar options ‘Preserve attribute’ is enabled by default for root user.<br />
tar –cf &lt;output filename&gt; &lt;target file or directory&gt;</p></blockquote>
<h3>
<p>Extract Files from a tar File</p>
</h3>
<blockquote><p>tar xf &lt;tar file&gt; &lt;target file&gt;, where target file (eg. tmp/mysql.sql) can be found by listing the content in a tar file using tar tf &lt;tar file&gt;</p></blockquote>
<h3>
<p>Email Lock Problem</p>
</h3>
<blockquote><p><strong>/var/spool/mail/&lt;username&gt;</strong> and remove <strong>.&lt;username&gt;.pop</strong></p></blockquote>
<h3>
<p>Extract Gunzip file</p>
</h3>
<blockquote><p>To extract a file compressed with gunzip, type the following:<br />
gunzip filename_tar.gz </p>
<p>then if you receive no errors, type:<br />
tar xvf filename_tar</p></blockquote>
<h3>
<p>Change the time zone at system</p>
</h3>
<blockquote><p>timeconfig </p>
<p>Select timezone for the system:<br />
Example:<br />
Asia/Kuala Lumpur<br />
[ ] System clock uses UTC (Universal Coordinated Time)<br />
OK</p></blockquote>
<h3>
<p>MySQL Import</p>
</h3>
<blockquote><p>mysql -u &lt;&lt;username&gt;&gt; -p&lt;&lt;password&gt;&gt; &lt;&lt;database_name&gt;&gt; &lt;&lt;directory_of_file.sql&gt;&gt;<br />
Example:<br />
mysql -u root -ppassword sample &lt; /tmp/sample.sql</p></blockquote>
<h3>
<p>MySQL Export</p>
</h3>
<blockquote><p>mysqldump -u &lt;&lt;username&gt;&gt; -p -A &gt; &lt;&lt;directory_of_file.sql&gt;&gt;<br />
Example:<br />
mysqldump -u root -p -A &gt; /tmp/alldb.sql</p></blockquote>
<h3>
<p>Cron – Ignore all Stdout message of PHP</p>
</h3>
<blockquote><p>0 0 * * * /usr/bin/php /home/dbmst/web/cron/delete.php &gt; /dev/null<br />
Command:<br />
<strong>&gt; /dev/null</strong></p></blockquote>
<h3>
<p>Cron – Ignore all Stdout and Stderr message of PHP</p>
</h3>
<blockquote><p>0 0 * * * /usr/bin/php /home/dbmst/web/cron/delete.php &gt; /dev/null 2&gt;&#038;1<br />
Command:<br />
<strong>&gt; /dev/null 2&gt;&#038;1</strong></p></blockquote>
<h3>
<p>wc &#8211; Count the number of lines or characters</p>
</h3>
<blockquote><p>Example: Lists the number of files and directories in the directory &#8216;etc&#8217;<br />
<strong>ls /etc | wc -l</strong></p>
<p>Example: Lists the number of lines, words and characters in the file &#8216;sendmail.cf&#8217;<br />
<strong>wc /etc/sendmail.cf</strong></p></blockquote>
<h3>
<p>wc &#8211; Count the number of files in a directory</p>
</h3>
<blockquote><p>Example: Lists the number of files in the directory &#8216;etc&#8217;<br />
<strong>ls /etc | wc -w</strong></p>
<p>Example: to count the number of files in a directory and print the result in a nice message.<br />
Here is the command (Use the ` symbol to surround commands within commands):<br />
<strong>echo &#8220;you have `ls | wc -w` files in this directory&#8221;</strong></p></blockquote>
<h3>
<p>cat &#8211; concatenate files</p>
</h3>
<blockquote><p>Example: Create a file named myfile and allow you to enter contents.<br />
<strong>cat&gt;myfile</strong><br />
Press <strong>Control-D</strong> to exit entry mode<br />
WARNING: If &#8220;myfile&#8221; already existed, this command would replace the old file with the contents of the new file.</p></blockquote>
<h3>
<p>Server Release Version</p>
</h3>
<blockquote><p>cat /etc/redhat-release</p></blockquote>
<h3>
<p>CPU Model</p>
</h3>
<blockquote><p>grep &#8220;model name&#8221; /proc/cpuinfo</p></blockquote>
<h3>
<p>Ram Size</p>
</h3>
<blockquote><p>grep MemTotal /proc/meminfo</p></blockquote>
<h3>
<p>Hard Drive Size</p>
</h3>
<blockquote><p>fdisk -l</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/02/14/list-of-linux-server-commands/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Configuring Virtual Server As Zope Server</title>
		<link>http://www.technicalguy.org/2008/02/14/configuring-virtual-server-as-zope-server/</link>
		<comments>http://www.technicalguy.org/2008/02/14/configuring-virtual-server-as-zope-server/#comments</comments>
		<pubDate>Thu, 14 Feb 2008 01:34:27 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Lesson]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[Web Hosting]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/02/14/configuring-virtual-server-as-zope-server/</guid>
		<description><![CDATA[Configure Virtual Server as Zope Server Download current version of Python (2.3.5 or later) from http://www.python.org/download/. wget –P /usr/src/ http://www.python.org/ftp/python/version/Python-version.tgz Unpack and install current version of Python (2.3.5 or later). Using the instructions in README.txt. tar –zxvf /usr/src/Python-version.tgz cd /usr/src/Python-version ./configure make make install Download current version of Zope (2.7.8 or later) from http://www.zope.org/Products. wget [...]]]></description>
			<content:encoded><![CDATA[<h2>
<p>Configure Virtual Server as Zope Server</p>
</h2>
<ol>
<li>
<p>Download current version of Python (2.3.5 or later) from <a href="http://www.python.org/download/">http://www.python.org/download/</a>.</p>
<p><strong>wget –P /usr/src/ http://www.python.org/ftp/python/version/Python-version.tgz</strong></p>
</li>
<li>
<p>Unpack and install current version of Python (2.3.5 or later). Using the instructions in README.txt.</p>
<p><strong>tar –zxvf /usr/src/Python-version.tgz</p>
<p>cd /usr/src/Python-version<br />
./configure<br />
make<br />
make install</strong></p>
</li>
<li>
<p>Download current version of Zope (2.7.8 or later) from  http://www.zope.org/Products.</p>
<p><strong>wget –P /usr/src/ http://www.zope.org/Products/Zope/version/Zope-version-final.tgz</strong></p>
</li>
<li>
<p>Download current version of Zope (2.7.8 or later). Using the instructions in INSTALL.txt.</p>
<p><strong>tar –zxvf /usr/src/Zope-version-final.tgz<br />
cd /usr/src/Zope-version<br />
./configure –-prefix=/usr/local/zope<br />
make<br />
make install</strong></p>
</li>
<li>
<p>Create a Zope instance home<br />
<strong>/usr/local/zope/bin/mkzopeinstance.py</strong></p>
</li>
<li>
<p>Insert zope instance home<br />
Directory: <strong>/usr/local/zope/home</strong><br />
Username: &lt;Zope admin&gt;<br />
Password: &lt;password&gt;<br />
Verify Password: &lt;password&gt;</p>
</li>
<li>
<p>Open Zope port 8080 in firewall<br />
<strong>vi /etc/sysconfig/iptables</strong><br />
<blockquote>-A RH-Firewall-1-INPUT -m state &#8211;state NEW -m tcp -p tcp &#8211;dport 8080 -j ACCEPT</p></blockquote>
<p>Restart Iptables<br />
<strong>/etc/rc.d/init.d/iptables restart</strong></p>
</li>
<li>
<p>Apache Configuration<br />
<strong>vi /etc/httpd/conf/httpd.conf</strong>
<pre>
<blockquote>&lt;VirtualHost *:80&gt;

        ServerName intranet.otokoyok.ywso.com

        ServerAdmin support@1.com.my
        ServerSignature On

        &lt;IfModule mod_rewrite.c&gt;
        RewriteEngine On

        RewriteRule ^/(.*)
\http://intranet.otokoyok.ywso.com:8080/VirtualHostBase/http/intranet.ot
okoyok.ywso.com:80/Weso/VirtualHostRoot/$1 [L,P]
        &lt;/IfModule&gt;
&lt;/VirtualHost&gt;</blockquote>
</pre>
</li>
<li>
<p>Add group and user for Zope application server<br />
<strong>groupadd zope<br />
useradd zope –M –g zope<br />
chown –R zope.zope /usr/local/zope</strong></p>
</li>
<li>
<p>Update Zope configuration file<br />
<strong>vi /usr/local/zope/home/etc/zope.conf</strong></p>
<p>Change <strong>effective-user</strong> to <strong>zope</strong><br />
Eg: effective-user zope</p>
</li>
<li>
<p>Update run level script for Zope server</p>
<p><strong>cd /etc/init.d<br />
ln –s /usr/local/zope/home/bin/zopectl zope<br />
cd /etc/rc.d/rc3.d<br />
ln –s /etc/rc.d/init.d/zope S99zope<br />
cd /etc/rc.d/rc5.d<br />
ln –s /etc/rc.d/init.d/zope S99zope</strong></p>
<p>Restart server with <strong>shutdown –r now</strong></p>
</li>
<li>
<p>Download current version of Plone ( or later) from</p>
<p>http://www.plone.org/download</p>
<p><strong>wget –P /usr/src/ &lt;download page URL&gt;</strong></p>
</li>
<li>
<p>Unpack and install current version of Python (2.3.5 or later). Using the instructions in README.txt.</p>
<p><strong>tar –zxvf /usr/src/Plone-version.tgz<br />
mv /usr/src/Plone-version/* /usr/local/zope/home/Products/</strong><br />
Restart Zope via Zope Management Interface(ZMI)<br />
http://&lt;&lt;your_host_name&gt;&gt;:8080/manage and login with your Zope ID and Password. At the main interface, please go to <strong>Control Panel &gt; Restart</strong></p>
</li>
<li>
<p>Add a Plone site from ZMI</p>
<p>Click <strong>Root Folder -&gt;</strong> Select type to add  <strong>Plone Site -&gt;</strong>click <strong>Add</strong><br />
Insert <strong>Id -&gt;</strong> click <strong>Add Plone Site</strong><br />
Restart Zope via ZMI</p>
</li>
<li>
<p>Login to the new Plone site with <strong>http://&lt;&lt;your_host_name&gt;&gt;:8080/&lt;&lt;your_plone_site_id&gt;&gt;</strong></p>
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/02/14/configuring-virtual-server-as-zope-server/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Configuring Virtual Server As Mailman Server</title>
		<link>http://www.technicalguy.org/2008/02/14/configuring-virtual-server-as-mailman-server/</link>
		<comments>http://www.technicalguy.org/2008/02/14/configuring-virtual-server-as-mailman-server/#comments</comments>
		<pubDate>Thu, 14 Feb 2008 01:34:02 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Lesson]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[Web Hosting]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/02/14/configuring-virtual-server-as-mailman-server/</guid>
		<description><![CDATA[Configure Virtual Server as Mailman Server Check if python is installed rpm -qa &#124; grep –I python tar –zxvf mailman-version.tgz Add Mailman group and user groupadd mailman useradd -c &#8220;GNU Mailman&#8221; -s /sbin/nologin -M -g mailman mailman Create mailman folder in default prefix /usr/local/mailman mkdir /usr/local/mailman cd /usr/local/mailman/ chgrp mailman . chmod a+rx,g+ws . Install [...]]]></description>
			<content:encoded><![CDATA[<h2>
<p>Configure Virtual Server as Mailman Server</p>
</h2>
<ol>
<li>
<p>Check if python is installed<br />
<strong>rpm -qa | grep –I python</strong></p>
</li>
<li>
<p><strong>tar –zxvf mailman-version.tgz</strong></p>
</li>
<li>
<p>Add Mailman group and user<br />
<strong>groupadd mailman<br />
useradd -c &#8220;GNU Mailman&#8221; -s /sbin/nologin -M -g mailman mailman</strong></p>
</li>
<li>
<p>Create mailman folder in default prefix /usr/local/mailman<br />
<strong>mkdir /usr/local/mailman<br />
cd /usr/local/mailman/<br />
chgrp mailman .<br />
chmod a+rx,g+ws .</strong></p>
</li>
<li>
<p>Install Mailman from /usr/src/mailman-version<br />
<strong>./configure &#8211;with-mail-gid=mail &#8211;with-cgi-gid=apache<br />
make<br />
make install</strong></p>
</li>
<li>
<p>Check and fix any permission error<br />
Check file permission, <strong>/usr/local/mailman/bin/check_perms</strong><br />
Fix file permission error, <strong>/usr/local/mailman/bin/check_perms –f</strong></p>
</li>
<li>
<p>Add the following line in httpd.conf and restart httpd<br />
<blockquote>&lt;IfModule mod_alias.c&gt;<br />
   ScriptAlias /mailman/ &#8220;/usr/local/mailman/cgi-bin/&#8221;<br />
   Alias /pipermail/ /usr/local/mailman/archives/public/<br />
&lt;/IfModule&gt;</p>
<p>NameVirtualHost *:80</p>
<p>&lt;VirtualHost *:80&gt;</p>
<p>        ServerName mailman.ywso.com</p>
<p>        ServerAdmin support@1.com.my<br />
        DocumentRoot &#8220;/home/admin/web&#8221;<br />
        ErrorLog /etc/httpd/logs/admin_error_log<br />
        CustomLog /etc/httpd/logs/admin_access_log combined<br />
	  &#8230;</p></blockquote>
</li>
<li>
<p><strong>vi /usr/local/mailman/Mailman/mm_cfg.py</strong><br />
<blockquote>IMAGE_LOGOS = 0<br />
SMTP_MAX_RCPTS = 0</p></blockquote>
</li>
<li>
<p>Create a symbolic link to Mailman&#8217;s wrapper program<br />
<strong>cd /etc/smrsh<br />
ln -s /usr/local/mailman/mail/mailman mailman</strong></p>
</li>
<li>
<p>Start the Mailman qrunner<br />
<strong>cp scripts/mailman /etc/init.d/mailman<br />
chkconfig &#8211;add mailman<br />
bin/mailmanctl start</strong></p>
</li>
<li>
<p>Create a site password<br />
<strong>/usr/local/mailman/bin/mmsitepass &lt;your-site-password&gt;</strong></p>
</li>
<li>
<p>Create a list creator password<br />
<strong>/usr/local/mailman/bin/mmsitepass -c &lt;list-creator-password&gt;</strong></p>
</li>
<li>
<p>Setup the following cron tasks from cron/crontab.in<br />
<blockquote># At 8AM every day, mail reminders to admins as to pending requests.<br />
# They are less likely to ignore these reminders if they&#8217;re mailed<br />
# early in the morning, but of course, this is local time&#8230; ;)<br />
<strong>0 8 * * * /usr/bin/python -S /usr/local/mailman/cron/checkdbs</strong><br />
#<br />
# At 9AM, send notifications to disabled members that are due to be<br />
# reminded to re-enable their accounts.<br />
<strong>0 9 * * * /usr/bin/python -S /usr/local/mailman/cron/disabled</strong><br />
#<br />
# Noon, mail digests for lists that do periodic as well as threshhold delivery.<br />
<strong>0 12 * * * /usr/bin/python -S /usr/local/mailman/cron/senddigests</strong><br />
#<br />
# 5 AM on the first of each month, mail out password reminders.<br />
<strong>0 5 1 * * /usr/bin/python -S /usr/local/mailman/cron/mailpasswds</strong><br />
#<br />
# Every 5 mins, try to gate news to mail.  You can comment this one out<br />
# if you don&#8217;t want to allow gating, or don&#8217;t have any going on right now,<br />
# or want to exclusively use a callback strategy instead of polling.<br />
<strong>0,5,10,15,20,25,30,35,40,45,50,55 * * * * /usr/bin/python -S /usr/local/mailman/cron/gate_news</strong><br />
#<br />
# At 3:27am every night, regenerate the gzip&#8217;d archive file.  Only<br />
# turn this on if the internal archiver is used and<br />
# GZIP_ARCHIVE_TXT_FILES is false in mm_cfg.py<br />
<strong>27 3 * * * /usr/bin/python -S /usr/local/mailman/cron/nightly_gzip</strong></p></blockquote>
</li>
<li>
<p>Create the first mailing list <strong>mailman</strong> as side-wide mailing list.</p>
<p>If you want the email hostname to be different from the one looked up by the DEFAULT_EMAIL_HOST and DEFAULT_URL_HOST, you can specify them with newlist command in /usr/local/mailman/bin, </p>
<p><strong>bin/newlist &#8211;urlhost=www.mydom.ain &#8211;emailhost=mydom.ain mailman</strong></p>
<p>Eg,<br />
Website Solution (http://www.1.com.my) would like to setup a mailing list to send out offers to all clients. The mailing list is hosted in a mailman server (mailman.ywso.com).</p>
<p>Administrator at Website Solution would like to have the From field of all outgoing email to represent their company domain, so we choose mailing.1.com.my. The mailing list info and administration page can be accessible from http://mailing.1.com.my/mailman/…</p>
<ol>
<li style="list-style-type : lower-alpha;">
<p>Create A record for mailing.1.com.my that points to mailman server IP.</p>
</li>
<li style="list-style-type : lower-alpha;">
<p>Create MX record for mailing.1.com.my, most mail servers do not deliver email to hostname without valid MX record.</p>
</li>
<li style="list-style-type : lower-alpha;">
<p>Add mailing.1.com.my to /etc/mail/local-host-names if emailhost is different from the hostname of the mailman server. </p>
</li>
<li style="list-style-type : lower-alpha;">
<p>You will need to update /etc/aliases to include new aliases for all newly created mailing list. Run newaliases to update sendmail aliases database.</p>
</li>
</ol>
<p>To remove a list, use command <strong>bin/rmlist –a &lt;newlist&gt;</strong></p>
<p>You will want to run the <strong>bin/fix_url.py</strong> to change the domain of any existing lists.</p>
</li>
<li>
<p>There is a convenient template for a generic site list in the installation directory, under data/sitelist.cfg. We can apply it to the newlist created.<br />
<strong>bin/config_list -i data/sitelist.cfg &lt;newlist&gt;</strong></p>
<p>Apply these default setting into template:<br />
<blockquote>msg_footer = &#8220;&#8221;"<br />
[%(real_name)s site list]<br />
[%(real_name)s@%(host_name)s]<br />
[%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s]&#8220;&#8221;"</p>
<p>digestable = 0<br />
advertised = 0<br />
private_roster = 2<br />
default_member_moderation = 1<br />
archive_private = 1</p></blockquote>
</li>
<li>
<p>Using the mailman:</p>
<p>Admin Interface</p>
<p>http://&lt;urlhost&gt;/mailman/admin/&lt;newlist&gt;</p>
<p>Subscription windows</p>
<p>http://&lt;urlhost&gt;/mailman/listinfo/&lt;newlist&gt;</p>
<p>Email to owner of list<br />
&lt;newlist&gt;-owner@&lt;emailurl&gt;</p>
<p>Email to subscribe<br />
&lt;newlist&gt;-subscribe@&lt;emailurl&gt;</p>
<li>
<p>Backup Mailman</p>
<p>Backup configuration file of a list<br />
<strong>bin/config_list -o &lt;filename&gt; &lt;listname&gt;</strong></p>
<p>Backup full member list with email and name<br />
<strong>bin/list_members –f –o &lt;filename&gt; &lt;listname&gt;</strong></p>
<p>To restore a configuration file<br />
<strong>bin/config_list -i &lt;filename&gt; &lt;listname&gt;</strong></p>
<p>To restore member list, please paste the content of full member list in the web admin interface.</p>
</li>
<li>
<p>remove all unwanted moderator request. Set crontab<br />
rm -rf /usr/local/mailman/data/heldmsg*</p>
<li>
<p>Add relay email address</p>
<p><strong>vi /etc/mail/local-hosts-names</strong></p>
<p>Add the related mailing address to new line<br />
Example: <strong>mailing.1.com.my</strong></p>
<p>Restart sendmail<br />
<strong>/etc/rc.d/init.d/sendmail restart</strong></p>
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/02/14/configuring-virtual-server-as-mailman-server/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Configuring Virtual Server As File Server</title>
		<link>http://www.technicalguy.org/2008/02/14/configuring-virtual-server-as-file-server/</link>
		<comments>http://www.technicalguy.org/2008/02/14/configuring-virtual-server-as-file-server/#comments</comments>
		<pubDate>Thu, 14 Feb 2008 01:33:24 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Lesson]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[Web Hosting]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/02/14/configuring-virtual-server-as-file-server/</guid>
		<description><![CDATA[Configure Virtual Server as File Server In the terminal, type startx to launch the Gnome interface Enable run level 2, 3, 4 and 5 for Samba service using chkconfig. chkconfig &#8211;level 2 smb on chkconfig &#8211;level 3 smb on chkconfig &#8211;level 4 smb on chkconfig &#8211;level 5 smb on Install samba-swat rpm that allows web-based [...]]]></description>
			<content:encoded><![CDATA[<h2>
<p>Configure Virtual Server as File Server</p>
</h2>
<ol>
<li>
<p>In the terminal, type startx to launch the Gnome interface</p>
</li>
<li>
<p>Enable run level 2, 3, 4 and 5 for Samba service using chkconfig.</p>
<p><strong>chkconfig &#8211;level 2 smb on<br />
chkconfig &#8211;level 3 smb on<br />
chkconfig &#8211;level 4 smb on<br />
chkconfig &#8211;level 5 smb on</strong></p>
</li>
<li>
<p>Install <strong>samba-swat rpm</strong> that allows web-based administration of Samba service. Set swat in xinted to start automatically when server reboot. Access SWAT from http://<hostname>:901. You need to login at the server with root username and password.</p>
</li>
<li>
<p>Make sure Samba is not blocked by firewall.</p>
</li>
<li>
<p>We setup lmhosts in all Windows machine. This is to eliminate the needs of drive mapping each time working on any web development projects from /home. We configure lmhosts as follow:</p>
<p>Eg:<br />
192.168.0.2 fire #PRE<br />
#INCLUDE \\fire\general\conf\lmhosts\lmhosts</p>
<p>A centalized copy of lmhosts file is maintained in server Fire.</p>
<p>Format of lmhosts in Fire:<br />
192.168.0.2	asiapcb		#PRE<br />
192.168.0.2 	admin		#PRE<br />
192.168.0.2	foster		#PRE</p>
<p>Run <strong>nbtstat –R</strong> after changes to lmhosts file</p>
</li>
<li>
<p>Whenever you save a file as a flat text (ASCII) file from within a Windows or DOS environment, the program that you saved it with adds what is known as a carriage return at the end of every line of the file. A carriage return is a normally hidden code that indicates that the text following it should appear on the next line. Conversely, a text file created within a UNIX environment will not have a carriage return at the end of every line.  Depending on the contents of the file, this may or may not pose a problem.</p>
<p>Many programs in the MS Windows environment have an option to save in &#8220;Unix format.&#8221; That means they don’t insert the extra carriage returns. In Homesite > Options > Settings > File Settings > Format when saving: UNIX</p>
</li>
<li>
<p>The following script remove all space of a filename or folder and to replace with ‘_’<br />
<blockquote>#!/usr/bin/perl -w<br />
# nospace /this/dir /that/dir /those/too </p>
<p>use File::Find;<br />
use strict;<br />
die &#8220;usage: nospace dir[s]\n&#8221; unless @ARGV; </p>
<p>my %ext; </p>
<p>find(\&#038;remspaces, @ARGV); </p>
<p>sub remspaces {<br />
return if ($_ eq &#8216;.&#8217;);<br />
return if ($_ eq &#8216;..&#8217;);<br />
(my $new = $_) =~ tr/a-zA-Z0-9_.-/_/c;<br />
my $duplicate = ($new ne $_ and -e $new);<br />
my $try = $new;</p>
<p>$ext{&#8220;$File::Find::dir/$try&#8221;}++ if $duplicate;</p>
<p>while (my $count = $ext{&#8220;$File::Find::dir/$new&#8221;}++) {<br />
(my $with_num = $new) =~ s/(?=\.|$)/_$count/;<br />
$new = $with_num, last if not -e $with_num;<br />
}</p>
<p>$ext{&#8220;$File::Find::dir/$try&#8221;}&#8211; if $duplicate;</p>
<p>rename $_ => $new<br />
or warn &#8220;can&#8217;t rename $_ to $new: $!&#8221;;<br />
}</p>
<p>Save the script as nospace.cgi in /etc. We set a crontab entry as follow:</p>
<p>30 9 * * * /usr/bin/perl /etc/nospace.cgi /home /file</p></blockquote>
</li>
<li>
<p>All filename and folder name are automatically adjusted to lowercase by define the setting using Samba SWAT.</p>
</li>
<li>
<p>Edit /etc/inittab and change the line id:5:initdefault: to id:3:initdefault: to boot Linux into Text mode by default, instead of X.</p>
</li>
<li>
<p>Adding a new user on Samba file server.</p>
<ol>
<li style="list-style-type : lower-alpha;">
<p>Add a new user<br />
<strong>useradd &lt;new user&gt; -M –g site</strong></p>
</li>
<li style="list-style-type : lower-alpha;">
<p>Assign a password to new user<br />
<strong>smbpasswd –a &lt;new user&gt;</strong></p>
</li>
<li style="list-style-type : lower-alpha;">
<p>Restart Samba service<br />
<strong>/etc/rc.d/init.d/smb restart</strong></p>
</li>
</ol>
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/02/14/configuring-virtual-server-as-file-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Backup</title>
		<link>http://www.technicalguy.org/2008/02/14/backup/</link>
		<comments>http://www.technicalguy.org/2008/02/14/backup/#comments</comments>
		<pubDate>Thu, 14 Feb 2008 01:31:06 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Lesson]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[Web Hosting]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/02/14/backup/</guid>
		<description><![CDATA[Backup We use scp to transfer backup file in each server to a centralized backup server. We need to setup quick login with ssh Client Keys. Generate a public/private key pair in the centralized backup server ssh-keygen –t rsa Just hit Enter when asked, this leave the passphrase empty. This created two files, ~/.ssh/id_rsa and [...]]]></description>
			<content:encoded><![CDATA[<h2>
<p>Backup</p>
</h2>
<ol>
<li>
<p>We use scp to transfer backup file in each server to a centralized backup server. We need to setup quick login with ssh Client Keys.</p>
<ol>
<li style="list-style-type : lower-alpha;">
<p>Generate a public/private key pair in the centralized backup server<br />
<strong>ssh-keygen –t rsa</strong><br />
Just hit Enter when asked, this leave the passphrase empty.<br />
This created two files, ~/.ssh/id_rsa and ~/.ssh/id_rsa.pub.</p>
</li>
<li style="list-style-type : lower-alpha;">
<p>Copy id_rsa.pub to the server that you wish to use quick login. Create the .ssh folder if needed.<br />
<strong>scp /root/.ssh/id_rsa.pub root@host:/root/.ssh/authorized_keys2</strong></p>
<p><strong>Note</strong>: Copy the contents of id_rsa.pub and paste to “/root/.ssh/authorized_keys2” the server that you wish to quick login, when more than 1 server that would liked to use quick login to the particular server.</p>
</li>
<li style="list-style-type : lower-alpha;">
<p>In order to allow the server to backup itself, you can copy the content of id_rsa.pub and adding into authorized_keys2.</p>
</li>
</ol>
<li>
<p>Synchronize backup file within localhost.</p>
<p><strong>rsync -zvr /file/hd1/* /backup/hd1</strong></p>
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/02/14/backup/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Monitoring</title>
		<link>http://www.technicalguy.org/2008/02/14/monitoring/</link>
		<comments>http://www.technicalguy.org/2008/02/14/monitoring/#comments</comments>
		<pubDate>Thu, 14 Feb 2008 01:30:43 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Lesson]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[Web Hosting]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/02/14/monitoring/</guid>
		<description><![CDATA[Monitoring Nmap has the ability to test out open ports and discover what version of software is running. nmap -O -p 1-65535 &#60;host&#62;]]></description>
			<content:encoded><![CDATA[<h2>
<p>Monitoring</p>
</h2>
<ol>
<li>
<p>Nmap has the ability to test out open ports and discover what version of software is running.</p>
<p><strong>nmap -O -p 1-65535 &lt;host&gt;</strong></p>
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/02/14/monitoring/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Offline Installation</title>
		<link>http://www.technicalguy.org/2008/02/14/offline-installation/</link>
		<comments>http://www.technicalguy.org/2008/02/14/offline-installation/#comments</comments>
		<pubDate>Thu, 14 Feb 2008 01:30:19 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Lesson]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[Web Hosting]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/02/14/offline-installation/</guid>
		<description><![CDATA[Offline Installation The following steps need to be done for new network environment after offline installation. /etc/resolv.conf, to add in more DNS server /etc/sysconfig/network NETWORKING=yes HOSTNAME=&#60;hostname&#62; /etc/hosts 127.0.0.1 localhost.localdomain localhost &#60;IP&#62; &#60;hostname&#62; &#60;hostname in short&#62; Eg: 203.115.228.142 it-lodge.ywso.com it-lodge /etc/sysconfig/network-scripts/ifcfg-eth0 Remove BROADCAST=192.168.0.255 and NETWORK=192.168.0.0 /etc/sysconfig/network-scripts/ifcfg-eth1 (if any) /etc/sysconfig/iptables Set correct date on both system clock [...]]]></description>
			<content:encoded><![CDATA[<h2>
<p>Offline Installation</p>
</h2>
<p>The following steps need to be done for new network environment after offline installation.</p>
<ol>
<li>
<p>/etc/resolv.conf, to add in more DNS server</p>
</li>
<li>
<p>/etc/sysconfig/network<br />
<blockquote>NETWORKING=yes<br />
HOSTNAME=&lt;hostname&gt;</p></blockquote>
</li>
<li>
<p>/etc/hosts</p>
<pre>
<blockquote>127.0.0.1       	localhost.localdomain localhost
&lt;IP&gt; 		&lt;hostname&gt; &lt;hostname in short&gt;

Eg:
203.115.228.142 	it-lodge.ywso.com it-lodge</blockquote>
</pre>
</li>
<li>
<p>/etc/sysconfig/network-scripts/ifcfg-eth0</p>
<pre>
<blockquote>Remove <strong>BROADCAST=192.168.0.255</strong> and <strong>NETWORK=192.168.0.0</strong></blockquote>
</pre>
</li>
<li>
<p>/etc/sysconfig/network-scripts/ifcfg-eth1 (if any)</p>
</li>
<li>
<p>/etc/sysconfig/iptables</p>
</li>
<li>
<p>Set correct date on both system clock and hardware clock with the following command:</p>
<p>Set the system clock<br />
date MMDDhhmmYY</p>
<p>To set the hardware clock to the current system clock<br />
hwclock &#8211;systohc</p>
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/02/14/offline-installation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Default Setup</title>
		<link>http://www.technicalguy.org/2008/02/01/default-setup/</link>
		<comments>http://www.technicalguy.org/2008/02/01/default-setup/#comments</comments>
		<pubDate>Fri, 01 Feb 2008 04:15:31 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Lesson]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[Web Hosting]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/02/01/default-setup/</guid>
		<description><![CDATA[Default Setup Run crontab –e to add the following setting: MAILTO=root 0 6 * * 5 /sbin/shutdown -r now 0 2 1 * * /etc/rc.d/init.d/httpd stop; rm -f /etc/httpd/logs/*; /etc/rc.d/init.d/httpd start Install info.php in /home/admin/web/php-bin touch /home/admin/web/php-bin/info.php vi /home/admin/web/php-bin/info.php &#60;? phpinfo(); ?&#62; Install phpMyAdmin in /home/admin/web/php-bin/phpmyadmin wget –P /home/admin/web/php-bin http://&#60;latest_phpmyadmin&#62; tar –zxvf /home/admin/web/php-bin/phpMyAdmin-latest.tar.gz rm /home/admin/web/php-bin/phpMyAdmin-latest.tar.gz [...]]]></description>
			<content:encoded><![CDATA[<h2>
<p>Default Setup</p>
</h2>
<ol>
<li>
<p>Run <strong>crontab –e</strong> to add the following setting:<br />
<blockquote>MAILTO=root<br />
0 6 * * 5 /sbin/shutdown -r now<br />
0 2 1 * * /etc/rc.d/init.d/httpd stop; rm -f /etc/httpd/logs/*; /etc/rc.d/init.d/httpd start</p></blockquote>
</li>
<li>
<p>Install info.php in /home/admin/web/php-bin<br />
<strong>touch /home/admin/web/php-bin/info.php<br />
vi /home/admin/web/php-bin/info.php</strong><br />
<blockquote>&lt;? phpinfo(); ?&gt;</p></blockquote>
</li>
<li>
<p>Install phpMyAdmin in /home/admin/web/php-bin/phpmyadmin<br />
<strong>wget –P /home/admin/web/php-bin http://&lt;latest_phpmyadmin&gt;<br />
tar –zxvf /home/admin/web/php-bin/phpMyAdmin-latest.tar.gz<br />
rm /home/admin/web/php-bin/phpMyAdmin-latest.tar.gz<br />
mv phpMyAdmin-latest phpmyadmin<br />
vi phpmyadmin/config.inc.php</strong><br />
<blockquote>$cfg['PmaAbsoluteUri'] = &#8216;http://&lt;hostname&gt;/php-bin/phpmyadmin/&#8217;;<br />
$cfg['Servers'][$i]['auth_type']     	= &#8216;http&#8217;;<br />
$cfg['Servers'][$i]['user']          	= &#8221;;</p></blockquote>
</li>
<li>
<p>Install under construction page in /home/admin<br />
Please refer to http://it-lodge.ywso.com<br />
Basically, you need index.html and img/wesostyle.jpg only</p>
</li>
<li>
<p>If you are using phpMyAdmin 2.9.1.1 or later, the config.inc.php configuration is different from the older version, you may want to edit some general command in the file.<br />
<blockquote>$cfg['blowfish_secret'] = &#8216;<strong>cookie</strong>&#8216;;<br />
$cfg['Servers'][$i]['controluser'] = &#8216;<strong>&lt;Leave Blank&gt;</strong>&#8216;;<br />
$cfg['Servers'][$i]['controlpass'] = &#8216;<strong>&lt;Leave Blank&gt;</strong>&#8216;;</p></blockquote>
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/02/01/default-setup/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>LogWatch</title>
		<link>http://www.technicalguy.org/2008/02/01/logwatch/</link>
		<comments>http://www.technicalguy.org/2008/02/01/logwatch/#comments</comments>
		<pubDate>Fri, 01 Feb 2008 04:15:09 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Lesson]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[Web Hosting]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/02/01/logwatch/</guid>
		<description><![CDATA[LogWatch Edit Logwatch configuration file at /etc/log.d/logwatch.conf Detail = High]]></description>
			<content:encoded><![CDATA[<h2>
<p>LogWatch</p>
</h2>
<ol>
<li>
<p>Edit Logwatch configuration file at <strong>/etc/log.d/logwatch.conf</strong></p>
<p><strong>Detail = High</strong></p>
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/02/01/logwatch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Webalizer</title>
		<link>http://www.technicalguy.org/2008/02/01/webalizer/</link>
		<comments>http://www.technicalguy.org/2008/02/01/webalizer/#comments</comments>
		<pubDate>Fri, 01 Feb 2008 04:08:08 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Lesson]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[Web Hosting]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/02/01/webalizer/</guid>
		<description><![CDATA[Webalizer Webalizer is a web server log file analysis program, which produces usage statistics in HTML format for viewing with a browser. The results are presented in both columnar and graphical format, which facilitates interpretation. Yearly, monthly, daily and hourly usage statistics are presented, along with the ability to display usage by site, URL, referrer, [...]]]></description>
			<content:encoded><![CDATA[<h2>
<p>Webalizer</p>
</h2>
<p><a href="http://www.mrunix.net/webalizer">Webalizer</a> is a web server log file analysis program, which produces usage statistics in HTML format for viewing with a browser. The results are presented in both columnar and graphical format, which facilitates interpretation. Yearly, monthly, daily and hourly usage statistics are presented, along with the ability to display usage by site, URL, referrer, user agent, browser and country, user agent and referrer are only available if your web server produces Combined log format files. The person who write this program can be reached with Bradford L. Barrett, brad@mrunix.net.</p>
<ol>
<li>
<p>Webalizer RPM is installed by default. Uninstall Webalizer<br />
<strong>rpm –e webalizer</strong></p>
</li>
<li>
<p>Install GeoIP library<br />
<blockquote>
<ol>
<li style="list-style-type : lower-alpha;">tar –zxvf /usr/src/GeoIP.tar.gz</li>
<li style="list-style-type : lower-alpha;">cd /usr/src/GeoIP-version</li>
<li style="list-style-type : lower-alpha;">./configure</li>
<li style="list-style-type : lower-alpha;">make</li>
<li style="list-style-type : lower-alpha;">make install</li>
</ol>
</blockquote>
</li>
<li>
<p>Install and patch Webalizer with geolizer<br />
<blockquote>
<ol>
<li style="list-style-type : lower-alpha;">tar –zxvf /usr/src/webalizer-2.01-10-src.tgz</li>
<li style="list-style-type : lower-alpha;">tar –zxvf /usr/src/geolizer_2.01-10-patch.20040216.tar.gz</li>
<li style="list-style-type : lower-alpha;">cd /usr/src</li>
<li style="list-style-type : lower-alpha;">patch –p0 < /usr/src/geolizer_2.01-10-patch/geolizer.patch</li>
<li style="list-style-type : lower-alpha;">rpm –Uvh /usr/src/libpng-devel-1.2.7-1.i386.rpm</li>
<li style="list-style-type : lower-alpha;">rpm –Uvh /usr/src/gd-devel-2.0.28-4.i386.rpm</li>
<li style="list-style-type : lower-alpha;">Add share libraries path /usr/lib to /etc/ld.so.conf</li>
<li style="list-style-type : lower-alpha;">ldconfig</li>
<li style="list-style-type : lower-alpha;">cd /usr/src/webalizer-2.01-10</li>
<li style="list-style-type : lower-alpha;">./configure –-enable-geoip</li>
<li style="list-style-type : lower-alpha;">make</li>
<li style="list-style-type : lower-alpha;">make install</li>
</ol>
</blockquote>
</li>
<li>
<p>Webalizer configuration file webalizer.conf.sample can be found in /etc</p>
</li>
<li>
<p>Create a folder to host respective webalizer configure file for each virtual hosting, <strong>mkdir /etc/webalizer</strong></p>
</li>
<li>
<p><strong>mv /etc/webalizer.conf.sample<br />
/etc/webalizer/<user>_webalizer.conf</strong></p>
</li>
<li>
<p>vi /etc/webalizer/<user>_webalizer.conf</p>
<pre>
<blockquote>TopCountries    	300
GeoIP           	yes
GeoIPDatabase   	/usr/local/share/GeoIP/GeoIP.dat
LogFile         	/etc/httpd/logs/&lt;user&gt;_access_log
LogType clf
OutputDir       	/home/&lt;user&gt;/web/stats
HistoryName     	webalizer.hist
Incremental     	yes
IncrementalName webalizer.current
ReportTitle     	Usage Statistics for
HostName        	&lt;Hostname&gt;
PageType        	cgi
PageType        	php
PageType        	shtml
HTMLBody &lt;BODY CLASS="body" BGCOLOR="#E8E8E8" LINK="#0000FF"
VLINK="#FF0000"&gt;
HTMLBody &lt;STYLE type=text/css&gt;
HTMLBody BODY.body {font-family: Helvetica, Arial}A:hover {color:
#4F709F}
HTMLBody &lt;/STYLE&gt;
Quiet              yes
FoldSeqErr      yes
HideURL         *.gif
HideURL         *.GIF
HideURL         *.jpg
HideURL         *.JPG
HideURL         *.png
HideURL         *.PNG
HideURL         *.ra
SearchEngine    yahoo.com       p=
SearchEngine    altavista.com   q=
SearchEngine    google.com      q=
SearchEngine    eureka.com      q=
SearchEngine    lycos.com       query=
SearchEngine    hotbot.com      MT=
SearchEngine    msn.com         MT=
SearchEngine    infoseek.com    qt=
SearchEngine    webcrawler      searchText=
SearchEngine    excite          search=
SearchEngine    netscape.com    search=
SearchEngine    mamma.com       query=
SearchEngine    alltheweb.com   query=
SearchEngine    northernlight.com  qr
</blockquote>
</pre>
</li>
<li>
<p>To update GeoIP.dat in future:<br />
<strong>wget -P /usr/src http://www.maxmind.com/download/geoip/database/GeoIP.dat.gz</p>
<p>gunzip /usr/src/GeoIP.dat.gz</p>
<p>mv /usr/src/GeoIP.dat /usr/local/share/GeoIP/GeoIP.dat</strong></p>
</li>
<li>
<p>Run webalizer, <strong>webalizer –c /etc/webalizer/&lt;user&gt;_webalizer.conf</strong><br />
You may want to add shared libraries path for libGeoIp into /etc/ld.so.conf<br />
By default, libGeoIP library is installed in <strong>/usr/local/lib</strong>. Run ldconfig after changes.</p>
<p>Add a crontab entry as follow (runs everyday at 0010am):</p>
<p><strong>10 0 * * * for i in /etc/webalizer/*.conf; do /usr/local/bin/webalizer -d –c $i; done</strong>
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/02/01/webalizer/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>CGIWrap</title>
		<link>http://www.technicalguy.org/2008/02/01/cgiwrap/</link>
		<comments>http://www.technicalguy.org/2008/02/01/cgiwrap/#comments</comments>
		<pubDate>Fri, 01 Feb 2008 04:05:40 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Lesson]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[Web Hosting]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/02/01/cgiwrap/</guid>
		<description><![CDATA[CGIWrap Assume we have main web root directory at /home/admin/web, and we would like to have CGIWrap transparently at the background. The cgi-bin folder is located inside web folder. Please change both the user and group in httpd.conf to apache. tar -zxvf cgiwrap-version.tar.gz ./configure &#8211;with-cgi-dir=web/cgi-bin &#8211;with-httpd-user=apache &#8211;with-install-dir=/home/&#60;user&#62;/web/cgi-bin make make install Update the httpd.conf file with [...]]]></description>
			<content:encoded><![CDATA[<h2>
<p>CGIWrap</p>
</h2>
<p>Assume we have main web root directory at /home/admin/web, and we would like to have CGIWrap transparently at the background. The cgi-bin folder is located inside web folder. Please change both the user and group in httpd.conf to apache.</p>
<ol>
<li>
<p><strong>tar -zxvf cgiwrap-version.tar.gz</strong></p>
</li>
<li>
<p><strong>./configure &#8211;with-cgi-dir=web/cgi-bin &#8211;with-httpd-user=apache &#8211;with-install-dir=/home/&lt;user&gt;/web/cgi-bin</strong></p>
</li>
<li>
<p><strong>make</strong></p>
</li>
<li>
<p><strong>make install</strong></p>
</li>
<li>
<p>Update the httpd.conf file with<br />
<blockquote>ScriptAlias /cgi-bin/ &#8220;/home/admin/web/cgi-bin/&#8221;</p>
<p>RewriteEngine On<br />
RewriteMap lowercase int:tolower<br />
RewriteRule ^/cgi-bin/(.*) /cgi-bin/cgiwrap/admin/$1 [PT]</p>
<p>&lt;Directory “/home/admin/web/cgi-bin”&gt;<br />
		…</p></blockquote>
</li>
<li>
<p>Sample of error message for CGIWrap:</p>
<p><img src="http://www.1.com.my/wp-content/uploads/2006/12/cgi01.gif" alt=""/></p>
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/02/01/cgiwrap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP</title>
		<link>http://www.technicalguy.org/2008/02/01/php/</link>
		<comments>http://www.technicalguy.org/2008/02/01/php/#comments</comments>
		<pubDate>Fri, 01 Feb 2008 04:05:20 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Lesson]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[Web Hosting]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/02/01/php/</guid>
		<description><![CDATA[PHP PHP is a server-side, cross platform, HTML embedded scripting language. Learn more of PHP from http://www.php.net You need php-mysql package to connect to a MySQL database. Download and install php-mysql-version.rpm. It is better to install a version of php-mysql that match with your native php and mysql that shipped together with your current Linux [...]]]></description>
			<content:encoded><![CDATA[<h2>
<p>PHP</p>
</h2>
<ol>
<li>
<p>PHP is a server-side, cross platform, HTML embedded scripting language. Learn more of PHP from http://www.php.net </p>
</li>
<li>
<p>You need php-mysql package to connect to a MySQL database. Download and install <strong>php-mysql-version.rpm</strong>. It is better to install a version of php-mysql that match with your native php and mysql that shipped together with your current Linux software.</p>
</li>
<li>
<p>Update /etc/php.ini<br />
<blockquote>error_reporting  =  E_ALL &#038; ~E_NOTICE<br />
display_errors = On<br />
register_globals = On<br />
memory_limit = 12M<br />
magic_quotes_gpc = Off</p></blockquote>
</li>
<li>
<p>To support GD, please install php-gd-version.rpm</p>
</li>
<li>
<p>Install mbstring module, download <strong>php-mbstring-version.rpm</strong> and install. Restart Apache after installation.</p>
</li>
<li>
<p>To support Zend Optimizer, please download from Zend Optimizer website and install. After successful installation, you will see the following line in the php.ini.</p>
<p>This program makes use of the Zend Scripting Language Engine:<br />
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies with Zend Extension Manager v1.0.8, Copyright (c) 2003-2005, by Zend Technologies <strong>with Zend Optimizer v2.5.10, Copyright (c) 1998-2005, by Zend Technologies</strong></p>
</li>
<li>
<p>Restart Apache<br />
<strong>/etc/rc.d/init.d/httpd restart</strong></p>
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/02/01/php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Database Server</title>
		<link>http://www.technicalguy.org/2008/02/01/mysql-database-server/</link>
		<comments>http://www.technicalguy.org/2008/02/01/mysql-database-server/#comments</comments>
		<pubDate>Fri, 01 Feb 2008 04:04:50 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Lesson]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[Web Hosting]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/02/01/mysql-database-server/</guid>
		<description><![CDATA[MySQL Database Server MySQL database server (http://www.mysql.com) is the world&#8217;s most popular open source database. With more than five million active installations, MySQL has quickly become the core of many high-volume, business-critical applications. MySQL has the capabilities to handle most corporate database application requirements with an architecture that is extremely fast and easy to use. [...]]]></description>
			<content:encoded><![CDATA[<h2>
<p>MySQL Database Server</p>
</h2>
<p>MySQL database server (http://www.mysql.com) is the world&#8217;s most popular open source database. With more than five million active installations, MySQL has quickly become the core of many high-volume, business-critical applications. MySQL has the capabilities to handle most corporate database application requirements with an architecture that is extremely fast and easy to use.</p>
<ol>
<li>
<p><strong>rpm -qa | grep -i mysql</strong>, shows all package with name ‘mysql’ installed. By default, mysql-server is not installed.</p>
</li>
<li>
<p>Download and install mysql-server, <strong>rpm –Uvh /usr/src/mysql-server-version.rpm</strong></p>
</li>
<li>
<p>Start mysqld, <strong>/etc/rc.d/init.d/mysqld restart</strong></p>
</li>
<li>
<p>By default, MySQL is not configured to start everytime the server reboot. To enable this, use <strong>chkconfig</strong> to configure the run level of this service.</p>
<p><strong>chkconfig &#8211;level 2 mysqld on<br />
chkconfig &#8211;level 3 mysqld on<br />
chkconfig &#8211;level 4 mysqld on<br />
chkconfig &#8211;level 5 mysqld on</strong></p>
</li>
<li>
<p>Set the MySQL root user password<br />
<blockquote>shell&gt; <strong>mysql –u root</strong></p>
<p>mysql&gt; <strong>use mysql</strong>;</p>
<p>mysql&gt; <strong>update user set password=password(‘Your_password_here’)    where user=‘root’;</strong></p>
<p>mysql&gt; <strong>flush privileges;</strong></p></blockquote>
<p>You can also change MySQL root password with,<br />
<strong>/usr/bin/mysqladmin -u root password &#8216;new-password&#8217;</strong></p>
</li>
<li>
<p>Login as root (Noted, this root user is not Unix root user) with,<br />
/<strong>usr/local/mysql/bin/mysql –u root -p &lt;enter&gt;<br />
Password: &lt;Your_password_here&gt;</strong></p>
</li>
<li>
<p>Open port 3306 if MySQl is blocked by the firewall.</p>
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/02/01/mysql-database-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apache HTTP Server</title>
		<link>http://www.technicalguy.org/2008/02/01/apache-http-server/</link>
		<comments>http://www.technicalguy.org/2008/02/01/apache-http-server/#comments</comments>
		<pubDate>Fri, 01 Feb 2008 04:02:14 +0000</pubDate>
		<dc:creator>Pin</dc:creator>
				<category><![CDATA[Lesson]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Solution]]></category>
		<category><![CDATA[Web Hosting]]></category>

		<guid isPermaLink="false">http://www.technicalguy.org/2008/02/01/apache-http-server/</guid>
		<description><![CDATA[Apache HTTP Server The Apache HTTP Server Project (http://httpd.apache.org) is an effort to develop and maintain an open-source HTTP server for modern operating systems including UNIX and Windows NT. The goal of this project is to provide a secure, efficient and extensible server that provides HTTP services in sync with the current HTTP standards. Apache [...]]]></description>
			<content:encoded><![CDATA[<h2>
<p>Apache HTTP Server</p>
</h2>
<p>The Apache HTTP Server Project (http://httpd.apache.org) is an effort to develop and maintain an open-source HTTP server for modern operating systems including UNIX and Windows NT. The goal of this project is to provide a secure, efficient and extensible server that provides HTTP services in sync with the current HTTP standards.</p>
<p>Apache has been the most popular web server on the Internet since April of 1996. The October 2003 Netcraft Web Server Survey found that more than 64% of the web sites on the Internet are using Apache, thus making it more widely used than all other web servers combined.</p>
<ol>
<li>
<p>By default, Apache is not configured to start everytime the server reboot. To enable this, use chkconfig to configure the run level of this service.</p>
<p><strong>chkconfig &#8211;level 2 httpd on<br />
chkconfig &#8211;level 3 httpd on<br />
chkconfig &#8211;level 4 httpd on<br />
chkconfig &#8211;level 5 httpd on</strong></p>
</li>
<li>
<p>Start Apache,  <strong>/etc/rc.d/init.d/httpd start</strong></p>
</li>
<li>
<p>SSL support is enabled by default. You can access the website with https://<domain> or http://<domain>:443</p>
</li>
<li>
<p>Modify Apache configuration file <strong>/etc/httpd/conf/httpd.conf</strong>. Config file for SSL, PHP, Perl, Webalizer and default Apache welcome page can be found in <strong>/etc/httpd/conf.d</strong>. </p>
</li>
<li>
<p>Turn off default Apache welcome page by comment out all directives in <strong>/etc/httpd/conf.d/welcome.conf</strong> </p>
</li>
<li>
<p>Increase the value of LimitRequestBody to 9999999 (10MB) in /etc/httpd/conf.d/php.conf<br />
<strong>LimitRequestBody 9999999</strong></p>
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.technicalguy.org/2008/02/01/apache-http-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
