<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Unix Tutorial</title>
	
	<link>http://www.unixtutorial.org</link>
	<description>Learn UNIX</description>
	<lastBuildDate>Sun, 29 Apr 2012 19:39:03 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/UnixTutorial" /><feedburner:info uri="unixtutorial" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Using Dropbox with Unix</title>
		<link>http://feedproxy.google.com/~r/UnixTutorial/~3/QBJ2APoDrw4/</link>
		<comments>http://www.unixtutorial.org/2012/04/using-dropbox-with-unix/#comments</comments>
		<pubDate>Sun, 29 Apr 2012 16:46:29 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
				<category><![CDATA[Advanced topics]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Unix]]></category>
		<category><![CDATA[dropbox]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://www.unixtutorial.org/?p=699</guid>
		<description><![CDATA[Although last week saw some pretty exciting developments in the cloud storage (Google Drive announcement and SkyDrive free 25Gb space), the truth is that Dropbox is still the king of the cloud storage hill &#8211; it's hands down the easiest to use and integrate. I've been a Dropbox user for a few years now, but [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://unixtutorial.s3.amazonaws.com/images/dropbox-logo.png"><img class="aligncenter size-full wp-image-703" title="Dropbox" src="http://unixtutorial.s3.amazonaws.com/images/dropbox-logo.png" alt="" width="200" height="200" /></a>Although last week saw some pretty exciting developments in the cloud storage (Google Drive announcement and SkyDrive free 25Gb space), the truth is that <strong>Dropbox</strong> is still the king of the cloud storage hill &#8211; it's hands down the easiest to use and integrate.</p>
<p>I've been a <strong>Dropbox</strong> user for a few years now, but have started using it actively only in the last 12 months or so. It's been an invaluable tool for me thanks to its integration with 1Password, the password tool of my choice. <strong>Dropbox</strong> also helps with lots of day-to-day tasks and thats why I decided it's time to share some of the tips.</p>
<p>Having used <strong>Dropbox</strong> extensively on Windows systems (XP on laptop and Win7 on desktops), I've recently moved on to using <strong>Dropbox</strong> with my Mac OSX desktop and Linux hosting.</p>
<p>So here are the top tips for using <strong>Dropbox</strong> with Unix &#8211; each one does wonders for me and so I hope you like them as well.</p>
<p><strong>Important</strong>: If you're not a <strong>Dropbox</strong> user yet, <strong><a title="Dropbox Sign Up" href="http://db.tt/MBzcUjdU">please use this link to sign up</a></strong> &#8211; it means I'll get a small bonus (extra 500MB to my free account) for referring you.</p>
<h3><strong>Storing all the common apps and tools in Dropbox</strong></h3>
<p><strong>Dropbox</strong> is really smart when it comes to uploading your files into the cloud storage and making it universally accessible across all the devices that you choose to pair with your <strong>Dropbox</strong> account.</p>
<p>One thing I particularly like using <strong>Dropbox</strong> for is storing the latest (or sometimes not the latest but verified to be fully working) versions of apps and tools I find handy to have on my desktops. In addition to having installers for all your favourite tools avaialble on each workstation, <strong>Dropbox</strong> account is also handy for simply storing all the necessary software in one location. When traveling, for example, I can open my <strong>Dropbox</strong> account and safely download the exact version of a particular tool that I need. It saved me a lot of time because I don't have to go to each website and search for that download link.</p>
<h3>Syncronizing scripts and config files between hosting systems</h3>
<p>I have a dedicated server and use it for running a number of Ubuntu VMs. I've created a separate <strong>Dropbox</strong> account for my hosting needs, and this means that I now have 2.5Gb of space available for my VMs to exchange files or store immediate backups. Because <strong>Dropbox</strong> takes care of synchronizing all the content (and it has a LAN sync feature meaning VMs transfer files directly to each other instead of uploading back to the Dropbox site), it's super easy and super fast to have a particular script updated and deployed to multiple systems.</p>
<p>I'm not quite there yet with actually running stuff like important automation or whole websites straight from <strong>Dropbox</strong> directory, but I use it for deploying scripts and configs all the time &#8211; once I get something working properly on one VM, I can then hope from one system to another and run the same set of commands against the files which are synchronized by <strong>Dropbox</strong>.</p>
<h3>Transferring files to and from my hosting</h3>
<p>This is a very recent addition to the things I do with <strong>Dropbox</strong>, but it's an incredibly useful one. Having setup a separate <strong>Dropbox</strong> account for hosting, I shared one of the folders with my personal <strong>Dropbox</strong> account, and this means that transferring any files to and from my hosting had gotten to be this much easier. By putting a file into a local directory on my desktop, I have it accessible accross all the VMs on my hosting within seconds.</p>
<p>Likewise, if I'm reading logs or working on updating a particular config file, I can always copy it into <strong>Dropbox</strong> directory and have it synced back to my desktop.</p>
<p>Prior to this setup I had to rely on scp (passwordless logins using passphrase), and although it was pretty convenient to use, <strong>Dropbox</strong> approach is much more robust. Because files appear to be local, you get to work with them and manage directories as you like. You don't have to remember the directory tree structure or follow any naming conventions &#8211; your files are the same across all the systesm and you don't have to remeber to always sync.</p>
<h3>Keeping backups of DBs or websites in Dropbox</h3>
<p>Since majority of my websites are publicly available blogs, I don't consider most of the backups to be a sensitive information. To be clear, I don't store my passwords (wp-config.php file or htpasswd files) in <strong>Dropbox</strong> account, but everything else gets copied into it as a first level backup. I also have been doing automatic backups to <strong>Amazon's S3</strong> storage for about 5 years now, this means I can recover from most disasters quickly enough.</p>
<p>The reason <strong>Dropbox</strong> wins is because I don't have to pay for each minor transfer or for storing an extra gigabyte or two &#8211; and yes, every little helps even though <strong>Amazon's</strong> services are quite affordable. Another major reason I started doing backups to <strong>Dropbox</strong> is because it's a local directory &#8211; I don't have to use any extra tools to access all the backups in a simple directories/files structure. With <strong>Amazon's S3</strong> it's also possible but setup is not as trivial.</p>
<h3>Using Dropbox for controlling Unix systems remotely</h3>
<p>With a few minutes and a really simple script, it's possible to setup your own mission control for all the VMs in your hosting.</p>
<p>For example, if you create a cronjob which looks for a particular file, you can control which DB server your systems will connect to or which directory you'll get the latest important log file copied into.</p>
<p>I'm also playing with services management based on the <strong>Dropbox</strong> account. If there's a file present, I keep a particular service running. As soon as the file is gone, my cronjob gracefully stops the service. A slightly more sophisticated approach involves storing services names and system names associations in a Dropbox synchronized file &#8211; this allows for more flexibility as I can specify which service I want to be running on which nodes.</p>
<p>Sure enough, this isn't the most straightforward way to manage your system, but such an approach can be used on the go from your iPhone. For example, I can restart a webserver by just touching a file from my iPhone, while previously I would have to find the nearest computer I trust, download SSH client, connect to the box and only then fix the problem.</p>
<p>Have I convinced you enough? Did you like any tips, or do you have some more perhaps? Let me know in the comments section!</p>
<p>pS: if you don't have a <strong>Dropbox</strong> account or perhaps if I persuaded you to create a separate one for your hosting &#8211; <a title="Dropbox Sign up" href="http://db.tt/MBzcUjdU">please use this link </a>so that I get some extra Dropbox space for referring. Thanks!</p>
<p>&nbsp;</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=QBJ2APoDrw4:E6bNmljbtbk:kdmuIyMabB4"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=kdmuIyMabB4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=QBJ2APoDrw4:E6bNmljbtbk:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=QBJ2APoDrw4:E6bNmljbtbk:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?i=QBJ2APoDrw4:E6bNmljbtbk:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/UnixTutorial/~4/QBJ2APoDrw4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixtutorial.org/2012/04/using-dropbox-with-unix/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://www.unixtutorial.org/2012/04/using-dropbox-with-unix/</feedburner:origLink></item>
		<item>
		<title>How To: Use yum behind proxy</title>
		<link>http://feedproxy.google.com/~r/UnixTutorial/~3/iJ5qhWz_t0A/</link>
		<comments>http://www.unixtutorial.org/2012/02/how-to-use-yum-behind-proxy/#comments</comments>
		<pubDate>Tue, 28 Feb 2012 23:04:16 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
				<category><![CDATA[Basic stuff]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[proxy]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[rpm]]></category>
		<category><![CDATA[yum]]></category>

		<guid isPermaLink="false">http://www.unixtutorial.org/?p=687</guid>
		<description><![CDATA[I've got a few RedHat and CentOS VMs running on internal network of my server, and since updating them quite regularly is a habit I thought this little piece of advice will help all of you who run VMs in a similar scenario. To make yum command use proxy, your best best is to edit [...]]]></description>
			<content:encoded><![CDATA[<p>I've got a few RedHat and CentOS VMs running on internal network of my server, and since updating them quite regularly is a habit I thought this little piece of advice will help all of you who run VMs in a similar scenario.</p>
<p>To make <strong><a title="yum command" href="http://www.unixtutorial.org/commands/yum/">yum command</a></strong> use proxy, your best best is to edit <strong>/etc/yum.conf</strong> and add your proxy server reference:</p>
<pre>proxy=http://192.168.3.1:3128</pre>
<p>You don't have to restart anything but it may be a good idea to do <strong>yum clean all</strong> and then <strong>yum check-update</strong>:</p>
<pre>[root@testvm1 ~]# <strong>yum check-update</strong>
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: be.mirror.eurid.eu
* epel: epel.uni-oldenburg.de
* extras: be.mirror.eurid.eu
* updates: centosa5-msync-dvd.centos.org
base                                         | 3.7 kB 00:00
base/primary_db                              | 4.5 MB 00:01
cr                                           | 3.0 kB 00:00
cr/primary_db                                | 1.2 kB 00:00
epel                                         | 3.4 kB 00:00
epel/primary_db                              | 3.7 MB 00:00
extras                                       | 3.5 kB 00:00
extras/primary_db                            | 6.3 kB 00:00
updates                                      | 3.5 kB 00:00
updates/primary_db                           | 1.8 MB 00:01</pre>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=iJ5qhWz_t0A:kAtABoOwDas:kdmuIyMabB4"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=kdmuIyMabB4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=iJ5qhWz_t0A:kAtABoOwDas:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=iJ5qhWz_t0A:kAtABoOwDas:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?i=iJ5qhWz_t0A:kAtABoOwDas:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/UnixTutorial/~4/iJ5qhWz_t0A" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixtutorial.org/2012/02/how-to-use-yum-behind-proxy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.unixtutorial.org/2012/02/how-to-use-yum-behind-proxy/</feedburner:origLink></item>
		<item>
		<title>Passwordless SSH with encrypted homedir in Ubuntu</title>
		<link>http://feedproxy.google.com/~r/UnixTutorial/~3/EPQ3Ga8nnRY/</link>
		<comments>http://www.unixtutorial.org/2012/01/passwordless-ssh-with-encrypted-homedir-in-ubuntu/#comments</comments>
		<pubDate>Tue, 24 Jan 2012 17:45:26 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
				<category><![CDATA[Advanced topics]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[authorized_keys]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[passwordless]]></category>
		<category><![CDATA[ssh]]></category>
		<category><![CDATA[sudo]]></category>

		<guid isPermaLink="false">http://www.unixtutorial.org/?p=678</guid>
		<description><![CDATA[Quite recently I came across a very interesting issue: while configuring passwordless SSH (it's public key based, so depending on you have it configured it may not be completely passwordless) access to some of my VPS servers, I found that the same keypair just wouldn't work on one of the servers. Not only that, but [...]]]></description>
			<content:encoded><![CDATA[<p>Quite recently I came across a very interesting issue: while configuring passwordless SSH (it's public key based, so depending on you have it configured it may not be completely passwordless) access to some of my VPS servers, I found that the same keypair just wouldn't work on one of the servers.</p>
<p>Not only that, but the behaviour was quite bizzare: upon my first attempt to connect the public key would get rejected and a regular password would be requested by the ssh session. But once I successfully logged in with my password, any subsequent ssh connections would happily authenticate by my public key and would let me in without a problem.</p>
<p>Those of you using home dir encrypiton in Ubuntu are probably smiling right now! <img src='http://unixtutorial.s3.amazonaws.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  But becase I have never consciously configured or used this feature, it took me a good few hours to troubleshoot the issue and come up with the fix.</p>
<h3>Why public-key based SSH doesn't work with encrypted home directories</h3>
<p>The answer is quite simple: before your server can decide whether you are providing a valid and trusted SSH key, it must read your public key stored in your homedir. But if your homedir is encrypted, this becomes a classical chicken-and-egg scenario &#8211; until you log in and therefore decrypt your homedir the server won't gain access to your public key. Only you wouldn't be needing the public key by then, would you?</p>
<h3>Store your authorized SSH keys outside your encrypted home directory</h3>
<p>If you happen to like your homedir encryption AND would like to use public/private key SSH authentication,  there is a way out: you need to store your authorized keys outside of your encrypted homedir.</p>
<p>The usual access restrictions and directory/file permissions still apply, so the only thing you're changing is moving your authorized keys outside of the encrypted homedir on your server. This way things will work exactly as you expect: you authenticate with your private key and this results in your automatically mounted and decrypted homedir.</p>
<p>Here are the steps to make this happen. You're going to need superuser privileges for my scenario because it caters for all the users on your Ubuntu server, not just one account that belongs to you (use<strong> <a title="sudo become root" href="http://www.unixtutorial.org/2008/01/sudo-tutorial/">sudo to become root</a></strong>).</p>
<h4>Step 1: create a directory structure for your authorized keys.</h4>
<p>First, the main directory, I created it under <strong>/var</strong> &#8211; seems quite a safe choice since this directory is unlikely to grow and is equally unlikely to get removed by accident.</p>
<pre># <strong>mkdir /var/openssh</strong></pre>
<p>Perfect! Now we need to create user-specific directories, just to keep this dir really tidy. My username is "<strong>greys</strong>", so here is the directory:</p>
<pre># <strong>mkdir /var/openssh/greys</strong>
# <strong>chown greys /var/openssh/greys</strong></pre>
<h4>Step 2: copy existing authorized keys file into new location</h4>
<p>(you must log in as your username for this, otherwise the homedir will stay encrypted)</p>
<pre>$ <strong>cp /home/greys/.ssh/authorized_keys /var/openssh/greys</strong></pre>
<h4>Step 3: update SSHd config with new location for authorized_keys file</h4>
<p>You're going to do this as root once again:</p>
<pre># <strong>vi /etc/ssh/sshd_config</strong></pre>
<p>update the value of the AuthorizedKeysFile so that it looks like this:</p>
<pre>AuthorizedKeysFile        /var/openssh/%u/authorized_keys</pre>
<h4>Step 4: Restart SSH service</h4>
<pre># <strong>service ssh restart</strong>
ssh start/running, process 3708</pre>
<pre></pre>
<p>That's it! Give it a try and let me know how it worked out.</p>
<h3>Recommended books:</h3>
<div style="border-style: none; overflow: hidden; clear: both;">
<div style="border-style: none; clear: none; float: left;"><a href="http://www.amazon.com/gp/product/1590594762/ref=as_li_ss_tl?ie=UTF8&amp;tag=unixtutorial-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1590594762" target="_blank"><img border=1 title="It's not that everyone's paranoid these days, but if there is a neat way to secure your remote sessions - why not do it? OpenSSH all the way!" src="/amazon/pro-bash-programming-scripting-the-gnu-linux-shell-experts-voice-in-linux-200px.jpg" alt="" /></a></div>
<div style="border-style: none; clear: none; float: right;"><a href="http://www.amazon.com/gp/product/0596008953/ref=as_li_ss_tl?ie=UTF8&amp;tag=unixtutorial-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0596008953"><img border=1 title="A timeless classic, this SSH reference book is still the best book you can find on the topic." src="/amazon/ssh-the-secure-shell-the-definitive-guide-200px.jpg" alt="" /></a></div>
</div>
<h3>See also</h3>
<ul>
<li><strong><a title="Enable SSH in Ubuntu" href="http://www.unixtutorial.org/2009/05/ubuntu-ssh-how-to-enable-secure-shell-in-ubuntu/">How To Enable Secure Shell service in Ubuntu</a></strong></li>
</ul>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=EPQ3Ga8nnRY:D2P39j7ZHJg:kdmuIyMabB4"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=kdmuIyMabB4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=EPQ3Ga8nnRY:D2P39j7ZHJg:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=EPQ3Ga8nnRY:D2P39j7ZHJg:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?i=EPQ3Ga8nnRY:D2P39j7ZHJg:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/UnixTutorial/~4/EPQ3Ga8nnRY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixtutorial.org/2012/01/passwordless-ssh-with-encrypted-homedir-in-ubuntu/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.unixtutorial.org/2012/01/passwordless-ssh-with-encrypted-homedir-in-ubuntu/</feedburner:origLink></item>
		<item>
		<title>Welcome to 2012!</title>
		<link>http://feedproxy.google.com/~r/UnixTutorial/~3/WjB2jnoT74g/</link>
		<comments>http://www.unixtutorial.org/2012/01/welcome-to-2012/#comments</comments>
		<pubDate>Wed, 04 Jan 2012 23:25:44 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://www.unixtutorial.org/?p=665</guid>
		<description><![CDATA[It's been so unbelievably long since my last post on this blog that I decided to start this year with a non-technical welcome. I have great plans for UnixTutorial in 2012, and would welcome any opportunity to share knowledge and experience with all of the readers and new visitors of this blog. Here's just a [...]]]></description>
			<content:encoded><![CDATA[<p>It's been so unbelievably long since my last post on this blog that I decided to start this year with a non-technical welcome.</p>
<p>I have great plans for <a title="Unix Tutorial" href="http://www.unixtutorial.org"><strong>UnixTutorial</strong></a> in 2012, and would welcome any opportunity to share knowledge and experience with all of the readers and new visitors<br />
of this blog.</p>
<p>Here's just a few of the things I plan to do:</p>
<ul>
<li><strong>UnixTutorial members area</strong> &#8211; long time coming, this area of the website will finally make a proper debut in the next few months. I'll be announcing the next round of email subscriptions shortly, so don't miss out if you're still interested</li>
<li><strong>A series of UnixTutorial eBooks</strong> &#8211; eventually a balanced collection of free and paid material in PDF and Kindle formats (polls to decide which topis are in demand will follow shortly)</li>
<li><strong>Broader coverage of Unix topics</strong> &#8211; this year I expect to write a lot more about Mac OS and AIX systems</li>
<li>New WordPress theme and quite likely a mobile copy of the website (let me know what devices you have, I own  iPhone and iPad so will do initial testing)</li>
<li>Completion and expansion of the <a title="Basic Unix Commands" href="http://www.unixtutorial.org/basic-unix-commands/"><strong>Basic Unix Commands</strong></a> and <strong><a title="Advanced Unix Commands" href="http://www.unixtutorial.org/advanced-unix-commands/">Advanced Unix Commands</a></strong> sections</li>
<li>More Unix book reviews and recommendations</li>
<li>Reviews of latest Unix-like OS releases</li>
<li>Even more <strong><a title="Unix Questions and Answers" href="http://www.unixtutorial.org/category/questions-answers/">Questions and Answers</a></strong></li>
</ul>
<p>If you expect to see even more &#8211; now would be a really good time to let me know by leaving a comment. Thanks and stay tuned!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=WjB2jnoT74g:GoKyUoqi-0Y:kdmuIyMabB4"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=kdmuIyMabB4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=WjB2jnoT74g:GoKyUoqi-0Y:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=WjB2jnoT74g:GoKyUoqi-0Y:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?i=WjB2jnoT74g:GoKyUoqi-0Y:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/UnixTutorial/~4/WjB2jnoT74g" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixtutorial.org/2012/01/welcome-to-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.unixtutorial.org/2012/01/welcome-to-2012/</feedburner:origLink></item>
		<item>
		<title>Using dig command to confirm TTL for a DNS zone entry</title>
		<link>http://feedproxy.google.com/~r/UnixTutorial/~3/ww4sePnggas/</link>
		<comments>http://www.unixtutorial.org/2011/07/using-dig-command-to-confirm-ttl-for-a-dns-zone-entry/#comments</comments>
		<pubDate>Fri, 01 Jul 2011 01:58:15 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[dig]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[ttl]]></category>

		<guid isPermaLink="false">http://www.unixtutorial.org/?p=657</guid>
		<description><![CDATA[As you probably know, TTL (time-to-live) parameters can be set not only for the whole DNS zone you're managing, but for each individual zone entry. A common example could be a higher TTL for the zone as a whole, while having much smaller TTLs for critical servers like web or MX servers. Not everyone is [...]]]></description>
			<content:encoded><![CDATA[<p>As you probably know, TTL (time-to-live) parameters can be set not only for the whole DNS zone you're managing, but for each individual zone entry. A common example could be a higher TTL for the zone as a whole, while having much smaller TTLs for critical servers like web or MX servers.</p>
<p>Not everyone is aware that <strong>dig command</strong> is very useful for entry-specific DNS research. This post just shows you a very simple example.</p>
<h3>dig to confirm TTL for a DNS entry</h3>
<p>When using <strong>dig</strong>, we're usually after a specific section of its output. Consider this simple query (your output may slightly vary):</p>
<pre>srv1# <strong>dig www.google.com</strong></pre>
<p>This query targets a specific DNS record &#8211; namely the www. one, rather than a whole google.com domain.</p>
<pre>; &lt;&lt;&gt;&gt; DiG 9.7.1-P2 &lt;&lt;&gt;&gt; www.google.com
;; global options: +cmd
;; Got answer:
;; -&gt;&gt;HEADER&lt;&lt;- opcode: QUERY, status: NOERROR, id: 4968
;; flags: qr rd ra; QUERY: 1, ANSWER: 7, AUTHORITY: 13, ADDITIONAL: 8

;; QUESTION SECTION:
;www.google.com.                        IN      A

;; ANSWER SECTION:
www.google.com.         541187  IN      CNAME   www.l.google.com.
www.l.google.com.       156     IN      A       209.85.148.104
www.l.google.com.       156     IN      A       209.85.148.105
www.l.google.com.       156     IN      A       209.85.148.106
www.l.google.com.       156     IN      A       209.85.148.147
www.l.google.com.       156     IN      A       209.85.148.99
www.l.google.com.       156     IN      A       209.85.148.103

;; AUTHORITY SECTION:
com.                    37414   IN      NS      d.gtld-servers.net.
com.                    37414   IN      NS      e.gtld-servers.net.
com.                    37414   IN      NS      g.gtld-servers.net.
com.                    37414   IN      NS      f.gtld-servers.net.
com.                    37414   IN      NS      a.gtld-servers.net.
com.                    37414   IN      NS      h.gtld-servers.net.
com.                    37414   IN      NS      b.gtld-servers.net.
com.                    37414   IN      NS      m.gtld-servers.net.
com.                    37414   IN      NS      c.gtld-servers.net.
com.                    37414   IN      NS      j.gtld-servers.net.
com.                    37414   IN      NS      i.gtld-servers.net.
com.                    37414   IN      NS      l.gtld-servers.net.
com.                    37414   IN      NS      k.gtld-servers.net.

;; ADDITIONAL SECTION:
a.gtld-servers.net.     22830   IN      A       192.5.6.30
a.gtld-servers.net.     23008   IN      AAAA    2001:503:a83e::2:30
c.gtld-servers.net.     581     IN      A       192.26.92.30
d.gtld-servers.net.     581     IN      A       192.31.80.30
e.gtld-servers.net.     581     IN      A       192.12.94.30
f.gtld-servers.net.     581     IN      A       192.35.51.30
g.gtld-servers.net.     23226   IN      A       192.42.93.30
h.gtld-servers.net.     581     IN      A       192.54.112.30

;; Query time: 1 msec
;; SERVER: 88.198.6.2#53(88.198.6.2)
;; WHEN: Fri Jul  1 03:50:38 2011
;; MSG SIZE  rcvd: 512</pre>
<p>We're only interested in the ANSWER section:</p>
<pre>;; ANSWER SECTION:
www.google.com.         541187  IN      CNAME   www.l.google.com.
www.l.google.com.       156     IN      A       209.85.148.104
www.l.google.com.       156     IN      A       209.85.148.105
www.l.google.com.       156     IN      A       209.85.148.106
www.l.google.com.       156     IN      A       209.85.148.147
www.l.google.com.       156     IN      A       209.85.148.99
www.l.google.com.       156     IN      A       209.85.148.103</pre>
<p>As you can see from this example, the global www.google.com name is a CNAME entry with quite a high TTL, pointing to a number of www.l.google.com A entries with a much smaller TTL. In this particular example, the TTL for each www.l.google.com is 156 seconds, which is slightly less than 3 minutes.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=ww4sePnggas:8bKXijn52YU:kdmuIyMabB4"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=kdmuIyMabB4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=ww4sePnggas:8bKXijn52YU:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=ww4sePnggas:8bKXijn52YU:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?i=ww4sePnggas:8bKXijn52YU:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/UnixTutorial/~4/ww4sePnggas" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixtutorial.org/2011/07/using-dig-command-to-confirm-ttl-for-a-dns-zone-entry/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.unixtutorial.org/2011/07/using-dig-command-to-confirm-ttl-for-a-dns-zone-entry/</feedburner:origLink></item>
		<item>
		<title>Upgrading Ubuntu with do-release-upgrade</title>
		<link>http://feedproxy.google.com/~r/UnixTutorial/~3/GD7__MrOhzY/</link>
		<comments>http://www.unixtutorial.org/2011/03/upgrading-ubuntu-with-do-release-upgrade/#comments</comments>
		<pubDate>Thu, 10 Mar 2011 22:11:37 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
				<category><![CDATA[Basic stuff]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[do-release-upgrade]]></category>
		<category><![CDATA[release upgrade]]></category>
		<category><![CDATA[upgrade]]></category>

		<guid isPermaLink="false">http://www.unixtutorial.org/?p=642</guid>
		<description><![CDATA[There comes a time (a couple of times a year, actually) when you may want to upgrade your Ubuntu distro (read here for instructions on confirming your version of Linux: Find Out Linux Version) Once that's done, you can use do-release-upgrade for a hassle free upgrade. IMPORTANT: are you can see, I've used a really [...]]]></description>
			<content:encoded><![CDATA[<p>There comes a time (a couple of times a year, actually) when you may want to upgrade your Ubuntu distro (read here for instructions on confirming your version of Linux: <a href="http://www.unixtutorial.org/2008/03/find-out-linux-version-using-lsb/">Find Out Linux Version</a>)</p>
<p>Once that's done, you can use <strong>do-release-upgrade</strong> for a hassle free upgrade.</p>
<p><strong>IMPORTANT</strong>: are you can see, I've used a really old Ubuntu server with 8.10, hence your procedure for upgrading more recent Ubuntu versions may be slightly different. For example, later upgrades will warn you if you're doing a release upgrade over ssh.</p>
<h3>What do-release-upgrade is and when you should use it</h3>
<p><strong>do-release-script</strong> is a Python script which automates the process of updating multiple packages. It relies upon Ubuntu's core package management functionality.</p>
<p>Apart from downloading and installing updated versions of packages found on your system, this command attempts to take care of all the necessary Ubuntu-release related file changes.</p>
<h3>Step 1: Run do-release-upgrade</h3>
<p>Once you type the do-release-upgrade command name and press Enter, you should see how vital information about packages currently installed is being collected:</p>
<blockquote><p># <strong>do-release-upgrade</strong><br />
Checking for a new ubuntu release Done<br />
Upgrade tool signature Done<br />
Upgrade tool Done<br />
downloading<br />
extracting 'jaunty.tar.gz'<br />
authenticate 'jaunty.tar.gz' against 'jaunty.tar.gz.gpg'<br />
Reading cache<br />
Checking package manager<br />
Reading package lists: Done<br />
Reading state information: Done<br />
Updating repository information<br />
Done http://archive.ubuntu.com jaunty Release.gpg<br />
Done http://archive.ubuntu.com jaunty-updates Release.gpg<br />
Done http://security.ubuntu.com jaunty-security Release.gpg<br />
Done http://us.archive.ubuntu.com jaunty-backports Release.gpg<br />
Done http://security.ubuntu.com jaunty-security Release<br />
&#8230;<br />
Checking package manager<br />
Reading package lists: Done<br />
jaunty-security/multiverse<br />
Packages: 98  2<br />
Reading state information: Done<br />
Reading state information: Done<br />
Reading state information: Done<br />
Calculating the changes</p></blockquote>
<p>&nbsp;</p>
<h3>2. Confirming what upgrading will do</h3>
<p>This is your last change to change your mind. All the necessary information about your current Ubuntu release is collected, and now you're presented with the exact upgrade details: how many packages will be removed, how many new ones will be installed, how many will be upgraded. You also are given details about the required amount of data to be downloaded should you decide to proceed with the upgrade;</p>
<blockquote><p>Do you want to start the upgrade?</p>
<p>1 package is going to be removed. 23 new packages are going to be installed. 420 packages are going to be upgraded.</p>
<p>You have to download a total of 248M. This download will take about 7 minutes with your connection.</p>
<p>Fetching and installing the upgrade can take several hours. Once the download has finished, the process cannot be cancelled.</p>
<p>Continue [yN]  Details [d]</p>
<p>Ready? Press y for yes!</p></blockquote>
<h3>3. Downloading all the packages</h3>
<p>Just like with apt-get, you will now see the progress of downloading all the updated packages for your Ubuntu OS. At the bottom of the screen you will see the overall completeness of the download (22% in my example), the current download speed (598kB/s in my case) and the ETA:</p>
<blockquote><p>Done http://archive.ubuntu.com jaunty-updates/main libbz2-1.0 1.0.5-1ubuntu1.1<br />
Done http://archive.ubuntu.com jaunty/main libdb4.7 4.7.25-6ubuntu1<br />
Done http://archive.ubuntu.com jaunty/main libncursesw5 5.7+20090207-1ubuntu1<br />
Done http://archive.ubuntu.com jaunty-updates/main libssl-dev 0.9.8g-15ubuntu3.6<br />
Done http://archive.ubuntu.com jaunty-updates/main libssl0.9.8 0.9.8g-15ubuntu3.6<br />
Done http://archive.ubuntu.com jaunty/main python2.6 2.6.2-0ubuntu1<br />
[23%] 598kB/s 5min17s</p></blockquote>
<h3>4. Upgrade</h3>
<p>Once package are downloaded, they will get installed once by one, with package-specific questions asked for software like postfix or apache.</p>
<h3>5. Reboot</h3>
<p>To finalize the distro upgrade, you will need to do a reboot. Once completed, you should have a shine next release available.</p>
<h3>Recommended books:</h3>
<div style="border-style:none; overflow: hidden; clear: both;">
<div style="border-style:none; clear: none; float: left;"><a target="_blank" href="http://www.amazon.com/gp/product/0132748509/ref=as_li_ss_tl?ie=UTF8&#038;tag=unixtutorial-20&#038;linkCode=as2&#038;camp=1789&#038;creative=390957&#038;creativeASIN=0132748509"><img title="Say what you want, but Ubuntu became the first popular and truly approachable Linux in ages - it's a great distro many have learned to love" src="/amazon/official-ubuntu-book.jpeg"></a></div>
<div style="border-style:none; clear: none; float: right;"><a target="_blank" href="http://www.amazon.com/gp/product/0470929987/ref=as_li_ss_tl?ie=UTF8&#038;tag=unixtutorial-20&#038;linkCode=as2&#038;camp=1789&#038;creative=390957&#038;creativeASIN=0470929987"><img title="Linux Bible 2011 - the latest installment of a great way to get started with Linux!" src="/amazon/linux-bible-2011.jpeg"></a></div>
</div>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=GD7__MrOhzY:co856zFtmRM:kdmuIyMabB4"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=kdmuIyMabB4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=GD7__MrOhzY:co856zFtmRM:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=GD7__MrOhzY:co856zFtmRM:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?i=GD7__MrOhzY:co856zFtmRM:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/UnixTutorial/~4/GD7__MrOhzY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixtutorial.org/2011/03/upgrading-ubuntu-with-do-release-upgrade/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://www.unixtutorial.org/2011/03/upgrading-ubuntu-with-do-release-upgrade/</feedburner:origLink></item>
		<item>
		<title>Mounting NFS shares on Mac OS X</title>
		<link>http://feedproxy.google.com/~r/UnixTutorial/~3/zvvb5T5vWSk/</link>
		<comments>http://www.unixtutorial.org/2010/03/mounting-nfs-shares-on-mac-os-x/#comments</comments>
		<pubDate>Wed, 03 Mar 2010 22:54:50 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
				<category><![CDATA[Unix]]></category>
		<category><![CDATA[mac os]]></category>
		<category><![CDATA[mac os x]]></category>
		<category><![CDATA[macos]]></category>
		<category><![CDATA[macosx]]></category>
		<category><![CDATA[nfs]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.unixtutorial.org/?p=634</guid>
		<description><![CDATA[I've recently decided to give Mac OS X a try. For the past week or so I've been spending a good few hours a day working in Snow Leopard installed on a MacBook Pro borrowed from a friend. While Mac OS is unlike any Unix-like operating system I've managed so far, there are certainly some [...]]]></description>
			<content:encoded><![CDATA[<p>I've recently decided to give <strong>Mac OS X</strong> a try. For the past week or so I've been spending a good few hours a day working in <strong>Snow Leopard</strong> installed on a MacBook Pro borrowed from a friend.</p>
<p>While <strong>Mac OS</strong> is unlike any Unix-like operating system I've managed so far, there are certainly some of similarities. I can honestly say that I'm enjoying the Mac Book Pro so far, and hope to discover most of the differences compared to my previous Unix-like desktop which is Ubuntu 9.10.</p>
<h3>Mounting NFS on MAC OS X</h3>
<p>One thing which I noticed immediately was that out of the box it was impossible to mount any NFS shares from my Ubuntu NAS server. Any attempt to mount a remote filesystem would give me an error like this:</p>
<blockquote><p>mbp:~ root# <strong>mount nasbox:/try /mnt</strong><br />
mount_nfs: /mnt: Operation not permitted</p></blockquote>
<p>This error was happening for a relatively simple NFS share on the Ubuntu box:</p>
<blockquote><p>nasbox# <strong>cat /etc/exports</strong><br />
/try            (rw)</p></blockquote>
<p>&#8230; so I started looking around and realized that the reason for this strange problem is quite simple.</p>
<h3>Mac OS X uses non-standard port for outgoing NFS connections</h3>
<p>That's right &#8211; apparently, <strong>Mac OS X </strong>uses a non-privileged port (<strong>2049</strong>) for TCP and UDP connections serving the NFS transport. What this means is that most likely attempts to mount remote filesystems will fail, because most NFS servers don't really like connections from insecure ports.</p>
<p>There are two ways to approach this problem:</p>
<ol>
<li>Fix it on the client side (probably makes more sense)</li>
<li>Fix it on the NFS server side (if you manage both systems)</li>
</ol>
<h3>Using reserved NFS port number on Mac OS X</h3>
<p>There's a mount option supported by the <strong>mount_nfs</strong> command, which allows you to force the NFS client connections to originate from a privileged port. This will magically make your attempts to mount remote filesystems successful. The option is called <strong>resvport</strong>.</p>
<p>First we double-check that default mounts still don't work:</p>
<blockquote><p>mbp:~ root# <strong>mount nasbox:/try /mnt</strong><br />
mount_nfs: /mnt: Operation not permitted</p></blockquote>
<p>&#8230; and now let's use the <strong>resvport</strong> option:</p>
<blockquote><p>mbp:~ root# <strong>mount -o resvport nasbox:/try /mnt</strong></p></blockquote>
<p>&#8230; and make sure we're actually looking at a mounted filesystem:</p>
<blockquote><p>mbp:~ root# <strong>df -h /mnt</strong><br />
Filesystem   Size   Used  Avail Capacity  Mounted on<br />
nasbox:/try    61Gi   56Gi  2.6Gi    96%    /mnt</p></blockquote>
<h3>Allowing connections from non-privileged ports on NFS server</h3>
<p>Like I said, if you manage both the Mac OS based client and the NFS server, perhaps it makes more sense to relax the default NFS server security and allow the connections from non-privileged ports.</p>
<p>Just to remind you about the validity of such a decision, the option to allow non-privileged connections is called insecure.</p>
<p>Here's how you use it:</p>
<blockquote><p>nasbox# <strong>cat /etc/exports</strong><br />
/try            (rw,<strong>insecure</strong>)</p></blockquote>
<p>After making this change to the <strong>/etc/exports</strong> file, you'll have to restart your NFS server. On my Ubuntu NAS box, it's done like this:</p>
<blockquote><p>nasbox# <strong>/etc/init.d/nfs-kernel-server restart</strong><br />
* Stopping NFS kernel daemon<br />
&#8230;done.<br />
* Unexporting directories for NFS kernel daemon&#8230;<br />
&#8230;done.<br />
* Exporting directories for NFS kernel daemon&#8230;<br />
&#8230;done.<br />
* Starting NFS kernel daemon<br />
&#8230;done.</p></blockquote>
<p>We know are ready to attempt the default mount of the same filesystem on the <strong>Mac OS X</strong> client:</p>
<blockquote><p>mbp:~ root# <strong>mount nasbox:/try /mnt</strong></p></blockquote>
<p>That's it! I won't promise any <strong>Mac OS </strong>posts just yet, but if there is enough interest &#8211; I'd love to do the research and to post all the discoveries on the <strong><a title="Unix Tutorial" href="http://www.unixtutorial.org">Unix Tutorial</a></strong> pages.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=zvvb5T5vWSk:Xv13On8n1P0:kdmuIyMabB4"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=kdmuIyMabB4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=zvvb5T5vWSk:Xv13On8n1P0:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=zvvb5T5vWSk:Xv13On8n1P0:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?i=zvvb5T5vWSk:Xv13On8n1P0:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/UnixTutorial/~4/zvvb5T5vWSk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixtutorial.org/2010/03/mounting-nfs-shares-on-mac-os-x/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		<feedburner:origLink>http://www.unixtutorial.org/2010/03/mounting-nfs-shares-on-mac-os-x/</feedburner:origLink></item>
		<item>
		<title>Suggest a topic for the Operating Systems Basics</title>
		<link>http://feedproxy.google.com/~r/UnixTutorial/~3/d1s7siWfU8o/</link>
		<comments>http://www.unixtutorial.org/2010/01/suggest-a-topic-for-the-operating-systems-basics/#comments</comments>
		<pubDate>Thu, 21 Jan 2010 02:06:47 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://www.unixtutorial.org/?p=628</guid>
		<description><![CDATA[Hi everyone, and thanks for staying with Unix Tutorial for so long! My first weeks of the 2010 have been pretty busy, but I've been quietly upgrading the blog engine and components of the Unix Tutorial Members Area to get things ready for the long-awaited second module of the Introduction to Unix course. If you're [...]]]></description>
			<content:encoded><![CDATA[<p>Hi everyone, and thanks for staying with <a title="Unix Tutorial" href="http://www.unixtutorial.org"><strong>Unix Tutorial</strong></a><strong> </strong>for so long! My first weeks of the 2010 have been pretty busy, but I've been quietly upgrading the blog engine and components of the <strong><a title="Unix Tutorial members" href="http://www.unixtutorial.org/members">Unix Tutorial Members Area</a></strong> to get things ready for the long-awaited second module of the <strong>Introduction to Unix</strong> course.</p>
<p>If you're an existing member and have a topic which you think belongs to the <strong>Operating Systems Basics</strong> module, please leave a comment.</p>
<p>The purpose of the module is to give a very high level overview of how modern operating systems work and to also explain the importance of securely managing all the available resources (hence a few topics on files, users and privileges). Almost every single topic deserves a separate module, if not a course, on its own &#8211; but for the moment it will be really basic stuff.</p>
<p>Here's the list of topics so far:</p>
<ul>
<li>What OS is and why we need it</li>
<li>Features of a modern OS</li>
<li>Kernel and kernel modules</li>
<li>Features of Unix OS</li>
<li>MINDMAP: Features and components of an OS</li>
<li>Everything is a file! Types of files in Unix</li>
<li>A typical filesystem tree of a Unix-like OS</li>
<li>Users, privileges and file ownership</li>
<li>Executing a binary file in Unix</li>
</ul>
<p>To all those of you asking for the date when this module will be posted: I will make the O<strong>perating Systems Basics</strong> module available to all the existing <a title="Unix Tutorial members" href="http://www.unixtutorial.org/members">Unix Tutorial Members</a> on <strong>February 1st, 2010</strong>.</p>
<h3>See also:</h3>
<ul>
<li><strong><a title="Unix Tutorial members" href="http://www.unixtutorial.org/members">Unix Tutorial &#8211; members area</a></strong></li>
<li><a title="Become a Unix Tutorial member" href="http://www.unixtutorial.org/2009/03/become-a-lifetime-unix-tutorial-member/">What Unix Tutorial members area is about</a></li>
<li><a title="Unix Tutorial - Facebook" href="http://www.unixtutorial.org/2009/12/unix-tutorial-gets-its-own-page-on-facebook/">Unix Tutorial gets a Facebook page</a></li>
</ul>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=d1s7siWfU8o:7UPRMRiBh8E:kdmuIyMabB4"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=kdmuIyMabB4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=d1s7siWfU8o:7UPRMRiBh8E:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=d1s7siWfU8o:7UPRMRiBh8E:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?i=d1s7siWfU8o:7UPRMRiBh8E:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/UnixTutorial/~4/d1s7siWfU8o" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixtutorial.org/2010/01/suggest-a-topic-for-the-operating-systems-basics/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.unixtutorial.org/2010/01/suggest-a-topic-for-the-operating-systems-basics/</feedburner:origLink></item>
		<item>
		<title>Unix Tutorial Gets its Own Page on Facebook</title>
		<link>http://feedproxy.google.com/~r/UnixTutorial/~3/ZypbCdlfLOU/</link>
		<comments>http://www.unixtutorial.org/2009/12/unix-tutorial-gets-its-own-page-on-facebook/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 14:01:13 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://www.unixtutorial.org/?p=626</guid>
		<description><![CDATA[If you have a Facebook account and would like to get in touch with other visitors of this blog to discuss Unix, here's a great way to get started: join the Unix Tutorial Facebook page! See you all there, and feel free to share your suggestions &#8211; either here or on the wall of the [...]]]></description>
			<content:encoded><![CDATA[<p>If you have a Facebook account and would like to get in touch with other visitors of this blog to discuss Unix, here's a great way to get started: <a href="http://bit.ly/54x4E7">join the Unix Tutorial Facebook page</a>!</p>
<p>See you all there, and feel free to share your suggestions &#8211; either here or on the wall of the <a href="http://bit.ly/54x4E7">Unix Tutorial page</a>.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=ZypbCdlfLOU:YWJAo4ctujk:kdmuIyMabB4"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=kdmuIyMabB4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=ZypbCdlfLOU:YWJAo4ctujk:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=ZypbCdlfLOU:YWJAo4ctujk:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?i=ZypbCdlfLOU:YWJAo4ctujk:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/UnixTutorial/~4/ZypbCdlfLOU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixtutorial.org/2009/12/unix-tutorial-gets-its-own-page-on-facebook/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.unixtutorial.org/2009/12/unix-tutorial-gets-its-own-page-on-facebook/</feedburner:origLink></item>
		<item>
		<title>How To Disable IPv6 in Red Hat Linux</title>
		<link>http://feedproxy.google.com/~r/UnixTutorial/~3/8A80BZfOoHM/</link>
		<comments>http://www.unixtutorial.org/2009/12/how-to-disable-ipv6-in-red-hat-linux/#comments</comments>
		<pubDate>Wed, 02 Dec 2009 10:37:45 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[RedHat]]></category>

		<guid isPermaLink="false">http://www.unixtutorial.org/?p=621</guid>
		<description><![CDATA[Since it may be a while before I'm ready to use the IPv6 on my systems, I've been disabling IPv6 on most servers so far. And since there's a particularly elegant way of doing this in Red Hat Linux, I think it's worth sharing. How to confirm if IPv6 is running on your system IPv6 [...]]]></description>
			<content:encoded><![CDATA[<p>Since it may be a while before I'm ready to use the <strong>IPv6 </strong>on my systems, I've been disabling IPv6 on most servers so far. And since there's a particularly elegant way of doing this in Red Hat Linux, I think it's worth sharing.</p>
<h3>How to confirm if IPv6 is running on your system</h3>
<p><strong>IPv6 </strong>is implemented as a kernel module, so you can use the <strong>lsmod </strong>command to confirm if it's currently running on your Red Hat system:</p>
<pre>$ <strong>lsmod | grep ip</strong>
ipv6                  410913  36</pre>
<p>If <strong>lsmod </strong>doesn't return anything, it confirms that your system isn't running IPv6.</p>
<h3>Prevent IPv6 from getting started by modprobe</h3>
<p>As you probably know, modprobe command is used for probing modules upon system boot. Probing simply means a module is loaded and an attempt is made to start it up. With any luck, the module starts successfully and its functionality becomes available to the Linux kernel.</p>
<p>For the boot stage, modprobe uses a special config file which helps you control its behavior: <strong>/etc/modprobe.conf</strong>. For now, let's just concentrate on the <strong>IPv6</strong> task at hand. To make sure modprobe doesn't load the actual module next time your OS reboots, add the following line to the top of the <strong>/etc/modprobe.con</strong>f file (yes, you're going to need root privileges for this):</p>
<pre>install ipv6 /bin/true</pre>
<p><strong>WHY THIS WORKS</strong>: just to quickly explain the line above, here's why we're using the <strong>/bin/true</strong> command. install is rule of the modprobe config file which overrides the standard way of probing a module. Effectively, it tells modprobe to just run the specified command for starting a module. In the line above, we're telling modprobe to use the <strong>/bin/true</strong> command for probing the <strong>ipv6 </strong>module. And as you remember, <strong>/bin/true</strong> is a command which doesn't do anything but still returns a successful completion code &#8211; so in effect we're doing nothing instead of loading the <strong>ipv6 </strong>module, and we're looking good while doing this too.</p>
<p>Next, add the the following two lines to the same <strong>/etc/modprobe.conf</strong> file, and they will ensure that common aliases used for starting the <strong>IPv6 </strong>module are ignored by modprobe:</p>
<pre>alias net-pf-10 off
alias ipv6 off</pre>
<p><strong>IMPORTANT</strong>: These change doesn't immediately disable <strong>IPv6 </strong>on your system. Being a pretty important module, IPv6 isn't easy to disable on a live system, and so the easiest is to always follow the changes above with a reboot.</p>
<h3>Make sure your IPv6 firewall is disabled</h3>
<p>The <strong>ip6tables </strong>service (<strong>/etc/init.d/ip6tables</strong> sciprt) is responsible for starting <strong>IPv6 </strong>firewall, and so you probably want to disable it:</p>
<pre># <strong>chkconfig ip6tables off</strong></pre>
<p>and then confirm that it won't be started next time you reboot or switch to any runlevel:</p>
<pre># <strong>chkconfig --list ip6tables</strong>
ip6tables       0:off   1:off   2:off   3:off   4:off   5:off   6:off</pre>
<p>That's it, there really is nothing else to disabling <strong>IPv6</strong>. Let me know if you have any questions, otherwise I'll talk to you soon!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=8A80BZfOoHM:LrgW12mZKzk:kdmuIyMabB4"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=kdmuIyMabB4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=8A80BZfOoHM:LrgW12mZKzk:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/UnixTutorial?a=8A80BZfOoHM:LrgW12mZKzk:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/UnixTutorial?i=8A80BZfOoHM:LrgW12mZKzk:gIN9vFwOqvQ" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/UnixTutorial/~4/8A80BZfOoHM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixtutorial.org/2009/12/how-to-disable-ipv6-in-red-hat-linux/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		<feedburner:origLink>http://www.unixtutorial.org/2009/12/how-to-disable-ipv6-in-red-hat-linux/</feedburner:origLink></item>
	</channel>
</rss><!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic
Page Caching using disk: enhanced
Database Caching 2/45 queries in 0.012 seconds using disk: basic
Object Caching 638/755 objects using disk: basic
Content Delivery Network via Amazon Web Services: S3: unixtutorial.s3.amazonaws.com

Served from: www.unixtutorial.org @ 2012-05-16 21:41:54 -->

