In order to develop my limited knowledge of the Unix and Linux way of doing things, I borrowed Jon “Maddog” Hall‘s Linux for Dummies. The version I got is the first edition from 1997, back when Linux really wasn’t for dummies (ie. ordinary end-users) at all.
It has since been completely rewritten with the desktop in mind (something that barely features in this book – only some discussion of how to configure X-windows), this version has a much wider scope, seeking to cover all kinds of Linux use and configuration. From the installation itself, to the tuning of the system (“Don’t Worry – Configuring a Few Files is Easy” as one section is called), to using it for UUCP, web serving and file editing with Vim and Emacs (hilariously, the book doesn’t explain how to exit Emacs once you’ve decided that this makes no sense at all).
Because of this, it only covers all of these issues superficially, and acknowledges this to some extent by having section titles such as
“System Help (Don’t Panic Yet)”
“Encrypting a Password is not that Simple”
and wonderful quotes like:
“Don’t panic. If Linux supports your hardware, you probably just need to recompile your kernel.”
What it does do well, is introduce a lot of basic Unix tools on the command prompt. It gives a nice introduction to the concept of piping data from one program to another on the command line. And it does give a good feel of how Unix and Linux was like 10 years ago, with very little graphical gloss.
As Hall notes, there are more than 1200 general user commands and 260 system administrator commands in Linux. All of them well-developed tools for specific purposes. The sheer number of possibilities for combining this is astounding.
Maybe I’m not going about this in the right way but in order to gain some understanding of the possibilities inherent in Linux “behind the glossy facade” I thought it would be best to learn about the command line and the file structure and design philosophy behind it.
In part, I’m wondering about how it would be best to introduce new users to Linux, using myself as an example with the questions I’ve had about it. At the Ubuntu wiki – the central help centre for questions regarding the Linux distribution that I use – there are some answers regarding the command line, but little overview. It’s basically a mess.
I also looked at the Ubuntu starter guide
, but it seems very superficial (well, I suppose it should be – it is just a starter guide), and it is a difficult balance between going into sufficient detail and presenting it in an easily readable manner.
So this got me thinking. The Ubuntu Documentation team do ask for help, and I would like to contribute since I did get a very good operating system without any charge or hassle. I’ve looked into this, and it seems like it isn’t really that easy to contribute if you (like me) aren’t experienced with various .xml formats and version control systems. But I’m not going to be put down by this.