<?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>Linux, Open Source and Web 2.0 &#187; Useful Stuff</title>
	<atom:link href="http://articles.itecsoftware.com/category/useful-stuff/feed" rel="self" type="application/rss+xml" />
	<link>http://articles.itecsoftware.com</link>
	<description>Itec Software</description>
	<lastBuildDate>Mon, 06 Sep 2010 18:29:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Redis High Speed Storage Or Cache System</title>
		<link>http://articles.itecsoftware.com/web-development/redis-high-speed-storage-or-cache-system</link>
		<comments>http://articles.itecsoftware.com/web-development/redis-high-speed-storage-or-cache-system#comments</comments>
		<pubDate>Wed, 11 Aug 2010 18:05:14 +0000</pubDate>
		<dc:creator>Peter</dc:creator>
				<category><![CDATA[Useful Stuff]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[CouchDB]]></category>
		<category><![CDATA[memcached]]></category>
		<category><![CDATA[MongoDB]]></category>
		<category><![CDATA[Redis]]></category>

		<guid isPermaLink="false">http://articles.itecsoftware.com/?p=498</guid>
		<description><![CDATA[NoSQL databases are the hype, with MongoBD and CouchDB on the forefront, while Memcache has found a place in many high load web applications during the past few years. Each of these applications has their own, very specific characteristic. MongoDB finds its usage where single key-value pairs are not sufficient, but adds a slight overhead [...]]]></description>
			<content:encoded><![CDATA[<p>NoSQL databases are the hype, with <a href="http://www.mongodb.org/" target="_blank">MongoBD</a> and <a href="http://couchdb.apache.org/" target="_self">CouchDB</a> on the forefront, while Memcache has found a place in many high load web applications during the past few years. Each of these applications has their own, very specific characteristic. MongoDB finds its usage where single key-value pairs are not sufficient, but adds a slight overhead and complexity with its hash table like multi field storage architecture. CouchDB is an ideal candidate where single key-value pair storage engine is sufficient.</p>
<p>And there is Redis, the new kid on the block. Redis is a high speed storage or cache system, much like <a href="http://memcached.org/" target="_blank">Memcache</a> on steroids. Redis writes data into memory, which makes it really fast. And in contrast to Memcache, it writes data periodically to disk depending on the amount of data that has changed. Redis is been said to be able to handle in excess of 10&#8217;000 reads/writes per second!<span id="more-498"></span></p>
<p>In contrast to Memcache, Redis has its own client language. The basic &#8220;set&#8221; and &#8220;get&#8221; are pretty much standard, but we can increment values, set lists and sets and easily handle key replacements and checks for existing values.</p>
<p>As of this writing, <a href="http://code.google.com/p/redis/downloads/detail?name=redis-2.0.0-rc4.tar.gz&amp;can=2&amp;q=" target="_blank">version 2</a> is in Release Candidate 4. For production environments, you&#8217;re highly encouraged to use the stable <a href="http://code.google.com/p/redis/downloads/detail?name=redis-1.2.6.tar.gz&amp;can=2&amp;q=" target="_blank">version 1.2.6</a>. To install Redis, download the desired version, untar and switch to the Redis directory. There is no configure script, we just call make, then copy &#8220;redis_server&#8221; and &#8220;redis-cli&#8221; to your desired location (eg. /usr/local/bin) and copy redis.conf to /etc/. Let&#8217;s start it up! Although I downloaded version 2 RC 4, the server shows version 1.3.17:</p>
<p><span style="color: #008000;">redis-server</span><br />
<span style="color: #008000;">[3926] 11 Aug 10:42:33 * Server started, Redis version 1.3.17</span><br />
<span style="color: #008000;">[3926] 11 Aug 10:42:33 * The server is now ready to accept connections on port 6379</span><br />
<span style="color: #008000;">[3926] 11 Aug 10:42:33 &#8211; 0 clients connected (0 slaves), 1074272 bytes in use</span><br />
<span style="color: #008000;">[3926] 11 Aug 10:42:33 * Server started, Redis version 1.3.17</span><br />
<span style="color: #008000;">[3926] 11 Aug 10:42:33 * The server is now ready to accept connections on port 6379</span><br />
<span style="color: #008000;">[3926] 11 Aug 10:42:33 &#8211; 0 clients connected (0 slaves), 1074272 bytes in use</span></p>
<p>We can now use Telnet to connect on port 6379 or use the Command Line Interface that comes with Redis (redis-cli) and issue some commands:<br />
<span style="color: #008000;"><br />
redis&gt; get firstName<br />
(nil)<br />
redis&gt; set firstName Peter<br />
OK<br />
redis&gt; get firstName<br />
&#8220;Peter&#8221;<br />
redis&gt; setnx firstName Peters<br />
(integer) 0<br />
redis&gt; get firstName<br />
&#8220;Peter&#8221;<br />
redis&gt; setnx firstNames Peters<br />
(integer) 1<br />
redis&gt; get firstNames<br />
&#8220;Peters&#8221;<br />
redis&gt;<br />
</span><br />
Complete command reference can be found <a href="http://code.google.com/p/redis/wiki/CommandReference" target="_blank">here</a> and it&#8217;s highly encouraged that you play around with them and get familiar with the CLI commands. It is really amazing what Redis provides in terms of powerful memory storage solution coupled with such an easy setup and usage. One thing is for sure, we&#8217;re hooked.</p>

<div style="font-size:0px;height:0px;line-height:0px;margin:0;padding:0;clear:both"></div>]]></content:encoded>
			<wfw:commentRss>http://articles.itecsoftware.com/web-development/redis-high-speed-storage-or-cache-system/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Free Version Of Microsoft Word With Office 2010</title>
		<link>http://articles.itecsoftware.com/useful-stuff/free-version-of-microsoft-word-with-office-2010</link>
		<comments>http://articles.itecsoftware.com/useful-stuff/free-version-of-microsoft-word-with-office-2010#comments</comments>
		<pubDate>Tue, 11 May 2010 22:59:03 +0000</pubDate>
		<dc:creator>Peter</dc:creator>
				<category><![CDATA[Useful Stuff]]></category>
		<category><![CDATA[Free Word]]></category>
		<category><![CDATA[Google Apps]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Office 2010]]></category>

		<guid isPermaLink="false">http://articles.itecsoftware.com/?p=377</guid>
		<description><![CDATA[Microsoft is releasing a new edition of Office to businesses this Wednesday and for the first time it&#8217;s adding free versions online versions of MS Word and other programs that work in a Web browser. It&#8217;s expected that these free apps will have fewer features than the desktop versions. MS Office 2010 marks a milestone [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft is releasing a new edition of Office to businesses this Wednesday and for the first time it&#8217;s adding free versions online versions of MS Word and other programs that work in a Web browser. It&#8217;s expected that these free apps will have fewer features than the desktop versions. </p>
<p>MS Office 2010 marks a milestone in the company&#8217;s efforts to stay abreast with an shift within the software industry that moves away from programs running locally on computers to free services that can be accessed from any browser over the Internet. Microsoft must walk a fine line and be careful not to make the free applications too appealing as to impact its lucrative software business negatively.<br />
Software accounted for 29 percent of Microsoft&#8217;s revenue and 51 percent of its operating income in the most recent quarter. </p>
<p>In contrast to it&#8217;s competitor, 4 percent of companies use Google Apps today, according to Forrester Research.</p>
<p>In addition, the Outlook e-mail program will be able to pull in information from users&#8217; outside social networks, such as Facebook and LinkedIn. It also adds new features to tame the ever-growing number of messages in the inbox, including a way to group all replies to a single thread under one line.</p>

<div style="font-size:0px;height:0px;line-height:0px;margin:0;padding:0;clear:both"></div>]]></content:encoded>
			<wfw:commentRss>http://articles.itecsoftware.com/useful-stuff/free-version-of-microsoft-word-with-office-2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How To Install Snow Leopard From USB</title>
		<link>http://articles.itecsoftware.com/useful-stuff/how-to-install-snow-leopard-from-usb</link>
		<comments>http://articles.itecsoftware.com/useful-stuff/how-to-install-snow-leopard-from-usb#comments</comments>
		<pubDate>Mon, 23 Nov 2009 20:43:40 +0000</pubDate>
		<dc:creator>Peter</dc:creator>
				<category><![CDATA[Mac]]></category>
		<category><![CDATA[Useful Stuff]]></category>

		<guid isPermaLink="false">http://articles.itecsoftware.com/?p=329</guid>
		<description><![CDATA[Ever been without a DVD/CDROM or installation disk?  Especially MacBook Air users undoubtedly come across this situation. This article will explain how to install Snow Leopard from an external device such as USB or disk drive. You will need an appropriately sized external drive or USB Flash Drive, as the Snow Leopard install DVD&#8217;s size [...]]]></description>
			<content:encoded><![CDATA[<p>Ever been without a DVD/CDROM or installation disk?  Especially MacBook Air users undoubtedly come across this situation. This article will explain how to install Snow Leopard from an external device such as USB or disk drive.</p>
<p>You will need an appropriately sized external drive or USB Flash Drive, as the Snow Leopard install DVD&#8217;s size is about 6.2 gigabytes. An 8GB USB stick like the <a href="http://www.amazon.com/gp/product/B000UZN2ZK?ie=UTF8&amp;tag=cudandsnu-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=B000UZN2ZK">SanDisk Cruzer 8GB</a><img style="border:none !important; margin:0px !important;" src="http://www.assoc-amazon.com/e/ir?t=cudandsnu-20&amp;l=as2&amp;o=1&amp;a=B000UZN2ZK" border="0" alt="" width="1" height="1" /> is the perfect choice.</p>
<p>Now let&#8217;s plug in that USB stick and get started.</p>
<p>1. Start up Disk Utility and select your Flash Drive from the left side pane.</p>
<p>2. Select the Erase tab and set Format to Mac OS Extended (Journaled). It should be the first choice in the list. Set Name to <em>Snow Leopard or OS X Install</em> so you can easily keep track of it. Before you the Erase button, be sure that you copied any files or folders from the Flash Drive that you want to keep, as everything will get erased. You&#8217;ve been warned! Hit Erase.<span id="more-329"></span></p>
<p>3. After the Erase action has finished, we&#8217;re ready to move the installation files onto the stick. If you don&#8217;t already have the installation DVD inserted, do so. It should appear in the left side pane. Drag it&#8217;s image (Mac OS X Install DVD onto the source input field. Select your USB Flash Drive and drag it onto the Destination input field. Then hit Restore and wait for the process to finish. Be patient as it can take more than 20 minutes.</p>
<p>4. In case you try to install the OS now by clicking on the USB image, a warning may appear saying that you cannot install OS X from this volume. Ignore the message. Remove the installation DVD from the drive and restart your Mac with the USB plugged in. When your Mac boots up, press and hold the option/alt key until a menu with available drives appears. Select it and follow the prompts. At this point everything should proceed the same way as the regular DVD install.</p>

<div style="font-size:0px;height:0px;line-height:0px;margin:0;padding:0;clear:both"></div>]]></content:encoded>
			<wfw:commentRss>http://articles.itecsoftware.com/useful-stuff/how-to-install-snow-leopard-from-usb/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>MySQL &#8211; How To Analyze, Repair and Optimize all Tables</title>
		<link>http://articles.itecsoftware.com/web-development/mysql-how-to-analyze-repair-and-optimize-all-tables</link>
		<comments>http://articles.itecsoftware.com/web-development/mysql-how-to-analyze-repair-and-optimize-all-tables#comments</comments>
		<pubDate>Mon, 02 Nov 2009 18:14:10 +0000</pubDate>
		<dc:creator>Peter</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Useful Stuff]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[analyze table]]></category>
		<category><![CDATA[mysqlcheck]]></category>
		<category><![CDATA[optimize]]></category>
		<category><![CDATA[repair table]]></category>

		<guid isPermaLink="false">http://articles.itecsoftware.com/?p=319</guid>
		<description><![CDATA[Ever come across a situation, where you&#8217;d like to check all tables in a database and have them all repaired and optimized? My guess is yes. In case you didn&#8217;t know, there is a helpful MySQL utility called mysqlcheck, available as of version 3.23.38. It does exactly what we need. To check all tables in [...]]]></description>
			<content:encoded><![CDATA[<p>Ever come across a situation, where you&#8217;d like to check all tables in a database and have them all repaired and optimized? My guess is yes.</p>
<p>In case you didn&#8217;t know, there is a helpful MySQL utility called mysqlcheck, available as of version 3.23.38. It does exactly what we need.</p>
<p>To check all tables in all databases for corruption and errors and also fix them in one go, this is your command:</p>
<p><span style="color: #003300;"><em><span style="color: #008000;">mysqlcheck -u username -p password  &#8211;check &#8211;optimize &#8211;auto-repair &#8211;all-databases</span></em></span></p>
<p>mysqlcheck executes statements like CHECK TABLE, REPAIR TABLE, ANALYZE TABLE, and OPTIMIZE TABLE and chooses the best statements for any given operation and storage engine.</p>
<p>Note that the operations complete a lot faster if you can afford to to disable any external services, especially if your database is large.</p>

<div style="font-size:0px;height:0px;line-height:0px;margin:0;padding:0;clear:both"></div>]]></content:encoded>
			<wfw:commentRss>http://articles.itecsoftware.com/web-development/mysql-how-to-analyze-repair-and-optimize-all-tables/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing true-type (ttf) Fonts in Ubuntu</title>
		<link>http://articles.itecsoftware.com/web-development/installing-true-type-ttf-fonts-in-ubuntu</link>
		<comments>http://articles.itecsoftware.com/web-development/installing-true-type-ttf-fonts-in-ubuntu#comments</comments>
		<pubDate>Wed, 14 Oct 2009 15:24:16 +0000</pubDate>
		<dc:creator>Peter</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Useful Stuff]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[fonts]]></category>
		<category><![CDATA[true-type]]></category>
		<category><![CDATA[ttf]]></category>
		<category><![CDATA[ttf in ubuntu]]></category>

		<guid isPermaLink="false">http://articles.itecsoftware.com/?p=294</guid>
		<description><![CDATA[Installing true-type fonts in Ubuntu is an easy task. With literally thousands of free fonts available on the Internet, (from sites such as 1001 Free Fonts or DaFont), who could resist to add that extra spice to their documents or websites. Ready? Here we go! First, find and download your desired fonts into ~/Downloads/fonts. You [...]]]></description>
			<content:encoded><![CDATA[<p>Installing true-type fonts in Ubuntu is an easy task. With literally thousands of free fonts available on the Internet, (from sites such as <a href="http://www.1001freefonts.com" target="_blank">1001 Free Fonts</a> or <a href="http://www.dafont.com/" target="_blank">DaFont</a>), who could resist to add that extra spice to their documents or websites.</p>
<p>Ready? Here we go!</p>
<p>First, find and download your desired fonts into ~/Downloads/fonts. You may have to create that directory first. Then extract them and copy to the system fonts directory as follows:</p>
<pre style="margin: 0px; padding: 6px; overflow: auto; background-color: #ffffff; width: 640px; height: 146px; text-align: left;" dir="ltr"><span style="color: #003300;"><em><span style="color: #008000;">cd /usr/share/fonts/truetype
sudo mkdir customFonts
cd customFonts
sudo cp ~/Downloads/fonts/*.ttf .
sudo chown root.root *.ttf
sudo mkfontdir
cd ..
fc-cache</span></em></span></pre>
<p>And that&#8217;s it. If you had your favourite graphics program open during this process, you&#8217;ll likely need to restart it to see the added fonts.<br />
Have fun!</p>

<div style="font-size:0px;height:0px;line-height:0px;margin:0;padding:0;clear:both"></div>]]></content:encoded>
			<wfw:commentRss>http://articles.itecsoftware.com/web-development/installing-true-type-ttf-fonts-in-ubuntu/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to recover a lost Linux root password</title>
		<link>http://articles.itecsoftware.com/linux/how-to-recover-lost-linux-root-password</link>
		<comments>http://articles.itecsoftware.com/linux/how-to-recover-lost-linux-root-password#comments</comments>
		<pubDate>Sun, 11 Oct 2009 17:49:10 +0000</pubDate>
		<dc:creator>Peter</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Useful Stuff]]></category>
		<category><![CDATA[forgot root password]]></category>
		<category><![CDATA[grub]]></category>
		<category><![CDATA[recover password]]></category>
		<category><![CDATA[root password]]></category>
		<category><![CDATA[single-user mode]]></category>

		<guid isPermaLink="false">http://articles.itecsoftware.com/?p=286</guid>
		<description><![CDATA[Forgot your root password? Nice going. What now? Reinstall the machine from ground up? Sadly enough, I&#8217;ve seen this happening all too often while it&#8217;s surprisingly easy to change the password knowing the correct procedure. While this doesn&#8217;t work in all cases (like if you secured your machine with a GRUB password and forgot that [...]]]></description>
			<content:encoded><![CDATA[<p>Forgot your root password? Nice going. What now? Reinstall the machine from ground up? Sadly enough, I&#8217;ve seen this happening all too often while it&#8217;s surprisingly easy to change the password knowing the correct procedure. While this doesn&#8217;t work in all cases (like if you secured your machine with a GRUB password and forgot that as well), but here&#8217;s the procedure in case of a CentOS Linux machine.</p>
<p>Start off by rebooting your system. At the GRUB boot loader screen, move the highlighted entry with the arrow keys to interrupt the boot process. While the current boot entry is highlighted, press <strong>E</strong> and you can edit the kernel line.</p>
<div id="attachment_289" class="wp-caption alignnone" style="width: 310px"><img class="size-medium wp-image-289" title="Grub boot loader screen" src="http://articles.itecsoftware.com/wp-content/uploads/2009/10/grub-boot-loader-screen-300x223.jpg" alt="Grub boot loader screen" width="300" height="223" /><p class="wp-caption-text">Grub boot loader screen</p></div>
<p>Use the arrow key to highlight the line that starts with <code>kernel</code>, and press <strong>E</strong> to edit the kernel parameters. When you get to the screen below, append  the number <strong><code>1</code></strong> at the end of the line. This will enable you to boot into <em>single-user mode</em>.</p>
<div id="attachment_290" class="wp-caption alignnone" style="width: 310px"><img class="size-medium wp-image-290" title="Edit GRUB boot loader entry" src="http://articles.itecsoftware.com/wp-content/uploads/2009/10/edit-grub-boot-loader-kernel-entry-300x225.jpg" alt="Edit GRUB boot loader entry" width="300" height="225" /><p class="wp-caption-text">Edit GRUB boot loader entry</p></div>
<p>Next press <strong>Enter</strong>, then <strong>B</strong>, and the kernel will boot up into <em> single-user</em> mode. Once there you can run the  <code>passwd</code> command, changing the password for user root:</p>
<p><code> prod-093# passwd<br />
New UNIX password:<br />
Retype new UNIX password:<br />
passwd: all authentication tokens updated successfully </code></p>
<p>Next time you boot up, use your newly created password to login.</p>

<div style="font-size:0px;height:0px;line-height:0px;margin:0;padding:0;clear:both"></div>]]></content:encoded>
			<wfw:commentRss>http://articles.itecsoftware.com/linux/how-to-recover-lost-linux-root-password/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ImageMagick from the command line</title>
		<link>http://articles.itecsoftware.com/web-development/imagemagick-from-the-command-line</link>
		<comments>http://articles.itecsoftware.com/web-development/imagemagick-from-the-command-line#comments</comments>
		<pubDate>Fri, 18 Sep 2009 01:24:11 +0000</pubDate>
		<dc:creator>Peter</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Useful Stuff]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[command line]]></category>
		<category><![CDATA[crop]]></category>
		<category><![CDATA[image]]></category>
		<category><![CDATA[imagemagick]]></category>
		<category><![CDATA[resize]]></category>
		<category><![CDATA[rotate]]></category>

		<guid isPermaLink="false">http://articles.itecsoftware.com/?p=258</guid>
		<description><![CDATA[ImageMagick is such a cool and powerful tool to manipulate images, it&#8217;s a real shame if you don&#8217;t make use of it during your web design or photo album creation. From resizing, compositing and converting all types of file types, it&#8217;s list of usability cases is endless. It&#8217;s free and available for almost every operating [...]]]></description>
			<content:encoded><![CDATA[<p>ImageMagick is such a cool and powerful tool to manipulate images, it&#8217;s a real shame if you don&#8217;t make use of it during your web design or photo album creation. From resizing, compositing and converting all types of file types, it&#8217;s list of usability cases is endless. It&#8217;s free and available for almost every operating system.</p>
<p>If you don&#8217;t have it on your system yet, here is the <a href="http://www.imagemagick.org/script/download.php" target="_blank">imagemagick download location</a>. You might also have it in your repository, check your package manager as it might be as simple as calling &#8220;sudo apt-get install imagemagick&#8221; (on Ubuntu) or &#8220;sudo yum install imagemagick&#8221; (on Red Hat/CentOs).</p>
<p>Here is a small compilation of command-line tools (by no means a complete list). The list of available commands is actually sheer endless, you&#8217;ll be amazed by how powerful this application is.</p>
<h4>imagemagick resize</h4>
<p><span style="color: #003300;">convert image.gif  -resize 128&#215;128  resized_image.gif</span></p>
<h4>imagemagick crop</h4>
<p><span style="color: #003300;">convert  image.gif  -crop 240&#215;360  cropped-image.gif      (add&#8217;l params for crop location: 240&#215;360+10+10)</span><span style="color: #003300;"><br />
</span></p>
<h4>imagemagick rotate</h4>
<p><span style="color: #003300;">convert image.gif -rotate 90 rotated-image.gif</span></p>
<h4>imagemagick mirror</h4>
<p><span style="color: #003300;">convert image.gif  -flop mirrored-image.gif</span></p>
<p>There are many more, actually way too many to list them all here. Have a look at the official <a href="http://www.imagemagick.org/Usage/" target="_blank">ImageMagick usage page</a> for a complete list of image manipulation actions.</p>

<div style="font-size:0px;height:0px;line-height:0px;margin:0;padding:0;clear:both"></div>]]></content:encoded>
			<wfw:commentRss>http://articles.itecsoftware.com/web-development/imagemagick-from-the-command-line/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Add Medibuntu Repository for Ubuntu 9.04</title>
		<link>http://articles.itecsoftware.com/linux/must-have-repositories-for-ubuntu-904</link>
		<comments>http://articles.itecsoftware.com/linux/must-have-repositories-for-ubuntu-904#comments</comments>
		<pubDate>Sun, 09 Aug 2009 17:46:05 +0000</pubDate>
		<dc:creator>Peter</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Useful Stuff]]></category>
		<category><![CDATA[medibuntu]]></category>
		<category><![CDATA[repository]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://articles.itecsoftware.com/?p=212</guid>
		<description><![CDATA[Medibuntu is probably the most useful and popular non-included repository, as it contains a lot of codecs for viewing or creating audio and video files. It&#8217;s a must have repository for Ubuntu. Acrobat Reader Firmware for the ALSA sound system Google Earth DVD decryption MPlayer / MEncoder Non-free codecs and Skype and the list goes [...]]]></description>
			<content:encoded><![CDATA[<p>Medibuntu is probably the most useful and popular non-included repository, as it contains a lot of codecs for viewing or creating audio and video files. It&#8217;s a must have repository for Ubuntu.</p>
<ul>
<li>Acrobat Reader</li>
<li>Firmware for the ALSA sound system</li>
<li>Google Earth</li>
<li>DVD decryption</li>
<li>MPlayer / MEncoder</li>
<li>Non-free codecs and</li>
<li>Skype</li>
</ul>
<p>and the list goes on. Two simple commands get you up and running:</p>
<p><span style="color: #008000;"><em>sudo wget http://www.medibuntu.org/sources.list.d/jaunty.list &#8211;output-document=/etc/apt/sources.list.d/medibuntu.list<br />
sudo apt-get update &amp;&amp; sudo apt-get install medibuntu-keyring &amp;&amp; sudo apt-get update</em></span></p>
<p>This adds the Medibuntu as a repository and updates the sources list. You can now install software like additional codecs, utilities and more like this:</p>
<p><span style="color: #008000;"><em>sudo apt-get install non-free-codecs </em></span><span style="color: #008000;"><em>libdvdcss2</em></span><br />
<span style="color: #008000;"><em> </em></span></p>
<p>And you can always use Synaptic to install new software, of course. For a complete list, go <a href="http://packages.medibuntu.org/" target="_blank">here</a>.</p>

<div style="font-size:0px;height:0px;line-height:0px;margin:0;padding:0;clear:both"></div>]]></content:encoded>
			<wfw:commentRss>http://articles.itecsoftware.com/linux/must-have-repositories-for-ubuntu-904/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ubuntu run script at startup, shutdown or reboot</title>
		<link>http://articles.itecsoftware.com/linux/ubuntu-run-script-at-startup-shutdown-or-reboot</link>
		<comments>http://articles.itecsoftware.com/linux/ubuntu-run-script-at-startup-shutdown-or-reboot#comments</comments>
		<pubDate>Wed, 05 Aug 2009 18:27:01 +0000</pubDate>
		<dc:creator>Peter</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Shell Scripting]]></category>
		<category><![CDATA[Useful Stuff]]></category>
		<category><![CDATA[runlevel]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[skeleton]]></category>

		<guid isPermaLink="false">http://articles.itecsoftware.com/?p=206</guid>
		<description><![CDATA[What&#8217;s the proper method to run a script at startup on Ubuntu? You can use update-rc.d for start-only or stop-only scripts, following these steps: Start script called &#8220;startup_script&#8221; on startup (note the dot at the end of the line) : # update-rc.d -f startup_script start 99 2 3 4 5 . - start is the [...]]]></description>
			<content:encoded><![CDATA[<p>What&#8217;s the proper method to run a script at startup on Ubuntu?<br />
You can use <span style="color: #008000;"><em>update-rc.d</em></span> for start-only or stop-only scripts, following these steps:</p>
<p>Start script called &#8220;startup_script&#8221; on startup (note the dot at the end of the line) :</p>
<p><span style="color: #008000;"># update-rc.d -f startup_script start 99 2 3 4 5 .</span></p>
<p>- start is the argument given to the command (start, stop).<br />
- 99 is the start priority of the script (1 = first one, 99= last one)<br />
- 2 3 4 5 are the runlevels at which to run the script</p>
<p>The dot at the end of the line has significance, read more here: /etc/rcS.d/README</p>
<p>Start startup_script on shutdown and reboot :<br />
<span style="color: #008000;"># update-rc.d -f startup_script start 90 0 6 .</span></p>
<p>Stop startup_script on halt and reboot :<br />
<span style="color: #008000;"># update-rc.d -f startup_script reboot 90 0 6 .</span></p>
<p>To run the script as a daemon, use the skeleton file located at &#8220;/etc/init.d/skeleton&#8221;</p>
<p>To know which runlevel you are running, type:<br />
<span style="color: #008000;">$ runlevel</span></p>
<p>Read more about runlevels <a title="Info about runlevels" href="http://en.wikipedia.org/wiki/Runlevel" target="_blank">here</a>.</p>

<div style="font-size:0px;height:0px;line-height:0px;margin:0;padding:0;clear:both"></div>]]></content:encoded>
			<wfw:commentRss>http://articles.itecsoftware.com/linux/ubuntu-run-script-at-startup-shutdown-or-reboot/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nginx and memcached module</title>
		<link>http://articles.itecsoftware.com/web-development/nginx-and-memcached-module</link>
		<comments>http://articles.itecsoftware.com/web-development/nginx-and-memcached-module#comments</comments>
		<pubDate>Fri, 17 Jul 2009 20:31:35 +0000</pubDate>
		<dc:creator>Peter</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[Shell Scripting]]></category>
		<category><![CDATA[Useful Stuff]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[memcache]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://articles.itecsoftware.com/?p=148</guid>
		<description><![CDATA[With nginx memcache module, we serve more pages faster with less hardware. It's a nobrainer.]]></description>
			<content:encoded><![CDATA[<p><a rel="nofollow" href="http://www.danga.com/memcached/" target="_blank">Memcache</a> is traditionally used as a module inside server side scripts, such as <a rel="nofollow" href="http://www.php.net" target="_blank">PHP</a>, ASP, ColdFusion and others. And it&#8217;s doing a terrific job, as long as it&#8217;s implemented correctly.</p>
<p>But if we look under the hood of the actual <a rel="nofollow" href="http://www.danga.com/memcached/" target="_blank">Memcache</a> application, and I&#8217;m not talking about the PHP or ASP extension, but rather the executable that&#8217;s running as a daemon under linux, for example, it is a rather simple database like application running in memory. Now there are two basic actions that need to be performed to use it, one is writing info into memcache, the other is reading it. In a typical scenario, there are many reads for one write, that&#8217;s the whole point, isn&#8217;t it. But what if we can isolate the reading from the server side scripts, and let a small high speed module do that for us.</p>
<p><span id="more-148"></span></p>
<p>That&#8217;s where <a rel="nofollow" href="http://nginx.net/" target="_blank">Nginx</a> and it&#8217;s <a rel="nofollow" href="http://wiki.nginx.org/NginxHttpMemcachedModule" target="_blank">Memcache Module</a> comes in. We use PHP to fill up the cache and then let Nginx serve that content to the requesting client. According to lead architect Peter Gilg, this configuration is used at <a rel="nofollow" href="http://www.mademan.com/" target="_blank">Mademan.com</a>, a lifestyle site serving up to 1 million pageviews/day.</p>
<p>To be more specific, we&#8217;ll have nginx listen on port 80. If a request comes in, it checks memcache if the requested page is in memory and serves it directly to the client, or sends it to <a rel="nofollow" href="http://apache.org/" target="_blank">Apache</a> (on port 88 for example) to produce the page. At the same time apache inserts the page into memcache, so it&#8217;s available to nginx for the next request.  A sample configuration nginx script would look something like this:</p>
<pre class="code"><a href="http://wiki.nginx.org/NginxHttpCoreModule#server"><span class="kw3">server</span></a> <span class="br0">{</span>
  <a rel="nofollow" href="http://wiki.nginx.org/NginxHttpCoreModule#location"><span class="kw3">location</span></a> / <span class="br0">{</span>
    <a rel="nofollow" href="http://wiki.nginx.org/NginxHttpRewriteModule#set"><span class="kw22">set</span></a> <span class="re0">$memcached_key</span> <span class="re0">$uri</span>;
    <a rel="nofollow" href="http://wiki.nginx.org/NginxHttpMemcachedModule#memcached_pass"><span class="kw20">memcached_pass</span></a>     name:<span class="nu0">11211</span>;
    <a rel="nofollow" href="http://wiki.nginx.org/NginxHttpCoreModule#default_type"><span class="kw3">default_type</span></a>       text/html;
    <a rel="nofollow" href="http://wiki.nginx.org/NginxHttpCoreModule#error_page"><span class="kw3">error_page</span></a>         <span class="nu0">404</span> = /fallback;
  <span class="br0">}</span>

  <a rel="nofollow" href="http://wiki.nginx.org/NginxHttpCoreModule#location"><span class="kw3">location</span></a> = /fallback <span class="br0">{</span>
    <a rel="nofollow" href="http://wiki.nginx.org/NginxHttpProxyModule#proxy_pass"><span class="kw21">proxy_pass</span></a> backend;
  <span class="br0">}</span>
<span class="br0">}</span></pre>
<p><span style="text-decoration: underline;"><strong>Additional Resources:</strong></span> <a rel="nofollow" href="http://nginx.net/" target="_blank">Nginx</a> <a rel="nofollow" href="http://www.danga.com/memcached/" target="_blank">Memcache</a> <a rel="nofollow" href="http://apache.org/" target="_blank">Apache</a><script type="text/javascript"><!--
google_ad_client = "pub-5075229468189091";
google_ad_slot = "2446713154";
google_ad_width = 468;
google_ad_height = 15;
// --></script><br />
<script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script></p>

<div style="font-size:0px;height:0px;line-height:0px;margin:0;padding:0;clear:both"></div>]]></content:encoded>
			<wfw:commentRss>http://articles.itecsoftware.com/web-development/nginx-and-memcached-module/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk
Page Caching using disk (enhanced)

Served from: articles.itecsoftware.com @ 2010-09-09 23:19:18 -->