    <?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>Yet Another Linux BlogYet Another Linux Blog &#187; howto</title>
	<atom:link href="http://linux-blog.org/tag/howto/feed/" rel="self" type="application/rss+xml" />
	<link>http://linux-blog.org</link>
	<description>Open Source, Open Blog</description>
	<lastBuildDate>Wed, 14 Mar 2012 23:18:15 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Some Random Helpful Hints</title>
		<link>http://linux-blog.org/some-random-helpful-hints/</link>
		<comments>http://linux-blog.org/some-random-helpful-hints/#comments</comments>
		<pubDate>Sat, 11 Jun 2011 03:34:41 +0000</pubDate>
		<dc:creator>devnet</dc:creator>
				<category><![CDATA[Misc]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[cli]]></category>
		<category><![CDATA[find]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[rsync]]></category>
		<category><![CDATA[tips and tricks]]></category>

		<guid isPermaLink="false">http://linux-blog.org/?p=1947</guid>
		<description><![CDATA[I&#8217;ve been slowly collecting a few commands that are useful to me for various things while using Linux.  I figured that I would share some of these handy commands.  In no particular order, they are: To copy, preserving permissions AND structure AND recursively, from a remote system to your local system: Please note that the [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been slowly collecting a few commands that are useful to me for various things while using Linux.  I figured that I would share some of these handy commands.  In no particular order, they are:</p>
<p><strong>To copy, preserving permissions AND structure AND recursively, from a remote system to your local system:</strong></p>
<pre class="brush: plain; title: ; notranslate">rsync -r -a -v -e ssh server1.address.com:/dir/youwant/to/copy/ /local/location/for/directory/</pre>
<p>Please note that the code above assumes that you are using key based authentication and not password.  For password based authentication, it would look more like this:</p>
<pre class="brush: plain; title: ; notranslate">rsync -r -a -v -e ssh remoteuser@server1.address.com:/dir/youwant/to/copy/ /local/location/for/directory/</pre>
<p><strong>To remove all files matching a certain extension (xml in my example) in a directory:</strong></p>
<pre class="brush: plain; title: ; notranslate">find . -type f -name &quot;*.xml&quot; -exec rm -f {} \;</pre>
<p><strong>To go into a location, find all files that match a certain extension (jpg in my example) and move them to a different directory:</strong></p>
<pre class="brush: plain; title: ; notranslate">find . -name &quot;*.jpg&quot; | xargs -i mv '{}' /location/to/move/them/to/ </pre>
<p><strong>To recursively remove empty directory from the directory you are currently in (your pwd):</strong></p>
<pre class="brush: plain; title: ; notranslate">find -depth -type d -empty -exec rmdir {} \;</pre>
<p>These are a few of the commands that I&#8217;ve found useful in the past few weeks.  I hope you find them useful as well.  I&#8217;ll be test driving quite a few different distributions and reporting back what I find as well as experimenting with various different commands&#8230;I really like find because it is so powerful so look for some more posts with uses of the find command.  Thanks for reading and sorry for my lapse in posting this past month!</p>
<p><a href="http://linux-blog.org/some-random-helpful-hints/" rel="bookmark">Some Random Helpful Hints</a> originally appeared on <a href="http://linux-blog.org">Yet Another Linux Blog</a> on June 10, 2011.</p>
]]></content:encoded>
			<wfw:commentRss>http://linux-blog.org/some-random-helpful-hints/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Chasing Your &#8216;Tail&#8217; With Linux</title>
		<link>http://linux-blog.org/chasing-your-tail-with-linux/</link>
		<comments>http://linux-blog.org/chasing-your-tail-with-linux/#comments</comments>
		<pubDate>Thu, 27 Jan 2011 06:04:24 +0000</pubDate>
		<dc:creator>usama</dc:creator>
				<category><![CDATA[Guest Editors]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[cli]]></category>
		<category><![CDATA[commands]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[tail]]></category>
		<category><![CDATA[tips and tricks]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://linux-blog.org/?p=1804</guid>
		<description><![CDATA[&#8216;GNU tail&#8217; is a small utility which prints (by default) the last 10 lines of any file. This an amazing piece of software not only allows you to see the last part of a file but also enables you to monitor a file’s changes without opening the file. &#8216;tail&#8217; can be used alone or can [...]]]></description>
			<content:encoded><![CDATA[<p>&#8216;GNU tail&#8217; is a small utility which prints (by default) the last 10 lines of any file. This an amazing piece of software not only allows you to see the last part of a file but also enables you to monitor a file’s changes without opening the file.</p>
<p>&#8216;tail&#8217; can be used alone or can be combined with other commands like &#8216;grep&#8217;, &#8216;ls&#8217; etc.</p>
<p>To use &#8216;tail&#8217;, let’s first create a text file. You can create the file by issuing following command in terminal;</p>
<pre class="brush: plain; title: ; notranslate">touch my_file</pre>
<p>Now open my_file with your favorite text editor (nano in my case) and write some lines. For this article, I have written the following 15 lines;</p>
<pre class="brush: plain; title: ; notranslate">this is the 1st line
this is the 2nd line
this is the 3rd line
this is the 4th line
this is the 5th line
this is the 6th line
this is the 7th line
this is the 8th line
this is the 9th line
this is the 10th line
this is the 11th line
this is the 12th line
this is the 13th line
this is the 14th line
this is the 15th line</pre>
<p>Now issue the following command in terminal;</p>
<pre class="brush: plain; title: ; notranslate">tail my_file</pre>
<p>It will print the last 10 lines which would be the “this is the 6th line” through “this is the 15th line”.</p>
<p>You can control the number of lines which &#8216;tail&#8217; will print. You can either increase or decrease the number of lines. For example, if you want &#8216;tail&#8217; to show only last 3 lines, you can do this by issuing the following command;</p>
<pre class="brush: plain; title: ; notranslate">tail -n 3 my_file</pre>
<p>Now it will print only last 3 lines. You can use any number of lines instead of 3. Or you can use a plus sign like;</p>
<pre class="brush: plain; title: ; notranslate">tail -n+7 my_file</pre>
<p>&#8216;tail&#8217; will start printing from 7th line to the end of the file.</p>
<p>You can view the desired file with respect to size. Issue the following command in terminal;</p>
<pre class="brush: plain; title: ; notranslate">tail -c 14 my_file</pre>
<p>And it will show the output of last 14 bytes. In my case, the output was;</p>
<p><em>the 15th line</em></p>
<p>&#8216;tail&#8217; not only displays the static output of a file but it can also monitor the file for changes. A &#8216;-f&#8217; option is used with &#8216;tail&#8217; and it starts acting like a monitoring tool which not only displays the last few lines but also constantly updates the output as the file changes. Here is a very popular example;</p>
<pre class="brush: plain; title: ; notranslate">tail -f /var/log/message</pre>
<p>&#8216;tail&#8217; will print the last 10 lines of &#8216;message&#8217; file. If you now plug-in you USB stick, you will notice that the change in &#8216;message&#8217; file will instantly be reported by &#8216;tail&#8217;. To release the cursor press Ctrl+c.</p>
<p>There are many other useful options which you can use with &#8216;tail&#8217; like;</p>
<pre class="brush: plain; title: ; notranslate">tail -q my_file        # never output headers</pre>
<pre class="brush: plain; title: ; notranslate">tail -v my_file        # always outputs headers</pre>
<p>You can combine &#8216;tail&#8217; with other utilities like &#8216;ls&#8217;, &#8216;grep&#8217;, &#8216;head&#8217; etc.</p>
<p>You can combine &#8216;tail&#8217; with &#8216;grep&#8217; to get lines with some specific &#8216;word&#8217;.</p>
<pre class="brush: plain; title: ; notranslate">tail -n 5 my_file | grep 14</pre>
<p>It will print only those lines out of last 5 which contains the word &#8217;14&#8242;. In my case the output was:</p>
<p><em>this is 14th line    # &#8217;14&#8242; will be highlighted</em></p>
<p>&#8216;tail&#8217; can also be combined with &#8216;ls&#8217; to get the list of last few files/folders. For example, if you issue the following command;</p>
<pre class="brush: plain; title: ; notranslate">ls -l | tail -n 2</pre>
<p>It will give a long listing of files/folders but will show the last 2 entries of the working directory.</p>
<p>These are just two examples of combining &#8216;tail&#8217; with other utilities. There are countless examples of combination of &#8216;tail&#8217; and other softwares.</p>
<p>&#8216;GNU tail&#8217; is a very handy tool. It can output any amount of data depending upon the options used. It makes the work of an ordinary user much easer and helps him/her find information in files more efficiently. To become an expert in Linux, this is a mandatory utility over which a user must have complete mastery.  Hopefully, this <a href="http://readalquran.org" onclick="return TrackClick('http%3A%2F%2Freadalquran.org','tutorial')" target="_blank">tutorial </a>gets you started chasing your tail!</p>
<p><a href="http://linux-blog.org/chasing-your-tail-with-linux/" rel="bookmark">Chasing Your &#8216;Tail&#8217; With Linux</a> originally appeared on <a href="http://linux-blog.org">Yet Another Linux Blog</a> on January 27, 2011.</p>
]]></content:encoded>
			<wfw:commentRss>http://linux-blog.org/chasing-your-tail-with-linux/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Using &#8216;Alias&#8217; in Linux</title>
		<link>http://linux-blog.org/using-alias-in-linux/</link>
		<comments>http://linux-blog.org/using-alias-in-linux/#comments</comments>
		<pubDate>Thu, 23 Dec 2010 14:42:50 +0000</pubDate>
		<dc:creator>usama</dc:creator>
				<category><![CDATA[Guest Editors]]></category>
		<category><![CDATA[Misc]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[cli]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[tips and tricks]]></category>

		<guid isPermaLink="false">http://linux-blog.org/?p=1770</guid>
		<description><![CDATA[There comes a time in every Linux users&#8217; life when you will open the Terminal more often than not because you have realized that it is faster, more efficient and more powerful than GUI (Graphical User Interface).  You&#8217;ll have started to learn more and more commands and now feel more comfortable with command prompt.  The [...]]]></description>
			<content:encoded><![CDATA[<p>There comes a time in every Linux users&#8217; life when you will open the Terminal more often than not because you have  realized that it is faster, more efficient and more powerful than GUI  (Graphical User Interface).  You&#8217;ll have started to learn more and more  commands and now feel more comfortable with command prompt.  The command  prompt is all about commands – short commands as well as long commands.   If you are like me then you may not like to type the long commands (or  even small commands) <img src='http://linux-blog.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>You may be thinking about some way to avoid typing commands over and over. Enter the ‘alias&#8217;.</p>
<p>The  &#8216;alias&#8217; tool is a way to make the complicated things simple (and simple  things simpler). You can use &#8216;alias&#8217; instead of long (or even short)  commands.  Now let’s see how the &#8216;alias&#8217; works.</p>
<p>&#8216;alias&#8217; can make difficult and lengthy commands easy. The general format of &#8216;alias&#8217; is:</p>
<pre class="brush: plain; title: ; notranslate">alias Any_Word=”Command”</pre>
<p>It  means you linked an existing command to a (New) Word. This ‘Any_Word&#8217;  may contain anything – any alpha-numeric symbol, ‘Any_Word’ as well as ‘Command’ are interchangeable  and can be used for the same purpose.</p>
<h2>Simple Commands Made Simpler</h2>
<p>As an example, &#8216;ls -l&#8217;  is used for listing directory contents in &#8216;long  listing format&#8217;. This &#8216;ls -l&#8217; can be replaced with a simpler alias. You  can set the ‘alias’ for ‘ls –l’ as follows:</p>
<pre class="brush: plain; title: ; notranslate">alias ll=”ls –l”</pre>
<p>Now you just have to type ‘ll’ (without quotes) to get ‘long listing format’.</p>
<p>Or if you frequently misspell ‘ls’ as ‘sl’ and don’t want to install ‘sl’ package, then, you can use the following alias:</p>
<pre class="brush: plain; title: ; notranslate">alias sl=”ls”</pre>
<p>Now, whenever you type &#8216;sl&#8217; in terminal, it will give you same results as &#8216;ls&#8217;.</p>
<p>Now  consider even simpler example. To close a Terminal (or logout), you  have to type &#8216;exit&#8217; in Terminal. This &#8216;exit&#8217; command can be made even  simpler by using the following ‘alias’:</p>
<pre class="brush: plain; title: ; notranslate">alias x=&quot;exit&quot;</pre>
<p>Now, you only have to type &#8216;x&#8217; in Terminal to &#8216;exit&#8217;</p>
<p>Other examples of &#8216;alias&#8217; are:</p>
<pre class="brush: plain; title: ; notranslate">alias cp=&quot;cp -iv&quot;
#make copy operation interactive and verbose</pre>
<pre class="brush: plain; title: ; notranslate">alias rm=&quot;rm -iv&quot;
#make remove operation interactive and verbose</pre>
<pre class="brush: plain; title: ; notranslate">alias mv=&quot;mv -iv&quot;
#make move operation interactive and verbose</pre>
<h2>Make Package Management A Bit Simpler</h2>
<p>If you use Debian (or its derivatives) then you will be familiar with APT.  It is an excellent package manager.</p>
<p>In Ubuntu, to install software using APT, you have to use the following command:</p>
<pre class="brush: plain; title: ; notranslate">sudo apt-get install &lt;sofware_name&gt;</pre>
<p>It is a long command and consumes a lot of your time and energy <img src='http://linux-blog.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>You can shorten this command by using &#8216;alias&#8217;.  Issue the following command in Terminal:</p>
<pre class="brush: plain; title: ; notranslate">alias Install=”sudo apt-get install”</pre>
<p>You can obviously use your own word instead of ‘Install’.</p>
<p>Now, you just have to type:</p>
<pre class="brush: plain; title: ; notranslate">Install &lt;software_name&gt;</pre>
<p>to install the (same) software. Simple, isn&#8217;t it?</p>
<p>You can simplify other aspects of APT. For example, you can use the following ‘alias’:</p>
<pre class="brush: plain; title: ; notranslate">alias Remove=”sudo apt-get remove”</pre>
<p>to uninstall a software.</p>
<p>Some other examples of attaching APT with &#8216;alias&#8217; are:</p>
<pre class="brush: plain; title: ; notranslate">alias Update=”sudo apt-get update”</pre>
<pre class="brush: plain; title: ; notranslate">alias Upgrade=”sudo apt-get upgrade”</pre>
<pre class="brush: plain; title: ; notranslate">alias Search=”apt-cache search”</pre>
<pre class="brush: plain; title: ; notranslate">alias Autoremove=”sudo apt-get autoremove”</pre>
<pre class="brush: plain; title: ; notranslate">alias Autoclean=”sudo apt-get autoclean”</pre>
<pre class="brush: plain; title: ; notranslate">alias Purge=”sudo apt-get remove –purge”</pre>
<p>and so on&#8230;</p>
<h2>A Very Interesting ‘alias’ For A Difficult Keyboard Button</h2>
<p>On  some keyboards, the dot (.) button is at very difficult position and if  you have to use it more than once, it becomes even more difficult.  That’s why ‘cd ..’ is the command which I mistype the most.  This  complication can be easily removed by using following ‘alias’ (you  can use any other word instead of a dot):</p>
<pre class="brush: plain; title: ; notranslate">alias .=”cd ..”</pre>
<pre class="brush: plain; title: ; notranslate">alias ..=”cd ../..”</pre>
<pre class="brush: plain; title: ; notranslate">alias ...=”cd ../../..”</pre>
<pre class="brush: plain; title: ; notranslate">alias ....=”cd ../../../..”</pre>
<h2>Using Internet From Terminal</h2>
<p>If you regularly use <a href="http://lynx.isc.org/" onclick="return TrackClick('http%3A%2F%2Flynx.isc.org%2F','lynx')">lynx</a> to browse the internet in terminal then you have to type long urls with  lynx to visit the web pages.  You can simplify these long urls by using  ‘alias’:</p>
<pre class="brush: plain; title: ; notranslate">alias Google=”lynx http://www.google.com/”</pre>
<pre class="brush: plain; title: ; notranslate">alias Yahoo=”lynx http://www.yahoo.com/”</pre>
<pre class="brush: plain; title: ; notranslate">alias yalb =”lynx http://linux-blog.org/”</pre>
<p>and so on&#8230;</p>
<p>Now just type Google, Yahoo or yalb to visit the respective web sites.</p>
<h2>Simple &#8216;alias&#8217; For More Complicated Commands</h2>
<p>Long  commands are not only difficult to remember but also take more time to  type; when you have to use them on daily basis, you become frustrated  when typing them again and again and again&#8230; So, &#8216;alias&#8217; are more  suitable for long and complicated commands.</p>
<p>Let&#8217;s consider an example.</p>
<p>To find the top 10 largest files in your system, you can set the following ‘alias’:</p>
<pre class="brush: plain; title: ; notranslate">alias top10files=”find . -type f -exec ls -sh {} \; | sort -n -r | head -10”</pre>
<p>You  can even mix different commands with ‘alias’.  For instance, if you  regularly use &#8216;tail&#8217; and direct its output to file to later view that  file, you can set a very simple ‘alias’ to do this cumbersome operation  in 1 word:</p>
<pre class="brush: plain; title: ; notranslate">alias Tail=”tail /var/log/messages &gt; hello.txt;cat hello.txt”</pre>
<p>Now just enter &#8216;Tail&#8217; and viola! All is done at once.</p>
<p>You can use any file with tail and direct its output and you can even use &#8216;nano&#8217; or &#8216;vi&#8217; to view/edit its output.</p>
<p>Here’s another example&#8230; ‘alias’ to connect to a remote server:</p>
<pre class="brush: plain; title: ; notranslate">alias any_name=”ssh &lt;remote_server_address&gt; -l &lt;username&gt; -p &lt;port&gt;”</pre>
<p>You can even create ‘alias’ for your bash scripts, like:</p>
<pre class="brush: plain; title: ; notranslate">alias clc=”sh /home/user/myscripts/calc.sh”</pre>
<p>Now that you have set a few different ‘alias’  you might want to check that which &#8216;alias&#8217; are set on your system.  To do that, just issue the following command:</p>
<pre class="brush: plain; title: ; notranslate">alias</pre>
<p>and it will list all the set ‘alias’ you have.</p>
<p>To remove an ‘alias’, just issue the &#8216;unalias&#8217; command, like:</p>
<pre class="brush: plain; title: ; notranslate">unalias Google</pre>
<p>and now typing Google in terminal will do nothing (as it was set with lynx).</p>
<p>To remove all the &#8216;alias&#8217;, issue the following command and all the ‘alias’ are gone:</p>
<pre class="brush: plain; title: ; notranslate">unalias –a</pre>
<p>We  have discussed the way of setting the ‘alias’ for different kinds of  commands.  But setting ‘alias’ in this way be temporary.  When you reboot  you PC, all the ‘alias’ which you have set will be gone.  This does not  mean that you have to set all the ‘alias’ every time you boot your PC.  If you have set an ‘alias’ and you liked it so much that you want it to  permanently reside in you PC, just add this alias in ‘.bashrc’ file in  you home directory. For example, if you want ‘alias’:</p>
<p>Install &lt;software_name&gt;</p>
<p>to permanently reside in your PC then user your favorite text editor and add the following line in your ‘~/.bashrc’ file:</p>
<pre class="brush: plain; title: ; notranslate">alias Install=”sudo apt-get install”</pre>
<p>Now  this ‘alias’ will not vanish into thin air when you reboot your PC. Only  those ‘alias’  which are listed in ‘~/.bashrc’ file will be permanent.</p>
<p>This <a href="http://readalquran.org" onclick="return TrackClick('http%3A%2F%2Freadalquran.org','guide')" target="_blank"> guide </a>is just a preview about ‘alias’.  It is just about basic ways of  using ‘alias’ to make your life simpler.  ‘GNU  alias’ is a tool which can simplify your life immensely.  But  unfortunately this tool is not given the attention it deserves.  In  short, it is such a powerful tool that if you give it proper time, it  can make you forget typing <img src='http://linux-blog.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://linux-blog.org/using-alias-in-linux/" rel="bookmark">Using &#8216;Alias&#8217; in Linux</a> originally appeared on <a href="http://linux-blog.org">Yet Another Linux Blog</a> on December 23, 2010.</p>
]]></content:encoded>
			<wfw:commentRss>http://linux-blog.org/using-alias-in-linux/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>Linux File Permissions, Groups, and Users</title>
		<link>http://linux-blog.org/linux-file-permissions-groups-and-users/</link>
		<comments>http://linux-blog.org/linux-file-permissions-groups-and-users/#comments</comments>
		<pubDate>Thu, 04 Nov 2010 01:28:37 +0000</pubDate>
		<dc:creator>devnet</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[chgrp]]></category>
		<category><![CDATA[chmod]]></category>
		<category><![CDATA[chown]]></category>
		<category><![CDATA[desktop]]></category>
		<category><![CDATA[groups]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[permissions]]></category>
		<category><![CDATA[tips and tricks]]></category>

		<guid isPermaLink="false">http://linux-blog.org/?p=887</guid>
		<description><![CDATA[Why Are Permissions Important? Permissions are important for keeping your data safe and secure.   Utilizing permission settings in Linux can benefit you and those you want to give access to your files and you don&#8217;t need to open up everything just to share one file or directory (something Windows sharing often does).  You can group [...]]]></description>
			<content:encoded><![CDATA[<h3>Why Are Permissions Important?</h3>
<p>Permissions are important for keeping your data safe and secure.   Utilizing permission settings in Linux can benefit you and those you want to give access to your files and you don&#8217;t need to open up everything just to share one file or directory (something Windows sharing often does).  You can group individual users together and change permissions on folders (called directories in Linux) and files and you don&#8217;t have to be in the same OU or workgroup or be part of a domain for them to access those files.  You can change permissions on one file and share that out to a single group or multiple groups.  Fine grained security over your files places you in the driver seat in control of your own data.</p>
<p>Some will argue that it may be too much responsibility&#8230;that placing this onto the user is foolish and other aforementioned operating systems don&#8217;t do this.  You&#8217;d be right&#8230;XP doesn&#8217;t do this.  However, Microsoft saw what Linux and Unix do with the <a title="Principle of Least Privilege" href="http://en.wikipedia.org/wiki/Least_user_access" onclick="return TrackClick('http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FLeast_user_access','Principle+of+Least+Privilege')" target="_blank">principle of least privilege</a> and have copied this aspect from them.  While the NTFS filesystem employs user access lists with workgroups and domains&#8230;it cannot mirror the fine grained, small scale security of Linux for individual files and folders.  For the home user, Linux empowers control and security.</p>
<p>I&#8217;m going to go over how users and directory/file permissions work.  So, let&#8217;s setup an example that will allow us to explore file permissions.  If you have any questions, just ask it in the comments section at the end of the article.</p>
<h2>File Permissions Explained</h2>
<p><a href="http://linux-blog.org/wp-content/uploads/2009/09/permissions.png" onclick="return TrackClick('http%3A%2F%2Flinux-blog.org%2Fwp-content%2Fuploads%2F2009%2F09%2Fpermissions.png','permissions')"><img class="size-full wp-image-1223 alignleft" style="padding-right: 5px;" title="permissions" src="http://linux-blog.org/wp-content/uploads/2009/09/permissions.png" onclick="return TrackClick('http%3A%2F%2Flinux-blog.org%2Fwp-content%2Fuploads%2F2009%2F09%2Fpermissions.png','permissions')" alt="permissions" width="358" height="282" /></a>The picture to your left is a snapshot of my $HOME directory.  I&#8217;ve included this &#8220;legend&#8221; to color code and label the various columns.  Let&#8217;s go through the labels and names of things first and then work on understanding how we can manipulate them in the next section.</p>
<p>As noted in the picture, the first column (orange) explains whether or not the contents listed is a directory or not.  If any of these happened NOT to be a directory, a dash (-) would be in place of the d at the beginning of the listing on the far left.</p>
<p>In the second, third, and fourth column (Green, Blue and Red) we find permissions.  Looking at the gray box in the bottom-right corner gives us an explanation of what each letter represents in our first few columns.  These tell us whether or not each user, group, or other (explained in detail later in this article) have read, write, and execute privileges for the file or folder/directory.</p>
<p>In the 5th column (white) the number of hard links is displayed.  This column shows the number of actual physical hard links.  A hard link is a directory reference, or pointer, to a file on a storage volume that is a specific location of physical data.  <a title="hard links explained" href="http://www.cyberciti.biz/tips/understanding-unixlinux-symbolic-soft-and-hard-links.html" onclick="return TrackClick('http%3A%2F%2Fwww.cyberciti.biz%2Ftips%2Funderstanding-unixlinux-symbolic-soft-and-hard-links.html','hard+links+explained')" target="_blank">More information on hard links vs. symbolic (soft) links can be found here.</a></p>
<p>In column 6 (light blue) we find the user/owner of the file/directory.  In column 7 (gray blue), the <em>group</em> that has access to the file/folder is displayed.  In column 8 (pink), the size of the file or folder is shown in kilobytes.  In column 9 (fluorescent green), the last date the file or folder was altered or touched is shown.  In column 10 (grey), the file or directory name is displayed.</p>
<p>We&#8217;re going to pay specific attention to the first four columns in the next section and then follow that up by working with the sixth and seventh by going over user/owner and group.  Let&#8217;s move on to go over all of those rwx listings and how we can make them work for us.</p>
<h2>Read, Write, Execute &#8211; User, Group, Other</h2>
<p>First, let&#8217;s go over what different permissions mean.  Read permission means you can view the contents of a file or folder.  Write permission means you can write to a file or to a directory (add new files, new subdirectories) or modify a file or directory.  Execute permission means that you can change to a directory and execute ( or run ) a file or script for that file or directory.</p>
<p>The User section shown in green in the picture above shows whether or not the user can perform the actions listed above.  If the letter is present, the user has the ability to perform that action.  The same is true for the Group shown in blue above&#8230;if a member of the group that has access to the file or directory looks in this column, they will know what they can or can&#8217;t do (read,write, or execute).  Lastly, all others (noted in the red column above).  Do all others have read, write, and execute permissions on the file or folder?  This is important for giving anonymous users access to files in a file server or web server environment.</p>
<p>You can see how fine grained you might be able to set things up with&#8230;For example, you may give users read only access while allowing a group of 5 users full control of the file or directory.  You may want to switch that around.  It&#8217;s entirely up to you how you want to setup permissions.</p>
<h2>More about Groups</h2>
<p>Let&#8217;s go through setting up a group and adding a few users to it and then assigning that group permissions to access a directory and file.</p>
<p>Create a file inside your home directory by opening up a shell or terminal and typing:</p>
<pre class="brush: plain; title: ; notranslate">touch ~/example.txt</pre>
<p>You&#8217;ve now created a file called example.txt inside your home directory.  If you are already there, you can list the contents with the &#8216;ls&#8217; command.  Do that now.  If you&#8217;re not already there, type &#8216;cd ~/&#8217; and you will be taken to your home directory where you can &#8216;ls&#8217; list the files.  It should look similar to the following:</p>
<pre class="brush: plain; title: ; notranslate">[devnet@lostlap ~]$ ls -l
total 40
drwxr-xr-x  2 devnet devnet 4096 2010-05-24 17:04 Desktop
drwxr-xr-x  6 devnet devnet 4096 2010-05-24 13:10 Documents
drwxr-xr-x  9 devnet devnet 4096 2010-05-27 15:25 Download
-rw-rw-r--  1 devnet devnet    0 2010-05-28 10:21 example.txt
drwxr-xr-x 13 devnet devnet 4096 2010-05-26 16:48 Music
drwxr-xr-x  3 devnet devnet 4096 2010-05-24 13:09 Pictures
drwxr-xr-x  3 devnet devnet 4096 2010-05-24 13:04 Videos
</pre>
<p>Next up, let&#8217;s create a new group and a couple of new users.  After creating these we&#8217;ll assign the users to the new group.  After that, we&#8217;ll move the file and lock it down to the new group only.  If everything works as planned, the file should be accessible to root and the other 2 users but NOT accessible to your current user.  You&#8217;ll need to be root for all of these commands (or use sudo for them).  Since I have sudo and don&#8217;t want to continually type sudo, I used the command &#8220;sudo -s&#8221; and entered my root password to permanently log in as root in a terminal for the duration of this how-to.  OK, Let&#8217;s get started:</p>
<pre class="brush: plain; title: ; notranslate">
[root@lostlap ~]$ useradd -m -g users -G audio,lp,optical,storage,video,wheel,games,power -s /bin/bash testuser1
[root@lostlap ~]$ useradd -m -g users -G audio,lp,optical,storage,video,wheel,games,power -s /bin/bash testuser2
</pre>
<p>The above commands will create two users that should be pretty close to your current logged in user (as far as group membership goes).  If the groups you&#8217;re adding the user to do not exist, you may get a warning that the groups don&#8217;t exist&#8230;no worries, just continue.  If the above commands don&#8217;t work on your system (I used Arch Linux to do this) then you can use the GUI elements to manage users and add a new one.  You won&#8217;t need to add them to any extra groups since we just need a basic user.  Next, let&#8217;s create our &#8216;control&#8217; group.</p>
<pre class="brush: plain; title: ; notranslate">
[root@lostlap ~]$ groupadd testgroup
</pre>
<p>The above command creates the &#8216;testgroup&#8217; group.  Now let&#8217;s add the two users we created to this group.</p>
<pre class="brush: plain; title: ; notranslate">
[root@lostlap ~]$ gpasswd -a testuser1 testgroup
[root@lostlap ~]$ gpasswd -a testuser2 testgroup
</pre>
<p>The command above adds both our test users to the test group we created.  Now we need to lock the file down so that only those users inside of &#8216;testgroup&#8217; can access it.  Since your current logged in user is NOT a member of &#8216;testgroup&#8217; then you shouldn&#8217;t be able to access the file once we lock access to that group.</p>
<pre class="brush: plain; title: ; notranslate">
[root@lostlap ~]$ chgrp testgroup example.txt
</pre>
<p>The above command changes the group portion of file permission (discussed earlier) from a group your currently logged in user is a member of to our new group &#8216;testgroup&#8217;.  We still need to change the owner of the file so a new terminal opened up as your current user won&#8217;t be the owner of example.txt.  To do this, let&#8217;s assign example.txt a new owner of Testuser2.</p>
<pre class="brush: plain; title: ; notranslate">[root@lostlap ~]$ chown testuser2 example.txt</pre>
<p>Now when you try to access the file example.txt you won&#8217;t be able to open it up as your standard user (root still will be able to access it) because you don&#8217;t have the permissions to do so.  To test this, open up a new terminal (one where you are not root user) and use your favorite text editor and try to open up example.txt.</p>
<pre class="brush: plain; title: ; notranslate">
[devnet@lostlap ~]$ nano example.txt
</pre>
<p>Both <em>testuser1</em> and <em>testuser2</em> will be able to access example.txt because testuser2 owns the file and testuser1 is in the testgroup that has access to this file.  However, your current logged in user will also have READ rights to it but will not be able to access it.  Why?  Let&#8217;s take a look at the permissions on example.txt</p>
<pre class="brush: plain; title: ; notranslate">[devnet@lostlap ~]$ ls -l example.txt
-rw-r--r-- 1 testuser1 testgroup 8 2010-05-28 10:21 example.txt</pre>
<p>Notice that the user, group, and other (1st, 2nd, and 3rd position of r,w,x &#8211; see the handy diagram I made above) have permissions assigned to them.  The user can read and write to the file.  The group can read it.  Others can also read it.  So let&#8217;s remove a permission to lock this file down.  Go back to your root terminal that is open or &#8216;sudo -s&#8217; to root again and do the following:</p>
<pre class="brush: plain; title: ; notranslate">[root@lostlap ~]$ chmod o-r example.txt</pre>
<p>Now go back to your user terminal and take a look at the file again:</p>
<pre class="brush: plain; title: ; notranslate">[devnet@lostlap ~]$ ls -l example.txt
-rw-r----- 1 testuser1 testgroup 8 2010-05-28 10:21 example.txt</pre>
<p>Once that has been accomplished, try and open the file with your favorite text editor as your currently logged in user (devnet for me):</p>
<pre class="brush: plain; title: ; notranslate">[devnet@lostlap ~]$ nano example.txt</pre>
<p>Your user now should get a permission denied error by nano (or whatever text editor you used to open it).  This is how locking down files and directories works.  It&#8217;s very granular as you can give read, write, and execute permissions to individual users, groups of users, and the general public.  I&#8217;m sure most of you have seen permissions commands with 777 or 644 and you can use this as well (example, chmod 666 filename) but please remember you can always use the chmod ugo+rwx or ugo-rwx as a way to change the permissions as well.  I liked using letters as opposed to the numbers because it made more sense to me&#8230;perhaps you&#8217;ll feel the same.</p>
<p>Hopefully you now have a general understanding how groups, users and permissions work and can appreciate how the complexity of it is also elegant at the same time.  If you have questions, please fire away in the comments section.  Corrections?  Please let me know!  Thanks for reading!</p>
<p><a href="http://linux-blog.org/linux-file-permissions-groups-and-users/" rel="bookmark">Linux File Permissions, Groups, and Users</a> originally appeared on <a href="http://linux-blog.org">Yet Another Linux Blog</a> on November 3, 2010.</p>
]]></content:encoded>
			<wfw:commentRss>http://linux-blog.org/linux-file-permissions-groups-and-users/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Backup Directories and Subdirectories Preserving File Structure</title>
		<link>http://linux-blog.org/backup-directories-and-subdirectories-preserving-file-structure/</link>
		<comments>http://linux-blog.org/backup-directories-and-subdirectories-preserving-file-structure/#comments</comments>
		<pubDate>Thu, 15 Apr 2010 03:14:09 +0000</pubDate>
		<dc:creator>devnet</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[tips and tricks]]></category>

		<guid isPermaLink="false">http://linux-blog.org/?p=1451</guid>
		<description><![CDATA[I needed a quick way to backup my small music collection on my laptop and preserve the complete file structure and permissions.  There are a few ways to do this of course&#8230;for example, you can just copy the files using whatever file manager you happen to be using in your Linux distribution.  In some cases [...]]]></description>
			<content:encoded><![CDATA[<p>I needed a quick way to backup my small music collection on my laptop and preserve the complete file structure and permissions.  There are a few ways to do this of course&#8230;for example, you can just copy the files using whatever file manager you happen to be using in your Linux distribution.  In some cases though, you might want your backup to take up less space than the full monty.  Especially true if you are backing up to thumb drives!</p>
<p>You can use the <em>tar</em> command to make this a snap.</p>
<p>Tar combines multiple files into an archive and you can use it to preserve permissions and file structure and then you can compress the archive to save space.</p>
<pre class="brush: plain; title: ; notranslate">tar -c --recursion -p --file=backup.tar directory</pre>
<p>The <em>-c</em> flag creates an archive for us. <em> &#8211;recursion</em> goes through all subdirectories.  The <em>-p</em> flag preserves permissions on all the files.  This is handy if you have certain folders or files that you need to sticky with individual users or groups.  The <em>&#8211;file</em> flag is the option for outputting to a file name.  You can also add multiple directories that you&#8217;re zipping up like the following:</p>
<pre class="brush: plain; title: ; notranslate">tar -c --recursion -p --file=backup.tar directory1 directory2 directory3</pre>
<p>After you have the file output as <em>backup.tar</em> it&#8217;s time to compress it.  The most standard way to do this is to use the gzip command:</p>
<pre class="brush: plain; title: ; notranslate">gzip backup.tar</pre>
<p>This command will output <em>backup.tar.gz</em> to the current directory which will take up less space than that of a standard 1-to-1 copy.  There are many other flags and options that you can use with the tar command.  For an in depth look at those flags and options, check the tar man page by typing &#8216;man tar&#8217; in a terminal or view it <a title="tar man page" href="http://unixhelp.ed.ac.uk/CGI/man-cgi?tar" onclick="return TrackClick('http%3A%2F%2Funixhelp.ed.ac.uk%2FCGI%2Fman-cgi%3Ftar','tar+man+page')" target="_blank">online here</a>.</p>
<p><strong>UPDATE:</strong></p>
<p>Commenter &#8216;jack&#8217; has offered a few extra flags to combine the archiving and zipping into one command:</p>
<pre class="brush: plain; title: ; notranslate">tar -c -z --recursion -p --file=backup.tar directory1 directory2 directory3</pre>
<p>The <em>-z</em> flag will gzip the archive after you&#8217;ve used <em>tar </em>to create it.  Substituting <em>-j</em> in for <em>-z</em> above will bzip the archive.  Thanks for the tips jack!</p>
<p><a href="http://linux-blog.org/backup-directories-and-subdirectories-preserving-file-structure/" rel="bookmark">Backup Directories and Subdirectories Preserving File Structure</a> originally appeared on <a href="http://linux-blog.org">Yet Another Linux Blog</a> on April 14, 2010.</p>
]]></content:encoded>
			<wfw:commentRss>http://linux-blog.org/backup-directories-and-subdirectories-preserving-file-structure/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Install the Latest Kernel in PCLinuxOS</title>
		<link>http://linux-blog.org/install-the-latest-kernel-in-pclinuxos/</link>
		<comments>http://linux-blog.org/install-the-latest-kernel-in-pclinuxos/#comments</comments>
		<pubDate>Wed, 17 Dec 2008 20:33:21 +0000</pubDate>
		<dc:creator>devnet</dc:creator>
				<category><![CDATA[Distros]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[PCLinuxOS]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://linux-blog.org/?p=826</guid>
		<description><![CDATA[Do you run PCLinuxOS 2007 or Minime 2008 and would you like to take advantage of the latest kernel for PCLinuxOS?  You can do this by enabling the &#8216;testing&#8217; portion of the repository. Read about Repository Control in PCLinuxOS You&#8217;ll be looking for the &#8216;sections&#8217; blank when viewing repository details and you&#8217;ll just need to [...]]]></description>
			<content:encoded><![CDATA[<p>Do you run PCLinuxOS 2007 or Minime 2008 and would you like to take advantage of the latest kernel for PCLinuxOS?  You can do this by enabling the &#8216;testing&#8217; portion of the repository.</p>
<p><a href="http://oldwiki.mypclinuxos.com/index.php?title=Repository" onclick="return TrackClick('http%3A%2F%2Foldwiki.mypclinuxos.com%2Findex.php%3Ftitle%3DRepository','Read+about+Repository+Control+in+PCLinuxOS')">Read about Repository Control in PCLinuxOS</a></p>
<p>You&#8217;ll be looking for the &#8216;sections&#8217; blank when viewing repository details and you&#8217;ll just need to add &#8216;testing&#8217; to the end of the line (don&#8217;t replace the entires there already).  Once that is done, click the reload button in Synaptic and allow it to refresh your local rpm cache.</p>
<p>Click the &#8216;search&#8217; button and search for the keyword &#8216;kernel&#8217;.  Look for the highest number of kernel that is returned.  At the time of this writing, the 2.6.26.8 kernel was the newest kernel for PCLinuxOS (it has .27 patches all over in it&#8230;so it&#8217;s quite a nice kernel).  Click and install that kernel and allow it to select any packages it needs to install.  Once installed, you can remove the word testing from the repository (this is recommended to prevent your system from downloading ALL testing packages/updates) and click the reload button for Synaptic.</p>
<p>Reboot and choose the new kernel on your grub menu.  Test things to see how they work.  If everything is good to go, congratulations!  You&#8217;ve just installed the latest kernel in PCLinuxOS.</p>
<p>To make this kernel the default one, you can use the PCLinuxOS Control Center and Change the Way the System Boots.  I&#8217;ll cover this in a later post.  Hope this helps a few of you out there.  I know it is often asked on IRC.</p>
<p><a href="http://linux-blog.org/install-the-latest-kernel-in-pclinuxos/" rel="bookmark">Install the Latest Kernel in PCLinuxOS</a> originally appeared on <a href="http://linux-blog.org">Yet Another Linux Blog</a> on December 17, 2008.</p>
]]></content:encoded>
			<wfw:commentRss>http://linux-blog.org/install-the-latest-kernel-in-pclinuxos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Customizing PCLinuxOS 2008 Minime</title>
		<link>http://linux-blog.org/cusomizing-pclinuxos-2008-minime/</link>
		<comments>http://linux-blog.org/cusomizing-pclinuxos-2008-minime/#comments</comments>
		<pubDate>Sat, 18 Oct 2008 03:16:49 +0000</pubDate>
		<dc:creator>devnet</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[2008]]></category>
		<category><![CDATA[appearance]]></category>
		<category><![CDATA[customization]]></category>
		<category><![CDATA[customizing]]></category>
		<category><![CDATA[desktop]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[minime]]></category>
		<category><![CDATA[PCLinuxOS]]></category>
		<category><![CDATA[perfect]]></category>
		<category><![CDATA[themes]]></category>
		<category><![CDATA[tips and tricks]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://linux-blog.org/?p=708</guid>
		<description><![CDATA[So, HowtoForge has a perfect desktop for PCLinuxOS 2007...how about something similar for 2008 MiniMe? I won't go into near as much detail as they do there but I'll go over how I get my desktop up and rolling after a fresh install of PCLinuxOS Minime 2008.]]></description>
			<content:encoded><![CDATA[<div class="captionright">
<div id="attachment_728" class="wp-caption alignright" style="width: 210px"><a href="http://linux-blog.org/wp-content/uploads/2008/10/puzzle.jpg" onclick="return TrackClick('http%3A%2F%2Flinux-blog.org%2Fwp-content%2Fuploads%2F2008%2F10%2Fpuzzle.jpg','puzzle')"><img class="size-medium wp-image-728" title="puzzle" src="http://linux-blog.org/wp-content/uploads/2008/10/puzzle.jpg" onclick="return TrackClick('http%3A%2F%2Flinux-blog.org%2Fwp-content%2Fuploads%2F2008%2F10%2Fpuzzle.jpg','puzzle')" alt="Putting it Together" width="200" height="150" /></a><p class="wp-caption-text">Build Your Own PCLOS</p></div>
</div>
<p>So, HowtoForge has a <a href="http://www.howtoforge.com/the_perfect_desktop_pclinuxos_2007" onclick="return TrackClick('http%3A%2F%2Fwww.howtoforge.com%2Fthe_perfect_desktop_pclinuxos_2007','perfect+desktop+for+PCLinuxOS+2007')">perfect desktop for PCLinuxOS 2007</a>&#8230;how about something similar for 2008 MiniMe?  I won&#8217;t go into near as much detail as they do there but I&#8217;ll go over how I get my desktop up and rolling after a fresh install of PCLinuxOS Minime 2008.</p>
<p>MiniMe is the lesser known offspring of PCLinuxOS 2007 that ships with a 2.6.22.15 kernel and is a minimalistic installation of the KDE desktop 3.5.9.  Texstar provides this distribution for those wanting to remaster their installations&#8230;it&#8217;s a base for other remastered projects like PCLinuxOS Gnome.  Remastering and the Make LiveCD wizard enable users to customize their distribution and make a bootable backup CD with all their customizations OR release their own customized distribution.  You can also use the Make LiveUSB wizard to create your very own thumbdrive PCLinuxOS.</p>
<p>I found it strange that no one had written anything about MimiMe-to on getting PCLinuxOS 2008 MiniMe up and running as a desktop replacement so I decided to give it a go.  The aim of this article isn&#8217;t to copy Howtoforge&#8217;s great series on perfect installations&#8230;but to show how I get PCLinuxOS 2008 Minime up to a perfect installation for me.  This means all web video, audio, fonts, and tools I need are installed.  So let&#8217;s get at it.</p>
<p><span style="text-decoration: underline;"><strong>What Do We Need?</strong></span></p>
<p>First and foremost, do a complete upgrade of your fresh installed system.  Open Synaptic &gt;&gt; Reload &gt;&gt; Mark all Upgrades &gt;&gt; Apply.  It&#8217;s going to take a while to get all the updates you&#8217;ll need.  Do NOT enable the testing repository until after you install your graphics driver at the end of this article&#8230;just perform a straight update from main.</p>
<p>Now let&#8217;s start installing stuff that is needed on a daily basis.  I&#8217;m more of a lightweight type of guy so I don&#8217;t need robust office applications so my tastes may not line up with yours.   Please substitute applications where you see fit&#8230;the repositories most likely have them.</p>
<p>To give a brief, high level overview of my daily use applications:</p>
<ul>
<li>firefox3</li>
<li>Opera</li>
<li>K3B</li>
<li>konversation</li>
<li>pidgin</li>
<li>skype_static</li>
<li>koffice</li>
<li>gimp</li>
<li>Amarok</li>
<li>claws-mail</li>
<li>kdeaddons-kate</li>
<li>kdeaddons-ark</li>
<li>kdegraphics-ksnapshot (for taking screenshots)</li>
</ul>
<p>Those are the high level applications I use on a daily basis to get things done.  Whenever you are prompted to mark other packages for install, go ahead and and choose &#8220;mark&#8221;.  Click apply and let the your daily use applications install.</p>
<p><span id="more-708"></span></p>
<p><span style="text-decoration: underline;"><strong>Handy Wizards for PCLinuxOS 2008</strong></span></p>
<p>MiniMe 2008 comes with some handy wizards for you to use to get started.  On your desktop after install is a folder called &#8220;Utilities&#8221;.  If you open this folder up, you will find the following options:</p>
<ol>
<li>ATI-Nvidia Driver Install</li>
<li>Alsa Sound Configuration</li>
<li>Internet Setup</li>
<li>Make LiveCD</li>
<li>Make LiveUSB</li>
<li>Redo-MBR</li>
<li>Set Clock</li>
</ol>
<p>You can use any of these you want to get things rolling.  You&#8217;ll have to enable your network through the PCLinuxOS Control Center because MiniMe does not setup a network connection by design out of the box.  Remember, it&#8217;s a base for building, not a full fledged distro.  We have to craft it how we want it.  I recommend NOT installing a graphics driver until the very end&#8230;mainly because there are some problems currently with the 173.xx driver conflicting with some packages in the testing repository.  So hold off on graphics install if you can until the very last.</p>
<p>Make LiveCD is exactly what it sounds like.  You can make a LiveCD based on your install.  So after you get everything setup the way you want it to be, you can double click Make LiveCD and a wizard will guide you through creating your own customized LiveCD backup of your install.</p>
<p>Make LiveUSB is also exactly what it sounds like&#8230;you can make a bootable version of a USB stick with PCLinuxOS MiniME.  This how-to does not cover this since we&#8217;re going for a desktop replacement and not a minimalistic install.  You may want to select this option though after you&#8217;ve got things configured as  you want them.</p>
<p>The rest of the options are fairly straightforward and do exactly what they say.  Make sure you take the time to get all things working (except graphics driver) before you move on.</p>
<p><span style="text-decoration: underline;"><strong>What Else Should We Install?</strong></span></p>
<p>We&#8217;ll need to install a few more things to get seamless operation for PCLinuxOS on the web.  There are also some packages that will make your PCLinuxOS experience a bit better that we&#8217;ll install at this step as well:</p>
<ul>
<li>gtk-qt-engine</li>
<li>RealPlayer-rpnp</li>
<li>flash-player-plugin</li>
<li>java-1.6.0-sun</li>
<li>flac-1.2.1</li>
<li>mplayer-skins</li>
<li>mplayer-gui</li>
<li>mplayer</li>
<li>win32-codecs-all</li>
<li>sound-juicer</li>
<li>flash-player-plugin-opera</li>
<li>cabextract (for extracting wireless drivers if you have need to)</li>
<li>webcore-fonts</li>
<li>unrar</li>
<li>rar</li>
<li>xine-plugins</li>
<li>AdobeReader_enu</li>
</ul>
<p>Please remember to allow synaptic to mark anything extra that the packages require.  After installing these packages, your browsing experience and overall appearance of PCLinuxOS should be ready for improvement.  I&#8217;ll go through how I setup a few applications to give them a nice look and feel.  Let&#8217;s start first with GTK applications look and feel.<!--more--></p>
<p><span style="text-decoration: underline;"><strong>Setup gtk-qt-engine in PCLinuxOS</strong></span></p>
<p>Open the KDE Control Center and look under &#8220;Appearance and Themes&#8221; for the section &#8220;GTK Styles and Fonts&#8221;.  Use the drop down menu to pick out your favorite GTK theme&#8230;and if your favorite isn&#8217;t there, fire up Synaptic again and do a search for it&#8230;chances are, it is there.  Once you&#8217;ve chosen a style (I use clearlooks) click &#8220;Ok&#8221;.</p>
<p>This package gives your GTK applications a Gnome Feel in KDE.  Without it, things look ugly.  Face-in-pillow-to-be-kind-to-burglars ugly.</p>
<p><span style="text-decoration: underline;"><strong>Get Your Fonts Setup</strong></span></p>
<div id="attachment_727" class="wp-caption alignright" style="width: 160px"><a href="http://linux-blog.org/wp-content/uploads/2008/10/fontsconfig.png" onclick="return TrackClick('http%3A%2F%2Flinux-blog.org%2Fwp-content%2Fuploads%2F2008%2F10%2Ffontsconfig.png','fontsconfig')"><img class="size-thumbnail wp-image-727" title="fontsconfig" src="http://linux-blog.org/wp-content/uploads/2008/10/fontsconfig-150x150.png" alt="Configure Fonts" width="150" height="150" /></a><p class="wp-caption-text">Configure Fonts</p></div>
<p>I setup my fonts a bit strange.  I use the same webcore font (Microsoft Font) for almost everything because I like the way it looks.  To do this, I set it up in the KDE Control Center and choose &#8220;Appearance &amp; Themes&#8221; &gt;&gt; &#8220;Fonts&#8221;.  Then, I setup each area except Fixed Width with Verdana for the font.  You may like Ariel or another font&#8230;so choose it there.  Don&#8217;t be afraid to experiment!  Find fonts that suit you and make your desktop shine <img src='http://linux-blog.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>When you&#8217;re through with the KDE Fonts, don&#8217;t forget to setup fonts in Firefox and Opera as well (if you desire to&#8230;I always do).</p>
<p><span style="text-decoration: underline;"><strong>Setup KDE default Applications </strong></span></p>
<p>While still inside the KDE Control Center, choose &#8220;KDE Components&#8221; and then &#8220;Component Chooser&#8221;.  On this page, make sure your favorite applications are present as the default application for each area.  Those to choose from are email client, text editor, instant messenger, terminal emulator, and web browser.  For my email, I setup claws mail by clicking &#8220;use a different email client&#8221; and clicking the small square to browse applications.  I did the same for web browser to make sure KDE knew to use Firefox and not Konqueror.</p>
<p><span style="text-decoration: underline;"><strong>Enable Super Key for Compiz (if you use it)</strong></span></p>
<p>If you use compiz and wanted to install it the package name is task-compiz-fusion-kde.  Install this package but do NOT run it yet if you have an ATI or Nvidia card.  We&#8217;ll need to install the graphics driver first.  If you have another chip manufacturer (Intel, S3) for your graphics card, you should be able to install and use compiz right away.</p>
<p>To enable the super (windows) key, open the KDE Control Center, go to &#8220;Regional &amp; Accessibility&#8221; and then to &#8220;Keyboard Layout&#8221;.  Toggle check &#8220;enable keyboard layout&#8221; and make sure your region is in the right hand side box area as active.  Click apply.</p>
<p><span style="text-decoration: underline;"><strong>Setup Konversation in a Sane Manner</strong></span></p>
<div id="attachment_726" class="wp-caption alignleft" style="width: 160px"><a href="http://linux-blog.org/wp-content/uploads/2008/10/configkonver.png" onclick="return TrackClick('http%3A%2F%2Flinux-blog.org%2Fwp-content%2Fuploads%2F2008%2F10%2Fconfigkonver.png','configkonver')"><img class="size-thumbnail wp-image-726" title="configkonver" src="http://linux-blog.org/wp-content/uploads/2008/10/configkonver-150x150.png" alt="Configure Konversation" width="150" height="150" /></a><p class="wp-caption-text">Configure Konversation</p></div>
<p>I think the default configuration of Konversation isn&#8217;t very friendly.  So I take a few minutes when first firing it up to configure things.  Perhaps you&#8217;ll agree with me on these.  For example, I don&#8217;t like tabs on the bottom of my screen.  I&#8217;d rather have those channels of chat on the left hand side so I can see them.  I also like to have shell-like tabl completion.  That means when I hit the tab key after typing a few letters of someones nickname, Konversation will complete their name without me typing it&#8230;much like the shell (konsole) can do with directory names.  Start up Konversation.  Click edit and then click the edit button again.  Make sure you&#8217;ve input the nickname you need to input.  If you are a freenode regular and have a registered nickname, enter NICKSERV and your password in the blanks under &#8220;Auto Identify&#8221;.  Click &#8220;ok&#8221; twice and then connect.</p>
<p>Under &#8220;Settings&#8221; choose &#8220;Configure Konversation&#8221;.  Go to the section  &#8220;Behavior&#8221; and choose &#8220;General&#8221;.  In &#8220;completion mode&#8221; use the drop down menu to select &#8220;Shell-Like&#8221;.  I like to minimize Konversation into the tray and also like it to notify me when my name is mentioned.  To do this, inside this same window toggle check &#8220;Enable System Tray&#8221; as well as the two other check boxes underneath it.</p>
<p>Now lets move the tabs to the left:  Under &#8220;Interface&#8221; click &#8220;Tabs&#8221;.  On the &#8220;placement&#8221; drop down menu choose &#8220;Left&#8221;.  That&#8217;s it for Konversation.</p>
<p><!--more--></p>
<p><span style="text-decoration: underline;"><strong>Setup Kopete in a Sane Manner</strong></span></p>
<div id="attachment_713" class="wp-caption alignright" style="width: 160px"><a href="http://linux-blog.org/wp-content/uploads/2008/10/defaultkopete1.png" onclick="return TrackClick('http%3A%2F%2Flinux-blog.org%2Fwp-content%2Fuploads%2F2008%2F10%2Fdefaultkopete1.png','HidingKopete')"><img class="size-thumbnail wp-image-713" title="HidingKopete" src="http://linux-blog.org/wp-content/uploads/2008/10/defaultkopete1-150x150.png" alt="Hiding Groups &amp; Users" width="150" height="150" /></a><p class="wp-caption-text">Hiding Groups &amp; Users</p></div>
<p>If you use Kopete instead of Pidgin, I&#8217;ll walk you through setting it up so that it has a more pidgin appearance.  When you first launch Kopete, it will prompt you to setup your accounts.  You should have no problem setting up all but the gtalk ones.  Go ahead and setup all the other ones&#8230;we&#8217;ll set gtalk up in a second.  First, let&#8217;s get the existing ones to display in a sane manner.</p>
<p>Under &#8220;Settings&#8221; choose &#8220;Hide Offline Users&#8221;.  Then choose &#8220;Hide Empty Groups&#8221;.  This will make sure not to display your offline buddies (of which I have too many all the time) in Kopete.</p>
<p>Next choose &#8220;Settings&#8221; and &#8220;Configure&#8221;.  Click on Appearance.  Click the &#8220;Chat Window&#8221; tab and choose &#8220;Get New&#8221;.  A window will pop open with new themes to install.  I like the theme called Fresh so I highlight it and click the install button.  Close out all the windows except the configure one and then highlight &#8220;Fresh.AdiumMessageStyle&#8221; to switch to it.  Click Apply.</p>
<p>Now click on the &#8220;Contact List&#8221; tab.  Un-check &#8220;Arrange metacontacts by group&#8221; &amp; &#8220;Show tree branch lines&#8221;.  Under &#8220;List Style&#8221; choose right aligned status icons&#8221; and then check the &#8220;Use contact photos when available&#8221; checkbox.  Click Apply.</p>
<p>I like my messages to open only one window with a new conversation opening a new tab.  This prevents me from having 3 windows pop from 3 different chats from friends.  Click on the &#8220;Behavior&#8221; icon on the left side of Kopete.  Click on the &#8220;Chat&#8221; tab.  Under &#8220;Chat Window Grouping Policy&#8221; choose &#8220;Group All Messages in Same Chat Window&#8221;.  Click on the &#8220;Events&#8221; tab and make sure to uncheck &#8220;Show bubble&#8221; (unless you like notification bubbles&#8230;I hate them&#8230;I just want Kopete to flash on notification).  Click Apply.</p>
<p>Click on the &#8220;General&#8221; tab.  Make sure that the checkbox for the system tray is checked.  Check the &#8220;Connect automatically at startup&#8221; box or Kopete won&#8217;t connect when you start it up.  Toggle the radio button for &#8220;Open Messages Instantly&#8221;.  Click Apply.  Click Ok.</p>
<p>That should be it&#8230;I know it&#8217;s a lot but this really makes Kopete feel at home for me&#8230;almost pidgin style with better KDE integration.</p>
<p>Setup your gtalk <a href="http://wiki.kde.org/tiki-index.php?page=Google+Talk+support" onclick="return TrackClick('http%3A%2F%2Fwiki.kde.org%2Ftiki-index.php%3Fpage%3DGoogle%2BTalk%2Bsupport','follow+the+instructions+here')">follow the instructions here</a> and make sure that if you are prompted with a pop up window choose never show this again and accept (it&#8217;s certificates for SSL and gtalk).</p>
<p><span style="text-decoration: underline;"><strong>Improve Firefox Performance</strong></span></p>
<p>There are tons of guides out there.  I&#8217;ve looked through many of them to try and tweak Firefox performance and the <a href="http://hubpages.com/hub/Optimizing-Firefox-3-Hacks-And-Tweaks" onclick="return TrackClick('http%3A%2F%2Fhubpages.com%2Fhub%2FOptimizing-Firefox-3-Hacks-And-Tweaks','one+I%22ve+found+to+be+the+best+collection+of+handy+tips+and+tricks+is+at+hugpages')">one I&#8217;ve found to be the best collection of handy tips and tricks is at hugpages</a>.  Pay close attention to #13 which is the speedup I found to really make a difference.</p>
<p><span style="text-decoration: underline;"><strong>KDE Artwork&#8230;Add More!!</strong></span></p>
<p>I wrote <a href="http://linux-blog.org/install-extra-themes-and-icons-in-pclinuxos/" onclick="return TrackClick('http%3A%2F%2Flinux-blog.org%2Finstall-extra-themes-and-icons-in-pclinuxos%2F','an+article+on+how+to+beautify+the+PCLinuxOS+2007+Desktop')" target="_blank">an article on how to beautify the PCLinuxOS 2007 Desktop</a> through installation of icon themes, cursor thems, wallpapers, and other improvements.  Make sure that you check that post out and customize PCLinuxOS Minime 2008 and make it your own <img src='http://linux-blog.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   That beautification article is still valid for Minime 2008, which uses the 2007 repositories.  Some of the package names may have changed but you can use the search button in synaptic to search &#8220;description and name&#8221; and find most if not all the packages.</p>
<p><strong><span style="text-decoration: underline;">Graphics Card</span></strong></p>
<div id="attachment_737" class="wp-caption alignright" style="width: 160px"><a href="http://linux-blog.org/wp-content/uploads/2008/10/graphicsinstall.png" onclick="return TrackClick('http%3A%2F%2Flinux-blog.org%2Fwp-content%2Fuploads%2F2008%2F10%2Fgraphicsinstall.png','graphicsinstall')"><img class="size-thumbnail wp-image-737" title="graphicsinstall" src="http://linux-blog.org/wp-content/uploads/2008/10/graphicsinstall-150x150.png" alt="video driver installer" width="150" height="150" /></a><p class="wp-caption-text">video driver installer</p></div>
<p>Setting up your graphics card is last for good reason.  It should be the last thing you do unless your resolution is so horrible you need to set it up at the beginning.  There is a problem with Nvidia drivers and minime.  If you installed the 173.xx drivers and try to upgrade to testing, it will flag a bunch of problems.  To fix things, launch konsole, su to root and apt-get clean, then apt-get autoclean.</p>
<p>After doing that, apt-get update and then close konsole.  Use the utilities folder on the desktop to un-install the 173.xx drivers.  Then perform the testing upgrade without the drivers conflicting.  After the upgrade is complete, install the 177.xx drivers.  This is only for the latest and greatest video cards.  REMEMBER, the utilities folder has a graphics card installation tool.  This is used for ATI and Nvidia cards and will install the official driver for both.  A list of chipsets for each driver is inside the utility (screenshot on right) so make sure that you pick the correct driver.</p>
<p>If you use any other chipset besides Nvidia or ATI, your driver should be enabled by default.</p>
<p><span style="text-decoration: underline;"><strong>Extra TidBits I like to Install</strong></span></p>
<p>I like to be able to right click any music file in Konqueror and convert it to any format I choose.  This can be done with the <strong>audiokonverter</strong> package.  Search for that in Synaptic and install it if you&#8217;d like to do the same.</p>
<p>Ever want to search through programs you can install without opening Syanptic and without using the command line?  Install <strong>kio-apt</strong> and you&#8217;ll be able to do jus that using apt:/ in the address bar where the url normally goes.  Options include:</p>
<p>apt:/search?search expression<br />
apt:/show?package<br />
apt:/policy?package<br />
apt:/list?package<br />
apt:/fsearch?package</p>
<p>Want to resize your screen on the fly?  Press Alt-F2 and type <strong>krandrtray</strong>.  Notice the small icon that appears inside your kicker tray by the clock.  You&#8217;ll now be able to resize your screen resolution on the fly.  This is sometimes handy for those users who dock a laptop that has a different resolution on laptop screens than desktop ones.</p>
<p>Miss the Nvidia Icon in your tray like in Windows?  Install <strong>nvdock</strong> and then execute it from the menu (System &gt;&gt; Nvidia Dock) and watch as your nvidia icon magically reappears.  Right click and be brought to Nvidia Control Panel Settings.</p>
<p>Want some desktop search action without google desktop or the beast that is Beagle?  Not a fan of tracker?  Try <strong>recoll</strong> which can be installed through Synaptic.</p>
<p>Need a personal wiki to keep notes?  I know I do.   That&#8217;s why I install <strong>zim</strong> which is a personal wiki written in GTK.  It allows you to quickly jot down notes and scales quickly to even provide multiple page and project tracking for your own personal notes.</p>
<p>Ever run across stuff on the web you wish you could clip out of a webpage and save?  Enter <strong>basket</strong>.  It can handle images, webpage snippets, store URLs and anything you might come across, can be saved for easy centralized access.</p>
<p>Screensavers are not installed by default.  If you want to install screensavers, try the following packages:</p>
<ul>
<li>xscreensaver</li>
<li>xscreensaver-base</li>
<li>xscreensaver-common</li>
<li>xscreensaver-extrusion</li>
<li>xscreensaver-gl</li>
<li>xscreensaver-matrix</li>
</ul>
<p><span style="text-decoration: underline;"><strong>Did I Miss Anything?</strong></span></p>
<p>Did I miss anything with my helpful how-to?  If so, please leave me a comment letting me know what  you&#8217;d like to see added to it.  I will consider this a working how-to and update it with as much as I can.  These are only the applications I find useful and use on a daily basis.  I installed these on a fresh install of Minime 2008 on my main system and wrote this how-to while doing it.  I wanted it to be minimalistic&#8230;I don&#8217;t need much in order to be happy.  Hopefully, this helps inspire you t</p>
<p><a href="http://linux-blog.org/cusomizing-pclinuxos-2008-minime/" rel="bookmark">Customizing PCLinuxOS 2008 Minime</a> originally appeared on <a href="http://linux-blog.org">Yet Another Linux Blog</a> on October 17, 2008.</p>
]]></content:encoded>
			<wfw:commentRss>http://linux-blog.org/cusomizing-pclinuxos-2008-minime/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Install GCC on ClarkConnect</title>
		<link>http://linux-blog.org/install-gcc-on-clarkconnect/</link>
		<comments>http://linux-blog.org/install-gcc-on-clarkconnect/#comments</comments>
		<pubDate>Sun, 12 Oct 2008 15:45:26 +0000</pubDate>
		<dc:creator>devnet</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[clarkconnect]]></category>
		<category><![CDATA[compile]]></category>
		<category><![CDATA[devel tools]]></category>
		<category><![CDATA[gcc]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[install gcc]]></category>
		<category><![CDATA[source]]></category>

		<guid isPermaLink="false">http://linux-blog.org/?p=716</guid>
		<description><![CDATA[Install GCC on ClarkConnect This is a pretty easy thing to do, but it seems many people come to Yet Another Linux Blog searching for exactly how to do this. ClarkConnect does not come with GCC installed by default. If you download software and attempt to compile it (using ./configure, make, make install) it will [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Install GCC on ClarkConnect</strong></p>
<p>This is a pretty easy thing to do, but it seems many people come to Yet Another Linux Blog searching for exactly how to do this.  ClarkConnect does not come with GCC installed by default.  If you download software and attempt to compile it (using ./configure, make, make install) it will complain:</p>
<p><code>
<pre class="brush: plain; title: ; notranslate">configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details.</pre>
<p></code></p>
<p>So, SSH into your ClarkConnect server and install cc-devel to install all the tools you need.  Please be advised, it&#8217;s a rather large package weighing in at 87.5 MB when I installed it today.</p>
<p><code>
<pre class="brush: plain; title: ; notranslate">apt-get update</pre>
<pre class="brush: plain; title: ; notranslate">apt-get install cc-devel</pre>
<p></code></p>
<p>After this package is installed, you should be able to compile software from source.  Hopefully, this makes your life easier and is easier to find on the web.</p>
<p><a href="http://linux-blog.org/install-gcc-on-clarkconnect/" rel="bookmark">Install GCC on ClarkConnect</a> originally appeared on <a href="http://linux-blog.org">Yet Another Linux Blog</a> on October 12, 2008.</p>
]]></content:encoded>
			<wfw:commentRss>http://linux-blog.org/install-gcc-on-clarkconnect/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Microblogging, Status, and Blogging 2.0</title>
		<link>http://linux-blog.org/microblogging-status-and-blogging-20/</link>
		<comments>http://linux-blog.org/microblogging-status-and-blogging-20/#comments</comments>
		<pubDate>Thu, 19 Jun 2008 22:22:31 +0000</pubDate>
		<dc:creator>devnet</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[rss]]></category>
		<category><![CDATA[tips and tricks]]></category>

		<guid isPermaLink="false">http://linux-blog.org/word/microblogging-status-and-blogging-20/</guid>
		<description><![CDATA[In my previous post, I asked readers how they plugged their blog and/or microblogged, web 2.0 style. Some microblogging readers recommended that I check out Ping.fm. It was exactly the service that I needed; the ability to simultaneously post status updates on twitter, pownce, facebook. I specifically look for services that don&#8217;t require that I [...]]]></description>
			<content:encoded><![CDATA[<p>In my previous post, I asked readers how they plugged their blog and/or microblogged, web 2.0 style.  Some microblogging readers recommended that I check out <a href="http://ping.fm" onclick="return TrackClick('http%3A%2F%2Fping.fm','Ping.fm')">Ping.fm</a>.  It was exactly the service that I needed; the ability to simultaneously post status updates on twitter, pownce, facebook.  I specifically look for services that don&#8217;t require that I install anything on my desktop (I like IM much more).</p>
<p>The only problem with this is that ping.fm is in beta stage&#8230;and a closed beta at that.  So, I began to read various different blogs to try and find any other service that might do the same thing as ping.fm.</p>
<p>During my search, I cam across <a href="http://www.profilactic.com/" onclick="return TrackClick('http%3A%2F%2Fwww.profilactic.com%2F','profilactic.com')">profilactic.com</a>, which is a central aggregate place similar to <a href="http://friendfeed.com" onclick="return TrackClick('http%3A%2F%2Ffriendfeed.com','friendfeed.com')">friendfeed.com</a>.  The interesting part about profilactic is that it plugs into ping.fm and every single user can be part of the closed beta for ping.fm!</p>
<p>This means that you can microblog/status message bebo, blogger, brightkite, facebook, hi5, Jaiku, LinkedIn, LiveJournal, Mashable, Myspace, Plaxo Pulse, Plurk, Pownce, Tumblr, Twitter, and Xanga through one single interface OR through Instant message (there is a ping.fm bot).</p>
<p>Here&#8217;s the kicker&#8230;profilactic.com supports 186 sites as well as the ability to create a custom site.  There are too many to list.  <a href="http://www.profilactic.com/sites.jsp" onclick="return TrackClick('http%3A%2F%2Fwww.profilactic.com%2Fsites.jsp','Check+out+their+supported+sites.')">Check out their supported sites.</a></p>
<p>So, you can utilize ping.fm to instant message status updates or microblog and instantaneously have it sent out to close to 200 different sites all at once.  This is handy for me since I like to use pownce a bit more than twitter but my coworkers use twitter more.  My status updates are still broadcast (on 60 second delay) on twitter through my instant message to the ping.fm bot.  Ping.fm also supports the iPhone and has the ability to have custom triggers.</p>
<p>To take advantage of these great services, head over to profilactic and signup.  When you&#8217;re setting up your sites, you&#8217;ll be able to plug into ping.fm (it will require that you signup using the profilactic beta password that profilactic will provide for you during setup).  Don&#8217;t forget to <a href="http://www.profilactic.com/mashup/devnet" onclick="return TrackClick('http%3A%2F%2Fwww.profilactic.com%2Fmashup%2Fdevnet','visit+my+lifestream')">visit my lifestream</a> and add me as a friend <img src='http://linux-blog.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   Happy micro/status/blogging!</p>
<p><a href="http://linux-blog.org/microblogging-status-and-blogging-20/" rel="bookmark">Microblogging, Status, and Blogging 2.0</a> originally appeared on <a href="http://linux-blog.org">Yet Another Linux Blog</a> on June 19, 2008.</p>
]]></content:encoded>
			<wfw:commentRss>http://linux-blog.org/microblogging-status-and-blogging-20/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>KDE and Xorg, Fonts and DPI</title>
		<link>http://linux-blog.org/kde-and-xorg-fonts-and-dpi/</link>
		<comments>http://linux-blog.org/kde-and-xorg-fonts-and-dpi/#comments</comments>
		<pubDate>Thu, 20 Sep 2007 11:18:53 +0000</pubDate>
		<dc:creator>devnet</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[desktop]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[kde]]></category>
		<category><![CDATA[tips and tricks]]></category>
		<category><![CDATA[window manager]]></category>

		<guid isPermaLink="false">http://linux-blog.org/word/kde-and-xorg-fonts-and-dpi/</guid>
		<description><![CDATA[Today, I&#8217;d like to share a tip I found out while working with a beta release for a distirbution of Linux with KDE&#8217;s 3.5.7 version. As many readers of this blog know, I use PCLinuxOS 2007 as my main desktop and have done so since about 2005. The font configuration in PCLinuxOS is quite nice. [...]]]></description>
			<content:encoded><![CDATA[<p><script type="text/javascript"><!--
google_ad_client = "pub-3982453702542240";
/* 468x15, created 6/24/09 */
google_ad_slot = "6181047080";
google_ad_width = 468;
google_ad_height = 15;
//-->
</script><br />
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
Today, I&#8217;d like to share a tip I found out while working with a beta release for a distirbution of Linux with KDE&#8217;s 3.5.7 version.  As many readers of this blog know, I use PCLinuxOS 2007 as my main desktop and have done so since about 2005.  The font configuration in PCLinuxOS is quite nice.  I have a 19 inch <a href="http://www.myshopping.com.au/PT--5_Monitors_LCD_TFT__fs_766_e__">LCD Monitor</a> at home with 1280&#215;1024 resolution.  I notice no problems with the font on that monitor.</p>
<p>Working on a separate 20 inch monitor with a distribution in development however is another story.  The fonts didn&#8217;t look beautiful at all.  After some installation of custom fonts, things looked better, but the resolution is a bit higher on this LCD at 1400&#215;1050.  Easy to fix right?  Just increase the DPI in the KDE Control Center to 120 right?  Not so fast&#8230;even when it&#8217;s set to 96&#215;96 there, it isn&#8217;t always set to 96&#215;96.  So let&#8217;s take a look at how you can force KDE to run at the correct DPI for your monitor which will, in turn, make your fonts look MUCH better.  For those of you who are satisfied with your fonts, you might want to check out the commands below to see if you&#8217;re running at the DPI you think you are.</p>
<p><span id="more-183"></span></p>
<p>Open Konsole and let&#8217;s check your resolution:</p>
<pre class="brush: plain; title: ; notranslate">xdpyinfo | grep dimension</pre>
<p>This will tell you what the actual resolution of X is on your desktop.  Next, look at the DPI setting.</p>
<pre class="brush: plain; title: ; notranslate">xdpyinfo | grep resolution</pre>
<p>Surprised? I was. I found that at the high resolution I was running at, the DPI was set to 86&#215;86 despite my attempts to force it to 96&#215;96 in the KDE Control Center.</p>
<p>So how does one combat this? It takes a bit of calculation with a formula followed by a one line entry into your xorg.conf. Easy enough? Almost too easy&#8230;couldn&#8217;t the KDE programmers, say, employ a control center menu for this? It&#8217;s possible&#8230;let&#8217;s hope it&#8217;s in KDE 4.0.</p>
<p><span style="text-decoration: underline;"><strong>FORMULA</strong></span></p>
<p>First, the formula. Using the dimensions you found above, you&#8217;ll have to calculate 2 numbers&#8230;one for horizontal and one for vertical. As my resolution is 1400&#215;1050, I will use this as the example. The formula is as follows:</p>
<p><span style="font-style: italic;">displaysize = (&lt;pixelsize&gt;/DPI-Desired)*25.4</span></p>
<p>In my case, displaysize = (1400/100)*25.4. This equals 355. I wrote this down for later. Now I need to use 1050 (my vertical setting for resolution 1400&#215;1050) in the same formula (displaysize =(1050/100)*25.4) which comes out to 266. Keep these two numbers handy&#8230;remember, if you want 96 or 120 DPI for your monitor&#8230;sub in those numbers for the <em>DPI-Desired</em> and divide your resolution by them as shown in the formula above.</p>
<p><strong><span style="text-decoration: underline;">EDIT XORG.CONF</span></strong></p>
<p>Open up xorg.conf in your favorite text editor..for example, my favorite is kate so I issue the following command: Alt-F2 (a run dialog pops up) &gt;&gt; kdesu kate /etc/X11/xorg.conf. You&#8217;ll be prompted for your root password to access this file. After it opens, find the &#8220;Monitor&#8221; section. Just before &#8220;EndSection&#8221; place a line like the following (substitute the values you found using the formula above):</p>
<p>DisplaySize    355    266    # 1400&#215;1050 100dpi</p>
<p>Your display size may be different&#8230;just remember to place horizontal first, followed by vertical. Now you&#8217;ll need to restart X. Close all your applications and hit Control-Alt-Backspace. Log back in and issue the command we used previously for DPI:</p>
<pre class="brush: plain; title: ; notranslate">xdpyinfo | grep resolution</pre>
<p>If you followed the directions above correctly, your altered DPI settings should display. Gnome does this through a handy menu that&#8217;s very easy to use. It&#8217;s head and shoulders above what KDE does with fonts and setting DPI. Using Gnome at work for the past 4 months has shown me the many areas that KDE falls behind&#8230;but it also shows me the many areas where Gnome just doesn&#8217;t get the job done. In this case, KDE fails horribly on configuring DPI for nice looking fonts. Luckily, I was able to assemble information from various places on the web to get the job done. The page that helped me the most was <a href="http://www.mattparnell.com/projects/sharp-fonts-on-a-kde-desktop.html" onclick="return TrackClick('http%3A%2F%2Fwww.mattparnell.com%2Fprojects%2Fsharp-fonts-on-a-kde-desktop.html','Matt+Parnell%22s+Brain')" target="_blank">Matt Parnell&#8217;s Brain</a>, a weblog that had an entry with this formula. I wanted to reproduce the information here with a bit more hand holding so new users would be able to use the tip without getting confused. Hopefully, this helps!<br />
<script type="text/javascript"><!--
google_ad_client = "pub-3982453702542240";
/* 468x15, created 6/24/09 */
google_ad_slot = "6181047080";
google_ad_width = 468;
google_ad_height = 15;
//-->
</script><br />
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
<p><a href="http://linux-blog.org/kde-and-xorg-fonts-and-dpi/" rel="bookmark">KDE and Xorg, Fonts and DPI</a> originally appeared on <a href="http://linux-blog.org">Yet Another Linux Blog</a> on September 20, 2007.</p>
]]></content:encoded>
			<wfw:commentRss>http://linux-blog.org/kde-and-xorg-fonts-and-dpi/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Page Caching using disk: enhanced
Database Caching 24/87 queries in 0.413 seconds using disk: basic
Object Caching 1272/1324 objects using disk: basic

Served from: linux-blog.org @ 2012-05-23 21:46:55 -->
