<?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>V-TEK</title>
	<atom:link href="http://www.vtek.nl/feed" rel="self" type="application/rss+xml" />
	<link>http://www.vtek.nl</link>
	<description>Weblog about webdevelopment and linux</description>
	<lastBuildDate>Sat, 21 Nov 2009 19:19:21 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Learn Symfony in 24 days</title>
		<link>http://www.vtek.nl/learn-symfony-in-24-days-uncategorized.html</link>
		<comments>http://www.vtek.nl/learn-symfony-in-24-days-uncategorized.html#comments</comments>
		<pubDate>Sat, 21 Nov 2009 19:15:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.vtek.nl/?p=500</guid>
		<description><![CDATA[
Ok the workshop was great! I can recommend this workshop to everybody with some knowledge of php.
If you're unable to follow the workshop try the tutorial book 'Practical Symfony' (with Doctrine).
This book has been built with a day to day schema of 24 days, which makes it an advent tutorial.
Even if you don't want to [...]]]></description>
			<content:encoded><![CDATA[<p><img class="  alignright" title="Symfony" src="http://isimulate.worldbank.org/blog/wp-content/uploads/2008/01/symfony-logo.png" alt="" width="271" height="115" /><br />
Ok the workshop was great! I can recommend this workshop to everybody with some knowledge of php.</p>
<p>If you're unable to follow the workshop try the tutorial book 'Practical Symfony' (with Doctrine).</p>
<p>This book has been built with a day to day schema of 24 days, which makes it an advent tutorial.<br />
Even if you don't want to use symfony, this book is still usefull because it contains a lot of usefull information about creating a (web)project.</p>
<p>And that's why I encourage everybody to follow this tutorial!</p>
<p>Find the book at: <a title="Practical Symfony Doctrine" href="http://www.symfony-project.org/jobeet/1_2/Doctrine/en/">http://www.symfony-project.org/jobeet/1_2/Doctrine/en/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.vtek.nl/learn-symfony-in-24-days-uncategorized.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Symfony Framework Workshop, I&#8217;m invited!</title>
		<link>http://www.vtek.nl/symfony-framework-workshop-im-invited-software.html</link>
		<comments>http://www.vtek.nl/symfony-framework-workshop-im-invited-software.html#comments</comments>
		<pubDate>Tue, 06 Oct 2009 19:00:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Framework]]></category>
		<category><![CDATA[MVC]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Symfony]]></category>

		<guid isPermaLink="false">http://www.vtek.nl/?p=476</guid>
		<description><![CDATA[A couple of weeks I got an invitation from Stefan Koopmanschap for a Symfony Framework workshop. Stefan Koopmanschap is a PHP developer, consultant and trainer and works at Unet. Besides that he is also the symfony Community Manager.
So what is Symfony Framework?
Symfony is a web application framework written in PHP which follows the model-view-controller (MVC) [...]]]></description>
			<content:encoded><![CDATA[<p>A couple of weeks I got an invitation from <a title="Blog Stefan Koopmanschap" href="http://www.leftontheweb.com/">Stefan Koopmanschap</a> for a Symfony Framework workshop. Stefan Koopmanschap is a PHP developer, consultant and trainer and works at Unet. Besides that he is also the <a href="http://www.symfony-project.org/" target="_blank">symfony</a> Community Manager.<span id="more-476"></span></p>
<h3><strong>So what is Symfony Framework?</strong></h3>
<p><strong>Symfony</strong> is a <a title="Web application framework" href="http://en.wikipedia.org/wiki/Web_application_framework">web application framework</a> written in <a title="PHP" href="http://en.wikipedia.org/wiki/PHP">PHP</a> which follows the <a title="Model-view-controller" href="http://en.wikipedia.org/wiki/Model-view-controller">model-view-controller</a> (MVC) paradigm. Released under the <a title="MIT license" href="http://en.wikipedia.org/wiki/MIT_license">MIT license</a>, Symfony is <a title="Free software" href="http://en.wikipedia.org/wiki/Free_software">free software</a></p>
<h3>Goal</h3>
<p>Symfony aims to speed up the creation and maintenance of web applications and to replace repetitive coding tasks. It requires a few prerequisites for installation: <a title="Unix" href="http://en.wikipedia.org/wiki/Unix">Unix</a>, <a title="Linux" href="http://en.wikipedia.org/wiki/Linux">Linux</a>, <a title="Mac OS" href="http://en.wikipedia.org/wiki/Mac_OS">Mac OS</a> or <a title="Microsoft Windows" href="http://en.wikipedia.org/wiki/Microsoft_Windows">Microsoft Windows</a> with a web server and PHP 5 installed. It is currently compatible with the following <a title="Object-relational mapping" href="http://en.wikipedia.org/wiki/Object-relational_mapping">Object-relational mappings</a>: <a title="Propel (PHP)" href="http://en.wikipedia.org/wiki/Propel_%28PHP%29">Propel</a> and <a title="Doctrine (PHP)" href="http://en.wikipedia.org/wiki/Doctrine_%28PHP%29">Doctrine</a>.<sup id="cite_ref-1"><a href="http://en.wikipedia.org/wiki/Symfony#cite_note-1"></a></sup></p>
<p>Symfony has low performance overheads when dealing with an environment that supports a <a title="PHP accelerator" href="http://en.wikipedia.org/wiki/PHP_accelerator">PHP accelerator</a>. It should be noted however, that in typical shared hosting environments where a PHP accelerator is not available, Symfony suffers from a relatively high performance overhead.</p>
<p>[source: wikipedia]</p>
<p>After the workshop more about Symfony on this blog!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.vtek.nl/symfony-framework-workshop-im-invited-software.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Beta Ubuntu 9.10 released</title>
		<link>http://www.vtek.nl/beta-ubuntu-9-10-released-software.html</link>
		<comments>http://www.vtek.nl/beta-ubuntu-9-10-released-software.html#comments</comments>
		<pubDate>Mon, 05 Oct 2009 08:15:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://www.vtek.nl/?p=460</guid>
		<description><![CDATA[The beta of Ubuntu 9.10 Karmic Koala is released. Still 24 days (as of today) to go, before the official stable release.

You can help the ubuntu developers by testing the beta release and submit any bugs you find. Download the new release from the ubuntu site
]]></description>
			<content:encoded><![CDATA[<p>The beta of Ubuntu 9.10 Karmic Koala is released. Still 24 days (as of today) to go, before the official stable release.<br />
<script src="http://www.ubuntu.com/files/countdown/display2.js" type="text/javascript"></script></p>
<p>You can help the ubuntu developers by testing the beta release and submit any bugs you find. Download the new release from the <a title="Ubuntu Site" href="http://www.ubuntu.com" target="_blank">ubuntu site</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.vtek.nl/beta-ubuntu-9-10-released-software.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Learning Linux part 6/15: Linux filesystem</title>
		<link>http://www.vtek.nl/learning-linux-part-615-software.html</link>
		<comments>http://www.vtek.nl/learning-linux-part-615-software.html#comments</comments>
		<pubDate>Wed, 30 Sep 2009 19:14:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Ext3]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[LPI]]></category>
		<category><![CDATA[LVM]]></category>
		<category><![CDATA[Shell]]></category>

		<guid isPermaLink="false">http://www.vtek.nl/?p=411</guid>
		<description><![CDATA[This part is a short flight through the filesystem of linux.
In short, the filesystem controls the way how files are organised on the disk.
To describe how this works, I will try to explain some of the process when a file gets accessed.
In order to access a file, the operating system needs the full path of [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright" title="INODES" src="http://www.h-online.com/images/110398/0/0" alt="" width="200" height="175" />This part is a short flight through the filesystem of linux.</p>
<p>In short, the filesystem controls the way how files are organised on the disk.</p>
<p>To describe how this works, I will try to explain some of the process when a file gets accessed.</p>
<p>In order to access a file, the operating system needs the full path of the file.<span id="more-411"></span></p>
<p>Then the operating system needs to take care that the file is loaded in the memory. To load the file into the memory, two things are needed:</p>
<ol>
<li>Inode table</li>
<li>Directory ( in which directory is the file placed )</li>
</ol>
<h4>INODES</h4>
<p>In the inode of a file is described on which datablocks of the harddisk the data of the file is saved. All these inodes are saved into the inodes table. The inodes table is stored in the beginning of the storage device. Do notice that every device has it's very own inodes table.</p>
<p>So what's inside an inode? Well, some things that are stored are:</p>
<ul>
<li>file owner</li>
<li>permissions</li>
<li>creation- and modification time</li>
<li>filesize</li>
<li>number of links</li>
<li>etc.</li>
</ul>
<p>The inode of a file is important when a process needs to use a certain file. When this happens, the system first searches in the inodes table for the filename and it's corresponding directory. Therefore the inode number of the file is used. After that, the kernel is used to check if all permissions are valid and to see on which blocks the data resides.</p>
<p>Curious how can you see the inodes number in a certain folder?</p>
<p>Simply do a "ls -i" on the directory of your choice.</p>
<blockquote><p>root@proteus:~# <strong>ls -i</strong><br />
1962 bin         373 Downloads<br />
22 Desktop       2 MediaLibrary<br />
26 Documents</p></blockquote>
<p>Want to read out the inode information? For that purpose you can use "debugfs". So how does this work?</p>
<p>First find the inode number of the file:</p>
<blockquote><p>root@proteus:~# <strong>ls -i /etc/ | grep localtime</strong><br />
104 localtime</p></blockquote>
<p>As you can see, 104 is the inode number of the localtime file. Because the file exists on the /dev/sda5 partition we execute the command "debugfs /dev/sda5". After this you enter "stat" with the inode number between the greather then and less then signs.</p>
<blockquote><p>root@proteus:~# <strong>debugfs /dev/sda5</strong><br />
debugfs 1.41.4 (27-Jan-2009)<br />
debugfs:  <strong>stat &lt;104&gt;</strong></p></blockquote>
<p>The system will then display the statistics of the file</p>
<blockquote><p>Inode: 104   Type: regular    Mode:  0644   Flags: 0x80000<br />
Generation: 118761872    Version: 0x00000000:00000001<br />
User:     0   Group:     0   Size: 2917<br />
File ACL: 0    Directory ACL: 0<br />
Links: 1   Blockcount: 8<br />
Fragment:  Address: 0    Number: 0    Size: 0<br />
ctime: 0x4ab50b7f:96735238 -- Sat Sep 19 18:49:03 2009<br />
atime: 0x4ab50b7f:97677498 -- Sat Sep 19 18:49:03 2009<br />
mtime: 0x4ab50b7f:96735238 -- Sat Sep 19 18:49:03 2009<br />
crtime: 0x4ab50b7f:96735238 -- Sat Sep 19 18:49:03 2009<br />
Size of extra inode fields: 28<br />
BLOCKS:<br />
(0):104463<br />
TOTAL: 1</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.vtek.nl/learning-linux-part-615-software.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Learning Linux Part 5/15: Edit &amp; transform textfiles</title>
		<link>http://www.vtek.nl/learning-linux-part-515-software.html</link>
		<comments>http://www.vtek.nl/learning-linux-part-515-software.html#comments</comments>
		<pubDate>Fri, 25 Sep 2009 17:33:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[LPI]]></category>
		<category><![CDATA[regex]]></category>
		<category><![CDATA[Shell]]></category>

		<guid isPermaLink="false">http://www.vtek.nl/?p=368</guid>
		<description><![CDATA[This part I will try to explain some of the document processing features that linux has. We will cut this part in 3 pieces:

REGULAR EXPRESSIONS
SEARCH AND SORT TOOLS
PROGRAMMABLE FILTERS

REGULAR EXPRESSIONS

A regular expression are formulas for matching strings that follow some pattern. For example, if you would like to find all files that start with an [...]]]></description>
			<content:encoded><![CDATA[<p>This part I will try to explain some of the document processing features that linux has. We will cut this part in 3 pieces:<span id="more-368"></span></p>
<ul>
<li>REGULAR EXPRESSIONS</li>
<li>SEARCH AND SORT TOOLS</li>
<li>PROGRAMMABLE FILTERS</li>
</ul>
<h3><strong><a name="regular-expressions">REGULAR EXPRESSIONS</a></strong><span style="text-decoration: underline;"><strong><br />
</strong></span></h3>
<p>A regular expression are formulas for matching strings that follow some pattern. For example, if you would like to find all files that start with an "a" and which end up with "cd". You might use the following command:</p>
<blockquote><p><strong>find . -name "^a.cd$"</strong></p></blockquote>
<p><strong> </strong>This 'find' command will search for all files starting with an "a" (^a) followed by ANY character (.) and which is ends with the characters "cd" (cd$). This means that a file like "abcd.text" or "www.abcd" will not be included in the search results.</p>
<p>Below you will find a list of characters which can be used at regular expressions.</p>
<ul>
<li><strong>^</strong> - Points to the beginning of the line.</li>
<li><strong>$</strong> - Points to the end of the line</li>
<li><strong>.</strong> - The dot is used as a joker sign and stands for any -single- character ( with the exception of the newline character )</li>
<li><strong>[ ]</strong> - Is used to set alternative characters.</li>
</ul>
<h4><strong>REPETITION OPERATORS</strong></h4>
<p>Below you will find repetition operators, which can be used to search for a certain character or characters which occur more then one time.</p>
<ul>
<li><strong>*</strong> - Is used as wildcard for any number of characters (includes no character!)</li>
<li><strong>?</strong> - The character before the question mark doesn't have to exist, but if it does it can have the maximal size of 1 character.</li>
<li><strong>+</strong> - The character before the question mark has to exist at least one time</li>
<li><strong>\{n\}</strong> - The regular expression has to occur <span style="text-decoration: underline;">exactly</span> <em>n</em> times</li>
<li><strong>\{n,\}</strong> - The regular expression has to occur <span style="text-decoration: underline;">at least</span> <em>n</em> times</li>
<li><strong>\{,m\}</strong> - The regular expression can exist for a maximum of <em>m </em>times, but it doesn't have to.</li>
<li><strong>\{n,m\}</strong> - The regular expression has to occur at least <em>n</em> times, and no more then <em>m </em>times.</li>
<li><strong>regex|regex</strong> - this is a sort of OR statement, which will look for the sign before or after the pipe sign.</li>
</ul>
<h3><strong><a name="search-sort-tools">SEARCH AND SORT TOOLS</a></strong></h3>
<p>Most linux distributions come with a lot of search and sort tools, like grep, find, cut, uniq, etc.</p>
<p>I will describe the functions of these tools below and their possibilities.</p>
<h4><strong>GREP</strong><strong> AND FIND</strong></h4>
<p>The command "grep" is used to search for a certain text phrase in a textfile or in the result of a command. Another command which searches for certain directories or files is "find". With find you can search for any file property like chmod values, ownerships, access or modification time or the filename itselves.</p>
<p>The strongest part is when you combine grep and find. For example, if you'd like to search for a certain text phrase "search_string" in all php files in a documentroot, you could use something like this:</p>
<p><strong>find /path/to/documentroot -name '*.php$' -exec grep search_string {} \; </strong></p>
<p><span style="text-decoration: underline;">Note - Take a good look at the \;<strong> </strong>on the end of the line, which escapes the ";" character.</span><strong><br />
</strong></p>
<h4><strong>SORT</strong></h4>
<p>Sort is a tool which can be used to sort the contents of a file by alphabet or numeric. The command line usage of sort is:</p>
<blockquote><p><strong>sort [OPTION]... [FILE]...</strong></p></blockquote>
<p>A list of options which can be given to sort is:</p>
<ul>
<li><strong>-m</strong> - Join sorted files together</li>
<li><strong>-u</strong> - Send only unique lines to the standard output</li>
<li><strong>-o filename</strong> - Specifies the filename where the sorted output can be written to</li>
<li><strong>-b</strong> - ignores spaces at the beginning of every line</li>
<li><strong>-n - </strong>sort numeric ( without this option, it's alphabetical )</li>
<li><strong>-t </strong>- Specify the field seperator. If not given, then the tab key is used as the default seperator</li>
</ul>
<h4><strong>CUT</strong></h4>
<p>The command "cut" can be used to<strong> </strong>show certain fields of a file or output of a command. For example, if you give the following command:</p>
<blockquote><p><strong>cut -d':' -f1 /etc/passwd</strong></p></blockquote>
<p>All the usernames of the /etc/passwd file will be printed. This is because the delimeter flag "-d" is used and the -f1 flag tells "cut" to print the first field.</p>
<p>A couple of other options of "cut" are:</p>
<ul>
<li><strong>-b</strong><em><strong>n</strong> </em>- points to the characters which appear at the position of byte <em>n</em></li>
<li><strong>-c</strong><em><strong>n</strong> </em>- points to the characters which appear at the position of character <em>n</em></li>
<li><strong>-f<em>n</em></strong> - (like described above) - points to the number of the field</li>
<li><strong>-d<em>n</em></strong> - (like described above) - points to the delimiter</li>
</ul>
<h4><strong>UNIQ</strong></h4>
<p>If<strong> </strong>you have a file with a lot of duplicate lines, uniq can be of your assistance. By default it discards lines with more than one occurance. The flag "-d"<strong> </strong>can be used to inverse the process and prints only the duplicates.<strong><br />
</strong></p>
<h4><strong>CAT</strong></h4>
<p>This tool simply displays the content of a file, like described earlier. <strong><br />
</strong></p>
<h4><strong>TR</strong></h4>
<p>The "tr"<strong> </strong>command can be used to replace characters from the standard input, and send the results to the standard output ( most of the times, your screen ). The -d flag allows you to delete a certain character or textphrase from the input. For example, if you'd like to remove all semicolons from the /etc/passwd file and save them in /etc/passwd.new, you can enter the following command:</p>
<blockquote><p>tr -d ":" &lt; /etc/passwd &gt; /etc/passwd.new</p></blockquote>
<h4><strong>NL</strong></h4>
<p>This tool has te same functionality like "cat", only difference is that this tool shows line numbers<strong><br />
</strong></p>
<h4><strong>OD</strong></h4>
<p>Prints the<strong> </strong>octal output of a file. This command is nearly used. <strong><br />
</strong></p>
<h4><strong>SPLIT<br />
</strong></h4>
<p>With split you can split up certain text files in several smaller text files. For example if you have a big /var/log/messages, which is hardly searchable, then you can split it into several pieces using the "split" command. When you use the "-l" flag you can specify the number of lines each file may contain. The "-b" flag specifies the total size of each output file, instead of the amount of lines ( for example split files up in splitted files of 1mb or something similair).</p>
<h4><strong><strong>JOIN</strong></strong></h4>
<p>Sometimes you would like to join several text files based on common fields. The "join" command makes this possible for you.<br />
To perform a simple join operation on two files where the first fields are the same, enter:</p>
<pre>join phonedir names</pre>
<p>If the <tt>phonedir</tt> file contains the following names:</p>
<pre>Adams A.        555-6235
Dickerson B.    555-1842
Erwin G.        555-1234
Jackson J.      555-0256
Lewis B.        555-3237
Norwood M.      555-5341
Smartt D.       555-1540
Wright M.       555-1234
Xandy G.        555-5015</pre>
<p>and the <tt>names</tt> file contains these names and department numbers:</p>
<pre>Erwin           Dept. 389
Frost           Dept. 217
Nicholson       Dept. 311
Norwood         Dept. 454
Wright          Dept. 520
Xandy           Dept. 999</pre>
<p>the <strong>join</strong> command displays:</p>
<pre>Erwin G.        555-1234        Dept. 389
Norwood M.      555-5341        Dept. 454
Wright M.       555-1234        Dept. 520
Xandy G.        555-5015        Dept. 999</pre>
<h3><strong><a name="programmable-filters">PROGRAMMABLE FILTERS</a></strong></h3>
<p>One of the hardest, but most powerfull, ways to modify the contents of a file is the use of programmable filters. Two of these programmable filters are "sed" and "gawk".</p>
<h4><strong>SED</strong></h4>
<p>Sed is a so called "stream" editor, used for filtering and transforming text(files). Sed can perform several operations on text files. When sed is used, it walks through every line to see if the given command can be applied to the line. The results of this operation are displayed on the screen.</p>
<p>The syntax of the sed command is:</p>
<blockquote><p><strong>sed [options] {optional-a-script-here} <em>filenames</em></strong></p></blockquote>
<p>If you have very complex options, you can also use a seperate text file for the commands. An example with such an input file:</p>
<blockquote><p><strong>sed [options] <em>-f</em> <em>input-file-with-commands</em> filename</strong></p></blockquote>
<p><strong>Substitution</strong></p>
<p>In my daily work I use the substitution feature of sed the most. Searching for a certain text phrase and replace it with another text phrase is a job we all face several times.</p>
<p>The syntax for substition commands in sed goes like this:</p>
<blockquote><p><strong>sed 's/{text-phrase}/{replacement}/[flags]'</strong></p></blockquote>
<p>Where flags can be:</p>
<ul>
<li>n - only replace the <em>n</em>-th time the text-phrase occurs</li>
<li>g - replace every occurance</li>
<li>p - print for each succesfull replacement the corresponding line</li>
<li>w filename - on a succesfull replacement, write the modified line to 'filename'</li>
</ul>
<p><strong>Line based operations</strong></p>
<p>Ofcourse 'sed' is not only used for substitution, but there are also a lot of options which are more line based. Some of these options are:</p>
<ul>
<li>d - Every line that matches with the given text phrase will not be displayed.
<ul>
<li>sed /textphrase/d filename</li>
</ul>
</li>
<li>a\ text - Append text after a line</li>
<li>i\ text - Insert text before the line</li>
<li>c\ text - Replaces lines of text</li>
</ul>
<h4>GAWK</h4>
<p>Gawk is not an ordinary filter, but more some kind of programming language. Because learning gawk would fall out of the scope of this document, we wont go very deep on this. Base syntax of gawk is:</p>
<blockquote><p><strong>gawk [options] '/text-pattern/{action}' filename</strong></p></blockquote>
<p>So, if we enter this line at the prompt to find the UID of the user www-data.</p>
<blockquote><p><strong>gawk <span style="text-decoration: underline;">-F':'</span> '/<span style="text-decoration: underline;">www-data</span>/{<span style="text-decoration: underline;">print $3</span>}' <span style="text-decoration: underline;">/etc/passwd</span></strong></p></blockquote>
<p>Then the output displays the UID of the user "www-data". Short explanation of the above command:</p>
<ol>
<li><strong>-F':'</strong> - set the field delimiter to a semicolon (default delimiter is a space).</li>
<li><span style="text-decoration: underline;"><strong>www-data</strong></span> - this is the text phrase, we we're looking for</li>
<li><span style="text-decoration: underline;"><strong>print $3</strong></span> - this is the action to perform, which means that the 3rd column has to be printed</li>
<li><span style="text-decoration: underline;"><strong>/etc/passwd</strong></span> - this is the filename that we would like to process.</li>
</ol>
<p>But there's more to do with gawk. You can also use some logical operators to perform tasks if the line matches the text phrase, like this:</p>
<blockquote><p><strong>gawk -F':' '<span style="text-decoration: underline;">$1 </span><span style="text-decoration: underline;">== "www-data"</span> {<span style="text-decoration: underline;">print $0</span>}' /etc/passwd</strong></p></blockquote>
<p>Again a little explanation:</p>
<ol>
<li><strong>$1 == "www-data"</strong> - means that IF column 1 equals "www-data" the action is going to be performed.</li>
<li><strong>print $0</strong> - The variable <strong>$0</strong> is a reference to the entire line. So if the line statement is true, the whole line will be printed.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.vtek.nl/learning-linux-part-515-software.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unauthorized Cake PHP Guide</title>
		<link>http://www.vtek.nl/cakephp-guide-unauthorized-programming.html</link>
		<comments>http://www.vtek.nl/cakephp-guide-unauthorized-programming.html#comments</comments>
		<pubDate>Mon, 21 Sep 2009 08:01:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[cakephp]]></category>
		<category><![CDATA[Framework]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.vtek.nl/?p=342</guid>
		<description><![CDATA[Today I found a tweet of an unauthorized cakephp guide, which turnred out to be a wiki with usefull cakephp information.
Site : Unauthorized cake guide
The official CakePHP ( aka the cakephp book ) can be found over here
]]></description>
			<content:encoded><![CDATA[<p><img class="alignright" title="Cakephp logo" src="http://cakephp.org/img/cake-logo.png" alt="" width="126" height="126" />Today I found a tweet of an unauthorized cakephp guide, which turnred out to be a wiki with usefull cakephp information.</p>
<p>Site : <a title="Unauthorized Cake Guide" href="http://www.unauthorizedcakeguide.com" target="_blank">Unauthorized cake guide</a></p>
<p>The official CakePHP ( aka the cakephp book ) can be found over <a title="cakephp book" href="http://book.cakephp.org/">here</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.vtek.nl/cakephp-guide-unauthorized-programming.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vim as a PHP editor</title>
		<link>http://www.vtek.nl/vim-as-a-php-editor-uncategorized.html</link>
		<comments>http://www.vtek.nl/vim-as-a-php-editor-uncategorized.html#comments</comments>
		<pubDate>Fri, 18 Sep 2009 21:03:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Shell]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://www.vtek.nl/?p=338</guid>
		<description><![CDATA[Matthew Weier O'phinney has posted a great article about using vim as your php editor. Adding mappings to run the file through php linter helps you finding any (syntax)errors while you're working in vim.
Also a project plugin is explained in this article.
Matthew's blog
]]></description>
			<content:encoded><![CDATA[<p>Matthew Weier O'phinney has posted a great article about using vim as your php editor. Adding mappings to run the file through php linter helps you finding any (syntax)errors while you're working in vim.</p>
<p>Also a project plugin is explained in this article.</p>
<p><a title="VIM as PHP editor" href="http://weierophinney.net/matthew/archives/164-Vim-Productivity-Tips-for-PHP-Developers.html#extended" target="_blank">Matthew's blog</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.vtek.nl/vim-as-a-php-editor-uncategorized.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Learning Linux Part 4/15: The shell explained</title>
		<link>http://www.vtek.nl/learning-linux-part-415-software.html</link>
		<comments>http://www.vtek.nl/learning-linux-part-415-software.html#comments</comments>
		<pubDate>Fri, 18 Sep 2009 20:27:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[LPI]]></category>
		<category><![CDATA[Shell]]></category>

		<guid isPermaLink="false">http://www.vtek.nl/?p=327</guid>
		<description><![CDATA[Alright, part 4 of the series, which is mostly dedicated to the shell environment.

What is a shell?
Various shells
Basic functions of bash
Default settings in the shell
Boot files of the shell

WHAT IS A SHELL?
The shell is a text  based interface between de user and the linux Kernel. The shell is capable of translate commands of the user [...]]]></description>
			<content:encoded><![CDATA[<p>Alright, part 4 of the series, which is mostly dedicated to the shell environment.<span id="more-327"></span></p>
<ul>
<li><a title="What is a shell?" href="#what-is-a-shell">What is a shell?</a></li>
<li><a title="Various shells in linux" href="#various-shells">Various shells</a></li>
<li><a title="Basic functions Bash" href="#basic-functions-bash">Basic functions of bash</a></li>
<li><a title="Default settings shell" href="#default-settings-shell">Default settings in the shell</a></li>
<li><a title="Boot files of the shell" href="#boot-files-shell">Boot files of the shell</a></li>
</ul>
<p><span style="text-decoration: underline;"><strong><a name="what-is-a-shell">WHAT IS A SHELL?</a></strong></span></p>
<p>The shell is a text  based interface between de user and the linux Kernel. The shell is capable of translate commands of the user into system calls for the computer.</p>
<p><span style="text-decoration: underline;"><strong><a name="various-shells">VARIOUS SHELLS</a></strong></span></p>
<p>The linux platform has several different shells available. The most common shells are:</p>
<p><strong>Bourne Shell</strong></p>
<p>The original<strong> </strong>Unix shell is the Bourne Shell, which was developed by Steve Bourne. This shell resides in most of the time at <strong>/bin/sh</strong></p>
<p><strong>C-shell</strong></p>
<p>The C-Shell which was developed later then the Bourne Shell and was considered the improved version of the Bourne Shell. It is easier to work with, mostly because of functions like `code completion` and `history`.. The path of this shell is :<strong> /bin/csh</strong></p>
<p><strong>Korn-Shell</strong></p>
<p>The Korn Shell combines the best of previous shells. Most people use it to stay compatible with the Bourne shell and have the easy functions of the C-Shell. This path of this shell is : <strong>/bin/ksh</strong></p>
<p><strong>Bourne Again Shell</strong></p>
<p>The Bourne Again shell (bash) is an extension on the Bourne Shell. It is backwards compatible with the Bourne Shell. This is the most popular shell on most linux computers, because of it's easy to use features like:</p>
<ul>
<li>code completion</li>
<li>wildcards support</li>
<li>history</li>
<li>redirection</li>
<li>etc.</li>
</ul>
<p><strong>tcsh</strong></p>
<p>A shell which is pretty popular under C developers, because tcsh has an internal programming language which is very similair to C itselves. Features are very common to bash.</p>
<p><strong>pdksh</strong></p>
<p>Public Domain Korn Shell<strong> </strong>is a variant of the original Korn Shell. <strong><br />
</strong></p>
<p><strong>ash &amp; zsh</strong></p>
<p>Ash en Zsh are some small shells that are not very common, so we wont pay attention to them this time.</p>
<p><strong>SHELL USAGE TYPES</strong></p>
<p>The shell can be used in different kind of ways:</p>
<ol>
<li><strong>Interactive shell</strong> - This shell is used when you open a terminal and a certain shell is loaded.</li>
<li><strong>Non-interactive shell</strong> - When you start a shell script or a command, the non interactive shell is used.</li>
<li><strong>Login shell</strong> - If you login, this shell is used, based on the information that resides in /etc/passwd .</li>
<li><strong>Subshell</strong> - A shell started within a shell ( ie. when you starting bash inside bash )</li>
<li><strong>Remote shell</strong> (rsh) - This shell is used in a network environment, to login from one machine to another. Due to some serious security issues, this shell isn't used any more.</li>
<li><strong>Secure shell</strong> (ssh) - A shell which makes a secure encrypted connection from one computer to the other.</li>
</ol>
<p><span style="text-decoration: underline;"><strong><a name="basic-functions-bash">BASIC FUNCTIONS OF BASH</a></strong></span></p>
<p><strong>INPUT AND OUTPUT (I/O)</strong></p>
<p>Input and Output on linux is based on the fact that every device of the system is treated as a file. So there is no difference between the treatment of a harddisk or a modem.</p>
<p>Linux has a standard input, standard output and standard error. The standard input is in most cases the combination of the keyboard and the monitor. Standard output and standard error are also being showed on the monitor these days.</p>
<p><strong>BACKGROUND AND FOREGROUND</strong></p>
<p>Linux gives you the possibility to start a process in the background. This can be done by adding an ampersand to the command.<br />
For example: if you would like to search for the file "hostname" on the linux system, but dont want to wait untill the process is finished, then you can use the following command.</p>
<p><em><code>find / -name "hostname" &amp;</code></em></p>
<p>To regain control on the find process, you can use the internal command "<strong>fg</strong>" (foreground). To put it back to the background you can use the "<strong>bg</strong>" command.</p>
<p>Processes that are running on the background or foregrond can be listed by using the "<strong>jobs</strong>" command.</p>
<p><code>root@overloader:/# find / -name "*.php" &amp;<br />
[1] 6001<br />
root@overloader:/# jobs<br />
[1]+  Running                 find / -name "*.php" &amp;<br />
root@overloader:/#</code></p>
<p><strong>QUOTING</strong></p>
<p>Sometimes you don't want characters to be substituted. In that case you can make use of escaping, which is really no more then putting a backslash in front of the character OR put the text between single quotes.<br />
For example:</p>
<p><code>echo \* \* \* \* \* \*</code></p>
<p>or</p>
<p><code>echo '* * * * * *'</code></p>
<p>Will display in both ways "* * * * * *" on your commandline.</p>
<p><span style="text-decoration: underline;"><strong><a name="boot-files-shell">BOOT FILES OF THE SHELL</a></strong></span></p>
<p>When you are starting a shell, a couple of files are being scanned for default settings. These settings are used to define the environment.</p>
<p><strong>/etc/profile and .bash_profile<br />
</strong></p>
<p>This file defines<strong> </strong>all settings which apply to users of bash. For example, the prompt, the PATH and aliases can be defined here. After this file is processed, the system looks for a file called <strong>~/.bash_profile</strong> to apply user specific settings.</p>
<p><strong>/etc/bashrc and ~/.bashrc</strong></p>
<p>While the <strong>/etc/profile</strong> is being used every time when you login, <strong>/etc/bashrc</strong> is being read every time when you start a new subshell. The <strong>~/.bashrc</strong> file is the personalised file of /etc/bashrc.</p>
<p><strong>~/.bash_logout</strong></p>
<p>This file is called when you logout and can be usefull for cleaning up temporary files, or something like that.</p>
<p><span style="text-decoration: underline;"><strong><br />
</strong></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.vtek.nl/learning-linux-part-415-software.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Learning Linux Part 3/15: Working at the shell</title>
		<link>http://www.vtek.nl/learning-linux-part-315-software.html</link>
		<comments>http://www.vtek.nl/learning-linux-part-315-software.html#comments</comments>
		<pubDate>Tue, 15 Sep 2009 19:22:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[LPI]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://www.vtek.nl/?p=320</guid>
		<description><![CDATA[Part 3 of the series...! This one is about the commandline, files and file actions.
This time covers:


special characters at the commandline
common linux folders
file types in linux
searching text and files
copy, move, destroy and create folders
some other commands...
creating text files with vi(m)
settings in vi(m)


SPECIAL CHARACTERS AT THE COMMAND LINE
At the shell some characters have special functions. For [...]]]></description>
			<content:encoded><![CDATA[<p>Part 3 of the series...! This one is about the commandline, files and file actions.</p>
<p>This time covers:</p>
<p><span id="more-320"></span></p>
<ul>
<li><a title="special characters at the commandline" href="#special-characters">special characters at the commandline</a></li>
<li><a title="common linux folders" href="#common-linux-folders">common linux folders</a></li>
<li><a title="file types in linux" href="#file-types-linux">file types in linux</a></li>
<li><a title="searching text and files" href="#searching-text-files">searching text and files</a></li>
<li><a title="copy move destroy and create folders" href="#copy-move-destroy-folders">copy, move, destroy and create folders</a></li>
<li><a title="some other commands">some other commands...</a></li>
<li><a title="Creating text files with Vim" href="#creating-text-files-vim">creating text files with vi(m)</a></li>
<li><a title="Settings in Vim" href="#settings-in-vim">settings in vi(m)</a></li>
</ul>
<p><!--more--></p>
<p><span style="text-decoration: underline;"><strong><a name="special-characters">SPECIAL CHARACTERS AT THE COMMAND LINE</a></strong></span></p>
<p>At the shell some characters have special functions. For example the asterisk (*) is used as a wildcard. Here are some more characters with their exact function:</p>
<p>(<strong> * </strong>) - Character to be used for any number of characters. You can also use multiple instances of this character, then it's search results will be limited. For example looking for a file called "<strong>b</strong>e<strong>t</strong>a<strong>27</strong>" and "<strong>b</strong>ABCDEFG<strong>t</strong>HIJKLM<strong>27</strong>" in the directory /home/user can be done using <em><strong>find /home/user -name "b*t*27"</strong></em></p>
<p>(<strong> ? </strong>) - Can be used as a wildcard for one character. ls -l b?ta will display all files starting with a "b", followed by any character and ending at "ta".</p>
<p>(<strong> [ ] </strong>) - Characters between these characters can provide additional characters. For example "<strong>ls -l file[sd]</strong>" will return both "files" and "filed".</p>
<p>( <strong>~</strong> )<strong> - </strong>This character represents the current logged in users home directory</p>
<p>( <strong>-</strong> ) - This represents the previous directory. This might become handy when switching between 2 directories.</p>
<p><strong><span style="text-decoration: underline;"><a name="common-linux-folders">COMMON LINUX FOLDERS</a></span><br />
</strong></p>
<p>Like Windows has My Documents, Program Files, etc. Linux also has it's LSB ( Linux Standards Base ) which describes which files should reside in which folder.</p>
<table border="0">
<tbody>
<tr>
<td><strong>/bin</strong></td>
<td>Contains commands needed for the booting of the computer. This folder is accessible for users.</td>
</tr>
<tr>
<td><strong>/sbin</strong></td>
<td>This folder holds all system files which are used to manage the system. Some examples are shutdown, fdisk, etc.</td>
</tr>
<tr>
<td><strong>/etc</strong></td>
<td>Most (system)applications have their configuration files located here.</td>
</tr>
<tr>
<td><strong>/lib</strong></td>
<td>Shared library files can be found here. It's mostly the same as DLL files on a windows machine.</td>
</tr>
<tr>
<td><strong>/dev</strong></td>
<td>Folder that contains all the device files. Like /dev/hd, /dev/sda, /dev/usb, /dev/cdrom</td>
</tr>
<tr>
<td><strong>/var</strong></td>
<td>contains files with a variable size like log files (for example /var/log/messages).</td>
</tr>
<tr>
<td><strong>/home</strong></td>
<td>contains all home directories.</td>
</tr>
<tr>
<td><strong>/boot</strong></td>
<td>contains the files needed to boot a machine. Like the kernel, initrd, etc.</td>
</tr>
<tr>
<td><strong>/opt</strong></td>
<td>folder which is used in most cases to store large applications, like KDE, openoffice, etc.</td>
</tr>
<tr>
<td><strong>/proc</strong></td>
<td>folder which holds all processes. This folder does not contain files, but references to processes.</td>
</tr>
<tr>
<td><strong>/usr</strong></td>
<td>contains user related files and (sub)folders.</td>
</tr>
<tr>
<td><strong>/usr/bin</strong></td>
<td>Contains the most commands and applications that can be used by users</td>
</tr>
<tr>
<td><strong>/usr/etc</strong></td>
<td>contains configuration files for applications in /usr/bin</td>
</tr>
<tr>
<td><strong>/usr/lib</strong></td>
<td>contains shared library files for applications in /usr/bin</td>
</tr>
</tbody>
</table>
<p><span style="text-decoration: underline;"><strong><a name="file-types-linux">FILE TYPES IN LINUX</a></strong></span></p>
<p><strong>FILES</strong></p>
<p>A linux filesystem makes distinction between executable files and non-executable files. Executable files are files which have the execution permission bit set. If you'd like to know what the contents of a certain file is, you can use the command "file" followed by the file you would like to investigate.</p>
<p>An example:</p>
<p><code>ferdinant@overloader:~$ file /etc/passwd<br />
/etc/passwd: ASCII text<br />
</code></p>
<p><strong>LINKS</strong></p>
<p>A link<strong> </strong>is a reference to another file or directory. Linux does know 2 type of links:</p>
<ol>
<li>Hard links</li>
<li>Soft links</li>
</ol>
<p>More about links in another lesson.</p>
<p><strong>SOCKET AND FIFOS</strong></p>
<p>Sockets and fifos are files which are created dynamically, which also are deleted dynamically, to exchange information between processes.</p>
<p><span style="text-decoration: underline;"><strong><a name="searching-text-files">SEARCHING TEXT AND FILES</a></strong></span></p>
<p>If you are looking for a special text phrase in a directory with files, you can use the command "grep". Grep has several options to scan through files for a given pattern.</p>
<p>To only view the contents of a file, you can use the commands "cat, tac, head, tail, more and less". Check their man pages for more information.</p>
<p>If you want to search for a certain file you can use the commands "locate" and "find".</p>
<p><span style="text-decoration: underline;"><strong>COPY, MOVE, DESTROY AND CREATE FOLDERS</strong></span></p>
<p>To copy a directory you can use the "cp" command. This command has several extra options, a few of them are:</p>
<p><strong>-v</strong> | gives verbose output<br />
<strong>-r</strong> | copy directories recursively ( means that it will also copy subfolders )<br />
<strong>-a</strong> | archive ( equal to --dereference --preserve and --r(ecursive) )<br />
<strong>-i </strong>| interactive ( prompt before overwrite )</p>
<p>Moving files and directories can be done using the "mv" command. The options are almost equal to "cp".</p>
<p>Destroying a (empty) directory can be done using "rmdir". If the directory is not empty, then it can be deleted using "rm -r" which recursively removes the directory and all it's content.</p>
<p>Creating folders can be done using the "mkdir" command. An easy to use option is the "-p" option, which creates all parent directories if they do not exist.</p>
<p><span style="text-decoration: underline;"><strong>SOME OTHER COMMANDS....</strong></span></p>
<p>Here are some other commands which might become usefull in your daily sysadmin tasks:</p>
<p><strong>cal</strong> | returns a simple calendar. First argument give is a month and/or a year.<br />
<strong>date</strong> | when no arguments given, it gives back the current set time. Also let you adjust the date/time of your computer.<br />
<strong>free</strong> | Shows how many memory is available</p>
<p><span style="text-decoration: underline;"><strong>CREATING TEXT FILES WITH VI(M)</strong></span></p>
<p>The text editor vi has 2 modes available:</p>
<p>1. Input Mode<br />
2. Command mode</p>
<p>In the Input mode, you can type text into the file. The command mode enables you to perform commands in vim like replacing text, save the file, perform an undo, etc.</p>
<p>Saving a file with vi can be done in the command mode using ":w". If you also want to exit vim you can combine the command by adding a "q", which makes it ":wq". If you did not modified anything, you can exit vim using ":q". And if you did edit something, but would you like to quit without saving, you can add an "!" character. ( ":q!" ).</p>
<p>Some other handy commands in vi are</p>
<p><strong>a</strong> | append text to the place where the cursor is.<br />
<strong>i </strong>| insert text to the place where the cursor is.<br />
<strong>o</strong> | open a new line and add text there<br />
<strong>x</strong> | delete the character at the cursors position<br />
<strong>d$</strong> | delete text from the character till the end of the line<br />
<strong>dd</strong> | delete the whole line<br />
<strong>dw</strong> | delete from the cursor untill the next word</p>
<p>Showing line numbers can be done using ":se number" ( undoing this with nonumber instead of number ).</p>
<p>Search, Cut and Paste. Searching for a certain text phrase can be done using a slash followed by the searchphrase.<br />
( For example: /word )</p>
<p>Cutting can be done by just deleting the lines. This will put the deleted text into the buffer of Vi(m). If you would like to paste the cutted text you can simply use the "p" (paste) character on you keyboard.</p>
<p>If you want to copy text from a text file, you can use the the option starting with a "d" mentioned earlier. But, instead of the you can use the "y" character.</p>
<p><span style="text-decoration: underline;"><strong>SETTINGS IN VI(M)</strong></span></p>
<p>Some settings that might become usefull while editing in vi(m) are:</p>
<p><strong>ai</strong> | autoindent<br />
<strong>eb</strong> | error bells - plays error sounds when an invalid command is used<br />
<strong>nu</strong> | shows line numbers<br />
<strong>sm</strong> | showmatch, shows the corresponding brackets.<br />
<strong>smd</strong> | show mode, shows in which mode you are<br />
<strong>warn</strong> | shows a warning when you want to quit vi(m) without saving</p>
]]></content:encoded>
			<wfw:commentRss>http://www.vtek.nl/learning-linux-part-315-software.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Turn your Playstation3 into a media center</title>
		<link>http://www.vtek.nl/turn-your-playstation3-into-a-media-center-software.html</link>
		<comments>http://www.vtek.nl/turn-your-playstation3-into-a-media-center-software.html#comments</comments>
		<pubDate>Mon, 14 Sep 2009 19:53:11 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[ps3]]></category>
		<category><![CDATA[upnp]]></category>

		<guid isPermaLink="false">http://www.vtek.nl/?p=310</guid>
		<description><![CDATA[PS3Hax member Lichemaster announced more then 1,5 year ago a new PS3 project called Megabox. MegaBox is similar to a media center, similar to the XBMC on the Xbox 1, fully functioning on the PS3.
He also quoted:
" The MegaBox has many cool features that any PS3 owner would find interest in such as VoIP, P2P, [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_314" class="wp-caption alignright" style="width: 370px"><img class="size-full wp-image-314" title="ps3 megabox" src="http://www.vtek.nl/wp-content/uploads/2009/09/ps3megabox.jpg" alt="ps3 megabox project" width="360" height="270" /><p class="wp-caption-text">ps3 megabox project</p></div>
<p>PS3Hax member Lichemaster announced more then 1,5 year ago a new PS3 project called Megabox. MegaBox is similar to a media center, similar to the XBMC on the Xbox 1, fully functioning on the PS3.</p>
<p>He also quoted:</p>
<p><em>" The MegaBox has many cool features that any PS3 owner would find interest in such as VoIP, P2P, TV, Movies (Including MKV), and much more!</em></p>
<p><em>The best part is the program will require NO INSTALLATION, and would be OPEN SOURCE (based on FREEVO). In layman's terms, all you need to do is pop in a CD/Flash drive with the program and anyone can enjoy it without too much problems (no need for linux either)."</em></p>
<p>source: http://www.hdtvarcade.com/hdtvforum/index.php?showtopic=12401</p>
<p>Sounds like a great replacement for XBMC to me!</p>
<p>More information about the install process and download links can be found <a title="PS3 Megabox Project" href="http://www.ps3-hacks.com/2008/01/18/ps3-megabox-homebrew-project/">here</a></p>
<p>To see more information about megabox, see this youtube video:<br />
<a title="PS3 Megabox Linux Hack" href="http://www.youtube.com/watch?v=6IosFuy83_c">Youtube - PS3 Megabox Linux Hack </a></p>
<p>Please comment if you have any experience using this software!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.vtek.nl/turn-your-playstation3-into-a-media-center-software.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
