KISS simplicity: Arch Linux

Written by
Date: 2012-05-21 16:11:50 00:00

Introduction

Arch Linux History Arch Linux saw the light with Arch Linux 0.1 on March 11, 2002 from the hand of Judd Vinet. Vinet's inspiration came from Slackware and CRUX, but he added Pacman the package manager of Arch Linux. Pacman takes care of package installation, removal and upgrades.

In 2007 Judd leaves leadership of Arch Linux and Aaron Griffin continue with the labor.

Over these years the popularity of Arch Linux grew up, and it now is between the 10 most used Linux distributions as you see on Distrowatch. It is also considered by many as one of the five best Linux distributions.

The KISS principle

Arch Linux is driven by the KISS principle, and it is elegantly simple. That is one of the reasons I like it, I really like minimalism philosophy if that can be applied to software, and not only to arts.

Installation

Introduction

I'm not going to provide screenshots of the installation process, it has been years since I do not do this. I'm going to tell that installation of the base system of Arch Linux is easy, but you will end up with bare bones system. Just the console and the base Linux system, more like a server than a Desktop system.

From that point, you can turn that simple system into anything you may wish. You can install a LAMP, a NAMP, a developer platform, or a Desktop PC, or all of them together. It always with the latest available software, so you will enjoy it.

Conclusion

Installing Arch Linux is not a piece of cake, you should have Linux background to do it, you should feel comfortable at the console, and you should be prepared to tweak some configuration files manually. But once that is done, you will have a fairly stable and lightweight system.

Stability

Arch Linux is a rolling release distribution. That means that the packages are released to the public almost as soon as they are available, and almost in its vanilla flavor, with very little modifications.

What does the above means?

It means that even if the system is very stable, it can break sometimes after an upgrade. It is very advisable to read forums before performing upgrades, unless you have the time to troubleshoot from time to time.

Does that mean you can't use Arch Linux for productions systems?

You just have to be careful on upgrades. Besides that, I think Arch Linux is the best option for servers. I am running this and other blogs on it for some years with no problems at all. And this blog was not based on static pages all the time. I once had Drupal, Wordpress and Movable Type sites running on the same Arch Linux server, with no big issues.

If you ever run into troubles, you will find a lot of support at the forums.

Conclusion

Arch Linux is not the most stable distribution out there. If that is what your are looking for, pick Debian or Slackware instead of Arch Linux. But for me, it is stable enough to run my sites on it. It is just a matter of being careful with upgrading.

Advice on upgrades

If you are going to run your important app on an Arch Linux server, I can give you a pair of advices.

  1. Always keep old package versions in your disk, in case you may need to downgrade.
  2. Try to create an image of your system before upgrading if that is possible. That's an easy task in VPS environments, like Linode or Cloud Server.

Main characteristics

Desktop or Server oriented

Arch Linux as almost all Linux distributions, can be a Desktop or Server system, but unlike most of them it is none of them by default. It is like the net-install of Debian, or an Alternate install of Ubuntu, or even just like Gentoo fresh installation.

Version of packages

As a rolling release distribution, Arch Linux almost always have the latests available version of all packages included. So if you need the latest version of PHP or Nginx or Ruby or Python, them Arch Linux is a good choice.

Philosophy of maintainers

Arch Linux aims to simplify the system, not to simplify users's life. If that is what you want pick Mint or Ubuntu. But, at least in my opinion at the end of the day, that easiness complicates the system itself, and that leads to the contrary. So, keeping the system simple (remember KISS?) leads at the end of the day to easiness.

Let me rephrase my last paragraph, as it seems a little bit tangled. Even if Arch Linux seems complicated at first, you will find it easier compared to those that are supposed to be easy.

One single configuration file

Almost all general configuration of the system is done in /etc/rc.conf file. This is a great and time saving feature, as you do not need to dig all over the file system to configure basic things.

Community

Arch Linux has a big and helpful community, any problem or bug is discussed, and the solution found very quickly at the forums.

You can find support at:

There is also a some other ways to interact with its community.

Until now, I have almost never had the need to ask something at the forums or mailing lists, I usually find the answer to my questions using Google. The answer is usually in the forums. Someone have asked the question before I did. This shows how fast they troubleshoot any issue, and how big the community is. Any question or problem you have, someone else have already had it before, and it has been already solved or answered.

Arch Linux as Server

As I said before, I've been using Arch Linux as server for some years already. Some things you need to know if you are planning to follow my steps are:

Arch Linux uses BSD-style init scripts

Arch Linux, unlike most popular Linux distributions such as Debian or Gentoo and derivatives, does not use Sys V like init scripts. This is part of the KISS principle and the main differences are:

BSD:

  • Startup scripts are generally kept in /etc/rc.d/
  • A small number of files (/etc/rc.sysinit, /etc/rc.local, etc.) control the startup process

Sys V:

  • Startup scripts are generally kept in /etc/init.d/
  • There are also a number of /etc/rcX.d/ directories — one for every run-level (i.e. X represents 0 through 6 and S, so, 8 altogether)
  • The contents of each /etc/rcX.d/ directory is a collection of soft-links to scripts in /etc/init.d/
  • Each soft-link in a specific /etc/rcX.d/ directory is named so it will execute in the order of it’s alphabetical relationship to the other soft-links

Custom made binaries

If you need to compile some piece of software with specific options, you can count on ABS. Once the source files are on your disk you can turn on or off options easily in the PKGBUILD file, then just run makepkg -s and then install the file with pacman -U file-version.pkg.tar.xz.

To me this is the simplest method available in any Linux distribution.

Daemons does not start by default

Unlike other major distributions, you need to manually specify which daemon is going o start at boot time of Arch Linux. Let's say you install Nginx, it will not be added to the list of automatically started daemons by pacman. You need to do it by yourself by adding it to /etc/rc.conf, in the DAEMONS line, usually the last one of the file.

Arch Linux as Desktop

If you are planning to use Arch Linux as your Desktop operating system, you need to have this into account.

No pre-installed GUI

Arch Linux first installation leaves you with a spartan system. You need to install everything by yourself, there is no default window manager. You can opt for Gnome, KDE as your desktop, or Openbox, Fluxbox as window managers, if you prefer a lightweight desktop. As for myself I'm using Gnome 3, and unlike the majority of users I'm liking it a lot.

Some software is not available in the official repositories

There is a lot of software you may need in a Desktop installation, that is not available in the official repositories. No worries, it is surely available at AUR.

To install software from there, you may follow almost the same steps as using the ABS, being the only difference that you need to manually download the PKGBUILD, instead of using ABS command.

You can use a tool like yaourt. I've done in the past, but now I prefer to do it manually, no specific reasons for doing that.

Rolling release

As it has been said above, Arch Linux is a rolling release distribution, and just like anything in life that has advantages and disadvantages. Or some people might point these as advantages and disadvantages. Or some people might point these as advantages and disadvantages attributable to rolling release feature in general. I think these are attributable to the "Living on the edge" philosophy of Arch Linux. So:

Advantages living-on-the-edge

  • You can always have the latest versions of any package. This is nice, for example, in case of Firefox, or Thunderbird. While other distribution’s users should wait for the next release cycle, you can have it, by just running pacman -Syu some days after the release of any these packages.

Disadvantages of living-on-the-edge

  • Some package upgrades may break dependencies, and some tools may stop working for some days until a new release for the affected tool is released.
  • There may be security issues in running software not enough tested.

So, a rolling release itself has one big advantage, upgrades to the system are a lot smoother than on a discrete-style release distribution. Debian CUT or Mint LMDE are intends to have Debian rolling releases.

Conclusion

As this kind of articles usually have a conclusion, I'll add this section here.

Arch Linux is a great distribution, not for the beginner, one that is not in the most easiest, maybe not know as being user friendly. But, it is one that traps users as soon as the feel like trying it. When you have used Ubuntu, Debian, Fedora or Mint, and then you test Arch, you will find it hard to leave it. Its simplicity makes it the most user friendly Linux Distribution, once you are a user with some Linux experience.

My advice is: As soon as you can, as soon as you feel comfortable with Linux, test Arch Linux, you will never look back.

Hey I've just realized that these looks like the same words of my last review of this distribution almost two years ago. At that time I wrote:

If after reading this, you want to try Arch Linux, it is a great idea, but it might not be as good as you think if you are beginning with Linux, if you are a newbie, start with Linux Mint, Ubuntu, or Fedora.

Once you know more about Linux, switch to Arch Linux, you will never miss any other distribution. Arch Linux gives you almost the same control you may find in Gentoo, but it is a lot easier to run.

The more user friendly distributions, make a lot of things for you, but then, maybe that is not what you need. I mean not always the same configuration is good for everybody, you need to tweak your configuration to fit your needs, and your likes.

My advice is, as soon as you can, install Arch Linux in a virtual machine, start playing with it, and sooner than you might think you will be using it as you default Linux distribution.

Updated on 05-23-2012

Contributions

A friend from scotsnewsletter's forum contributed with this:

Installing and setting up Archlinux

Thanks Securybreach

You can comment this on Google+