Write Stuff

 

Linux

 

 Contents

1. Starting with Linux

2. Choosing a Distro

3. Some Advantages and Disadvantages of Linux

4. Why using Free Software is Better

5. Solving Problems

Starting with Linux 

 

I have been using Linux on my personal computers since 2001. I attended a computer course in 2000 and 2001 from which I gained a basic experience of UNIX-like operating systems. Armed with this knowledge, I started trying Linux out as a dual-boot with Windows on my computer at home. In around 2006, I came to the decision that Windows wasn't allowing me to run and configure my system as I wanted it and switched over to Linux permanently. I still have a virtual machine with Windows installed on it, but I almost never use it.

Linux comes in many forms. If you want to dive in head first, you can build your own system from scratch by compiling source code which is freely available on the internet. If this idea interests you, have a look at the “Linux from Scratch” (LFS) website (Beekmans,2016):

http://linuxfromscratch.org/

Several years ago, I indeed built my own system by following the directions on LFS. It was a fascinating experience, but it took ages (I can't remember how long, but it was a very long time, weeks, I think) to build a text based system which couldn't really do anything. I began the work of extending and developing it, but it was so hard, I'm afraid I just ran out of energy. I did learn a lot about Linux and compilation, though, which was very useful for my further dealings with Linux.

Most people who use Linux at home use a Linux distribution, or “distro”. A distro consists of all the software necessary to install an operating system and usually also contains every programme, tool, library and application that most users could imagine needing on their system. Those with more exotic requirements will be able to find the software they need somewhere on the internet. This is all packaged together in a form which allows for easy installation. A distro is, of course, far more than this and includes the whole machinery and all the people needed to develop, maintain and distribute the software, and user and developer communities for the exchange of ideas, opinions and information and often offer some kind of informal user support.

 

References

Beekmans, G. (2016) Welcome to Linux From Scratch!, Retrieved from: http://linuxfromscratch.org/ (Accessed 24 April 2016).

 

Last updated: 16.05.2016

 

 

 

 

 

 

 

  

Choosing a Distro

According to Wikipedia, there are almost 600 Linux distributions (Wikimedia Foundation, Inc., 2016a) so the decision which one to use is a bewildering one for someone entering the Linux arena for the first time. What you want to use your computer for when the software is installed is, of course, important, but I think that the vast majority of people considering using Linux for the first time on their computer at home simply want the usual functionality of browsing the web, writing emails, watching videos, and writing the odd text document. For me, the question is, how much do you want to have done for you and how much do you want to do yourself? Your own personalised system, finely tuned to meet your every need and wish is a wonderful thing, but the more you are responsible for configuring and shaping your system, the more work and time it will take, the more problems you will come up against, and the more knowledge of the workings of Linux you will need to have.  

There are distros to suit almost every purpose. There are distros that will run on older hardware with limited RAM and hard drive capacity, distros that run from a CD so you don't have to install anything at all, distros that automatically install everything you could possibly want for a fully functional desktop system and distros that install only the bare bones leaving it to the user to choose what software they need on their system. There's an extensive list - though I don't think it contains all 600 - of available distros on Wikipedia (Wikimedia Foundation, Inc., 2016b) and the internet is full of opinions on what is the best Linux distro for any particular purpose and type of user. A search engine (I use “Ixquick” https://ixquick.eu/, they claim not to spy on you (Ixquick, no date)) is probably your best bet here. Simply enter “Linux” and some indication of your requirements: “beginner”, “old hardware”, “configurable”, or whatever, and see what comes up.  

Here are a couple of links for a quick comparison of some of the more popular distros:

https://www.linux.com/news/top-11-best-linux-distros-2015

https://distrowatch.com/dwres.php?resource=major

I have direct experience of three distros: openSUSE, Ubuntu and Gentoo.


openSUSE

https://www.opensuse.org/

I should say first of all that I haven't used openSUSE for a number of years so my experience of it might be of limited relevance.  

When I had it installed on my computers, the standard installation - which I used for my desktop - attempted to provide the user with a complete system which was ready to use. This included an operating system and all the tools, libraries, programmes and applications that most users would need ready installed. If I needed something a bit more exotic, I could usually find a repository somewhere on the internet which contained a suitable programme which I could link into my system. You could also do a minimal installation which installed a text based system which I used for my server. I found the installation process to be fairly easy and straightforward. The user is guided step by step through the installation by a graphical interface.  

I found the package management system for managing the software, which is called YaST (Yet another Set-up Tool - Linux is full of these “jokey” names) to be straightforward and logical to use to find and install new software and to update software already installed.  

All in all, I was fairly happy with openSUSE. Around version 11, though, I had the impression that it had become rather buggy and prone to errors and I decided to look for an alternative. I have since spoken to someone who works professionally with openSUSE and is involved in the community. That person confirmed my impression that it had become unreliable a few years ago, but claimed that it had since sorted its self out and was reliable again.  
   


Ubuntu

http://www.ubuntu.com/


Ubuntu is currently the second most popular Linux distro. Like openSUSE, the standard installation leaves the user with a system installed on their computer which can do everything that most users will want to do.

I'm afraid I don't particularly like Ubuntu, though. I constantly have the feeling that it's trying to take control away from me. The same feeling that I got with Windows. This is probably a good thing if you want a system that “just works” and don't want to or can't spend time and energy acquainting yourself with the inner workings of Linux.

I also don't like the Unity Desktop which is the graphical desktop that Ubuntu installs as standard. I can never find things on it and I have the feeling that it's hiding things from me to stop me configuring anything. I've read that there are people who swear by it, though, so it's probably just a matter of taste. It's easy enough to install a different desktop, such as Gnome, but you still need to know how, and which desktop you want which begins to take you away from the “it just works” system, if that's what you want.

The Unity Desktop was also the source of the, so called, Amazon controversy. You can read about it here:

https://en.wikipedia.org/wiki/Ubuntu_%28operating_system%29#Amazon_controversy

and here:

 https://en.wikipedia.org/wiki/Unity_%28user_interface%29#Privacy_controversy

if you're interested. It seemed to me to be the kind of blatant breach of privacy that one might expect from Widows or Apple, but not from Linux. Many people have come to Linux to try to get away from that kind of stuff. Apparently, it's fixed now, but it's kind of destroyed my trust in Ubuntu.

Despite my rather negative attitude, Ubuntu is a perfectly good operating system. and I manage to do everything that I need to do with it. It's aimed at inexperienced users and users who just want their operating system to work without too much bother, which is fine, just not what I'm looking for.
   


Gentoo

https://www.gentoo.org/


A system running Gentoo Linux can look similar to one running openSUSE or Ubuntu, but how you get there and how you maintain your system are very different. Gentoo has no programme that installs the operating for you. To install Gentoo Linux, you use Linux command line commands to practically build your system yourself. It's a very laborious and long winded process. If everything goes well and you have no problems (which in my experience isn't how it usually works out) it will take at least a day.

This all sounds very difficult and complicated (and it certainly is complicated) and not something for beginners, but luckily, Gentoo is very well documented. Documentation giving step-by-step instructions for the installation process are available online at

https://wiki.gentoo.org/wiki/Handbook:Main_Page
  

It is still very useful to have some knowledge of Linux, when there is a choice of ways to proceed with the installation for example. Also, with the almost infinite possible combinations of hardware, no documentation could cover every possibility. This means that at some point in the installation, things will happen which are not covered in the documentation. At this point, experience and knowledge of Linux will be invaluable in helping you get over the problem and continue with the installation.

After a day, or more, hammering away at your keyboard (your mouse won't work yet) you will have a text based system which enables you to enter commands at the command line. If you want a GUI, or almost anything except the most basic tools, you need to install it and configure it yourself. Again, there is excellent documentation from Gentoo for most software, so it's not as daunting as it sounds. The advantage of this is that the only software installed on a system is that which the user needs or wants. This makes for a far slimmer system than is easily achievable with Ubuntu, for example.

Gentoo's philosophy is that users should be enabled to set up and configure their system exactly as they wish to have it. As I said earlier, though, this freedom comes at a price. Gentoo users need to invest much more time and energy in configuring their system.

One of the main ways in which Gentoo achieves this configurability is by compiling all software on the local system where it is to be installed. Software packages are downloaded as text documents containing the source code and binaries are created by compiling it. This can put quite a strain on your processor and cooling system and can take a long time, especially if your computer is a bit older. The office suite, LibreOffice used to take around eight hours to compile on my old laptop, for example and even on my new desk top with an eight core processor, it takes around two hours. LibreOffice is very large, though, and most packages take just a few minutes to compile on relatively modern hardware.

The advantage of compiling locally is that you can compile programmes to exactly suit your hardware and your personal requirements. If you don't need java support in your LibreOffice, for example, you simply don't set the flag and it won't be compiled in. This means that the programme takes up less space on your hard disk and in your RAM. LibreOffice on Ubuntu has everything compiled in so that it works on all hardware it is likely to encounter and can do everything that most users will require of it.

 So basically, Gentoo lets the user set up their system with only the software installed that the user wants to have installed. The software can also be trimmed down to eliminate things that the user does not require. This results in a slimmer system which runs faster than systems, such as Ubuntu and openSUSE, which have everything installed to meet every eventuality. Indeed, Gentoo chose its name because the gentoo penguin (the penguin is the Linux mascot) can swim faster than any other penguin.

In these days of relatively cheap and plentiful storage, you might not find a slimmed down system too important, especially when you consider the considerable increase in time and effort which you need to put into the configuration and maintenance when compared to 'one size fits all' systems like Ubuntu. It is also far more important to know your way around Linux when installing and running a Gentoo system than it is when using Ubuntu. Fortunately, human beings are capable of learning and if you didn't know much about Linux at the beginning, you'll be pretty clued up by the time you've installed Gentoo and used it for a while. You might also have a few more grey hairs, as well.

I derive considerable satisfaction from knowing that my system is tailored almost exactly to my needs and is set up just as I want it. I would never go back to openSUSE, but I realise that it's not for everyone.  
   


So, if you're considering giving Linux a go, have a look around the web and see what people are saying about the different distros. You could also try out different distros by installing them in a virtual machine (such as VirtualBox, https://www.virtualbox.org/) running on your current operating system. If you are prepared to give it a go, I can almost guarantee that you won't be going back to Windows in a hurry.


References

Canonical Ltd. (2016) Retrieved from: http://www.ubuntu.com/ (Accessed 24 April 2016).

Distrowatch.com (2016) Top Ten Distributions, An overview of today's top distributions, https://distrowatch.com/dwres.php?resource=major (Accessed 24 April 2016).

Gentoo Foundation, Inc. (2016) Retrieved from: https://www.gentoo.org/ (Accessed 24 April 2016).

Gentoo Foundation, Inc. (2016) 'Main Page', Handbook, referenced from https://wiki.gentoo.org/wiki/Handbook:Main_Page (Accessed on 08 May 2016).

Ixquick (no date), ixquick, the world's most private search engine, Retrieved from: https://ixquick.eu/ (Accessed 24 April 2016).

SUSE LLC (2015) Retrieved from: https://www.opensuse.org/ (Accessed 24 April 2016). 

Swapnil, B. (2016) The Top 11 Best Linux Distros for 2015, Retrieved from: https://www.linux.com/news/top-11-best-linux-distros-2015 (Accessed 24 April 2016).

Oracle (no date) Welcome to VirtualBox.org!, Retrieved from https://www.virtualbox.org/ (Accessed 15 May 2016).

Wikimedia Foundation, Inc. (2016a) Linux distribution, Retrieved from: https://en.wikipedia.org/wiki/Linux_distribution (Accessed 24 April 2016).

Wikimedia Foundation, Inc. (2016b) List of Linux distributions, Retrieved from: https://en.wikipedia.org/wiki/List_of_Linux_distributions (Accessed 24 April 2016).  

Wikimedia Foundation, Inc. (2016c) Ubuntu (operating system), Retrieved from: https://en.wikipedia.org/wiki/Ubuntu_%28operating_system (Accessed 24 April 2016).


Last updated: 16.05.2016




 


Some Advantages and Disadvantages of Using Linux


Disadvantages

  

  • Linux used to have problems supplying drivers for a lot of hardware if it was even slightly exotic. This meant that you often couldn't get it to work satisfactorily on your computer or had to spend money on a new graphics card, or whatever, that was supported by Linux. Things have been steadily improving, though, and now this is seldom a problem. Having said that, I still can't get my Epson scanner to work on Linux.

       
  • There is a lot of software which only runs on Windows and possibly also Apple. There is usually a piece of free software which does the same job which does run on Linux , however. If you're tied to a particular proprietary programme, though, for whatever reason, this is a problem which is not easily surmounted. One solution might be to run a virtual machine such as VirtualBox, on your Linux system. You can then install Windows on the virtual machine and run the proprietary software on this Windows installation. You might say that if you are running Windows at all, you might as well use it for everything. That's your decision, but take a look at the advantages that running Linux can bring, first.

  
  

  •  The main reason that more people don't use Linux is because they're not clued up on it. It is, indeed, a considerable advantage when running Linux if you have some idea of how it works, but this could be said of Windows or any other operating system. If you have the time and inclination - and I realise that, for good reasons, not everyone does - you can learn about Linux. There are innumerable text books available covering every aspect of Linux, there are seminars, courses and evening classes dealing with Linux, and the internet is full of help and information on every aspect of Linux. The other good, if often frustrating, way to learn about Linux is to roll up your sleeves and get under the bonnet of your own Linux system. There will be lots of cursing and swearing, but you will learn.



Advantages

  

  •  Linux is free. You are free to make a donation to your favourite distro or software producer, but you are under no obligation or pressure to spend any money acquiring the the Linux operating system. Linux is also free in the sense that its development is completely open. All the source code is freely available and anyone can download their own copy and change it to suit their needs and wishes. Of course, not everybody can do this and most don't. A, perhaps, greater advantage of the source code being completely open is that a lot of people who are expert at such things are looking at it and scrutinizing it. This means that security holes are filled more quickly. It also means that secret back doors built into the software are not really possible as nothing is secret. Apparently proprietary software is full of such things. Have you taped over your built in web-cam?

  
  

  • Linux is far less likely to be infected with malware, or a virus, or other such unpleasant things than Windows. Firstly, because the overwhelming majority of personal computers run Windows, most malware is designed to attack the Windows operating system and cannot execute when it finds itself in a Linux environment. Secondly, Linux has built in features which hinder anybody doing anything on the computer which the user doesn't want done. Tightly defined rights which control what each user can and cant do and which users can write and read and execute scripts and programmes in which directories make it difficult for all but the most determined attackers. If security is particularly important to you, security is a major theme in the Linux world and there are countless, well developed technologies available to secure your system against attacks.


  • Linux is generally considered to be more stable than Windows. Admittedly, much of the peripheral software run on Linux is no more stable than comparable proprietary software. The kernel, though, is considered to be a very solid and stable piece of software. The kernel forms the core of the Linux operating system and deals with, among other things, the hardware, file system and network. If something does seize up, it rarely brings the whole system down. There is no “blue screen of death” in Linux. An errant programme can usually be “killed” by the user and started again without having to shut down the whole system.


  • Linux will generally use less resources such as hard disk capacity and RAM than Windows. This means that it can happily run on older or cheaper hardware which does not attain the minimum requirements for Windows.


  • Linux is almost infinitely configurable. Straying too far from the standard often means a lot of work and thumping on your desk, though. Linux can do everything. You just need to work out how.


For more detailed comment on these points and others, simply type something like “advantages disadvantages Linux” into your favorite search engine. Here are a few links to things that I found on DuckDuckGo (https://duckduckgo.com/html/) (ixquick was down):


https://renewablepcs.wordpress.com/about-linux/advantages-of-using-linux/


http://www.brighthub.com/computing/linux/articles/12838.aspx


http://linux.about.com/cs/linux101/a/linux_2.htm

References


DuckDuckGo (no date) DuckDuckGo, Retrieved from: https://duckduckgo.com/html/ (Accessed 16 May 2016).

Wikimedia Foundation, Inc. (2016) Mac OS, Retrieved from: https://en.wikipedia.org/wiki/Mac_OS, (Accessed 16 May 2016).


Last updated: 16.05.2016

 

 

 

 



  

Why Using Free Software is Better

There are many practical advantages to using the Linux operating system and, indeed, all free software, some of which I've mentioned above. For me, though, the biggest advantage of using free software is that I don't have the feeling that I am at the mercy of a commercial software supplier whose priorities are very different to mine. I am, more or less, in control of my computing and not dependant on large corporations continuing to supply their wares at a price I can afford and with the functionality that I need.

One problem with proprietary software is that it is not transparent. Exactly what it does and how it works are secrets that are closely guarded by the companies that produce it. This means that installing proprietary software on your computer is an act of faith. You just have to hope that the programme will do what it says on the box and that it won't do anything to harm your system or invade your privacy. This is not a problem with free software as the source code is freely available to the end-user of the software. You may not have the expertise to interpret source code yourself, but you can be sure that many people who do understand source code have already studied it and that any bugs, security holes, back doors or malicious functionality will soon be identified and publicised. You may be prepared to put up with a programme spying out your hard-drive in return for specific functionality that is important to you, but at least you will know, or can find out, what you're letting yourself in for and will be going into the situation with your eyes open.

Another problem with lack of transparency is that proprietary software can hold its users to ransom. This is particularly true if a particular programme has become dominant in the market. If you've set your system up to use a particular programme to, for example, create, edit and display text documents, it quickly becomes very difficult to change it. If you have clients or communicate with others who have also set up their systems to be able to work with the text documents that you produce, it becomes particularly difficult to change things. If your text document programme is the dominant one in the market, there may be no alternative to it: how many alternative office suites can you think of, apart from the ones provided as free software? So, you either keep paying and signing the restrictive licence “agreements”, or can't communicate with your clients and contacts any more. You're locked in.

Free software doesn't lock you in because it is transparent. What it does, how it does it and what standards it adheres to are not secret. The documentation to all standards used in the production of free software are also freely available. This means that anyone can produce software which can replace any other software. If you're not happy with a particular programme, there's usually an alternative and you don't have to make a huge financial layout or sign anything to be able to try it out. The free market probably works better in the free software world than it does in the world of proprietary software which is generally governed by secrecy, restrictive practices and the elimination of competition.

By using free software, we are denying a small number of large software corporations the control they would like to have over our computing. In a world where software is used in virtually every area of human activity, having influence and control how software is used gives those who wield this influence and control a great deal of power. Software corporations producing proprietary software are interested in making money. That's how the system works. If they obtain power over the users of their software, they will use that power to maximise their profits. The interests of the users are not important to them. By using and supporting free software, we remove ourselves from the power of software corporations. We also help to ensure that there are viable alternatives to proprietary software for ourselves and for future generations. When you consider all the things that software can do, particularly in the field of surveillance, I find the importance of this hard to understate.


Below are a few links concerning why free software is better:


The Free Software Foundation's (FSF) home page  

https://fsf.org/


An outline of the philosophy of the GNU Project

https://www.gnu.org/philosophy/


Shahzad Saeed's thoughts on the advantages of free software

http://www.edutopia.org/blog/benefits-free-software-shahzad-saeed


A definition of free software from the GNU Project

https://www.gnu.org/philosophy/free-sw.html


Why free software is important from FSF

https://www.fsf.org/about/what-is-free-software



Free I.T. Athens thoughts on free software

http://www.freeitathens.org/about_us/philosophyandtools/


The grand old man of the free software movement, Richard Stallman  explaining his philosophy of free software

http://tedxtalks.ted.com/video/Free-software-free-society-Rich



Last updated: 26.05.2016






  

Solving Problems


In the Spirit of free software, I will share below what problems I have encountered while using and maintaining my Linux based systems and how I have solved them.


Last updated: 26.05.2016