Join the UnixTutorial waiting list

First Unix Tutorial enrollments are only 2 weeks away

I will have the first three modules of the Unix Foundations course ready in the next few weeks, and plan to open the Unix Tutorial Members area in exactly 2 weeks, on March 16th, 2009.  

You can now join the Unix Tutorial waiting list to make sure you get an email when I open the registration.

It will only be an initial opening, so I will limit the registration period to 2 weeks only: on March 30th 2009, the registration will be closed so that I can get to know all the newly joined members and spend the next few months helping them go through the course. I will happily spend my spare time to answer all the technical questions, and will use this experience to further improve the courses and the way they’re presented.

What to expect from Unix Tutorial membership

The initial Unix Tutorial membership is a unique offer, because it will be a life-time access to Unix Tutorial courses. The way I see it is that over time Unix Tutorial members area will grow into one of the most comprehensive collections of premium Unix study materials.

The basic, foundation courses will be aimed to help as many people as possible to get started with Unix, and will therefore always be free (although registration will still be required so that new members can access forums).

The advanced topics, however, are likely to be much more technical, will have more details and will probably be useful to a smaller number of people looking to specialize their Unix skills to suit their professional needs. Such topics are very likely to be available on a paid subscription basis only.

So here is the deal: all the initial Unix Tutorial members will be given a free life-time access to ALL the courses, even the premium ones. There’s only one condition – if you plan on becoming one of the lucky initial members,  you should be genuinely interested in learning Unix and be an active member of the community – participating in discussions and helping others. You will learn a great deal about Unix and will get an opportunity to ask any questions you like, so I think it’s only fair that you commit to helping other members.

Join the Unix Tutorial waiting list

If I got you interested, please take a few moments to subscribe to the announcement list, I will use it to announce the initial registration opening and to also communicate further important updates.

Please know that this subscription is not a guarantee that you’ll get placement in the initial membership group, you will still have to register within 2 weeks of enrollment period.




List drives by UUID in Ubuntu

Having used this tip a few times myself, I’d like to share it with you: a very simple way to list all the drives in your Ubuntu system using their UUID’s.

Disks by uuid in Ubuntu

Apart from blkid command, there’s another relatively easy way for you to confirm what each UUID on your system corresponds to. If you look in the /dev/disk/by-uuid directory, it contains symlinks which look like UUIDs and point to the real devices for each of your disks:

ubuntu# ls -al /dev/disk/by-uuid/*
lrwxrwxrwx 1 root root 10 Jan 12 04:25 /dev/disk/by-uuid/2596b3b4-9e54-47e2-bb45-89b3d4a0e7e3 -> ../../sda2
lrwxrwxrwx 1 root root 10 Jan 12 04:25 /dev/disk/by-uuid/d2ff8a06-74b7-4877-9d37-1873414e25b3 -> ../../sda1

Confirm disk device using its UUID

Knowing the /dev/disk/by-uuid directory, you can easily use this to look disks up by their UUID with the readlink command:

ubuntu# readlink /dev/disk/by-uuid/d2ff8a06-74b7-4877-9d37-1873414e25b3
../../sda1

That’s it! Have a great week!

See also:




Updates in Unix Glossary

Just updated the Unix Glossary section with the following definitions:

There’s no way these will be final, and so I’ll be updating them now and them so stay tuned. For example, the Unix definition is still not in the glossary, because I’m struggling with wording the paragraph for it. Will add next week, for sure!

See Also




New section added: Unix Glossary

I’ve just created another section on Unix Tutorial – the Unix Glossary, which is a section I’m going to use for listing definitions to all the topics I briefly touch in my regular posts.

So far, there’s only one item there – runlevel definition. Obviously, it’s a work in progress, so I’ll be updating definitions constantly and expanding the section as I post more.

The plan is to have a Unix Glossary section at the bottom of each post on Unix Tutorial, so that it gives you another chance to expand your understanding of Unix basics.

If you have any terms from Unix world which you’d like me to cover first, please head over to the Unix Glossary page and leave a comment there with your suggestions.

Let me know what you think about this, do you think it will help? If there’s any other side of this blog you’d like changed or improved – just let me know. I’m using this blog as my own reference all the time, so I always appreciate your feedback as it makes life easier and Unix Tutorial better for everyone.




Want to Learn Unix with me?

As I plan my goals for 2009, I’m thinking of making a few self-paced courses for all the readers of this blog.

I think it’s about time some of the basics are covered in a format of a course, complete with structured material and examples and with some multiple-choices testing.

If you want to learn Unix

If you’re interested in anything like this, please leave comments or contact me directly with your suggestions for course topics and desired structure. Also, if you’re keen in becoming a member – join the Unix Tutorial waiting list right now!

Unix Tutorials – self-paced courses

So far, the most popular topics and therefore the first candidates for courses are the following:

  • Unix shell scripting
  • Finding files and directories in Unix
  • Unix users and groups
  • File ownership and access permissions
  • rsync tutorial
  • sudo tutotial
  • unix sockets
  • comparing files in Unix

Have you got an idea for a great Unix tutorial? Let me know and I’ll see what I can do.

See also




Disable a startup of service in Ubuntu

If for whatever reason you stop using a certain service in your Ubuntu install and would like to disable automatic restarting for it upon system reboot, all it takes to do it is just one command line.

Startup and shutdown scripts in Unix

In most Unix distros, the startup and shutdown sequences of various system services are managed using a set of startup and shutdown scripts.

Startup scripts a’re usually located either in /etc/init.d or in /etc/rc.d/init.d/ directories (sometimes /etc/init.d is a symlink to /etc/rc.d/init.d). On top of these directories, they’re also a set of directories for each of your system runlevels: /etc/rc0.d, /etc/rc1.d, /etc/rc3.d, etc.

The reason scripts are organized this way is because in runlevel specific directories you only have symbolic links referring to the original script in /etc/init.d. Each of the scripts in this directory usually caters for a number of scenarios: starting a service up, stopping it, and, optionally, restarting it (which is the same as stopping/starting sequence in most cases).

As your Unix OS goes from one runlevel to another following a startup or shutdown, it looks for symlinks in /etc/rc*.d directories and uses them to ensure the services specified there are started or stopped accordingly.

Promise: One day, I will certainly spend more time talking about the Unix OS startup process itself, but for today I just want to concentrate on the scripts for a particular service.

So, for the FTP service, I have the /etc/init.d/proftpd startup/shutdown script plus the following set of symlinks referring to it:

/etc/rc0.d/K20proftpd -> ../init.d/proftpd
/etc/rc1.d/K20proftpd -> ../init.d/proftpd
/etc/rc6.d/K20proftpd -> ../init.d/proftpd
/etc/rc2.d/S20proftpd -> ../init.d/proftpd
/etc/rc3.d/S20proftpd -> ../init.d/proftpd
/etc/rc4.d/S20proftpd -> ../init.d/proftpd
/etc/rc5.d/S20proftpd -> ../init.d/proftpd

If you look at any of them, you can see that they really are symlinks:

ubuntu# ls -l /etc/rc3.d/S20proftpd
lrwxrwxrwx 1 root root 17 Jan 13 03:39 /etc/rc3.d/S20proftpd -> ../init.d/proftpd

Disabling startup of a service in Ubuntu

The procedure for disabling a service in Ubuntu is very simple: all you have to do is remove the symlinks from all the runlevel-specific directories, /etc/rc*.d, so that no links are pointing to the original /etc/init.d script for your service. That original script will be kept, so you can re-enable the startup/shutdown of the service whenever you feel like using it again.

This example below shows how a service called “proftpd” was disabled on my system:

ubuntu# update-rc.d -f proftpd remove
Removing any system startup links for /etc/init.d/proftpd ...
/etc/rc0.d/K50proftpd
/etc/rc1.d/K50proftpd
/etc/rc2.d/S50proftpd
/etc/rc3.d/S50proftpd
/etc/rc4.d/S50proftpd
/etc/rc5.d/S50proftpd
/etc/rc6.d/K50proftpd

You obviously don’t have to reboot your system just to stop your service though, so instead you can simply do this:

ubuntu# /etc/init.d/proftpd stop
 * Stopping ftp server proftpd

That’s all there is to it! Good luck with disabling the unused services!

Recommended books:

See also:

Unix glossary




New section on this blog: Unix Commands

I’ve just integrated a new section: Unix Commands. The long-term plan is to have a categorized list of commands with most common usage documented in my typical easy-to-follow examples.

So far, there’s not much, but I will referer to this section a lot in my future posts and its pages will have more examples for a particular Unix command compared to the original Unix Tutorial post where such a command is mentioned.

Have a look for yourself:

  • Unix Commands – the main index
  • Basic Unix commands – like it says, they really are basic. If you can think of something else which should be part of it, let me know
  • Advanced Unix commands – to Unix gurus they’ll seem basic as well, but my only guidance so far was that commands there will be the ones you don’t have to use on a daily basis. As I add more pages, this section will most likely become something like “Most common Unix commands” and a set of really advanced commands will be added.

Let me know what you all think, and if there are some immediate candidates for any of the section – let me know and I’ll add them to my list!

See Also




Ubuntu 8.10 – Intrepid Ibex – is here!

Right on time, next release of Ubuntu Linux has arrived. Ubuntu 8.10, codenamed Intrepid Ibex, is officially out.

Ubuntu 8.10

If you’re into desktop goodness of Ubuntu, you’ll probably enjoy the Lifehacker.com screenshot tour.

To learn more details, visit these pages:

Download Ubuntu 8.10

If you can’t wait any longer – grab a copy of Ubuntu from one of the sources presented at the Ubuntu download page.

See also:

Here are a few more links you might enjoy:




Today Only: Grab Your 100% Free Copy of CrossOver Pro

CodeWeavers are giving their award-winning CrossOver software for free.

What is CrossOver?

CrossOver is a tweaked and polished, proprietary version of Wine – an implementation of Windows API for Unix. Simply put, it’s a software which allows you to run Windows applications on your Unix system. Wine, especially since the 1.0 release, is quite a pleasant and reliable way of running Windows software on your Unix desktop, but CrossOver is known for putting many more tweaks on top of the features implemented in Wine, mostly to make popular office packages (Microsoft Office) and games work even better in emulated environment.

CrossOver Pro For Free

For one day only, October 28th 2008, you can go to the CodeWeavers website to request your free registration key for the professional version of their CrossOver software suite – either for Linux or Mac. These are fully functional serial keys for the pro version, technical support included.

The trick is that you need to have this key activated as soon as possible! Originally, you were only given time until midnight, but it is now promised that you’ll get another 48hours to activate your key, although free registration keys will stop after 23:59 PM Central Standard Time.

Wait no more – the main CodeWeavers website is already down due to traffic, but Free CrossOver Pro registration form is still available!

See also:




Follow me on Twitter!

It was bound to happen: I’ve joined Twitter! It would be great to hear from you there!

Follow me or leave your Twitter name in comments below so that I can follow you:

http://twitter.com/UnixTutorial

Also, if you happen to know some interesting Twitter feeds for all of us interested in Unix-like systems, leave links to them as well!

See also: