Linux Made Simple 2015 UK PDF
Linux Made Simple 2015 UK PDF
Linux Made Simple 2015 UK PDF
TMS09 2015
LEARN TO CODE WITH
OUR GREAT TUTORIALS!
OUT
NOW!
WITH
FREE
DIGITAL
EDITION
'VUVSF1VCMJTIJOH-JNJUFE DPNQBOZOVNCFS
JTSFHJTUFSFEJO&OHMBOEBOE8BMFT3FHJTUFSFEPGmDF3FHJTUFSFEPGmDF2VBZ)PVTF
5IF"NCVSZ
#BUI
#"6"
All information contained in this publication is for information only and is, as far as we are aware, correct at the time of going to press. Future cannot accept any responsibility for
errors or inaccuracies in such information. You are advised to contact manufacturers and retailers directly with regard to the price and other details of products or services referred
to in this publication. Apps and websites mentioned in this publication are not under our control. We are not responsible for their contents or any changes or updates to them.
If you submit unsolicited material to us, you automatically grant Future a licence to publish your submission in whole or in part in all editions of the magazine,
including licensed editions worldwide and in any physical or digital format throughout the world. Any material you submit is sent at your risk and, although every
care is taken, neither Future nor its employees, agents or subcontractors shall be liable for loss or damage.
Future plc is a public Chief executive ;JMMBI#ZOH.BEEJDL We are committed to using only magazine paper
company quoted Non-executive chairman Peter Allen XIJDI JT EFSJWFE GSPN XFMM NBOBHFE
DFSUJmFE
on the London &KLHIÀQDQFLDORIÀFHU3JDIBSE)BMFZ forestry and chlorine-free manufacture. Future
4UPDL&YDIBOHF
TZNCPM'653
Publishing and its paper suppliers have been
5FM
-POEPO
Made Simple books are designed Break instructions down into Teach you new skills you can take
to get you up and running quickly easy-to-follow steps so you won’t with you through your life and apply
with a new piece of hardware or be left scratching your head over at home or even in the workplace
software. We won’t bombard you what to do next
with jargon or gloss over basic Make it easy for you to take our
principles, but we will… Help you discover exciting new advice everywhere with you by
things to do and try – exploring giving you a free digital edition of
Explain everything in plain-English new technology should be fun and this book you can download and take
so you can tackle your new device or our guides are designed to make with you on your tablet, smartphone
software with confidence and really the learning journey as enjoyable as or laptop – see page 146 for more
get to know how to use it possible for you details on this offer
How are we doing? Email [email protected] and let us know if we’ve lived up to our promises!
73 Pick the right distro 104 Terminal basics 128 Build your own router
90 Top 100 Linux tools 108 Disk management 136 Repair broken systems
Escape Windows 31
......................................................................................................................
T
he word ‘Linux’ is one of the most used in this
book, but what does it mean? It means different
things to different people, from the purist who
considers it to be the kernel, to the GNU
advocate who sees it as a part of GNU/Linux and the new
user who thinks it is another name for Ubuntu. In truth,
Linux is all of these, depending on your point of view.
Strictly speaking, the term Linux used alone refers to the
kernel of the operating system, while GNU/Linux is the
whole operating system, comprising the Linux kernel and
GNU tools – either would be useless without the other (or
one of its alternatives).
If you then add a collection of application software,
along with some tools to manage the whole thing, you
have a distro, such as Ubuntu.
There are lots of individual components that make up
the operating system we know as Linux, but they are not
that individual – they all have to fit together, so here we
will try to explain how the whole is the sum of its parts,
and what those parts do.
What is an OS?
What is a distro?
A
n operating system can be defined video. Normally, you don’t need to know distribution is just that, a way of distributing
as the software needed to enable the anything about this. It can be helpful to know a Linux-based operating system and
applications to run on the hardware some of it when things go wrong, but even accompanying software. At the start, it was
– as such, it consists of several interleaved then it is not essential, especially if you can just the files the OS needs and a way of
layers. At the heart we have the kernel, which find someone to fix the computer for you. installing them on your computer. Along the
interacts directly with the hardware through But if you are reading this book, there is a way, distros acquired package managers,
its drivers and allows other software to use good chance that you are interested in what update tools, configuration GUIs and a host
that hardware. On top of that, we have is happening ‘down below’, so we will try to of other niceties. However, underneath the
various layers that handle things such give you an idea of what goes where, and user-friendly (or not if you are a Gentoo user)
as input devices, networking, sound and what it does when it gets there. A Linux gloss, all distros are still Linux.
T
he kernel is the beating heart of the system, but to mount it. In a similar way, connect a 3G dongle, and the
what is it? The kernel is the software interface to serial modem drivers are loaded. This is why it is rarely
the computer’s hardware. It communicates with necessary to install new drivers when adding hardware;
the CPU, memory and other devices on behalf of any they’re all there just waiting for you to buy some new toys to
software running on the computer. As such, it is the plug in. Computers that are run on specific and unchanging
lowest-level component in the software stack, and the hardware, such as servers, usually have a kernel with all the
most important. If the kernel has a problem, every piece of required drivers compiled in and module loading disabled,
software running on the computer shares in that problem. which adds a small amount of security.
The Linux kernel is a monolithic kernel – all the main OS If you are compiling your own kernel, a good rule of thumb
services run in the kernel. The alternative is a microkernel, is to build in drivers for hardware that is always in use, such
where most of the work is done by external processes, with as your network interface and hard disk filesystems, and
the kernel doing little more than co-ordinating. build modules for everything else.
While a pure monolithic kernel worked well in the early
days, when users compiled a kernel for their hardware, there Even more modules
are so many combinations of hardware nowadays that The huge number of modules, most of which are hardware
building them all into the kernel would result in a huge file. So
drivers, is one of the strengths of Linux in recent years – so
the Linux kernel is now modular, the core functions are in themuch hardware is supported by default, with no need to
kernel file (you can see this in /boot as vmlinuz-version) download and install drivers from anywhere else. There is still
while the optional drivers are some hardware not covered
built as separate modules in /
lib/modules (the .ko files in
“So much hardware is by in-kernel modules, usually
because the code is too new
this directory).
For example, Ubuntu
supported, with no need or its licence prevents it being
included with the kernel (yes
14.04’s 64-bit kernel is 5MB in to download drivers” ZFS, we’re looking at you). The
size, while there are a further drivers for Nvidia cards are the
3,700 modules occupying over 100MB. Only a fraction of best known examples. Usually known as third-party modules,
these are needed on any particular machine, so it although Ubuntu also refers to ‘restricted drivers’, these are
would be insane to try to load them all with the installed from your package manager if your distro supports
main kernel. Instead, the kernel detects the them. Otherwise, they have to be compiled from source,
hardware in use and loads the relevant modules, which has to be done again each time you update your
which become part of the kernel in memory, so it is still
kernel, because they are tied to the kernel for which they
monolithic when loaded even when spread across thousands were built.
of files. This enables a system to react to changes in There have been some efforts to provide a level of
hardware. Plug in a USB memory stick and the usb-storage automation to this, notably DKMS (Dynamic Kernel Module
module is loaded, along with the filesystem module needed Support), which automatically recompiles all third-party
modules when a new kernel is
installed, making the process of
upgrading a kernel almost as seamless
as upgrading
user applications.
Phrases that you will see bandied
about when referring to kernels are
“kernel space” and “user space”.
Kernel space is memory that can only
be accessed by the kernel; no user
programs (which means anything but
the kernel and its modules) can write
here, so a wayward program cannot
corrupt the kernel’s operations. User
space, on the other hand, can be
accessed by any program with the
appropriate privileges. This contributes
towards the stability and security of
The number of options when building a kernel is truly staggering, and the Linux, because no program, even
majority of them relate to hardware device support. Aren’t you glad we have running as root, can directly
distro maintainers to work it all out for us? undermine the kernel.
M
ost distros go straight to a splash screen when file it may need, plus other settings such as the root partition,
booting, so we don’t see what is happening. and whether to hide all this behind a splash screen. If you
In fact, there’s a lot going on both before the want to see what happens from here on, you can disable the
splash screen appears and then hidden by the screen. The splash screen on most distros by pressing the [E] key to edit
BIOS starts up first, in the motherboard’s hardware. the Grub menu entry, removing any quiet and splash options
It looks for a boot device and loads code from there. and pressing [F10] to continue booting.
In the case of a hard drive using the traditional DOS
partition system, this is contained in the Master Boot Record Why use a ramdisk?
(MBR) of the drive – just 512 bytes of storage. 64 bytes are Most distros use an initramfs file. The main reason for this is
used to hold the partition table for the drive (which is why that certain drivers have to be loaded with the kernel,
only four primary partitions are available), leaving all of 446 particularly those needed to load anything for the disk drive
bytes for the bootloader code, usually Grub. 446 bytes (like SATA controllers and filesystem code). For a generic
doesn’t give room for much in the way of features, so all this distro, building all possible options into the kernel would make
code does is load the rest of the boot code from elsewhere on it unworkably large, so everything is built as modules and
the disk, from a location set those needed for booting are
when the MBR code was included in the initramfs. This
installed by the bootloader. “The config file tells the is a type of ramdisk that is
The bootloader reads its
configuration file, usually
bootloader the location loaded with the kernel by the
bootloader (using the BIOS
/boot/grub2/grub.cfg, for of the Linux kernel” routines to read it from the
a list of boot options, and disk) containing all the files
either displays a menu or goes straight to the default boot. needed to mount the root partition. This is done using the
Linux is not involved at this point, because there is only the kernel’s device detection to decide which to load, and then
bootloader code running. The configuration file tells the control is passed to the hard disk proper. The initramfs is also
bootloader the location of the Linux kernel, and any initramfs used to load any splash screens, so they appear right at the
start of the boot process.
Once the root partition is mounted, directly or via the
initramfs, the init sequence starts in earnest. Traditionally, this
involves running /sbin/init, which then runs everything else,
as controlled by /etc/inittab, and is responsible for the list of
service start-up messages you see scrolling up the console if
Removing the you have no splash screen. This also allows you to see where
boot splash the boot process is hanging or taking an unreasonable time if
screen shows
you experience such problems.
the boot process
in its entirety,
including the
Newer options
status of the Time moves on, and all of these systems are subject to
services being change. On the latest hardware, the BIOS has been replaced
started. by UEFI, although once the bootloader is installed you won’t
OUT
NOW!
WITH
FREE
DIGITAL
EDITION
SAMSUNG JS9000
Relax with the latest
home entertainment
Libraries
The logic behind sharing functions between programs.
L
inux uses libraries to share code between why you should let the package manager take
applications. If a program, foo, uses functions that care of things. One solution proposed to this is
could be useful elsewhere, it places them in libfoo. that all programs should be compiled statically.
Then when another program, such as the imaginatively This means that instead of dynamically linking
named bar, wants to use the same function, it has only to to the code in libfoo and loading when needed at
link to libfoo rather than reinventing the wheel. run time, foo and bar each include the code in their
This means that there is only one copy of the code on your executable programs. This means each program file is a
computer; if either project discovers a bug in the code, it will standalone object with no dependencies; it can also make it
be fixed for both. It also introduces the concept of a lot larger than it would be with dynamic linking and means
dependencies; both foo and bar depend on libfoo and are that if a bug or security flaw is found in the libfoo code,
useless without it. This led to the phenomenon of both foo and bar will need to be recompiled and
‘dependency hell’, where trying to install a program errored repackaged for your distro to fix the situation. Generally,
out with a list of unsatisfied dynamic linking is preferred on
dependencies, and trying to “You can see which non-embedded devices, but
install those gave more
dependencies. This is largely an
libraries a program is there is one place where
statically linked programs are
unpleasant memory nowadays,
as distro repositories became
linked to with ldd” useful: in an initramfs loaded at
boot time, because it avoids the
more comprehensive and package managers better at need to include libraries in the ramdisk image. If you are
sorting things out. curious, you can see which libraries any program is linked to
If you stick with your distro’s package manager and with the ldd command.
repositories, all dependencies should be taken care of without ldd /usr/bin/someprogram
you even having to think about them. Try installing shows all the libraries that program needs, and the libraries
somerandom.deb or somerandom.rpm you downloaded they need and so on, until you almost always end up at libc
from www.somerandomsite.com and you’ll soon discover – the granddaddy of Linux libraries.
Package managers
The great flexibility of Linux distributions means that most
elements can be changed. Default applications, desktops,
even kernels can be swapped around, so it’s best to think of
a Linux distribution such as Fedora or Ubuntu as merely a
starting point for any customisation that you want to do.
The one thing that can’t be changed so easily is the
package manager, so the only way to try a different package
manager is to try a different distro. Try comparing SUSE’s
Yast with Debian’s Synaptic, for example, and you’ll be
Shared libraries enable a more efficient system, by
amazed at the difference that such a fundamental tool can
sharing code between applications. Here are just some of
make to your experience of using Linux.
the libraries the K3b disc burner links to.
Graphics
How your Linux box stays looking so tickety-boo.
T
he X Window System is the standard basis for architecture. X itself runs as the server, maintaining the
providing a graphical interface. While the likes of display; client programs then communicate with the server,
KDE and Gnome provide the user interface and eye telling it what to draw and where.
candy, it is through X that they communicate with the
hardware. For many years, this was a mass of arcane Legacy features
configuration options and required a lengthy configuration This may seem excessively complex, but it uses local sockets
file containing things such as modelines that specified the to communicate between the clients and server, so there is
likes of pixel clock rates and sync frequencies. no significant performance hit. One clear advantage of this
These days, most systems will run without any method is that the client and server do not have to be running
configuration file at all. Massive improvements in hardware on the same computer. You can connect to another computer
detection mean that a system with a single video card and by SSH and, providing the configuration gives permission for
single display will ‘just work’. You may need to install extra this, run a program on the remote computer and have its GUI
drivers to get 3D acceleration displayed on your local screen.
if you are using, for example,
an Nvidia card, but otherwise
“These days, most This is different from the likes
of VNC because only the one
you just boot the computer
and start clicking your mouse.
systems will run without application’s window is
displayed locally, and it only
X has a client/server any configuration file” appears locally – not on the
remote computer. A VNC
connection mirrors the whole desktop on both computers.
Some consider the client/server architecture to be overly
complex, so there are moves to develop more simple
methods of running a graphical display. The most advanced is
Wayland. This takes a different approach; not only is the old
Tools such as
client/server setup gone, but Wayland leaves the rendering of
KDE’s monitor
windows and other display elements to the client
settings help
with things like applications, usually using OpenGL and Cairo. This simplifies
setting up dual Wayland; X contains a lot of legacy rendering code that’s
monitors, but for required by the X specification but never used. By giving
a single display control to the clients, Wayland can be lighter, more efficient
you shouldn’t and future-proof. It also means your graphical software has
need to configure more control over how the GUI is displayed.
X at all.
Daemons
If you ever disable the splash screen most distros have only one computer on your network.
use to cover the boot messages, you will see a So spending half an hour experimenting could
screen full of information about services being shave a second off your boot time.
started. What are these services, and are they all You may also save some resources by not
necessary? The services are the programs that starting unnecessary services, but once loaded
run in the background, making the computer as these daemons consume almost no system
useful as it is. Some deal with networking, others resources, and even the memory that they use
handle hardware detection and configuration, can be swapped out if they are not called. So only
while more are the traditional software services, disable those services you know you will never
or daemons, that provide functions to other need. Having them patiently listening on
programs when needed. a network port or socket makes the operation of
The answer to the second part of that question is your client programs that bit more efficient. It is possible to reduce your boot time by
most likely to be “no”. While some of these Programs don’t need to include, or load, code for only running the services you need.
services are used by almost all systems, such as opening, writing to and closing log files, they just
the syslog daemon that handles writing call the syslog() function with the log text, and
information to system log files, others may not the daemon takes care of the rest. Syslog is an Why are background services called
be needed. There is no need to start CUPS, the important service – when something goes daemons? There are a few explanations; we
printing system, if you don’t have a printer wrong, this is often the first place to look, as prefer the story that daemons were beings in
available. Similarly, the MySQL database server most programs send error messages to the Greek mythology that handled tasks that the
may not be needed, nor the SSH daemon if you system log (usually at /var/log/messages). gods could not be bothered with.
N
etworking is core to Linux. Even on a standalone additions to the networking scene include 3G mobile
machine with no connection to a local network, let communications and PAN (Personal Area Network)
alone the internet, networking is still used. Many technologies such as Bluetooth. Using a 3G mobile
services run on a client/server model, where the server broadband dongle is usually simple, either using
runs in the background waiting for instructions from other NetworkManager or your desktop’s PPP software.
programs. Even something as basic as the system logger Yes, 3G modems really do work like modems using
runs as a networked service, allowing other programs to dialscripts and everything, but without the
write to log files. The X graphics system is also networked, cacophony of squawks as you connect
with the X server running the desktop and programs, (younger readers should ignore the last
telling it what they want displayed. This is why it is so statement). Most problems with 3G are
simple to run X programs on a remote desktop – as far as caused by trying to set them up in a poor
the system is concerned, there is no major difference signal area rather than with either the hardware or
between that and opening a window locally. software support in Linux.
Running ifconfig will always show at least one interface,
called lo with an address of 127.0.0.1 – this is used by the The protocol of kings
computer for talking to itself, which is regarded as a more Bluetooth is becoming more important as mobile devices
sane activity for computers than people. Most other proliferate, and the number of input and output devices using
networking is based on TCP/IP, either over wired Ethernet or it is increasing. It’s not only phone and tablet users who
wireless, but there are other types of network in use. All benefit – a Bluetooth mouse and speakers can enhance the
distros and desktops include good tools for configuring and use of a laptop when at your desk, without having to plug
maintaining TCP/IP networks, from the fairly ubiquitous everything in before you can start working. PulseAudio (see
NetworkManager to individual tools such as Gnome’s the section on sound) makes this easier, because it can
network configuration tool or OpenSUSE’s Yast. More recent switch between devices when they are detected.
Storage
Storing data on a hard disk can involve several layers in
itself. All physical storage (as opposed to network
storage) in Linux revolves around block devices, so called
because disks store data in blocks. A block device like
/dev/sda1 does indeed refer to blocks, physical areas on
the disk, and a collection of them as a disk partition. On
top of that we have a filesystem, which is how the data is
stored in a sensible structure of directories and files,
containing both data and metadata.
What’s the difference? Let’s say you save a file
containing some text. The data in that file is the text, but
the file has other attributes: there is the owner of the file,
the time they created it, the time they last modified it,
the time it was last read and who has permission to read
or modify it. This is the information you see when you ls -l
a file, or inspect its properties in your file manager, and
this is stored by the filesystem. The standard filesystem
in use nowadays is ext4, but there are alternatives such
as ext3, ReiserFS, XFS, JFS and, of course, FAT and NTFS
Networking is core to the operation of a Linux system. The localhost interface
from the world of Windows.
is set up automatically; for the rest we have programs such as NetworkManager.
Other Linuxes
Everything we have covered relates to Linux your router allows SSH access, you will often feel a Linux kernel, but it is not GNU/Linux. The
running on desktops, laptops and servers – at home as soon as you log in. kernel may be based on the same source code,
traditional computer hardware if you like, but There is another class of device that has seen but everything running on top is different. The
there are other environments where Linux is a huge uptake in recent years and runs a rather principles are similar in some ways, but the
used. Many embedded devices, from routers to different Linux. No prizes for guessing we are implementation is very different – although you
PVRs and set-top boxes, run Linux, and in many referring to the smartphone and its tablet will find familiar command line tools if you can
ways it’s similar to the Linux we know and love. If siblings, running Android. Android is Linux, it uses get to a shell prompt on your phone.
Desktops
Gnome, KDE Cinnamon, Unity – we’ll just call it the user interface.
I
f you consider the kernel to be the lowest level of the
system, the highest level is the user interface.
Everything else, from the kernel through the drivers
and hardware interfaces, is of no use until you can use the
computer. This generally means a graphical desktop, and
here we come across more layers. X (or maybe Wayland in
the future) simply provides a blank canvas. You then need
something to provide the niceties of a windowed interface,
and that something is the window manager.
In the past, window managers were standalone systems,
and there are still plenty of these available, such as OpenBox
or Enlightenment, but nowadays they are often part of a
larger desktop environment. Strictly speaking, a window
manager is responsible for the handling of windows on the There are also plenty of lightweight window managers,
desktop, their opening, closing, placement and other like OpenBox running on CrunchBang here.
manipulations. Over time, they grew to incorporate other
features, such as taskbars and program launcher menus, particularly evident in KDE, where everything works around a
until they developed into desktop environments. common core, and programs not only communicate with one
another, but an instance of one program can even be
Software collections embedded in the window of another.
A desktop environment is simply a more or less While it may not make much sense to use KWin on
integrated collection of utilities to provide the features Gnome, you may want to try one of the more specialist
needed to run a complete desktop. Running window managers that offer greater control over window
programs, manipulating their windows, keeping handling, or use a different method of displaying them. There
track of what is going on and enabling programs to are tiling window managers, like awesome and xmonad, that
communicate with one another are all features of resize windows so they all fit on the desktop (KDE has its own
desktop environments, but they still have a option to behave like this). There are also window managers
window manager at their heart – KWin for KDE designed to be controllable with the keyboard, and minimal
and Metacity in Gnome to name but two. window managers that are useful for specialist systems that
What sets a desktop environment apart from run a single program in a full-screen window and don’t want
a window manager is the level of integration. This is any widgets cluttering up the place.
Gnome, KDE,
Unity, Cinnamon,
Mate – we
aren’t exactly
short of choice
when it comes
to desktop
environments,
but how many of
you have tried
more than
a couple?
Sound
complicated,
it’s best not
to argue with
them. Not that
the complexity
A once thorny subject. of this layout
matters too
much if it just
T
he Linux sound system has been through many
works for you.
changes. We had OSS (Open Sound System) for
years, before ALSA (Advanced Linux Sound
Architecture) came along. ALSA is still with us, but we also
have PulseAudio and Jack now.
ALSA supports multiple sound cards, each of which may
have multiple inputs and outputs. It also provides support for you can end up with an application sending output to an
hardware mixing, where the hardware supports it, and ALSA device, which intercepts the stream and routes it
software mixing where it does not. This removes the need for through PulseAudio back to ALSA. It is no surprise that many
sound managers, as provided by KDE and Gnome in the past, found PulseAudio complex. A good setup should render all of
to enable more than one application to play sound at the this chicanery transparent to the user, which is where we are
same time. ALSA works at a low level, close to the hardware, now with distro installers and PulseAudio, so most of the time
so it gives low latency. Most hardware is directly supported we are back at the ‘just works’ situation of ALSA, but with
now, and installing a distro should result in sound working better support for multiple devices. ALSA supports multiple
from the first boot. ALSA is a combination of kernel code and output devices, but the default is a global setting. PulseAudio
user-space applications. It also provides an API so that other allows you to direct music through speakers while using a
programs can control it directly, like the mixer control panels Bluetooth headset for VOIP calls. It also allows for less
included with desktop environments. complex but equally useful separation, such as separate
volume settings for each application. PulseAudio is network-
PulseAudio performance aware – it can be used to find other PulseAudio servers and
PulseAudio is a newer audio framework, but it is not a play audio through their speakers – great for streaming
replacement for ALSA. Instead, it sits on top of the kernel music around the house.
audio system, providing a greater amount of control. It works JACK (Jack Audio Connection Kit) is a sound server
as a server, accepting input from sources and forwarding it to designed for professional audio applications. Its forte is
sinks (output hardware or capture software). In many cases, providing low-latency real-time connections between
the sink is ALSA, and the source can be an ALSA driver, too, applications, for audio and MIDI data. It is not needed for
for applications that don’t directly support PulseAudio. Hence typical desktop use, only for budding musicians.
Taking care
Printing
CUPS and drivers.
of printers with
CUPS is as easy
as following a
few links in a
browser, thanks
to its built-in
web interface.
W
hile open source encourages choice, and
therefore several programs that do the same
thing but in slightly different ways, there are
some areas where one program is virtually unchallenged.
X.org is used universally to provide graphical displays, and network. CUPS is useless without drivers that tell it how to
CUPS maintains a similar position in the printing arena. speak to the printer. It includes a large number of drivers by
If you have a printer attached to your Linux box, you need default, and many more are available by installing the
two things – CUPS and drivers for your printer. In many gutenprint driver package (so many that your distro may
cases, these come together. CUPS is a server that sits in the well have installed this by default). HP also provides a driver
background waiting for print requests. Just about any (and scanner) driver package called hplip, which you need if
program that prints knows about the Internet Printing you use its products.
Protocol (IPP) that CUPS speaks. Hit ‘Print’ in your word However, some printer companies insist on providing their
processor or browser, and a window pops up showing your own drivers instead of having them bundled with CUPS,
printer, and giving a choice if you have more than one. usually for licensing reasons. In that case, you have the choice
The application only needs to send the data to be printed, of trawling the printer manufacturer’s website for a driver
usually as PostScript, to CUPS, which takes care of everything package suitable for your system and installing it separately.
else – including waiting for you to remember to switch the After that, the drivers should appear in CUPS and your
printer on. CUPS does not even need to be running on the distro’s printer configuration tool. The other choice is to
same computer; it is a networked service and a printer on check with linuxprinting.org before buying a printer, and
one computer should be available to everyone on the same stick to the more enlightened manufacturers.
www.techradarpro.com
twitter.com/techradarpro facebook.com/techradar
Get started | Get into Linux
Get into
Linux
Curious about Linux but not sure
how to traverse this unfamiliar
territory? We’ll help you get
started so you can join the
growing ranks of Linux users and
Ubuntu
The most commonly known Linux
distribution (often abbreviated to distro),
get a better PC to boot. Ubuntu pays special attention to desktop usability.
In the 10 years of its existence, Ubuntu has galvanised
T
here’s never been a better ships with a ton of software and you can the development of Linux on the desktop and is the
time to get into Linux. It’s download more with a single click. go-to distro for third-party developers and vendors who
slicker than ever, easier to Unlike proprietary OSes, a Linux want to run their wares on Linux.
install than ever and all the flavour (or distro) is very malleable. You
big-name distros like Ubuntu have can swap out default apps or even its Fedora
just received updates. entire interface and replace it with Red Hat’s open source offering to the world,
One of the biggest impediments to something you choose. Choice is Fedora is known for adapting and offering
another new technologies and software to its users. Over the
hallmark of years, the distro has managed to find a clever balance
“To top it all, you can Linux with between offering new features and stability to its users,
do everything you can multiple options
from simple
which makes it popular with both new and experienced
Linux campaigners.
on a Windows box.” components to
complex suites. Mageia
widespread Linux adoption is that you Furthermore, besides being Although it’s just had four releases to date,
don’t get Linux on a PC from Currys. compatible with all your newer Mageia has a pedigree in usability that dates
But the advantages it offers over other hardware, Linux can also turbocharge back to the 1990s. Mageia is a community project that’s
mainstream OSes are well worth this hardware that’s past its glory days. To supported by a non-profit organisation, which is
extra step. For starters, Linux is open top it all, you can do everything you can managed by a board of elected contributors. The distro
source, which is to say that you can on a Windows box. From streaming video is known for its customised user-friendly tools for
legally download a copy of Linux and to playing the latest games, Linux will managing the installation.
install it on all your computers. It also work just as well as any other system.
OUT
NOW!
Gnome thyself
Gnome is another popular desktop, and the Gnome 3
desktop contains more or less the same elements as
Ubuntu’s Unity but presents them in a different way. For
Users of
starters the desktop is very bare. Click on the Activities button
Gnome-based
in the top-left corner to reveal the Overview which is very
distros should
use the Gnome similar to Unity’s Dash. In this view, you also get a Launcher-
Tweak Tool like Favourites bar for accessing frequently used apps.
to tweak the In the centre you get a preview of all open windows. To the
behaviour of right is the Workspace Switcher, which always shows the
their desktop. current Workspace and an additional one. If you add windows
U
nlike Windows, a typical Linux desktop distribution
is more ready-to-use right out of the box. Instead
of shipping with basic apps, such as a vanilla text
editor or a barebones drawing tool, your average Linux
distro will include a fully fledged office suite and a
comprehensive graphics editor. This is in addition to the
basic set of apps for common tasks, such as browsing the
Internet, checking email, instant messaging with your
friends across various networks, organising photos,
listening to music and watching videos.
That said, since we all use our computers differently, you’ll
likely want a piece of software that isn’t included by default.
Your distro has specialised tools that’ll help you install
gazillions of quality open source software without clicking
through complex setup wizards. In addition to enabling repositories you can also select a
Linux distros use a collection of software tools, both different mirror for downloading software.
graphical and command-line based, that are together referred
to as a package management system. These tools help you management system. You can use the Software & Updates
install, remove, and upgrade software (also called packages) tool for manipulating Ubuntu’s repositories (or repos). The
with ease. Individual pieces of software are grouped inside tool lists repos in four different tabs. By default, the four official
packages. In addition to the software itself, packages also repos under the Ubuntu Software tab are enabled. The Main
include other information, such as a list of other packages or repo includes officially supported software, and the Restricted
dependencies which are required for the app to function repo includes software that isn’t available under a completely
properly. Furthermore, the package management system free license. The two interesting repos are Universe and
relies on a database known as the repository to keep track of Multiverse repos, which include software maintained by the
all the available packages. community and software that isn’t free, respectively.
Unlike Ubuntu the Fedora distro uses the RPM package
Package Management 101 management system. The distro houses repositories under
The Linux world is divided broadly into two different package the /etc/yum.repos.d directory and the main repository is
formats – RPM and Deb. These are precompiled binary named fedora.repo.
packages that are designed to simplify the installation Mageia uses the urpmi package which is a wrapper for the
process for desktop users. RPM was created by Red Hat RPM package management system. The distro has three
Linux, and is used by distros such as Fedora, and Mageia official repos. The core repository contains open source
while Deb is used on Debian-based systems, such as Ubuntu. packages, the non-free repository contains closed-source
Additionally, almost every major distro maintains its own set apps, and the tainted repository has packages that might
of graphical tools to enable desktop users to install, upgrade infringe on patents and copyright laws in some countries.
and remove app. You must also be familiar with the distro’s Each of these repos is further divided into four sub-repos.
repository structure and how and where it houses software. The release repo includes stable packages, the updates repo
Ubuntu uses the Advanced Packaging Tool or APT package includes packages that have been updated since the release,
A backup primer
Your distribution will include a tool to help Also check with important app, such as
you backup your data and you should email clients, who keep downloaded
take some time out to get familiar with it. emails, attachments and address books
Ubuntu, for instance, ships with the Deja under hidden directories (prefixed with a
Dup backup app which is designed for ./) beneath the home folder.
new users. You can also install it on top of Also, keeping the backed up data on
Fedora and Mageia. another partition of the same disk isn’t
No matter what backup tool you use, going to be of much use, since the whole
you should take a moment to consider disk might fail and render the backup
what you should backup and where. copy useless. One solution is to keep the
Backing up the entire home directory backup on another separate disk or
might be convenient but is usually just an external drive. Or, if you have good
overkill. Instead you should just include Internet bandwidth, the backup app
the directories under your home directory might also help you store the backups on Déjà Dup has a simple interface that shouldn’t
such as Downloads and Documents. a cloud storage service. intimidate even first time users.
FedEx packages
All major desktop distros include a graphical tool for
Most desktop
managing packages. Ubuntu’s Software Center is one of the and almost every distro has a mechanism to add and install
distros have
best tools for the job. You can find software by clicking on the software from these third-party repos. an easy to
category reflecting the type of software that you’re looking External repos in Ubuntu are known as a Personal Package use graphical
for. When you select a category, you will be shown a list of Archive or PPA. You can add a PPA repo to your distro using package
apps. There’s also a search box in the upper-right corner of the Software & Updates tool. But first you need the address manager.
the window which will look for software matching any entered of the PPA. This is listed on the PPA’s Launchpad site and will
keywords. Once you’ve found the software you want, click the be something like ppa:example-ppa/example. Now fire up the
Install button to its right. This will fetch the software as well as tool and switch to the Other Software tab. Then click on the
any required dependencies and automatically install it. Add button and paste the address of the PPA in the window
All newly installed software is added to the Launcher and you that opens. Ubuntu will then ask you to refresh the repos to
can also find it from under the Dash. enable the PPA.
Fedora uses the PackageKit graphical tool that’s listed as
Software in the Gnome’s Activities menu. It too lists software
categories as well as a keyword-matching search box at the
“Unlike Windows, a typical
top to help you find software. Once you’ve found the software
that you’re looking for, click on the Install button and the app
Linux desktop distro is ready-
will add it to your installation. to-use right out of the box.”
The graphical package management tool for Mageia is
named Drakrpm. The tool isn’t as pretty as the software Similarly, Mageia has a number of third-party repos as well
centres in Ubuntu and Fedora, but is very functional and and you’ll need their URL to add them to your distro. Once
intuitive enough to get the job done. You can filter its list of you have the URL, fire up the Mageia Control Center and head
available apps to show only packages with GUI, security to Software management > Configure media sources for
updates, bug fix updates, and more. Applications groups are install and update and click on the Add a medium option.
listed in the sidebar and there’s also a search box to hunt for Enter the address of the repo in the window that pops up
packages based on keywords. When you find a package you along with its type such as HTTP or FTP.
wish to install, simply toggle its corresponding checkbox and Fedora also has a number of third-party software repos
click on Apply. but the most popular is RPMFusion. The repo is further sub-
divided into two independent repos that house free and non-
The Repo men free software. You can install both of these repos from within
The larger open source community offers a lot more the browser itself by following the instructions on the repos
packages than the ones listed in your distro’s official repos website (www.rpmfusion.org/configuration).
Grabbing Google
All popular Google software, such as Chrome, particular distro and double-click on the file to for any other software package.
Earth, the audio and video plugin for Hangouts install it with the distro’s package manager. All Mageia, on the other hand, includes the Skype
and others can be installed on Linux. But you official packages for Google apps will also install package in its non-free repo. If you’ve enabled
won’t find them in the official repos of major the appropriate external Google repository in this repo, then simply search for the get-skype
distros because of their licensing. However, you your distribution to keep the software updated. package which will download Skype from its
now have all the know-how to install them with Another popular proprietary software that you website. You can also head to the Linux download
ease if we point you in the right direction. may want to install is Skype. Ubuntu users can page on Skype’s website and choose your distro
The downloads page of each supported simply enable Partner Repositories by visiting and architecture from the pull-down list which
Google app contains links to both 32-bit and Software & Updates > Other Software. This will will download either a Deb file or an RPM file.
64-bit versions of the software in both RPM and add the official Skype repos and you can then Double-click on the file to install it with the
Deb formats. Download the package for your install the software from the Software Center as distro’s package manager.
www.gizmodo.co.uk
twitter.com/GizmodoUK facebook.com/GizmodoUK
Get started | Escape Windows
Escape Windows
The time has come – follow us as we help you evade
Windows and make a bid for Linux and freedom.
I
f, having bought a new PC that has the cover disc) as our Linux distro of part of the cover disc. Next, we’ll explain
Windows pre-installed, you’ve come choice. Ubuntu is one of the most user- how modern PCs ship with a new system
to the conclusion that Microsoft has friendly Linux distros out there, and 14.04 called the UEFI, which may cause minor
finally lost the plot, now is the perfect LTS has just been released. LTS stands for problems. But don’t worry, because we’ll
time to switch to a better OS. Macs are Long Term Support, which means it gets show you how to overcome any issues if
shiny and expensive, so why buy one five years of updates and support. they arise. Finally, we’ll step you through
when you can keep your the installation process itself,
existing PC and move to
Linux? Gone are the days “Microsoft has finally lost the which is a piece of cake. And
we won’t leave you hanging –
when Linux meant immersing
yourself in command-line
plot – now is the perfect time to once you’ve booted into
Ubuntu for the first time, we’ll
chicanery – we’ll show you switch to a better OS” take you on a tour of the new
how you can install a user- desktop, reveal how to access
friendly flavour of Linux alongside your Here’s what you’re going to do. Firstly, existing documents and other files, and
existing Windows installation without we would be remiss if we didn’t instruct show you how to get to grips with your
losing any data, so you can dip your toes you about how to back up your current PC. brand new operating system. There’s never
into the free and open waters of Linux. You have two basic choices here: the back- been a better time to make the life-
To make the transition as smooth as up tools which are built into Windows itself, changing switch to Linux, so grab our hand
possible, we’ve chosen Ubuntu 14.04 LTS (on or SystemRescueCD, which you’ll find as and take the plunge.
WITH
FREE
DIGITAL
EDITION
T
he simplest way to back up your system is to use and hit [Enter]. Make a note about experimental NTFS
the built-in Windows Backup tool in Windows 7 or support, then click ‘OK’ twice, noting the drive statistics.
later – select ‘System Image Backup’ and follow the If this successfully completes, repeat to back up your
prompts. It’s not very exciting and it’s a little scary, but it is Windows partition, naming it sda2-backup.gz instead.
essential. For a pure Linux back-up solution, use To back up your computer's Master Boot Record, open a
SystemRescueCD, which is on the cover disc. Here’s how… terminal window and type the following commands
Reboot your PC with the disc in your drive, access the cd mnt/backup
boot menu if necessary (usually [F11]) and choose your DVD mkdir partition-backup
drive, then ‘SystemRescueCD’. Problems booting could be cd partition-backup
caused by your PC’s UEFI (see over the page to fix them). dd if=/dev/sda of=backup-sda.mbr count=1 bs=512
Otherwise, pick the default boot options entry. Type uk when to back up MBR. Now back up your partition table with:
prompted for the keyboard layout, and type startx at the final sfdisk -d /dev/sda > backup-sda.sf
command prompt to access the graphical environment. If you get a warning about sfdisk not supporting GPT
Once this loads, click the ‘Menu’ button in the bottom-left partitions, type sgdisk --backup=backup-sda.sg /dev/sda
and select ‘System > Show Filesystems’ to identify each instead. If disaster strikes, either boot from your Windows
partition. The Disk entries identify each physical drive (sda, rescue disc and follow the prompts, or boot back into
sdb and so on) and the Device identifies the partitions. In SystemRescueCD. If you got as far as Ubuntu resizing your
most cases, sda will be your Windows drive, so you'll need to Windows partitions, you’ll first need to launch the Gparted
back up sda1 (a small boot partition) and sda2 (the actual partitioning tool from its Taskbar shortcut. It should display
Windows partition). You’ll also need to note the partition you your main hard drive (/dev/sda), so identify the extended
intend to back up to and make sure it has enough free space. partition. Right-click each volume inside it and choose ‘Delete’,
Now switch to the terminal window. To mount the back-up then right-click the extended partition and delete that too.
partition, type the following command, changing ntfs to FAT Next, right-click your Windows partition and choose ‘Resize/
if your back-up drive is FAT32, and replacing sdc2 with the Move’. Allocate it all available space, click ‘Resize/Move’ then
drive’s actual partition name: ‘Apply’. To complete the partition restore process, follow the
Mount -t ntfs /dev/sdc2 /mnt/backup step-by-step guide (below). The final step is restoring the
Now re-open the menu and select ‘System > Partimage’. MBR. Open another terminal window and type:
This tool lets you back up partitions, so start with /dev/sda1, cd /mnt/backup/partition-backup
then press [Tab]. Next, type /mnt/backup/sda1-backup.gz dd if=backup-sda.mbr of=/dev/sda
into the ‘Image file to create/use’ box. Leave ‘Save partition If you backed up your partition using sfdisk, type sfdisk /
into a new image file’ selected and press [F5]. Verify ‘Gzip’ is dev/sda < backup-sda.sf into the command prompt; if you
selected under ‘Compression level’, then click [F5] again. used sgdisk, type sgdisk --load-backup=backup-sda.sg /
Enter a description if you wish, then press [Tab] to select ‘OK’ dev/sda instead to complete the restore.
M
odern PCs, particularly those with Windows 8 pre-
installed, have replaced the traditional BIOS with
a new system called UEFI. Both perform the same
job, detecting and initialising your hardware before
handing it over to your OS, but UEFI represents a quantum
leap forward from the somewhat primitive capabilities of
the traditional BIOS. The UEFI offers a much wider range
of features than that found in the BIOS, all wrapped up in a
much more user-friendly, graphically pleasing interface.
There are, however, potential issues to circumvent. First,
because UEFI is a newer standard, it’s not compatible with
legacy hardware. This problem is circumvented by a special
Compatibility Support Module (CSM), which enables you to
emulate the BIOS to run older hardware and OSes.
More controversially, UEFIs also ship with a Secure Boot Make sure your FastBoot settings are disabled before
mode, which, while making PCs less susceptible to malware, attempting to install Ubuntu.
were used to lock them to Windows 8. Again, this feature can
– in most cases – be disabled, but the good news is that Logo Requirement. Either way, disable it if you have problems
Ubuntu 14.04 LTS fully supports newer hardware and Secure booting SystemRescueCD. If the section isn’t present, look
Boot, so you won’t need to disable either to install it alongside under Security instead.
The CSM module may be part of the Windows 8 Logo
“Because UEFI is a newer Requirement screen, or it’ll be hidden away on its own (we
found it buried away at the bottom of the Boot menu on our
standard, it’s not compatible ASRock motherboard, for instance). Click this to reveal a
selection of different options covering different hardware –
with legacy hardware” look for references to PXE (pre-boot environment), GOP
(graphics) and Storage (or SATA), as well as USB and PS2,
Windows. One UEFI feature you’ll need to disable, however, is if applicable. This enables you to selectively switch CSM on
FastBoot (also called QuickBoot or FastStartup). and off for specific devices as required.
Some motherboards – including our ASRock – enable you
Tweak the UEFI to run both modes as required. (In the case of ASRock, we set
Accessing the UEFI is the same as entering the BIOS setup. each one to ‘Do not launch’ to make this setting the norm.)
Switch on your PC, then tap the key prompted to enter setup If there’s no apparent options for editing the Secure Boot or
when it appears on-screen (typically [F2] or [Del]). Verify that CSM settings, contact your PC manufacturer to verify
FastBoot has been disabled by looking for a section called whether or not these can be disabled. In most cases, PCs
Windows 8 Configuration, or – if it’s not present – Boot. Once built using off-the-shelf motherboards should have the
located, make sure it’s switched off or disabled. required options intact, but some manufacturers have been
You may need to tweak the CSM and Secure Boot settings known to provide hobbled boards.
if you intend backing up your system using SystemRescueCD Upgrading a PC’s graphics card often requires enabling
on the cover disc. Again, look in the Windows 8 Configuration, CSM support, so even if the controls aren’t already
if it exists, for Secure Boot, which may be listed as Windows 8 supported, the manufacturer may have relented under
Y
ou’ve installed Ubuntu, removed the cover disc and Menu Bar at the top of the screen works in a similar way to
rebooted your PC. The first change you’ll see is the the Windows Taskbar Notification area, with a number of
presence of a new boot menu on startup, called icons providing access to key tools. From the off you’ll see –
GNU Grub (see ‘All about Grub’, p19). This enables you to from left to right – network, keyboard, volume, date/time and
choose which OS to boot into, plus gives you access to a settings. Most of these are self-explanatory – simply click one
memory testing utility. The default choice is Ubuntu, but to reveal its Options menu.
before booting into it for the first time, we recommend The ‘Settings’ button is the most interesting of these – not
selecting the Windows entry. This lets Windows boot for only does it provide access to the power options, but it also
the first time since the Ubuntu installer resized your enables the ability to quickly switch users, log out or lock the
partitions – you’ll note it immediately runs the disk computer, and it also provides a handy shortcut to Ubuntu’s
checking tool to verify and update its own partition System Settings, more on which in a moment.
records. Let it do this, then once complete, it’ll restart your When you open an app, its title will also appear in the
PC. Select ‘Windows’ again from the Grub boot menu to Menu Bar – roll your mouse over the Menu Bar and its menu
check all is well. Assuming it is, restart your PC again. items will appear, and clicking one will open its menu.
This time, leave ‘Ubuntu’ selected and hit [Enter] to boot
into your new OS for the first time. After the loading screen The App Launcher
flashes by, you’ll be prompted to enter the password you set The shortcut icons displayed on the left-hand side of the
up during installation. Type this in, hit [Enter] and you’ll arrive screen are part of Unity’s App Launcher. Rather than
at Ubuntu’s desktop, which is called Unity. cluttering up your desktop with lots of icons, these are all
The Unity desktop shares a number of similarities with housed in a single column – simply roll your mouse to the
Windows, such as the presence of shortcut icons on the left, bottom or top of the launcher to reveal more shortcuts. The
but you’ll also notice some key differences, which will feel App Launcher houses shortcuts to applications, workspaces,
more familiar to those who have used a Mac before. First, the removable drives and the rubbish bin. The two shortcuts at
the top, however, are of particular interest: the top one
enables you to quickly search your computer and the internet
from one handy window, while the Files shortcut gives you
access to a file manager, making it easy to browse, access
and manage your files – again, more on that later.
To find out more about a shortcut, roll your mouse over it
and its title will pop up. Click one to open it. As time moves on,
you’ll want to know how to add and remove shortcuts from
the App Launcher – to remove a shortcut, simply right-click it
and choose ‘Unlock from Launcher’. The simplest way to add
a shortcut is to use the search tool to locate the app in
question, then simply click and drag its shortcut into place on
the Launcher. You can also reorder items in the Launcher by
simply clicking and dragging them to their new spot.
The desktop itself works in a similar way to that of
Windows, and can be used to house files, folders and
The main distinction for former Window’s users trying out the Unity desktop shortcuts should you wish to clutter it up – again, it uses the
environment for the first time will be the position of the launch bar. familiar right-click menu to provide you with options for
creating folders, managing existing icons and changing the programs. To make the change complete, follow the step-by-
desktop background, should you wish. step guide above to point your Ubuntu user folders to the
Ubuntu can detect both FAT32 and NTFS partitions, so same location. We recommend following the advice given and
accessing your old data shouldn’t be too much of an issue. leaving the Ubuntu desktop folder alone. Once done, test that
You should see these drives appear in the App Launcher – the tweaks work by opening Nautilus and clicking the
clicking one will open its contents for viewing. If you’re looking ‘Documents’ shortcut in the left-hand pane, which should
for your personal data, unless you’ve specifically moved the now point to your data partition.
folders in Windows, you should find all your documents in the To access your network, open a folder window and you’ll
Users folder under your username. see network options on the left of the screen. Click ‘Browse
Network’ to find other computers – there’s a handy Windows
Access your data
You can also access the graphical Nautilus file manager by
clicking the ‘Files’ shortcut on the Launcher. It provides a “Ubuntu can detect both FAT32
familiar two-paned window, with a series of shortcuts on the
left and the contents of the currently selected folder or drive
and NTFS, so accessing your
on the right. By default, items are displayed in a grid, but you old data shouldn’t be an issue”
can switch to list view using the buttons in the top-right. You’ll
also see a ‘Search’ button, which enables you to search the Network shortcut for accessing Windows PCs. Alternatively, if
currently selected folder (and any sub-folders). you know the computer name, click ‘Connect to server’ and
If you want to copy data from your Windows partition to type smb://comp-name then click ‘Connect’. Have your
your user folders in Ubuntu, browse to one of your user username and password ready if necessary.
folders – Documents, for example – then click and drag all of Ubuntu should automatically handle all of your PC’s
its contents to the ‘Documents’ shortcut in the left-hand hardware, using generic drivers if necessary, but you can
pane. It pays to make sure you have enough free drive space. review what’s been installed, plus look for additional drivers
If you plan to continue using Windows alongside Ubuntu, a (specifically for gaming, Wi-Fi or printing) using the Software
better solution is to set up a spare drive or partition as a & Updates app. Open a Search box, type software and then
dedicated data drive, allowing both Ubuntu and Windows to click the ‘Additional Drivers shortcut. It will search for any
access the same copy. This needs to be a FAT32 or NTFS driver updates that may exist and alert you to any alternative
partition so Windows can access it as well as Ubuntu. or proprietary drivers you may have installed.
Assuming such a partition is in place, set it up by first If you store data in the cloud, the good news is that
booting back into Windows. Now create dedicated folders for Ubuntu supports a wide range of cloud providers – a good
Documents, Pictures, Music and Videos on your data thing, seeing as it recently dropped its own Ubuntu One cloud
partition. Open your Windows User folder, right-click your storage service. Some providers are officially supported on
‘Documents’ folder and choose ‘Properties > Location tab’. Linux, such as Dropbox (www.dropbox.com/install). If
Click ‘Move’ and select the ‘Documents’ folder on your data you’re looking for heaps of free storage, then Google Drive
partition. Click ‘OK’, then enable it to move all your existing offers 15GB, but as yet there’s no official Ubuntu support. A
data to the data partition. Repeat for your other folders. number of third-party offerings do exist, though, and if you’re
Once done, boot back into Ubuntu. Your files should now prepared to pay $15, InSync (http://insynchq.com) is the
be easily accessible from the data partition, enabling you to tool of choice. You could even use OwnCloud to set up your
make changes to them using both Windows and Ubuntu own storage…
N
ow you’ve familiarised yourself a little with the share files with your Windows installation. Shortcuts to these
Unity desktop, it’s time to plunge deeper into the key folders can be found in the left-hand pane.
Linux ocean and arm yourself with more of the Now click the ‘Computer’ link under ‘Devices’ and you’ll get
important knowledge you’ll need to use it going forward. a look at a load of other folders, too. Most of these can be
Before diving in, however, it’s a good idea to take a system safely ignored on a day-to-day basis – the bin folder is where
backup – as you start to learn Ubuntu, you may make your programs are stored, for example – but two worth noting
mistakes that could lock you out of your system. (See are media and mnt. These are where shortcuts to any
‘Take another backup’, below.) external drives and network folders you’ve connected to can
First, let’s take a look at the Linux filesystem and how it’s be found. The key difference between the two folders is that
organised into folders. First, Linux uses a different filesystem drives mounted in the /media folder are mounted on a per-
to Windows (NTFS or FAT32) called ext4. This makes your user basis, and don’t require elevated access before they are
Linux folders invisible to Windows, which can’t natively read mounted. This means they’re not available to the system
ext-based drives. That’s fine – we’ve moved your data on to a before you log into your account, which can cause some
shared partition that both OSes can see, and it’s better that issues with start-up programs. See http://bit.ly/
you can’t accidentally access your Ubuntu partitions. MountWinParts for more information – jump to the
Now, open Nautilus, where you’ll be taken to your Home ‘Configuring /etc/fstab’ section for a guide to mounting
folder. This works in a similar way to your Windows user folder, partitions before login occurs to circumvent this problem.
and normally contains all your personal files, although we’ve
moved key folders across to your data partition so you can Key system tools
While Ubuntu will require you to access the command line to
perform some complicated tasks, there’s a lot you can do
without it. We introduced the Disks utility in the step-by-step
guide (page 17). Disks lets you view and manage your drives
and their partitions – by selecting one, clicking the ‘Settings’
button and choosing ‘Edit Mount Options’ you can make
changes to the way partitions are mounted without having to
edit the fstab file directly. But use with care – if drives don’t
behave as you expect, flick the ‘Automatic Mount Options’
switch back to ‘On’ to restore the status quo.
Many system preferences can be accessed via the System
Settings tool – click the ‘Settings’ button on the menu bar to
access it. You’ll see three section buttons: ‘Personal’,
‘Hardware’ and ‘System’. From there you can access a
particular preferences tool. Select ‘Appearances’, for example,
to tweak some desktop settings, such as automatically hiding
the App Launcher when it’s not required and moving an
application’s menus to its own window rather than the main
menu bar.
You can also install a dedicated tweaking tool. We’ve
already seen how the Ubuntu Tweak Tool can be used to
Take a backup of your dual-boot system using Redo for extra security. move your home folders to another drive (page 17). It also
includes a handy Apps tab that makes it easy to locate and most of your new OS, then learning to navigate it is essential.
install new software. Also take the time to explore the Tweaks Opening Terminal is simple enough – simply press
section and – in particular – the Unity component where you [Ctrl]+[Alt]+[T]. A new window appears and at superficial
can do things such as resize the Launcher icons. glance it looks a lot like the command line in Windows. In
Two other tweaking tools that are worth exploring are the Ubuntu, you start off in the ~ directory, which basically means
Unity Tweak Tool, which gives you even more fine control over your personal home folder. Type dir and you’ll see a list of
the desktop, and Tweak Tool. Both can be found via the folders to confirm this. To change directory, use the cd
Ubuntu Software Center – choose the trusty-backports command – to move up a level, type cd .., or type cd home/
version of the Unity Tweak Tool. Both offer similar point-and- nick/Pictures to jump directly to another folder (note that
click access to hidden system settings. directory paths are case-sensitive). You can return to your
home directory at any time using the cd ~ command. Other
Repositories file-management commands include cp (copy), mv (move),
Although you can download programs from websites, it’s far mkdir (create folder) and rm (delete file).
easier to use the centralised Software Center. Ubuntu One key command you’ll need to learn is sudo. Linux is
provides its own software repository, which is a server very tight on security, and in normal day-to-day operations
containing hundreds of Linux programs specially compiled to your access is quite restricted. You can’t, for example, modify
work with Ubuntu. This means any software you find in the files on your Linux partition outside of your home directory.
Software Center should work without problems, which makes What sudo does is give you elevated access, enabling you to
it a little like having your very own Linux app store. The Center manipulate files and perform commands – think of it like
also looks out for program updates, alerting you when they’re right-clicking a program in Windows and choosing ‘Run as
available and installing them for you.
You’re not restricted to one app store – sorry, repository –
either; install a program such as Dropbox from its own
“If you want to make the most
website, for example, and it’ll add its own repo to the Center,
enabling it to alert you when updates are available.
of your new OS, learning to
To manage these repos, open Software Center and select navigate Terminal is essential”
‘Edit > Software Sources’. A list can be found under the ‘Other
Software’ tab, where you can manually add your own. administrator’. You can prefix any command with sudo to gain
So far we’ve not dealt with Terminal, which is Linux’s this access, but you’ll need to provide your password.
equivalent of the Windows command prompt. While it’s You can install software directly from the command line,
technically possible to avoid this, if you want to make the too, using the apt-get command. To install GIMP directly from
the terminal, for example, you type sudo apt-get install
gimp. The apt-get command can also be used to update all
existing software (apt-get upgrade), check for broken
dependencies (apt-get check) and fix problems with missing
dependencies (apt-get –f install). Over time you can use it
to free up disk space by removing Deb packages you’ve
uninstalled (apt-get autoclean).
It’s even possible to download files using wget – simply
type wget followed by the full URL of the file you wish to
download, which will automatically be saved to your personal
downloads folder. To find out more about these and other
commands, check out our Terminal core skills tutorials,
starting on page 102.
Now you’ve installed Ubuntu alongside Windows and
grasped the basics of Linux, there’s no turning back – in fact,
Configure Grub to choose which OS loads by default. we suspect you’ll wonder why you didn’t try it before.
Ditch XP and
switch to Linux
Linux can be a bit scary for newbies, so we’re on hand to demonstrate how to
swap dusty old Windows XP for sparkly Linux Mint.
D
o you know one of the 12% of desktop PC users out entire Core 2/iX range. In regards to AMD, it introduced the
there (www.netmarketshare.com) who still uses 64-bit compatible Athlon 64 back in late 2003 and this had
Windows XP? Yes? Then do them a favour – tell them filtered through its entire line by 2005. So unless a system is
to stop and hand them this article. As of 8 April 2014, more than nine years old, it should be compatible with 64-bit.
Microsoft ended all support for its ageing closed-source Don’t worry if yours isn’t – all distros offer 32-bit alternatives
operating system. This means every new exploit and security for non-64-bit systems.
flaw will go unpatched and unfixed, and will remain as a Linux Mint can squeeze into 8GB of HDD space, but more
gaping hole in people’s digital lives. It really is a bad situation, is really recommended. Our guide is going to suggest
because it’s going to lead to identity theft, an increase in reducing the Windows XP partition (or a suitable data/file
spam and more botnet activity. Of course, it also means that partition) to squeeze in room for the Linux boot partition. For
vulnerable people will potentially be exploited. One of the this, there needs to be at least 8GB of free space on that
problems is that Windows XP works well for a large number partition. In some circumstances, you’ll need to delete any
of users, and because of this, they’re unwilling to change their unwanted files before this can happen. It’s better if you have a
habits – irrespective of security concerns. lot more free space, but we’ll work with what we can get.
We’re here to try to help shift people away from Windows You might be wondering why we’re working with an
XP. In our view, many people simply don’t care what their additional partitioning program when Ubuntu-based distros
underlying system is, just as long as it works and offers the like Linux Mint have one built in. The truth is that while the
same programs and online access – and what better system built-in partition tool works well, it’s awkward to use and we’re
could we offer than Linux Mint? really trying to make things as simple as possible. The
GParted tool is far slicker, and if people finally plump for Linux
Get started now – and why wouldn’t they? – a partition tool is going to be
We’ll show you how you can take an existing Windows XP PC, needed for removing Windows and resizing the root partition.
rejig the partitions, install Linux Mint and retain access to your In most cases, that’s best done from a boot CD.
old Win XP files, while gaining the benefits of a modern Linux If you run into issues, there are plenty of online support
OS. You can get all of this by following the article and using sites with answers – often these involve the terminal. What’s
the cover disc or with a couple of easy downloads. that you say? The terminal is often portrayed as a black slab
On the disc you’ll find a 64-bit version of Mint, plus the of death in circles outside the Linux world. It’s nothing more
SystemRescueCD bootable live CD. That means you need a than the Linux version of the command line but is far, far, far
64-bit compatible processor. See the box below on alternative more powerful. The terminal allows entire servers to be
distros if you need a 32-bit build, because it’s likely that you’ll administered – you can hack the world from here! See the
want a low-requirement distro as well. tutorials in section 6 if you want to know more.
Are you unsure about whether you have 64-bit And that’s it. You’ll have Linux up and running. Turn the
compatibility? Well, Intel 64-bit support was introduced with page to see how easy it is to access your old Windows
its Pentium 4 Prescott back in 2004 and has been mostly documents and check out the alternative programs you can
across the board for desktop processors since 2005 and its use. They’re free, easy to install and waiting to be discovered.
Distro divas
As we’ve mentioned, we’ve based this guide on for the more ancient XP systems out there. When For repartitioning, we’re going with the all-
what’s available on the accompanying cover disc, XP was launched in late 2001, 32-bit was all the powerful SystemRescueCD distro, which is on
but there’s no reason you can’t substitute these rage and remained so, especially on mobile the cover disc. It might be overkill for a basic
options with your own choices. In some systems, until the mid-2000s. repartitioning job, but it’s always handy to have
circumstances, this could be for compatibility. A There are also various releases of both Ubuntu around. You might want to consider the more
32-bit lightweight option (such as www. and Linux Mint in 32-bit offerings, direct Gparted Live distro at 175MB from
puppylinux.com at 161MB or www.bodhilinux. and you can grab yourself a download from www.gparted.org, which boots directly into a
com at 613MB) may well be the only real choices www.linuxmint.com or www.ubuntu.com. graphical desktop with Gparted ready for action.
1 Gpart it 2 Resize it
Boot the system from the cover disc and select ‘SystemRescueCD’, or You need to start GParted. This is the icon on the bottom-left, or you
create and boot your own. Select the default boot – the alternatives can just type gparted into the open terminal. What you see next
will help solve potential problems you might experience. Select the depends on the complexity of the host system’s partition structure.
default keyboard and type startx at the final command prompt. This It could be a single partition, or it could be several. You need to right-
will fire up the default Windows environment. click on the one that has the most unused space.
3 Move it 4 Create it
Grab the right-hand handle and resize that partition, you’ll want the Now you’ve found some space for your Linux partition, we’re ready to
free space to read at least 8,096MB – ideally this should be a lot more. go. You won’t need to partition or format this space. The installer we’re
You’ll see over the page how you can still access your Windows XP about to follow will identify this as where it should install itself. To apply
partition, so you don’t have to worry about things there. Click ‘Resize/ these changes, click the ‘Apply All Operations’ button. Depending on
Move’ to make the selection, but nothing will happen yet. the amount of stuff, this can be a quick or slow process.
5 Install it 6 Boot it
Reboot and switch to Linux Mint. Select ‘Install Mint’ and you’ll see It won’t take long to install Mint and download the latest updates from
a familiar install system. It’ll eventually ask to install Linux Mint the internet. Once in, you should find Linux Mint to be a pretty similar
alongside Windows XP. Accept and you’re on your way. Just like with experience to the long outdated XP, except it will be far more secure
Windows, you will need a username, network PC name and a decent and – most importantly – it is still supported as an operating system.
user password to protect your admin – aka root – access. See over the page for all your replacement Linux programs.
Ditch XP part 2
So you’ve made the switch from Windows XP to Linux. But how do you make
sure you can open all your documents and carry on using your PC?
J
ust because you have switched from Windows XP to Windows. To make life easier, it’s worth creating shortcuts to
Linux, it doesn’t mean that you won’t be able to access your XP folders so they are easily accessible in Linux. When
your existing files, or will have to radically change the you open the file browser, you should be able to see the drive
way you use your computer. The aim of this tutorial, along or partition on which Windows XP is installed.
with the walkthrough on the previous page, is to make the Depending on what distribution you’re using, the process
switch from Windows to Linux as smooth and painless as might be slightly different, but in Linux Mint you can quickly
possible. For many Linux users, the concept of a Microsoft access the file manager by double-clicking the computer icon
operating system is but a hazy memory. If you are one of on the desktop. In the window that opens, you will see all the
those people, these guides are ideal for handing over to drives connected to your computer. By double-clicking the
friends or family who have yet to make the leap to Linux. drive on which Windows XP is installed, you can browse to
One of the biggest worries for people moving from your existing files by going to ‘Documents and Settings >
Windows to Linux is that they won’t be able to open their old Username > My Documents’, where Username is the name of
files, or use the programs that they’re used to. Thankfully, this the account that you use to log in to Windows XP. If you right-
worry is easily allayed, because an increasing number of click ‘My Documents’, or on any folder you want to have quick
applications have Linux versions. The beauty of open source access to, and select ‘Make Link’, you can then drag the newly
software is that if an application isn’t available on Linux, made link to your desktop for quick access. You can also add
there’s a very good chance of there being an alternative that the folder to the left-hand Places bar in the File Explorer
will do just as good a job – if not better. menu. To do this, open up the folder, click on ‘Bookmarks’,
then ‘Add Bookmark’. The folder will now appear on the left
Getting your files underneath Bookmarks.
If you followed the guide on the previous pages, you’ll have As Linux adoption grows, so does the number of Linux
installed Mint while keeping your Windows XP installation and ports of popular Windows and Mac programs. Dropbox, the
personal files intact. This means that while you are in Mint, popular file synchronisation program, has a Linux client, as
you will be able to browse the drive on which Win XP is does Skype. Steam also has a Linux client, and an increasing
installed, and access all your files. In Windows XP, these are number of recent games are Linux compatible.
usually kept in My Documents, My Pictures and so on. Mint,
and many other Linux distributions, have similar folders Browse the web
(usually without the ‘My’ prefix). While it’s feasible to copy and If you use Google Chrome or Mozilla Firefox to browse the
Ta-dah! Linux paste your documents and files from your Windows XP internet, then you’ll be able to continue using them in Linux.
Mint at your partition to the equivalent folder in Linux, it’s a better idea to And the best bit is they will both let you synchronise your
service – and leave the files where they are. When you then edit them in bookmarks, passwords and browsing history. If you’ve been
isn’t it nice? Linux, the changes will still appear if you then open them in using Internet Explorer, you’re going to have to make do with
Hardware
Build a Linux PC ........................................................................................................................47
Install Linux on a Chromebook ....................................................... 56
Build a Steam machine ....................................................................................... 60
Raspberry Pi 2 hands on ................................................................................. 64
just go out (or online) and buy one. So why do the satisfaction of understanding your
T
here is a document that has been
floating around the internet for at people build their own? Over the next few computer that little bit more, but this
least fifteen years, called ‘What if pages we will try to answer this question, as information is not only useful if you want to
operating systems were airlines’. well as the more complex questions that arise build a new system from scratch. Much of
The entry for Linux Airlines states: “When when you try to do it, such as: how hard is it to what we cover here will also be of benefit if you
you board the plane, you are given a seat, do? What are the risks? What about are looking to upgrade an existing computer.
four bolts, a wrench and a We will been concentrating on
copy of the seat-HOWTO.
html”. It’s an old joke but as
“Desktop systems are generally desktop systems, which are
generally very easy to work on –
Linux users we are still more
accustomed to sometimes
very easy to work on – we find we find LEGO more taxing.
Laptops are another matter, but
having to do things for LEGO far more taxing.” many of the points about
ourselves than users of other choosing suitable Linux-
operating systems. warranties? Will it save me money? Can I build compatible components still apply and we will
Not that this is necessarily a bad thing, as it a computer with no Windows? And many end with a look at picking a laptop, or any other
means we understand our computers better. more. There are several reasons why you may type of sealed box, such as one of the popular
Still, at least when you want a new PC you can want to build your own, not least of which is nettop systems.
www.lifehacker.co.uk
twitter.com/lifehackeruk facebook.com/lifehackeruk
Hardware | Build a Linux PC
Remember Moore’s Law
Moore’s Law predicts a doubling of computer tend to increase too. 4K video is on the way, so
capacity every two years. Unless you plan to build a system with more drive bays and SATA
build a new computer every year, you should connectors than you need now. Storage and
allow for your needs increasing during its memory are easy to increase, provided you
lifetime. Always allow for spare capacity, if you have left yourself the option. Hopefully your
want 16GB of RAM, buy a motherboard that processor and motherboard will last you
takes 32GB and half-fill it. Your storage use will several years.
Linux compatiblity
Hardware support in Linux is very good nowadays. Most devices are rants. Asking in web forums, like our own (www.linuxformat.com/
supported directly in the kernel. There is no need to go trawling forums) or at www.linuxquestions.org, about the support for a
manufacturers’ websites for drivers. When you are buying components particular device should get you some first-hand experiences, but search
for your own computer, you need to know whether there’s support for the the forums yourself first. Your question may have already been answered
hardware before you buy a component. The first step is to determine the and no one like questions from people too lazy to do their own research.
exact component in use, which is not as easy as it sounds. The Compatibility problems usually arise because the manufacturer gives
motherboard maker’s website may state it has a Gigabit Ethernet port, no help to the kernel driver developers so everything has to be reverse
but not tell you which chipset, so you will have to do some research. engineered – this commonly applies to wireless adaptors but some
Typing the full product code and the word Linux into your favourite sound cards are also affected. Another reason may be that the hardware
search engine will normally give plenty of hits. It’s worth restricting your you are looking at is so new that support has not yet been added to the
search to recent posts, there is no point reading complaints about your kernel of your current favourite distro. You may need to look at a newer,
choice not being supported a year ago when it is now. Look for posts that more bleeding edge release to get support. This seems to affect things
give details, such as chipset codes and module names and avoid the like network adaptors, wired and wireless, the most.
Terminology
You will encounter plenty of abbreviations and Northbridge/Southbridge Chips on the
jargon when looking at hardware, here are motherboard that handle core logic and
some of the common terms used: communication between the CPU and
DDR 2/3/4 Double Data Rate, a technology other components.
using in memory chips. SATA Serial ATA, the current standard for
DIMM Dual Inline Memory Module, this is connecting storage devices to computers.
plug-in memory module. ATX A motherboard configuration
WAF Wife Acceptance Factor, seen on male- specification, meaning most boards are
dominated forums and considered important interchangeable in physical format and Some memory vendors provide databases
for hardware that will be in the home. standard connectors. that are very handy for seeing which
memory is best for your motherboard.
Careful now
Building a PC isn’t difficult, but a grounded object, such as a
some care is needed when central heating radiator or the
working with electronic kitchen sink before touching a
components. Prepare a large component. You can also buy
working area, clear of any clutter anti-static wrist straps that
and with a non-conductive connect to a grounded point by
surface. Static electricity can kill flexible cable to keep you static
electronic components, and it can free during your build.
build up on your body without you The computer you build will not
noticing, until you pick up a have a warranty, but the individual
component and zap it. You can components will. As long as the
avoid this by earthing yourself to fault wasn’t caused by damage
discharge and static build up. The while fitting them, any reputable
simplest way to do this is to touch vendor will replace them.
8 Testing, testing
Connect a monitor and keyboard and power up the computer. Hold
down the relevant key that loads the BIOS/firmware menu and go
straight to the system health page to make sure your CPU is running
cool enough. Only then should you check that all of your memory
and drives are recognised. Some motherboards may need a setting
changed to make all memory visible, but your new PC is now built!
Install
Linux
on your new
Chromebook
For those who’ve bought a Chromebook and miss a full operating system,
we’ll show you how to get an assortment of Linux distros up and running.
C
hrome OS is brilliant – for the type of user the making reversal easy; it uses the Chrome OS drivers for video,
Chromebooks are generally aimed at, it does exactly wireless and other devices, so there are no compatibility
what it needs to do. It is fast and easy to use – what issues; and it is written by the Chrome OS authors, so it
more could you ask for? Well, after a while, you may find should remain compatible with future updates. The only real
yourself missing some of the features associated with more disadvantage of using Crouton is that there may be a slight
traditional operating systems. But don’t fret, because help is performance hit, but you didn’t buy a Chromebook for its
Jargon at hand, in the form of Crouton. blazing speed anyway. Oh, and in case you’re interested, the
buster! Crouton is a set of programs that set up a chroot name Crouton is a convoluted acronym (standing for
apt-get environment within Chrome OS, from which you can run a ChRomium Os Universal chrooT EnvirONment) that was
The program used Linux OS, with Debian and Ubuntu currently supported. clearly thought up after the name.
to install software A chroot is not the same as a virtual machine – you are still Before you start installing other distros, it’s a good idea to
packages on
running on the standard operating system, but within a new create a rescue disk to restore your Chromebook should
Debian, Ubuntu and
other Linux distros. environment. This method has several key advantages: for anything go awry. Even if you’re not installing another OS, this
example, it does not touch the existing OS installation, is a wise step, especially as it’s so simple – all you need is a
USB stick or SD card of at least 2GB in capacity. Because of
the cloud-based nature of Chrome OS, 2GB is enough, as you
only need to back up the operating system – your data and
settings are safe on Google’s servers. (See the ‘Recovery
disks’ walkthrough on page 59 for details.)
Shell shocked
When you’re ready, start downloading Crouton from
http://goo.gl/fd3zc. This is a script that downloads and
installs everything you need. You run it from a shell – yes,
Chromebooks come with a shell. Press [Ctrl]+[Alt]+[T] to
open the Crosh shell in a browser tab. This is a limited shell,
but run shell to start a proper Bash shell. Crouton needs to
LXDE know which distro you want to install; it calls these releases
running on a and selects them with the -r option. Then it needs to know the
Chromebook, but target environment you want to install. A target is a collection
Chrome OS is of software packages, such as a particular desktop. These two
still there. commands will list the options:
Starting up
Depending on the target(s) selected and the speed of your for a password and uses that to encrypt the entire chroot
internet connection, this could take a while. When it has directory, meaning you can neither read nor run the chroot
finished, it tells you the command needed to start your without the password. For example:
chosen distro in the chroot, such as: sudo sh -e ~/Downloads/crouton -e -r wheezy -t xfce
sudo startunity There are lots of distribution releases and targets to
Run that command and you will be in a standard Ubuntu choose from; you could install them all at once but that
desktop. When you’ve finished, log out in the usual way and would get pretty bloated, so how do you try them all out?
you go back to Chrome OS. You can switch between the two The answer is that you can have as many chroots as you
by holding [Ctrl]+[Alt]+[Shift] and pressing [Forward] or have space for.
[Back]. In fact, the Chrome OS navigation keys above the If you plan to do this, you may find it easier to use
numeric row are treated as [F] keys by Linux, so these are Crouton’s -n option to give each chroot a name, otherwise
really [Ctrl]+[Alt]+[Shift]+[F1] and [Ctrl]+[Alt]+[Shift]+[F2]. they are simply names after the release. Naming is important
The installation you end up with is not the complete distro when installing multiple releases, because the name is
Quick
as you would get installing it natively, but any extra packages needed when running the start-up commands, otherwise
tip
can be installed in the usual way. If using Unity, the Software Crouton just loads the first release in which it finds the target When trying
multiple distros
Centre is not installed, so open a terminal in Unity you gave. Adding -n, like this, lets you ensure the correct
or targets, clean
([Ctrl]+[Alt]+[T]) and run: release is loaded: out any you have
sudo apt-get update sudo startunity -n saucy finished with. At
sudo apt-get install software-center Crouton also installs a couple of useful tools, particularly several GB each,
your storage will
Now you can install any other packages you need from the edit-chroot. This can be used to back up a chroot.
soon disappear.
GUI. You can also install extra target environments with the -u sudo edit-chroot -b saucy
flag. For example, to add the LXDE environment to the creates a back-up file in ~/Downloads, which you can restore
Ubuntu chroot we created before, we would run: with the following:
sudo sh -e ~/Downloads/crouton -r saucy -u -t lxde sudo edit-chroot -r ~/Downloads/backup-file.tar.gz
Copy this somewhere safe. Even if you do a full reset/
Adding some privacy recovery, you can still restore it by downloading Crouton again
As you may have noticed, enabling Developer Mode gives you and running:
root access through sudo, without requiring a password. This sudo sh -e ~/Downloads/crouton -f backup-file.tar.gz
is slightly less secure for Chrome OS, but your login and files You can also use delete-chroot to delete a chroot, which
are still protected by your Google login, but it means that all you could have worked out for yourself, or you can simply
the files in your chroot are readable, even with a passwordless delete the directory holding it from /usr/local/chroots to go
guest login. If this concerns you, it is possible to encrypt the back to a vanilla Chrome OS. Assuming, of course, that you’d
entire chroot by using the -e flag for Crouton. This prompts want to do that. Follow the steps over the page…
3 In case of emergency
If you corrupt Chrome OS and get the following scary ‘Chrome OS is
missing or damaged’ message, plug in your recovery medium.
You can also force a recovery, if you want to go ahead and restore
it anyway, by pressing the hard reset button or key combination,
which varies from model to model. Check your Chromebook’s
documentation for whatever applies.
G
aming on Linux has been plagued
with problems in the past, usually on Linux is in rude health. Microsoft's desire to gamers who hadn't considered Linux before.
because many developers rush create a walled garden with Windows 8 worried With Valve's backing, an increasing number of
out Linux support – or leave it Valve, the video game developer behind the developers are porting their games to Linux,
out altogether – and focus on Windows. much-loved Half-Life series, and the company while hardware manufacturers, particularly
The hard truth is Microsoft's graphics vendors, are making
OS is found on the vast
majority of gaming PCs (eg “It’s now easier than ever to decent strides in supporting
Linux through their drivers.
Steam’s Hardware Survey
(Feb 2015) has the Windows
game on Linux – we get It's now easier than ever to
game on Linux – we get access
user base at 95.68% out of access to the latest titles .” to the latest titles, powerful
over 125 million active clients), hardware is supported and we
and that’s even with the company leaving a behind the Steam service, of course, enough to don't have to struggle getting games working
trail of broken promises and an even more create a Debian-based distro called SteamOS via Wine or waste money on a Windows
broken online infrastructure and DRM – try that is squarely focused on gaming. licence. Even better, many PC gamers can
mentioning Games for Windows Live to a Although Valve's embrace of Linux left a lot even see an impressive improvement in
PC gamer and see them visibly shudder. of us wondering what took them so long, it was performance just by switching to Linux.
Peripherals
So you've built an amazing, yet compact, companies offer some great alternatives for If you have a Logitech controller you can install
Steam Machine and loaded up SteamOS. Now controlling SteamOS games. Roccat has built a the LTWheelConf tool. Full instructions on how
what? You'll want to get some great gaming Sova lapboard especially for SteamOS which to use it can be found on the Steam network
peripherals for comfy gaming from your sofa. offers a small mechanical keyboard and large (http://bit.ly/LTWHeelConf).
Valve itself has been working on a dedicated mouse pad that can rest on your lap. You can also
Steam controller with the lofty ambition that it use games controllers from game consoles, such
will combine the convenience of a game as the Xbox 360 and PS4 as SteamOS does a
controller with the precision of a keyboard and good job of recognising them as soon as
mouse setup. It's certainly a tall order and one you plug them in. If you're a fan of
that Valve appears to have struggled with as racing games then the good news is
the controller has been delayed until late 2015. that renowned racers, such as Project The Roccat Sova has
While we wait for Valve's official controller, Cars are coming to Linux. What's not so great been built especially
which will cost $50, a number of other is the support for steering wheel controllers. for SteamOS devices.
Strife: Veteran Edition Stunt Rally - version 2.5 Annex: Conquer the BYOND: Space Station Galaxy Forces: Moon
This is an awesome first Race and performing stunts World 4.0 13 Remake Lander Action!
person shooter built on in fantastic environments. If you enjoy real time This remake of a criminally Hark back to a simpler time
the open-source This game features 167 strategy games, then this overlooked classic is for games with this retro-
Chocolate Doom engine. tracks, 19 cars and a track open source game is for you. completely open source. fuelled moon lander shoot-
Grab the game from editor. Download the game Download the game from Download the code from em-up. Download from
http://bit.ly/StrifeVE. at http://bit.ly/StuntRally. http://annexconquer.com. http://bit.ly/SS13Remake. http://bit.ly/GalForcesV2.
This War of Mine Chivalry: Medieval Papers, Please FTL: Faster Than Light Goat Simulator
A game like no other. You Warfare Play the role of immigration Take your ship and crew on Ever wanted to play as a
don’t play as an all-powerful Besiege castles and raid inspector for a fictional an adventure through a goat? This offers you a
soldier, but instead a group villages in this fast-paced country. Bureaucracy might randomly generated galaxy chance to live the dream
of civilians just trying to medieval first person not seem thrilling, but this filled with glory and bitter in this completely realistic
survive in a besieged city. slasher with a focus on PvP. manages to make it so. defeat in this spaceship sim. (not really) simulation.
Raspberry Pi 2
Hands-on with the
Ubuntu on Pi?
The biggest surprise brought about by the new brought a full desktop experience to hardware ‘regular’ armhf Debian against Raspbian, and
Raspberry Pi 2 is compatibility with Ubuntu for that required a lighter distribution. After further may switch if we see a compelling performance
ARM 7 CPU. Before the original Raspberry Pi investigations Debian, in the form of Raspbian, advantage. Our preference is to stick with
was released in early 2012, Ubuntu was often was seen as a suitable candidate and this Raspbian, perhaps with a few key libraries
mentioned as a candidate for the Pi, but as remains the official distro and is used for all swapped out dynamically, as this will allow us to
Canonical didn’t support the ARM 6 architecture, official tutorials and supporting documentation. support Raspberry Pi 2 and Classic from the
which the ARM 11 CPU used in the original Pi, But compatibility with Ubuntu doesn’t mean same image.” At the time of writing there are no
another distro was needed. Early on we saw that the Foundation is abandoning Raspbian: ready made images for Ubuntu on Pi, but over
Pidora, a fork of Fedora for the Pi, being used to “We’re not planning an official Ubuntu image,” the coming months there are sure to be many
demonstrate the power of the Pi. But Pidora says Eben Upon. “We’re going to benchmark on offer for you to try. including Ubuntu Core.
3D graphics test
Every Raspberry Pi comes with the same VideoCore IV GPU
(Graphical Processing Unit) that enables the Raspberry Pi to
play back high-definition video at 1080p. The new PI also
comes with this GPU, also made by Broadcom just like the
BCM2836 powering the new Pi. Did you know that there’s a
test suite for the GPU?
You can find the test suite by opening LXTerminal and
typing the following:
cd /opt/vc/src/hello_pi/
In there you will find a number of directories containing
many different demos. But before we can use them we need you will need to go back to the hello_pi directory and we can
Quick
to build the demos from source, and to make this easier the do that by typing.
tip
Foundation have provided an automated build script that will cd .. The Raspberry Pi
2 shares the same
only need to run once. To run the script, in LXTerminal type From hello_pi we can change our directory to hello_
dimensions as the
./rebuild.sh triangle2 and run the demo by typing B+ but for those
This build script will run the build process for all of the cd hello_triangle2 of you looking to
demos so it may take a few minutes, even on our new ./hello_triangle2 reuse a B+ case,
speedy Raspberry Pi. This demo appears to be rather static at first, but try such as the Pibow,
it’s worth noting
Once completed there are a number of demos that you moving the mouse around and you will see two fractals
that some surface
can try out and the first on the list should be hello_teapot. superimposed one over the other moving and reacting to mount components
To run it, in LXTerminal make sure that you are still in the your mouse movements. Apparently, you can also control have been moved.
hello_pi directory and type: the fractals to create a perfect circle. To exit out of the hello_ These changes
don’t affect the
cd hello_teapot triangel2 demo hold Control+ C together and you’ll be
overall size of the
./hello_teapot.bin returned to LXTerminal board but as the
You will now see a 3D render of a teapot with video that’s So we’ve taken a look around the new Raspberry Pi 2, Pibow uses layers
been directly rendered on to its surface. To exit out of the seen how it performs out of the box and taken time to to build, a new layer
teapot demo hold Control+C together and you will be supercharge our Pi. On the next page we will interface will be required for
your Pibow.
returned to LXTerminal. Minecraft with Pibrella to create a pushbutton bomb
Another demo to try is hello_triangle2 and to getto that deployment system!
Updating your Pi
The Raspberry Pi Foundation has released will check for the latest software, while sudo apt-get dist-upgrade
many new updates to the existing Raspbian sudo apt-get dist-upgrade sudo apt-get install raspberrypi-ui-mods
install and keeping your Raspberry Pi up to date is similar to upgrade, but a more intelligent Once completed, reboot your Raspberry Pi
is a really good practice. There are a few handy updater that removes old kernels. for the changes to fully take effect. Once logged
Terminal commands to help you, such as If you would like to install the new desktop, back in you will be greeted with the new and
sudo apt-get update and who wouldn’t as it is a really great piece of improved interface. Updating is done via the
which will update the list of installable software. work by Simon Long, type the following three terminal using the very powerful apt package
Using the following lines into a terminal: management system that’s used by all Debian-
sudo apt-get upgrade sudo apt-get update based distributions.
OUT
NOW!
WITH
FREE
DIGITAL
EDITION
NOW ON
APPLE
NEWSSTAND
&
GOOGLE PLAY
Download the
day they go
on sale in the
UK!
Software | Pick a distro
PICK A DISTRO
If you’re diving in to the world of Linux,
make sure you pick the right package for
you: different distros make a difference.
Y
our favourite Linux distribution and sometimes swap resources for their the fittest. Through this process, the
isn’t an individual unit in itself. mutual benefit as well as for the uninteresting, dull and unsustainable
On the inside, it is made up of enhancement of the ecosystem. projects begin to perish. The strong ones
*Genus: A rank used in the biological classification of organisms.
various apps, libraries, modules The Linux ecosystem fosters the survive, thrive and pass on their genetic
and toolkits. On the outside, code to the next generation
it’s part of a much larger and
very vibrant ecosystem that
“The strong survive, thrive and of derivative distros.
In this feature we will
sustains several other distros.
Also part of this larger Linux
pass on their genetic code to the classify the popular distros
as per their origins. We will
ecosystem are very active user next gen of derivative distros.” analyse how they’ve evolved
communities and various since their inception, and look
support infrastructures that help nourish the development of innovative projects and at the unique traits they have passed on to
distros and other projects. Over the course products. However, since the environment derivatives that help distinguish them from
of their lifetime, the different elements of the can only sustain only so many elements, their peers. We’ll also look at the best distro
Linux ecosystem interact with each other as the distros go through an evolutionary from each distro genus* and then pit them
well as with their environment. They process of their own to weed out the against each other to help you pick the
collaborate, exchange ideas and features, weaklings and ensure the survival of distro that is right for you.
www.techradar.com
twitter.com/techradar facebook.com/techradar
Software | Pick a distro
Genus Debian
Made of free software and evolving.
Even the
T
he Debian project has played a significant role in
most popular
the evolution of Linux and, in many ways, is the first distribution for
real distribution created for the regular computer the Raspberry
user. It was announced in August 1993 and had its first Pi called
public release later that year, although its first stable Raspbian, is
release wasn’t available until 1996. The project was even based on the
sponsored by the Free Software Foundation from Debian Project.
November 1994 to November 1995.
A key motivating factor that led Ian Murdock to create a
new distro was the perceived poor maintenance and
prevalence of bugs in the Softlanding Linux System (SLS)
distro. Besides the software itself, Murdock’s release included
the Debian Linux Manifesto, which outlined his view for the
new project, which prophesied that “distributions are
essential to the future of Linux”. In the Manifesto, he called for
the distro to be maintained openly, in the spirit of Linux and Debian Edu, Debian Junior and Debian Med. Debian also
GNU. One of the most significant goals for the distro was to supports a variety of platforms, including Intel i386 and
“eliminate the need for the user to locate, download, compile, above, Alpha, ARM, Intel IA-64, Motorola 68k, MIPS, PA-RISC,
install and integrate a fairly large number of essential tools to PowerPC, Sparc and more.
assemble a working Linux system.” In order to meet this goal,
Debian developers made a significant contribution to the Rules of engagement
Linux world – the dpkg package manager. Another distinguishing aspect of Debian is that the distro is
This was originally written as a Perl program by Matt made entirely of free software. The project uses the Debian
Free Software Guidelines (DFSG) to help
U
buntu is, in many respects, the first distro to make a efforts on ease of use and user-friendliness of the distro on
serious effort to bring in new users. The distro the desktop. The first release of Ubuntu was in October 2004.
brought Linux into the mainstream, played a Ubuntu’s development is funded by Shuttleworth’s
significant part in changing the notion and misconceptions UK-based Canonical, which is a privately held computer
about Linux and was able to successfully pitch itself as a software company. The company also supports development
viable OS alternative to Windows and Mac OS. of other Ubuntu-related projects, for instance, Ubuntu’s
Ubuntu was started by Mark Shuttleworth. He formed Ubiquity installer is one of the best tools for the job, and one
Canonical after selling his security-firm, Thawte, to VeriSign. of its distinguishing features is that it gives users the option to
Shuttleworth was a huge fan of the Debian project. However, install closed source or patented third-party software, such as
there were many things about Debian that didn’t fit in with Fluendo’s MP3 codec. Other useful user-centric projects that
Shuttleworth’s vision of an ideal OS. He therefore invited a have tried to change the status quo are the Ubuntu Software
dozen or so Debian developers he knew and respected to his Center and the recently discontinued Ubuntu One cloud
flat in London in April 2004 and hashed out the groundwork hosting service.
for the Ubuntu project.
The group decided on a bunch of characteristics for the Test by fire
distro. For one, Ubuntu’s packages would be based on those But perhaps no other piece of technology has polarised the
from Debian’s unstable branch. However, unlike Debian, Linux community like Ubuntu’s Unity desktop interface. The
Ubuntu was to have a predictable cycle with frequent distro first introduced Unity with the Ubuntu Netbook Edition
releases. To put the plan into action, it was decided that version 10.10. By the time 11.04 rolled off the press, the
Ubuntu would release updated versions every six months and Netbook Edition had merged into the desktop edition and
A number of each release would receive free support for nine months. Unity became the default graphical interface for the Ubuntu
vendors, such The plan was refined in later years and now every fourth distro. However, Shuttleworth has insisted that the Unity
as Dell and release receives long-term support (LTS) for five years. desktop plays a crucial role in Ubuntu’s multi-device strategy.
Lenovo, offer The group also decided to give emphasis to localisation Unity will help standardise the display on smartphones,
computers
and accessibility in order to appeal to users across the world. tablets, TV and other devices beyond the computer.
pre-installed
There was also a consensus on concentrating development Thanks to its malleable nature, the distro has always been
with Ubuntu.
very popular with developers who want to create a custom
distro for their particular niche. Ubuntu has perhaps seeded
more distros than any other, and Ubuntu itself has several
officially-supported spins: Kubuntu, Xubuntu, Ubuntu Gnome,
Edubuntu and Ubuntu Studio. In addition to the main desktop
edition, there’s also a server edition that doesn’t ship with a
graphical desktop.
Ubuntu has helped give Linux mainstream coverage and
has several celebrity users, including Cory Doctorow and
Stephen Fry. However, pushing the envelope has its
drawbacks and the award-winning distro has had its fair share
of brickbats. It’s still reeling under the Amazon controversy
that arose when the distro included search results from the
shopping giant in Unity’s Dash whenever users searched for
stuff on their computer.
Trisquel GNU/Linux
BEST Trisquel GNU/Linux goes to great efforts, the distro has been endorsed While the distro doesn’t ship with
OF lengths to do justice to its free by the Free Software Foundation. any proprietary codecs, you can watch
A
nother distribution that has played a crucial role in
shaping Linux’s DNA is Red Hat Linux, which was
created in 1994 by Marc Ewing. Bob Young and his
ACC Corporation bought Ewing’s business and created
Red Hat Software. The company went public in 1999 and
achieved the eighth-biggest first-day gain in the history of
Wall Street. It rode on the success of Red Hat Linux to
became the first open source billion dollar company.
Over the years, some of the biggest and brightest Linux
developers have worked with Red Hat. Soon after it went
public, it acquired Michael Tiemann’s Cygnus Solutions which
had authored the GNU C++ Compiler and worked on the
GNU C Compiler and the GNU Debugger.
One of Red Hat’s most influential pieces of technology is
its RPM packaging format. The file format is now the baseline
package format of the Linux Standard Base (LSB). which
aims to standardise the software system structure, including When Red Hat Linux was discontinued, the company Red Hat
the filesystem hierarchy used in the Linux operating system. handed over development of the free distro to the has served as
The LSB is a joint project by several Linux distros managed by community. The new project was called Fedora (see p36). the starting
the Linux Foundation. Red Hat was also one of the first Linux The company steers the direction of the Fedora project and point for
distros to support Executable and Linkable Format (ELF) does so in order to use Fedora to incubate technologies that several other
distros, such
instead of the older a.out format. ELF is the standard file will eventually show up in RHEL.
as Mandriva
format for executables, shared libraries and other files. Red Since the GPL prohibits it from restricting redistribution of
Linux.
Hat was also the first distro to attempt to unify the look of its RHEL, the company uses strict trademark rules to govern the
Gnome and KDE desktop with the Bluecurve theme – which redistribution. This has led to popular third-party derivatives
caused tension with the KDE developers. The distro has won that are built and redistributed after stripping away non-free
laurels for its easily navigable graphical Anaconda installer. components like Red Hat’s trademarks. Distros such as
CentOS, Scientific Linux and Oracle Linux offer 100% binary
Life after death compatibility with RHEL.
Initially, the Red Hat distro was offered as a free download
and the company sustained itself by selling support “Some of the biggest and
packages. In 2003, however, Red Hat discontinued the Red
Hat Linux distro and it now focuses solely on the Red Hat brightest Linux developers
Enterprise Linux (RHEL) distro for enterprise environments.
RHEL supports popular server architectures including x86,
have worked with Red Hat.”
x86-64, Itanium, PowerPC and IBM System z. The lifecycle of Red Hat has pioneered the professional open source
newer RHEL releases spans 13 years, during which time the business model, successfully mixing open source code and
users get technical support, software updates, security community development together with professional quality
updates and drivers for new hardware. Red Hat also has a assurance, and a subscription-based support structure. The
very popular training and certification program called RHCP company also has employees working full-time on free and
that’s centred around RHEL. open source projects, such as Radeon, Nouveau and CentOS.
CentOS
BEST The CentOS distro has been the ideal choice for anyone who wants to In January 2014, Red Hat
OF premier community-supported put together their own server but can’t announced that it would start to
F
edora has been around, in one form or another, since made up of four Red Hat appointed members and five
the early 1990s. The distro had its first release in community elected members. The chairman of the board is
1995 and the early releases were named Red Hat appointed by Red Hat. Fedora strives to maintain a roughly
Commercial Linux. During these early years, the distro was six-month release cycle, with two releases each year. Every
developed exclusively by Red Hat and the community was release is supported until the launch of the next two releases.
limited to contributing bug reports and contributing The cycles are deliberately kept short so that developers can
packages included in the distro. This changed in 2003 focus on innovation and introducing the latest technologies
when the company shuttered Red Hat Linux in support of into the distro.
the Fedora Project and opened it up to contributions from
the community. Feather in the cap
The aim of Fedora is to provide the latest packages while One way the community contributes is by hosting third-party
maintaining a completely free software system. The distro repositories. In addition to its official software repos, there are
was initially called Fedora Core and was named after one of several popular third-party software repos that usually
the two main software repositories – Core and Extras. contain software not included in the official repos – either
The Fedora Core repo contained all the basic packages because of the current laws of the country (such as
required by the distro as well as other packages distributed multimedia codecs) or because the software doesn’t meet
with the installation discs, and was maintained exclusively by Fedora’s definition of free software. The Fedora project also
Red Hat developers. The Fedora Extras repo was introduced produces the Extra Packages for Enterprise Linux (EPEL)
Fedora was with Fedora Core 3. It contained packages maintained by the repo, which contains packages for RHEL that are created by
one of the community and was not distributed with the installation the community instead of Red Hat.
first distros discs. This arrangement continued until version 7 in 2007 Apart from the main Fedora release, the project also ships
to embrace when the two repos were merged and the distro was renamed various spins which are special-purpose distros aimed at
the Security as Fedora. specific interests, such as gaming, security, design, scientific
Enhanced Fedora’s objective is to create a free software distribution computing etc. These are similar to Debian’s Pure Blends.
Linux
with the help of the community. The development of the These and others are maintained by various Special Interest
(SELinux)
project is overseen and coordinated by the Fedora Project. It’s Groups (SIGs). The OLPC also runs a Fedora-based operating
kernel module.
system. Fedora supports the x86 and ARM architectures and
has also added support for PowerPC and IBM s390, starting
with Fedora 20. Pidora is a Fedora Remix distro optimised for
the Raspberry Pi.
Fedora’s biggest contribution to the Linux ecosystem is its
command line package manager, YUM (Yellowdog Updater,
Modified), which is based on RPM (Red Hat Package
Manager). YUM enables automatic updates and dependency
resolution, and works with the software repositories to
manage the installation, upgrading and removal of packages.
Since the release of Fedora 18, users have had the option to
use the dnf tool which is a fork of YUM. The dnf tool will likely
become the default package manager in Fedora 22, because
it has better dependency resolution and is less memory
intensive than other managers.
Korora
BEST The Korora distribution started out as users and the distro offers five desktop the proprietary graphics driver for
OF a way to ease the installation process choices – Gnome, KDE, Cinnamon, Nvidia cards.
U
ntil the release of Mandrake, Linux was generally
thought of as a geek’s OS. Mandrake was the first
distribution that focused on the convenience of the
user. The goal was to provide a distro that could be
operated by regular computer users. It had features such
as the ability to auto-mount CDs without messing around
with configuration files, which brought greater
convenience to the Linux desktop.
The Mandrake project has perhaps the most convoluted
existence for a free software project. Over the years, the
project has undergone various name changes, mergers and
forks. However, it has spawned many distros and there are
several major ones that are still active and can trace their
lineage to Mandrake.
The distro has developed a bunch of custom tools –
Rosa Linux is
collectively known as drakxtools – to aid its users, who are The company also had to rename its product to
a Mageia fork
called Drakes or Draks. One of the most distinguishing Mandrakelinux, after losing a legal battle with the American that features
components created by the project is its Mandrake Control Hearst Corporation over the Mandrake name and changed its some dramatic
Center (MCC), which is now a centrepiece of all the name to Mandriva S.A. after acquiring the Brazilian company user interface
derivatives. The MCC provides a single interface to access Conectiva in 2005. The distro became Mandriva Linux, but in mods such as
many different configuration tools. Using the Control Center 2006 Mandriva laid off several employees, including this Simple
in text mode is very useful in case of display problems or co-founder Duval. Amidst all the booing, the company Welcome app
other serious issues, such as when the graphical server continued putting out releases and created a niche for itself in launcher.
refuses to start. It’s also interesting to note that all modules the BRIC region (Brazil, Russia, India and China) as well as
can be run as autonomous apps, without necessarily having France and Italy.
to go through the MCC. Despite all their efforts, the company struggled to keep its
balance sheet in the black. In 2010, Mandriva abandoned
On life support development of the community Linux distro to avoid
Mandrake Linux was first released in July 1998. It was based
on Red Hat Linux 5.1 and featured the inaugural KDE desktop
release. After the positive response, lead developer Gaël
“One of the most distinguishing
Duval, along with a bunch of others, created the company
MandrakeSoft and in 2001 the company decided to go public.
components created by the
It faced its first major cash issue in late 2002 and asked its project is its Control Center.”
users to bail it out by subscribing to a paid service offering
extra benefits, such as early access to releases and special bankruptcy. Immediately afterwards, former Mandriva
editions. That wasn’t enough and the company filed for employees announced Mageia, which has gone onto be one
bankruptcy protection in 2003. However, later that year of the most popular Mandrake-derivatives. Mandriva S.A.
MandrakeSoft announced its first quarterly profit and, in transferred development to the community-driven Open
March 2004, a French court approved its plan to emerge from Mandriva Association. The association’s second release called
bankruptcy and return to normal operations. OpenMandriva 2014.0 got a positive review from Duval.
Salix Mageia
BEST Mageia is one of the best-assembled Mageia boasts intuitive custom system and ships with three official
OF community distros and does a tools for managing various aspects of repos. The Core repo contains open
I
n 1992 Roland Dyroff, Burchard Steinbild, Hubert SUSE’s focus has always been on bringing open source to
Mantel and Thomas Fehr founded Software und System enterprise users. It introduced the SUSE Linux Enterprise
Entwicklung (Software and Systems Development). Server in 2001, and changed the company name to SUSE
The company started as a service provider but the Linux. After software and services company Novell acquired
founders decided to have a distro of their own to cater to SUSE Linux in January 2004, the SUSE Linux Professional
the enterprise user. The distro was named SUSE, based on product was released as a 100% open source project and the
the acronym of their company. The distro was a stock OpenSUSE Project was launched – much like Red Hat did
Slackware release translated in German and developed in with Fedora. The software was always open source and now
close collaboration with Slackware’s Patrick Volkerding. so was the process which enabled developers and users to
For building its very own distribution of Linux, SUSE used test and evolve it.
the now defunct Jurix distribution. Jurix was created by
Florian La Roche, who subsequently joined the SUSE team Enterprising
and began to develop YaST, which is the distro’s unique The initial stable release from the OpenSUSE Project was
installer and configuration tool. The first SUSE distro that SUSE Linux 10.0. It included both open source and
included YaST was released in May 1996 (Yast was rewritten proprietary applications, as well as retail boxed-set editions.
in 1999, and was included for the first time in SUSE Linux 6.3 This was also the first release which treated the Gnome
as an installer only). desktop environment on a par with SUSE’s default KDE
Over time, SUSE Linux has incorporated many aspects of desktop. As of version 10.2, the SUSE Linux distribution was
Red Hat Linux, such as its well-respected RPM Package officially rechristened as OpenSUSE.
The SUSE Manager. In 1996, the first distribution under the name SUSE In November 2006, Novell signed an agreement with
Studio web Linux was published as SUSE Linux 4.2. The confusing jump Microsoft covering improvement of SUSE’s inter-operability
service enables
forward in version numbers was an intentional reference and with Windows, cross-promotion and marketing of both
you to easily
homage to the answer to life, the universe and everything, as products, and patent cross-licensing. This agreement is
put together
a customised
featured in Douglas Adams’ The Hitchhiker’s Guide to the considered controversial by some of the FOSS community.
OpenSUSE- Galaxy. YaST’s first version number, 0.42, was inspired by the Novell was later acquired by The Attachmate Group in
based distro. same admiration for the author. 2011, which then divided Novell and SUSE into two separate
subsidiary companies. SUSE offers products and services
around SUSE Linux Enterprise – a commercial offering that is
based on OpenSUSE Linux.
SUSE develops multiple products for its enterprise
business line. These products target corporate environments
and have a longer lifecycle (seven years, extendable to 10),
a longer development cycle (two to three years), technical
support and certification by independent hardware and
software vendors. SUSE Linux Enterprise products are only
available for sale. There’s also the SUSE Linux Enterprise
Desktop (SLED) which is a desktop-oriented operating
system designed for corporate environments. In contrast,
OpenSUSE does not have separate distributions for servers,
desktops and tablets, instead using various installation
patterns for different types of installation.
*http://bit.ly/ChameleonSong
OpenSUSE
BEST OpenSUSE is one of the best RPM- can download the distro either as a The distro serves as the base for the
OF based distros. It comes in several smaller live installable image or a SUSE Linux Enterprise products –
S
lackware has the honour of being the oldest distro
that’s still actively maintained. It was created by
Patrick Volkerding and had its first beta release in
1993. The project aims to create the most Unix-like Linux
distribution. Slackware was originally derived from
Softlanding Linux System (SLS), which was the first distro
to provide TCP/IP and X Windows System in addition to
the Linux kernel and basic utilities. SLS, however, was very
buggy and the growing frustration of SLS users prompted
Volkerding to release an SLS-like distro in July 1993.
Back then, in addition to being hosted on an anonymous
FTP server at the Minnesota State University Moorhead, the
distro was offered as 24 3.5-inch floppy disks. By the time
version 2.1 was released in October 1994, the distro had
swelled to 73 disks and Version 3 was released on CD-ROM.
In addition
The USP of the distro is that it makes very few changes to 64-bit releases. Since Slackware 13, a 64-bit variant is also
to Slackware-
upstream packages. Unlike other distros that aim for a available and officially supported. In 2002, Stuart Winter stable, the
particular userbase or a wide variety of users, Slackware started the ARMedslack project, a port of Slackware for ARM. project also
doesn’t preclude user decisions and doesn’t anticipate use In 2009, Volkerding knighted ARMedslack as an official port provides a
cases. The user, therefore, has far greater control on the of Slackware. With the release of Slackware 14.0, the project testing-current
installed system with Slackware than most other distros. has been completely renamed to Slackware ARM. branch for
It might sound surprising, but Slackware is a popular base more bleeding-
Cut some slack for many distros. The derivatives include expansive desktop edge software.
Unlike other distros, Slackware doesn’t provide a graphical projects, live distros, security distros etc.
installation. It continues to use plain text files and only a small The Slackware project is also missing some of the
set of shell scripts for configuration and administration. The common developer-friendly tools. For example, there’s no
distro also doesn’t provide an advanced graphical package official bug tracking system. Also, there is no official
management tool, relying instead on command line tools mechanism to become a contributor for Slackware. The final
such as pkgtool, installpkg, upgradepkg, and removepkg.
However, these native tools can’t resolve dependency issues.
Slackware packages are just plain compressed TAR
“Unlike other distros, Slackware
archives. The package contains the files that form part of the
software being installed, as well as additional metadata files
doesn’t preclude user decisions
for the benefit of the Slackware package manager. As of and doesn’t anticipate use cases”
Slackware 12.2, slackpkg has become the official tool for
installing or upgrading packages automatically through a decision on what goes into the distribution is made by
network or over the internet , complementing the traditional Volkerding – Slackware’s ‘Benevolent Dictator For Life’.
package tools suite that only operates locally. Slackpkg also In another departure from the norm, Slackware doesn’t
doesn’t resolve dependencies between packages. follow a fixed release schedule. The objective is to release a
Traditionally, Slackware only offered a 32-bit release, and very stable system and so the project follows a release-when-
users had to rely on unofficial ports, such as slamd64 for ready philosophy, but still aims for one major release a year.
Salix OS
BEST Salix OS is one of the best Slackware- Salix offers three modes of The Full distro includes all the apps
OF based distros: it’s light, nimble and installation – Full, Basic and Core. you’d expect on a desktop distro, and
Puppy Linux
One of our all-time favourites, Puppy Linux had its initial
release in 2003 and the first stable one in 2005. The distro is
Tiny Core Linux is an ickle distro at 12MB. Ah, sweet. built from the ground up and its initial goal was to support
Mageia
1
older hardware that had been rendered useless due to lack
of support in other distros.
The real power of the distro lies in its plethora of custom
apps. There are custom apps to block website ads and add
internet telephony, a podcast grabber, a secure downloader,
an audio player, a DVD burning app and more. First-time
users might be intimidated by Puppy’s installer as it has no
automatic partitioner, and fires up Gparted for you to format
the disk. But each step in the installer is well-documented
within the installer itself.
Packages for Puppy Linux are called pets, and have a .pet The community supported distro has everything you want from
extension. You can install packages using its custom Puppy a modern Linux distribution – an active and vibrant user and
developer community, a well-defined support structure, support
Package Manager tool, and you can configure it to download
for multiple desktops and install mechanisms.
packages from other Puppy repos. The distro includes tools
which can be used to easily churn out variants. Puppy Linux
variants are called puplets. Popular puplets are WaryPuppy
for supporting older hardware, RacyPuppy for newer OpenSUSE
2
hardware, the Slackware-based SlackoPuppy, and
PrecisePuppy which is based on the Ubuntu LTS release.
SliTaz GNU/Linux
SliTaz stands for Simple Light Incredible Temporary
Autonomous Zone and had its first stable release in 2008.
The distro is built with home-brewed tools known as cookutils
and uses BusyBox for many of its core functions. The distro
includes a mixture of the LXDE and OpenBox window
manager and is designed to perform on hardware with only
192MB of RAM. The distro weighs under 30MB and uses a Coming in at second place, the OpenSUSE distribution loses out
mere 80MB of hard disk space. because of recent activities of its corporate parent. Also, the
distro still focuses on introducing changes that make it fit more
The distro also has a bunch of custom tools such as the
snugly on the corporate desktop, rather than home user.
Tazpkg package manager and SliTazPanel for administering
all aspects of the distro. SliTaz repos include over 3,000
packages for every popular open source app and it’s a
common option for powering low-powered machines. Korora
PCLinuxOS
PCLinuxOS began life as a repository of RPM packages for the
Mandrake distro in 2000 and became a distro in late 2003 as a
branch of Mandrake Linux 9.2.
Although it retains a similar look and feel to Mandriva Linux,
3
and its configuration tool and installer give away its Mandriva
lineage, PCLinuxOS has diverged significantly.
The distro has replaced Mandrake’s URPMI package
management system, opting instead for APT-RPM. This is
based on Debian’s APT but uses RPM packages, together This is your best bet if you want a RPM-based distribution that
with the Synaptic package manager. PCLinuxOS is a KDE works out of the box. However, Korora is still essentially a one-
man show and inherits some of the less flattering features of its
distro, but also has community spins around the LXDE and
parent distro, Fedora.
Mate desktops.
Low-resource distros
Do low-resource Linux desktops for the average How we tested...
user still exist? We test five less well known
We did not consider Lubuntu and other
distributions that are fast and not so furious to use. ‘light’ Ubuntu spin-offs, simply because
they are the ones that most Linux
novices who need a low-resource distro
C
omputer hardware has are useless for most people. Damn
Our made huge progress in the Small Linux (DSL), for example, is great
are more likely to know already. After a
selection last 20 years. So have Linux for software engineering, but how many
lot of investigation, we chose one distro
with a truly unique architecture (Puppy)
Absolute Linux desktops, but in a different mainstream things can it do? Can you and four that are lightweight derivatives
Crunchbang2 way. Modern computers – in whatever really use DSL to edit an Excel of more popular systems, namely
Elive
format, from smartphones to laptops – spreadsheet, browse YouTube clips, use Slackware, Arch Linux and Debian. We
Manjaro
are orders of magnitude more powerful Ajax-based cloud services such as then ran them live on a low-end laptop
Puppy
than their predecessors of the 90s. But Gmail, or easily upgrade software? and/or installed them in virtual
Linux desktops have not become tens This is what led us to this roundup. machines with different RAM sizes, but
never more than 2GB. In all cases, we
of times faster. So what options do you We did not want the smallest possible
tested the systems with ordinary day-
have if you want a faster Linux, Linux desktop, or the one that will boot
to-day desktop activities, from browsing
particularly on older hardware? with the least RAM. We looked, instead,
and using office suites to displaying
Many Linux developers produce for distros in which ordinary users, photographs. We also tried some of the
so-called ‘low-resource’ distros, which without advanced Linux skills, can work usual system administration tasks, from
require much less RAM and processor with office documents, check their installing software to adding users and
cycles than Ubuntu and similar state of email and use popular web services – changing the general system
the art products. Unfortunately, this too even on older computers – with the configuration.
often creates graphical desktops that least possible effort.
T
he main reasons why many The default dock in Elive is pretty
people interested in Linux never impressive; the tested version is still at
try a ‘low-resource’ distro are LibreOffice 3, but it’s accompanied by
probably lack of need, support and Clementine, Skype, Scribus, Chromium,
apps. For somebody who just got a Blender, Inkscape, RawTherapee, Gimp
high-end computer, it would be easy to and VLC. And that’s just what you find
not care. Newcomers to Linux also in plain view in the dock.
often stay clear of ‘niche’ distros Puppy is also impressive, but in a
because, understandably, they want to very different way. Some versions come
remain where there are more tutorials with SeaMonkey as browser, email The Elive system menu is simple, but between that and
and fellow users. We discuss that issue client and RSS reader. In Slacko Puppy the dock, there really is everything you need.
overleaf. Here, let’s test that ‘lack of we found Firefox and the Sylpheed
apps’ complaint. email client. specialised development applications
The bottom line is that, for the Besides that, the Slacko menu is (HtmlPage, Qt Designer and a hex Verdict
distros here, there is no ‘lack of apps’ built, it seems, in the good old Unix editor) and can get Libre Office 4.1.4.
and your real limit is going to be the tradition, with so many – often little- The Internet apps menu includes Absolute
+++++
hardware. No choice of software will let known – small tools that we lost count, Filezilla and a YouTube viewer. Crunchbang
you edit high-definition video, or often with a vintage look and interface, Crunchbang comes with the +++++
process spreadsheets with thousands each specialising in one activity. IceWeasel browser, which works fine, Elive
of rows, in (say) 128MB of RAM. Combining them, you can do pretty even if it is a little stuttery at times. The +++++
Manjaro
As far as traditional SOHO tasks go, much whatever you want, if you take Multimedia choices are limited to
+++++
you’ll find apps to do almost everything the time to learn. The default word volume control, VLC and Xfburn for Puppy
you want with any of these desktops, processor is AbiWord, but adding DVD mastering. Manjaro, which +++++
sometimes the same tools available on OpenOffice 3.1 is easy. contains Libre Office 4.1.5, is in a similar Elive has the
more famous Linux desktops. If an app Absolute, Crunchbang and Manjaro situation – Alsa mixer and little else. fullest set of
is missing, no problem – you should still are broadly in the middle ground Apart from this, it is the only distro here apps, but others
can pretty much
be able to install it from predefined between these two extremes, each in its that couldn’t play YouTube videos out of
do it all too.
archives with a few clicks or keystrokes. own way. In Absolute you’ll find several the box.
Installation
Is it easy to get started with these systems?
I
n general, the installation of these bootloader. If you didn’t know Linux accept the default settings and answers
five distros, or their usage as live existed in 1994, try Absolute to see to each question that you don’t
systems, should not present any what installing it looked like. Don’t worry, understand immediately.
particular problems, unless you put though – the look may be ugly, it’s all The most friendly installers (or boot
them on very new, more or less closed keyboard and no mouse, and it takes managers, for live versions) are the
hardware, or on complex combinations more time than you might like to read graphical ones of Manjaro and, above
of hard drives. through some panels, but there is little all, Elive. The former, called Thus, is
The installer of Absolute Linux, for real difficulty involved. The hardware maybe the one that looks most like
example, is text-only, and uses the LILO detection works fine and you can safely Ubuntu. It may also encrypt partitions. Verdict
The latter has a very polished language
Absolute
and keyboard selector, plus interesting
+++++
options (see ‘Choices’ on page 93). Crunchbang
The Slacko Puppy boot manager +++++
doesn’t put any special effort into eye Elive
candy, but works without problems. +++++
Manjaro
Besides, most of the actual system +++++
configuration is delegated, after login, Puppy
to a friendly set-up wizard. That is +++++
where you must set country encoding, Absolute’s
time, keyboard, network settings, installer is basic
graphics stuff and other parameters. but Elive’s is the
one that’ll make
And it even barks in approval when novices happy.
Absolute Linux’s installer makes you ask what year it is but isn’t hard to use. you’re done.
T
he interface of any computing device, good looks (whatever ‘good’ might mean for prefer the easy but infinite visual configuration
from smartphone to traditional desktop, each user). possibilities of Elive, others the rich but
is a balance of conflicting requirements: After testing, we were pretty happy with our relatively rigid structure of Absolute or Slacko.
minimal consumption of RAM and CPU cycles, choice of distros. The reason is that each of Others still will love the no-frills approach of
which in our case is a must, usability by non- them gives a different but equally valid answer Manjaro and Crunchbang. But there should be
experts, room for customisation, and finally to the requirements above. Some people will something for everybody.
Absolute +++++
Absolute uses the IceWm window manager to give you a fast and
discreet desktop. A right-click on the root window, which by default
would launch the tool to change wallpaper and screen resolution, can
be set to open the system menu.
The file manager is SpaceFM; not state of the art by any means, but
adequate for all basic tasks. Of all the distros in this roundup, Absolute is
perhaps the one that looks more like a basic Linux of 15 years ago. Just
for this reason, however, it may be perfect for many users, especially
when you consider that it’s just a first sight impression – you do get a
modern browser (Chrome) and office suite (Libre Office), and often
that’s all that counts, isn’t it?
Crunchbang +++++
The first time you start it, Crunchbang is all business and no frills. All
you see is a visually dull but well configured OpenBox window manager
with two workspaces, a system monitor and the list of shortcut keys.
However, changing the wallpaper – if a solid grey screen really bothers
you – is a quick and easy job.
One right-click on the root window opens a menu with apps for all
desktop tasks. That menu, plus the Terminator terminal emulator and
the Thunar file manager, let you work with the mouse or keyboard very
efficiently. Crunchbang is also the distro most interested, so to speak, in
working in the cloud with common tools; the system menu includes
entries to start Google Docs and install the Dropbox client.
Documentation
Is it easy to learn how these distros work? Verdict
Absolute
I
f you need Linux just to run a few have: a cheatsheet with all the main ‘Multimedia files’, ‘Wireless setup’, adding
+++++
apps on an older computer, the keyboard bindings. Most Debian software and Nvidia drivers. The Crunchbang
mere number of available pages of material will apply to Elive, too, so if Documentation menu links to the +++++
documentation may matter much less anything, there may actually be too manuals of the distro and its main Elive
than two other things. First, check if much documentation. packages. The same happens in Puppy. +++++
Manjaro
those apps, rather than the distro, have Manjaro and Absolute are the best Speaking of Puppy, note that many +++++
good documentation. Second, look for here. At first login, Manjaro welcomes of its online guides and tutorials may Puppy
distros that hold your hand well in the you with a window full of links to only be valid for a specific version (read +++++
first two to three hours of usage, when documentation, online support and ‘Choices’ opposite to understand why). All have OK
you really need to get familiar with descriptions of the available desktops. Therefore, before trying any Puppy, ask documentation.
them and their community. The ‘Getting Started’ icon in the at www.murga-linux.com/puppy what In Manjaro and
Absolute it’s
Crunchbang’s default wallpaper is Absolute desktop loads a 14-point, task- are the best and most up-to-date easier to reach.
what all distros for newcomers should oriented guide, with sections such as resources for that version.
Manjaro +++++
If distracted users confused Manjaro with Crunchbang, they would be
justified – both systems are Arch Linux spin-offs dressed in OpenBox.
The main difference, besides a smaller selection of apps, is in the default
browser. Manjaro uses Midori, which is enough to run Gmail and similar
web services based on Ajax, but it can’t play YouTube videos.
On the other hand, Manjaro includes tools that you may never have
heard of before, from the Parcellite clipboard manager to Avahi browsers
for SSH and VNC servers. Manjaro also makes it easier than
Crunchbang to fiddle with OpenBox, especially if you already know how
to handle it. Besides the Tint2 configurator, the system menu contains
all the possible tools to configure the workspaces and dynamic menus
of this powerful window manager.
Puppy +++++
Slacko 5.7, the member of the Puppy pack we’re looking at in this
context, is at the time of writing the “recommended first stop for all
newcomers” to the Puppy family. Its user interface is the result of a
careful mix of the JVM window manager, the ROX Filer and many big and
small apps, from household names such as Firefox to really obscure
utilities. The System sub-menu even has a floppy disk formatting utility,
together with the GParted partition manager.
We don’t understand the rationale behind separate sub-menus for
‘Document’, ‘Business’ and ‘Personal’ applications, but there they are.
This said, JVM and ROX work well together, and ROX is one of those
apps that every Linux user should try at least once – fast, simple and
cute. Lean and mean doesn’t mean ugly or lacking in features.
Choices
What if the version tested here is almost what you want? Verdict
Absolute
A
re these distros a ‘take it or also has an Experimental Mobile mode and more), the netbook spin for its
+++++
leave it’ deal? It depends on for touchscreen phones, tablets and Atom-optimised kernel or ManjaroISO, Crunchbang
what you’d like to change. If similar devices. which facilitates the creation of clones +++++
all you want is alternative window Manjaro has three official variants, with all or only the packages you want. Elive
managers, no problem. Absolute is all with Tulliana and KFaenza icons: two We’ve left the most interesting part +++++
Manjaro
declared ‘package compatible’ with for Xfce (full or stripped-down) and one for last: Puppy. The Woof Puppy Builder +++++
Slackware releases with the same with KDE 4.12 (with KDE Connect (http://bkhome.org/woof) can build Puppy
number, while Crunchbang and http://community.kde.org/KDE a Puppy from the binary packages of +++++
Manjaro have access to the Arch Connect), deliberately configured to any other distro. This has already For variants,
repositories; you should find enough “give all Windows users a new home”. produced a Barebone Puppy, which is go to Manjaro.
packaged, easily installable alternatives Want more? Try the Manjaro said to run even on 200MHz CPUs with To build your
own, try Woof
to make you happy. Ditto for Elive, community editions for other desktop 64MB RAM, plus too many, wildly Puppy Builder.
which may reuse stuff from Debian and environments (Mate, Cinnamon, LXDE different other clones to list here.
I
f you have basic Linux admin skills are root – it’s your computer, so you with software installed or updated after
and want a Linux box that different should always be able to do whatever first boot, all go into one special file with
users can share for basic desktop you want to it. Browsers and other apps a .3fs extension, on the host system or
work, don’t install Puppy. This is not a that must expose themselves online in external storage. Your main Puppy
critique, just a service announcement. run as the user spot, with a non- admin skill may be as simple as ‘always
Puppy is very well done, but mainly writeable home directory and limited back up your .3fs files’!
conceived for live usage off a CD or privileges. When spot is not enough, Next to Puppy, the other four distros
USB key, by single users. Some Puppy you can still become fido, a normal are much more like ‘ordinary’ Linux. You
configuration tools (such as the Menu account like you find in any other distro. may need the command line for certain
Manager or the Application Chooser) Besides, in order to boot and run as tasks in Absolute and Crunchbang,
are easy and good looking. Others, like fast as possible, Puppy always tries to unless you install extra packages.
the Firewall configurator, are effective stay entirely in memory. Kernel, libraries, Absolute, for example, has a simple
but archaic. But the real issue is that binaries, configuration files –everything graphical front-end for adding users,
Puppy does not really want multiple, works that way, without even looking for but to remove any you should use the
normal user accounts. By default, you a swap partition. End user files, together normal userdel command.
Elive has a nice mix of Internet
Configurator, Model Dialer and 3G
Mobile Phone interface but not much in
the ‘GUI for system administration’ Verdict
department. The risk is that you’ll
spend so much time experimenting Absolute
+++++
with the addictive Enlightenment Crunchbang
control panel that you neglect anything +++++
else. If you must work at the console, Elive
Elive makes it easier with the powerful +++++
Manjaro
Terminology emulator.
+++++
Crunchbang and Manjaro use the Puppy
Turbulence configuration interface, at +++++
least in the OpenBox versions. Manjaro GUI-based
also includes MHWD to install non-free config tools (but
graphics drivers. Apart from that, they maybe not ones
you expect) are
are similar to their ancestor, Arch Linux.
available in all.
Puppy’s .3fs saver, Manjaro’s Pacman configurator, and Absolute Control Panel.
N
o matter how good it might ‘Multimedia’ packages, that is codecs
look, a distro is worthless if and similar libraries not included by
there is no way to install new default. Another tool will list the
programs, or update existing ones, installed packages and offer to remove Verdict
without being a real programmer them, or install new ones previously
Absolute
and/or fighting dependency hell. downloaded in TXZ format.
+++++
Elive is the easiest to deal with – it Manjaro can find and download fully Crunchbang
basically uses the same mechanisms, tested packages in online repositories +++++
online repositories and graphical front- such as AUR (Arch1 User Repository), Elive
ends available in Debian and its with interfaces like Pamac, which can +++++
Manjaro
derivatives. Crunchbang has menu compile and install from source +++++
entries such as ‘Install LibreOffice’. archives with a double-click too. Puppy
Clicking this opens a terminal in which Puppy works differently, on-screen Elive uses the Synaptic interface, as +++++
a script asks you to confirm, then and behind the scenes. Each version on Debian, Ubuntu and other distros. Elive offers
proceeds to download and compile the gives access to a different combination the easiest app
sources, and install the result. of online repositories. Also, the first time offers to install it. In all cases, new management; it
uses standard
In Absolute, crude dialogs ask, for you launch a program, Puppy checks if software is installed in the .3fs file Debian tools.
example, if you want to download the a newer version is available online and described in the section above.
The verdict
T
he goal of this roundup was to package, engineering-wise, that we
help you find a Linux distro that were really tempted to declare it the
runs as fast as possible even on winner. We can’t, though, for one
old computers, while still being usable reason: it is not multi-user, at least not
by people with little Linux experience. in a way that would easily allow Linux
This distro should support both office novices to share one computer.
productivity jobs (text, spreadsheets Absolute Linux could be perfect for
and presentations) and popular web people who need only an office suite Elive makes it easy to love and use Linux, even if all you
services, from home banking to online and a modern browser, especially if they have is a five-year-old (or even older) computer.
video. Ideally, it should do so through prefer vintage interfaces. The
the same apps used for such activities bare default styling of Manjaro and Enlightenment configuration is a very
on mainstream Linux desktops, if not Crunchbang may be even more good balance between performance,
on Windows, or using alternatives with intimidating than the ancient-looking ease of use and visual appeal. On top of
comparable features and user icons and menus of Puppy and that, software management is done
friendliness. The system should satisfy Absolute. This issue, however, can be with the same GUI tools already familiar
these requirements right after install, or easily fixed, and both systems make to many Linux users. So let’s declare
by installing packages from the internet software installation and upgrades Elive the winner, even if it is the biggest
with more or less the same skills easier than the other two. download here (about 2GB).
necessary to perform the same tasks Online galleries of Enlightenment
on more popular Linux systems. Oh, screenshots show how easy it is to
and it should also look good, if possible.
Puppy can do more or less all those
misuse its flexibility, making it so
baroque that getting things done
“Elive offers a balance
things, is fast and really small, too (the
version tested is a 168MB download). To
becomes harder. That said, Elive is fast
even with its default animations, and
of performance, ease of
tell the truth, Puppy is also such a great turning them off is easy. Elive’s use and visual appeal”
Also consider...
This roundup isn’t just for those who need to world of its own, the other distros here have change distro. Install and tweak OpenBox,
keep old hardware up and running. Even if one thing in common: most of their speed Enlightenment or IceWM instead. If that isn’t
you’re satisfied with the performance of your gains over the vanilla versions of both their enough, turn off file indexers and similar
current Linux desktop, why not try alternatives ancestors (Slackware, Arch Linux and Debian) resource-hungry daemons. If that still isn’t
that may be even faster? and other common distros come from not enough, try what is advertised as a ‘low-
You should try Puppy Linux at least once, to using any form of Gnome or KDE. resource’ derivative of the distro that you are
get a taste of what Linux desktop development So the lesson to take home is this: if your already using. Making Linux run faster could
may have been. However, while Puppy is in a computer is slower than you can tolerate, don’t be much easier than you may think!
TOP 100
LINUX TOOLS
Take a stroll through the open
source garden as we picks
the best apps, tools and utilities
available to all Linux kind.
With
70
Raspberry Pi
top apps!
W
e all have our favourite proved themselves to be invaluable to Some ship with well-designed graphical
open source apps that work home and business users in more than interfaces and others show their more
for us better than any one sense of the word. According to rough versatile sides when operated from the
available alternative. estimates on www.openhub.net, some command-line.
But take a moment and step back from popular apps such as LibreOffice, Firefox In this feature, we traverse this diverse
the Emacs vs vim type battles raging on and Apache would take several hundred and vast collection of open source gems
in the Linux-verse and marvel at the person-years to develop and cost millions on offer and pick the ones that are at the
sheer number of apps at our disposal. of pounds. Yet they are all available to you top of their game. In this list of the 100
Your distros’ software repositories give for no-cost. best apps we’ve covered a wide range of
you access to thousands of categories. Whether you are a
apps, and you can install business owner, an
everything from fully featured “Many of these apps have educational institution, a
app suites to nifty command- developer, a home user, or a
line utilities literally with the proved their mettle and surpass gamer, we’ve got something
touch of a button.
There are open source apps
their proprietary counterparts.” for everyone. While you’ll be
familiar with some of the
and tools for all kinds of most popular tools in this list,
applications today. There’s hardly any use Open source apps come in many rest assured there are quite a few that
case that isn’t catered for by a community shapes and sizes and you can grade might have missed your attention. If
contributed app. Many of these apps have them based on their usability. There you’ve been unable to escape the clutches
proved their mettle and offer features and are feature-rich apps, task-oriented app of commercial software, we’re sure you’ll
performance benefits that surpass their suites, well put-together tools, and find quite a few tools on this list that are
proprietary counterparts. They have also newfangled novelty apps and games. suitable replacements.
KeepassX
Wine
T rying to remember different
passwords for the various services is a
D espite the increasing
number of cross-platform
apps that work on Linux, there are some
challenge for most humans (that don’t
count cards in Las Vegas for fun). You can
Gufw has profiles and preconfigured
that still only support Windows. This defer this task to KeePassX which stores
rules to aid inexperienced users.
includes big third-party proprietary apps, password in an encrypted database. It can
such as Adobe Photoshop or just small fill in the password automatically and also
niche home-grown tools that you can’t do includes a random password generator. VirtualBox
www.keepassx.org hen Wine doesn’t cut it
without. For such situations, you can use
Wine, which generally run these Windows- W you can use VirtualBox to
run an entire Windows installation inside a
only apps and games with ease. The BleachBit
project supports over 20,000 apps. Some virtual machine. The software is also
work flawlessly out-of-the-box while
others require minor configuration tweaks.
A distro accumulates a lot of digital
gunk over time. BleachBit helps you
spring clean it and protect your privacy. It
useful for installing experimental apps
that you don’t want to deploy on a real
www.winehq.org computer, and for testing other OSes
also removes temporary and other
without exposing it to real hardware.
unnecessary files, and has tools to
www.virtualbox.org
securely delete files or wipe them.
Remmina http://bleachbit.sourceforge.net
ith Remmina you can access a
W remote computer from the Clonezilla
comforts of your desktop. It supports the OpenSSH
widest range of protocols and will connect T his is a cloning solution that’s
distributed as a live CD and is popular
to all kinds of remote desktop servers.
The app is easy to use, and has enough
W hen you need to interface
with a remote computer,
you cannot do without OpenSSH. It’s a
for doing bare metal backup and
restoration of individual PCs. It can also
features that make family of tools that provides secure deploy an image to multiple computers in
it a viable option tunnelling capabilities by encrypting all a lab. Clonezilla can work with a large
for occasional use. traffic and includes several authentication number of popular disks, partitions and
http://remmina. methods, and supports all SSH protocols. filesystem types.
sourceforge.net www.openssh.org www.clonezilla.org
gFTP
F or those who use FTP a lot, there’s
FileZilla. The client supports FTP,
SFTP and FTPS protocols and has just
he gFTP client is a feature-rich client
T that’ll get the job done, if you need to
download files via FTP occasionally. It has
about any configuration option you can
imagine. It also has a tabbed interface so
you can browse more than one server and
a simple two-pane interface that shows even transfer files simultaneously
the content of the local and remote between multiple servers.
filesystem. Using gFTP you can also https://filezilla-project.org
transfer files between two remote servers.
http://gftp.seul.org Jitsi
Tox
J itsi is the best VoIP app, as
long as you’re not adverse to
Deluge
Java apps. It supports IM and make one-
B itTorrent is popular for downloading
Linux distros and there are numerous
P rivacy conscious users should try the
new decentralised IM and VoIP client
called Tox. This relies on a distributed
to-one audio and video calls, as well as
audio conference calls. It supports many
download clients. One of the best is
Deluge which has multiple front-ends,
of the widely used IM and telephony
network, which uses P2P connections, the including a graphical and a web-interface.
protocols, including SIP, XMPP, AIM, ICQ,
same technology used by BitTorrent to It has features that enable advanced users
MSN, etc. Jitsi has all the features you’d
provide a direct connection, between to tweak it to their liking and also has a
expect from a softphone, and more, such
users for chats and, unlike other Skype nice library of plugins.
as encrypt text chats with OTR and voice
alternatives, www.deluge-torrent.org
and video by establishing a ZRTP session.
Tox uses no
https://jitsi.org
centralised
servers or Pidgin
Aria2 idgin is a wonderful app
supernodes,
hat makes Aria2 a unique utility is P for instant messaging over
which could be
compromised. W that it can download the same file
at the same time using different protocols.
many network protocols. You can sign in
with multiple accounts in the single client
All chats are
also encrypted The lightweight CLI app can download via and chat with many friends in different
using the peer- HTTP, FTP, BitTorrent and Metalink and networks. You can use it to connect to
audited NaCl can also open multiple connections to AIM, MSN, Google Talk, Yahoo, Jabber, IRC
crypto library. download the file faster. and more chat networks all at once.
https://tox.im http://aria2.sourceforge.net www.pidgin.im
Games
OpenLDAP
Xournal
T his app is very handy for when you
need to scribble bits of information
O penLDAP is great for
when you want to run a
directory server. It implements the LDAP
down for later. As well as typing out notes, protocol and has all the expected features,
you can use it with either a mouse or a including logging, replication, access
stylus. It can also be used to add control, user and group management etc.
annotations to PDF files. It also integrates with Active Directory.
http://xournal.sourceforge.net www.openldap.org
Power tools and programs for power users. applications and video games. The app
provides a wide range of features that can
be used to create 3D animation films. It’s
jEdit Meld a one-stop 3D package and includes a
graphical diff tool, Meld enables
T his is a text editor for programmers
that supports auto indent, and syntax A you to compare two or three files as
well as whole directories. It includes
gaming engine, a video sequence editor,
production-ready camera and object
tracking, a large library of extensions, and
highlighting for more than 140 different
programming languages. The app enables features, such as syntax highlighting and an advanced physics engine. It can render
you to define complex macros and offers direct file editing, and using the tool you fluid dynamics and simulate the
a powerful and user-friendly keyboard can easily isolate and merge the movement of elastic objects and clothes.
mapping system. It’s highly configurable differences. Meld can also be used to www.blender.org
and customisable, and you can extend its browse various popular version control
functionality by adding plugins. systems such as CVS and Subversion.
www.jedit.org www.meldmerge.org Geany
Y ou don’t need a full-blown IDE if you
only program occasionally, which
Eclipse makes Geany a good choice. It’s a cross
here’s no beating Eclipse, between a plain text editor and an IDE
T the most feature-rich IDE.
Although Java is its speciality, Eclipse
with support for the popular languages
and nifty features like a compile/run
supports a range of languages via plugins. button, a listing of functions defined in the
In fact, its plugin marketplace is an currently opened file, and much more.
indispensable resource. Eclipse does code www.geany.org
refactoring and you can use it to extract KompoZer
the selection as a local variable or method.
Since it can target multi-person installs, N ew and experienced HTML
programmers will save a lot of
APTonCD
it handles version control very maturely
www.eclipse.org
amount of time and effort with the
KompoZer editor. It has an intuitive
S uddenly realise that you need to
move your Ubuntu installation or
need to give a friend a copy of your setup?
interface and includes a colour picker, an
With APTonCD Ubuntu users can back up
FTP site manager, CSS editor,
all of their installed packages to an ISO
BlueFish customisable toolbars, forms, spell
image, which can then be added as a
o you develop for the web? Bluefish
D is a multi-language editor that’s
designed for web developers. It supports
checker, markup cleaner and can also
validate code using W3C’s HTML validator.
software source on another installation.
You can use this source to restore the
www.kompozer.net
packages on to the system or keep
many programming and markup
everything in the APT cache.
languages and focuses on dynamic and
interactive websites. It supports code Gimp aptoncd.sourceforge.net
block folding, unlimited undo/redo,
automatic tag closing, and syntax D espite its name, Gimp is
a powerful, comprehensive
image manipulation program. It offers a
highlighting. Another useful feature is the
snippets bar from where you can add the wide range of tools for professional-quality
most common snippets of code for a photo retouching and image manipulation
variety of languages. Bluefish also has capabilities for free. It also offers a huge
support for popular open source web list of features and supports all the
apps such as MediaWiki and Wordpress. common graphics file formats.
http://bluefish.openoffice.nl www.gimp.org
Take charge of your distro with these power apps. your system. It can monitor and report on
the states of various components. The
tool is very flexible and highly configurable
and can also display information from
Redo Backup Qemu apps, such as weather updates.
e’ve mentioned the Clonezilla
W cloning solution earlier in the
feature, but if all you need is a tool to swap
I t’s is a feature-rich multi-purpose
processor emulator and virtualiser. You
can use it to create virtual machines and
http://conky.sourceforge.net
out an old disk for a new one, then you use even emulate various hardware Turnkey Linux
Redo Backup and Recovery. The tool is architectures. If you have the right
designed for inexperienced users and has
the simplest of interfaces.
hardware on tap (a processor with
hardware virtualisation extensions), you
T he Turnkey project produces
appliances which you can use to
deploy a new server in a jiffy. A Turnkey
www.redobackup.org can use Qemu with KVM in order to run appliance is a self-contained system that
virtual machines at near-native speed. packs in a fully functional web app that
www.qemu.org runs on top of Just enough Operating
XAMPP System (JeOS) components required to
Déjà Dup
M that creates bootable backup and
restoration disks customised for the
W
e’ve covered a few lightweight the requisite quota of magic keystrokes and precisely, be your own file manager. With some
Linux distros (see page 84), break out of the clicking-and-dragging mindset, basic shell-fu, you can do all manner of balletic
but the plethora of pint-sized you’ll be surprised how much more efficient moving and systematic renaming, and with tab-
applications out there deserves attention, you can be. completion you can obviate the problem of
too. For the vast majority of all your other Furthermore, in so doing you’ll look much typing long filenames.
Linuxing, there are some small yet perfectly cooler. If you still don’t want to go down that If you do crave a purpose-built file manager,
formed programs that do everything you road, there are plenty of slimline graphical but are happy with a terminal-based one, then
need, and do so without pulling in a applications worth considering. your first stop should be Midnight Commander
truckload of dependencies and eating all – sorry, GNU Midnight Commander. This is an
your memory. File managers Orthodox File Manager (OFM) offering a dual
If you’re really serious about resource usage, Files are important, so a functional file manager pane view with a command terminal in the style
you should consider using console applications. is vital. Our first suggestion, then, is somewhat of the classic Norton Commander. It’s pretty
This can be daunting at first, but once you learn controversial – don’t bother with one. Or, more intuitive: [Tab] moves between panes, and the
Terminator running shellpic, links and mc. You could have done much more The Dillo browser does a great job at rendering http://
governating this way, Arnold. dillo.org; YMMV works for other sites.
Ncmpcpp and Conky running on Fluxbox. Sleek. SpaceFM compiled for GTK2+ with three tabs and a 15MB memory footprint.
In-depth
Terminal basics .....................................................................................................................104
Apt-get in action .................................................................................................................106
Disk managment .............................................................................................................108
Archiving 110
...................................................................................................................................................
Terminal:
Getting started
There’s no need to be afraid of the command line – we’re here to help you with
your first steps into the world of text commands.
I
t won’t be long after starting to use Linux that you ask a It is fast When you know what you are doing, the shell is
question and the answer begins with, “Open a terminal much faster for many tasks.
and...” At this point, you may be thrown into an alien It is repeatable Running the same task again is almost
environment with typed commands instead of cheery-looking instant – no need to retrace all your steps.
icons. But the terminal is not alien, it’s just different. You are There is more feedback Error messages from the program
used to a GUI now, but you had to learn that, and the same are displayed in the terminal.
applies to the command line. This raises an obvious question: Help is available Most commands provide a summary of
“I already know how to use a windowed desktop, why must I their options, while man pages go into more detail.
learn something different?” You don’t have to use the You can’t argue with the plus points, but what about the
command line, almost anything you need can be done in the cons? Well, apart from not giving us pretty screenshots to
GUI, but the terminal has some advantages. brighten up the pages, the main disadvantage of the terminal
It is consistent The commands are generally the same on is that you need to have an idea of the command you want to
each distribution while desktops vary. run, whereas you can browse the menus of a desktop system
to find what you’re after.
In this tutorial, we will look at the layout of the filesystem
on Linux, and the various commands that you can use to
What ls tells us about files manipulate it. On the following pages we will cover several
other aspects of administering and using a Linux system
from the command line.
Moving around
Now that we know where everything is, let’s take a look at the
common commands used to navigate the filesystem. Before
going anywhere, it helps to know where we are, which is what
pwd does. Many Unix commands are short, often two to
three characters; in this case, pwd is print working directory –
it tells you where you are. Many distros set up the terminal
prompt to display the current directory, so you may not need
this command often. Moving around is done with the cd
(change directory) command. Run it with no arguments to the screenshot of the output from ls -l. These are normally in Here is the
return to your home directory. Otherwise it takes one the form rwxrwxrwx and shown by ls, or the numeric GUI way of
argument, the directory to change to. equivalents. The three letters stand for read, write and changing file
Directory paths can be either relative or absolute. An execute, and are shown three times for the file’s owner, the permissions. You
absolute path starts with / so cd /usr/local goes to the group it belongs to, and other users. For example, rw-r--r-- is would need to
same place wherever you are starting from. A relative path a common set of permissions for files; it means the owner of do this for each
file you wanted
starts at the current directory, so cd Documents goes to the the file can read from or write to it, all other users can only
to change, and
Documents sub-directory of wherever you are, and gives an read it. Program files usually appear as rwxr-xr-x, the same
click a separate
error if it is not there. That sounds less than useful if you can permissions as before but also all users can execute the file. If box for each
only descend into sub-directories, but there are a couple of a program does not have execute permissions, you cannot permission.
special directory names you can use. To go up a directory use run it. This is sometimes the case with system programs
cd .. – a single dot is the current directory. There is also a owned by the root user and only executable by root.
shortcut for your home directory: ~. Let’s say you have When applied to directories, the meanings are slightly
directories called Photos and Music in your home directory different. Read means the same, but write refers to the ability
and you are currently in Photos, either of these commands to write into the directory, such as creating files. It also means
will move into Music: that you can delete a file in a directory you have write
cd ../Music permissions for, even if you don’t have write permissions on
cd ~/Music the file – it is the directory you are modifying. You can’t
You can tell where you are with pwd, but how do you know execute a directory, so that permission flag is re-purposed to
what is in the current directory? With the ls command. Used allow you to access the contents of the directory, which is
on its own, it gives a list of files and directories in the current slightly different from read, which only allows you to list the
directory. Add a path and it lists the contents of that directory. contents (that is, read the directory).
If you want to know more about the files, use the -l (--long) File permissions are displayed by using the -l option with
option, which tells you the size and date of the file, along with ls and modified with chmod, which can be used in a number
information about ownership and permissions, which we will of different ways, best shown by example:
look at later. chmod u+w somefile
chmod o-r somefile
With your permission chmod a+x somefile
Every file object (that is files, directories and device nodes in / chmod u=rw somefile
dev) has a set of permissions associated with it, as shown in chmod u=rwx,go=rx somefile
chmod 755 somefile
The string following chmod has three parts: the targets,
the operation and the permissions. So the first example adds
write permission for the user. The next one removes read
permission for other users, while the third adds execute
permission for all users. + and - add and remove permissions
to whatever was already set, while = sets the given
permissions and removes the others, so the next example
sets read and write for the file’s owner and removes execute if
it was previously set. The next command shows how we can
combine several settings into one, setting read, write and
execute for the owner, and read and execute for the group
and others. The final command does exactly the same, but
using the numerical settings. Each permission has a number:
4 is read, 2 is write, and 1 is execute. Add them together for
If you need help with a command, ask the command for each of the user types and you have a three-digit number that
it. Most commands give a brief summary of their options sets the permissions exactly (there is no equivalent to + or -
when run with --help. with this method).
Terminal: Apt-
New to Linux? Then allow us to guide you through your first steps with
apt-get, the powerful command line tool.
O
ne of the biggest changes that catches Windows in the package and ending up with multiple copies of the
users moving to Linux is the way that software is same library on your computer (which is what Windows
installed. Instead of downloading an executable file does), a package simply lists its dependencies so that your
from some website or other, running it and hoping it doesn’t package manager can check whether they are already
clobber your existing library files (DLLs) or install some installed, and grab them from the repo if not.
dubious adware or malware, Linux distributions maintain In addition to the default repositories provided by the
repositories of software, which are all packaged up for that distro, there are several third-party ones that can be added to
distro and tested for compatibility with the rest of the distro. your package manager. These are not guaranteed to be
In this tutorial, we will look at how this is done by distros tested to the same standards as the official repos, but many
that use the Advanced Packaging Tool (apt) software of them are very good, and if you stick to the popularly
management system, as developed by Debian and used by recommended repos for your distro, you won’t go far wrong.
distros from Ubuntu to Raspbian on the Raspberry Pi. Ubuntu has also introduced the concept of the PPA, or
Personal Package Archive, which are small repositories for
Repositories individual projects. These may each be added individually to
A repository is a collection of software packages for a distro. your package manager, but be careful about adding any
Each major release of a distro will have its own repositories, untrusted sources.
and the packages will have been built for and tested with that
release, but a repository is more than a collection of files. Package management
Each repo (as they are usually called) is indexed, making it We have used the term ‘package manager’ a few times now
easy to find what you want. It can also be quickly checked for but what is it? Basically, this is a program that enables you to
updates for your package manager without any need to visit install, update and remove software, including taking care of
websites to check for updates, or the need for software to dependencies. It also enables you to search for programs of
‘phone home’ to check. interest, as well as performing other functions. All distros will
More importantly, each package in a repo is signed with have command line package management tools. You can
the repository’s GPG (encryption) key, which is checked when access them either by using your system’s search and
installing packages. This means you can trust the software looking for terminal or using [Ctrl]+[Alt]+[T] in desktops
installed from there to be what it says it is, and not some such as Unity, Gnome or Xfce, even if they also provide a
infected trojan that’s been uploaded maliciously. fancy graphical front end. The main commands are:
A repository also makes dependency handling simple. A apt-get Installs, upgrades and uninstalls packages.
dependency is a program that the program you want to install apt-cache This works with the repository index files, such as
needs to run, such as a library. Instead of bundling everything searching for packages.
Package management
add-apt-repository Adds extra repositories to the system. apt-cache search -n gimp | less
dpkg A lower level package manipulation command. The less command is a pager – it lets you read text page
These commands generally require root (superuser) by page and scroll through it. It can be used with any program
access, so should be run at the root user or with sudo – we that generates lots of terminal output to make it easier to
will stick with the sudo approach here. We’ve already read (see the ‘Package management’ walkthrough opposite
mentioned that repos are indexed, so the first thing to do is for more details). Once you have found the package you want,
update your index files to match the current contents of the installation is as simple as:
repositories with: sudo apt-get install gimp
sudo apt-get update You can install multiple programs by giving them all to apt-
Then you probably want to make sure that your system is get at once:
up to date: sudo apt-get install program1 program2...
sudo apt-get upgrade Not every program you try will be what you want, so you
This will list the packages it wants to install, tell you how can tidy up your hard drive by uninstalling it with:
much space it needs for the download, and then get on with it sudo apt-get remove program1
when you tell it to. When you want to install some new Or you can use:
software, unless you have been told the exact name to install, sudo apt-get purge program1
you may want to search for it first, like this: Both commands remove the program, but remove leaves
apt-cache search gimp its configuration files in place while purge deletes those, too.
This will spit out a long list of packages, because it There are a number of extra options you can use with apt-
searches both name and description, and lists anything get, the man page lists them all (type man apt-get in the
mentioning gimp, and there are a lot of them. To search only terminal), but one of the most useful is --dry-run. This has
the names, use the -n or --names-only option: apt-get show you what it would do without actually doing it, a
apt-cache search -n gimp useful chance to check that you are giving the right
This often gives a more manageable output, but still a lot command. Remember, computers do what you tell them to,
in this case, perhaps too much to fit in your terminal window. not what you want them to do! Finally, you don’t normally
The solution to this is to pipe the output from this command need to use dpkg, but it is useful for listing everything you
to the program less: have installed with dpkg -L.
Terminal: Disk
management
We continue our tutorials about using the terminal by explaining how to
manage your disks, partitions and filesystems.
W
e store data in a variety of ways. On our hard
disks, on optical discs (CDs and DVDs) and on
removable devices such as USB sticks and
external hard drives. In Windows, each would be given a drive
letter, starting with C (A and B were reserved for floppy drives.
You may see words such as partition and filesystem bandied
about, so let’s clarify them before we go any further. A disk is
divided into partitions, separate physical areas each used to
store data. Hard disks always have partitions, even when it
appears you are using the whole disk, as in a Windows C
drive, but there is a distinction. Removable devices such as
USB sticks may or may not have partitions – most do. The There are graphical tools for managing partitions and
only types of media that are never partitioned are floppy and filesystems, the most popular of which is GParted.
optical discs.
Each partition contains one filesystem. A filesystem is a use). There are other native filesystems such as reiserfs,
means of storing files, directories and their associated data – BTRFS and XFS. Why do we have these variants? Because
it organises the ones and zeros stored in the device’s memory not every system has the same needs; a mail server needs to
into useful objects. It is important to understand the store many thousands of small files, a database server works
differences between these terms before we continue, even with a smaller number of much larger files, and requires
though they are often used interchangeably. access to random points in those files. A laptop’s filesystem
needs to be resilient to unplanned shutdowns, such as when
Types of filesystem a battery fails. So we end up with different filesystems for
There are several different filesystems supported on Linux. A different purposes, although for general use ext4 does a fine
native filesystem is one that is designed for use with Linux or job. In fact, the enhancements to ext4 over ext3 mean it
other Unix-like systems. The most commonplace of these is works well in a wider variety of situations and is a sensible
ext4 (along with its predecessors ext3 and ext2 that are still in choice for a standard desktop or laptop system.
1 sudo gdisk /dev/sda 2 Create some partitions 3 Show the partition layout
You need to use fdisk for hard drives Press [n] to create a partition – you normally Press [p] to list the current partition layout,
partitioned with the old MBR system (gdisk can press [Enter] to accept the defaults for either the existing layout from a freshly loaded
will warn you if this is needed). You must give partition number and start point. The default disk or the layout you have created in fdisk/
the name of the drive, then press [m] in fdisk end point is the end of the available space – if gdisk. Make sure everything is as you want
or [?] in gdisk for a list of all the main you want to use a specific size, enter + before you use [w] to commit to the disk, as
commands. Any changes you make here stay followed by the size you want, for example there is no going back from [w]. Until then, you
in memory and are only written to the disk +50G. For anything but a Linux partition, you can make further changes or press [q] to
when you press [w]. should give its type; entering L lists them. abort without writing anything to disk.
Non-native filesystems are those developed for use with 2. Mount point Where the filesystem is to be mounted – it
other platforms, but supported in Linux. The most notable of must exist.
these is FAT, the default Windows filesystem for many years 3. Filesystem type It is possible to use auto here and let the
and still the standard choice for USB sticks, camera memory kernel figure it out for you, but with a fixed disk it makes
cards and other removable media. Also supported to a sense to be specific.
certain extent are the newer exFAT and NTFS filesystems 4. Mount options The keyword defaults means use
from Microsoft and Apple’s HFS and HFS+ filesystems. The whatever is standard for that filesystem. Specific settings can
collection of supported filesystems is rounded out by the likes be given here, separated by commas.
of ISO9660 and UDF, used by CD and DVD media. 5. Dump Used for a particular type of backup, normally left at
Most of the time, you don’t need to worry about the type zero.
of filesystem used on a media device, just plug it in and the 6. This is used by fsck to set the order in which filesystems
Linux kernel recognises the filesystem in use. are checked when booting. Set to 1 for the root partition and
either 2 or 0 for others – 0 means do not check.
Mounting a filesystem Mounting manually is done with the mount command:
Making the contents of a filesystem available to the OS and sudo mount /dev/sda4 /mnt/backup -t ext4
user is called mounting. In Linux, each filesystem is mounted The first two options are the device and mount point, -t
at a particular point within the filesystem hierarchy, known as specifies the filesystem type; if you omit this, auto is used.
the mount point. The root filesystem, the one containing the You can also use -o to add other options, such as:
core OS components, is mounted at /, the root of the sudo mount /dev/sda4 /mnt/backup -t ext4 -o noatime
filesystem tree. Many distros use a separate partition and The noatime option is often used in fstab to improve
filesystem for the user’s home directories; it separates the OS performance; it reduces the number of writes to the disk by
from the user’s files so you can update, re-install or switch the only recording when files are modified, not simply read. If a
OS without affecting your personal files. Users’ home device is listed in fstab, you need only give either the device
directories reside at /home/username, so a separate home or mount point, and mount will take the rest from fstab:
filesystem would be mounted at /home, the mount point for sudo mount /dev/sda3
the home filesystem. This directory must exist on the root or
filesystem but is usually empty – as soon as the home sudo mount /mnt/music
filesystem is mounted, its contents appear at /home. We have used sudo in all of these examples because
Anything that was there before is no longer visible, but is still mounting is generally only permitted by the root user. This
there and will reappear when home is unmounted. behaviour can be changed for mounts listed in fstab by
There are three main ways to mount a filesystem: at boot, adding user or users to the options:
manually or automatically. The system filesystems, such as / /dev/sda3 /mnt/music ext4 users,noatime 0 0
and /home, are mounted automatically at boot, using Now any user can mount this with:
information stored in the filesystem table /etc/fstab – mount /mnt/music
remember, /etc is where system settings are stored. Here is a The difference between user and users is that with the
typical fstab entry for mounting the a partition. former, only the user who mounted the filesystem can
/dev/sda2 /home ext4 defaults 0 2 unmount it. Speaking of unmounting, that is done with the
Each filesystem’s entry is on a single line, with six fields: umount command, followed by either the mount point or
1. Device name Linux disks are named sda, sdb and so on, device. This command also accepts multiple paths to
with the partition’s number added to the disk’s device, so unmount several at once:
/dev/sda2 is the second partition on the first disk. sudo umount /mnt/music /mnt/photos /dev/sda5
Tar: Archiving
your files
Archiving contains many mysteries, such as zips and tarballs, but we are on
hand to expand your knowledge of their uses.
M
ost people reading this are probably pretty familiar store backups on tape drives (Tape ARchive). It works in a
with creating, sending or receiving ZIP files. Zip different way to Zip because it sends all the archived data to
takes a collection of files and stores them in a ZIP its standard output and doesn’t compress the data by default.
archive file, compressing the data in the process. As well as This is because many tape drives already had hardware
storing the contents of the files, it also stores all their compression built in. The lack of compression code may
metadata, which is extra information associated with an seem like a disadvantage, but it’s actually a convenience. As
object. In the case of files, it includes the modification times, Tar is able to pipe its data via an external compression
their owners and permissions, and, of course, the name of program, it can use any compressor it likes – even one that
each file. When you unzip an archive, all of this information is wasn’t in existence when Tar was developed.
extracted, which recreates the original set of files exactly as Compression programs work on one file or stream of data
they were. This is pretty handy. and produce one compressed file or stream, so this splits the
Archives have several uses, but the most popular include job into two parts: archival and compression. While this may
bundling up a set of files for download – a single file is easier seem more complex, Tar is capable of handling the details
to handle and the compression makes it faster to download – itself. Let’s say we have a directory that is called foo. We want
and creating backups. As Zip has been around for ages, to create an archive of it, which is often referred to as a tarball.
everyone can use it and all OSes can handle it. Nonetheless, We can use one of these options:
Zip does have a number of drawbacks. The main issue is that tar cf foo.tar foo
its compression is poor by modern standards. Over the past tar czf foo.tar.gz foo
25 years, compression technology has moved on and even tar cjf foo.tar.bz2 foo
though there have been improvements to Zip, there are better tar cJf foo.tar.xz foo
alternatives available. Another disadvantage of Zip is that it is The c option tells the Tar program that we are creating an
intended for archiving to a file, whereas sometimes we want archive, while f tells it that we are storing the archive in a file
to send the data to another device or service. using the given name. Therefore, the first command creates
The standard archival program for Unix-like operating an uncompressed archive that is called foo.tar. The
systems is Tar, so called because Tar was originally used to subsequent commands add an extra option that tells Tar
which particular type of compression to use: z uses gzip tar tvf foo.tar.gz
compression, j uses bzip2 compression and J uses xz Those are the main Tar options, but the program has
compression. (Watch the capitalisation!) many more, such as A or --concatenate to add files to an
There are also long versions of these arguments that existing archive instead of creating a new one.
make the commands more readable, but most of us are lazy
and use the version that is shorter to type. However, we could Future proofing
also have used this command line if we wanted to: We mentioned that Tar can handle any new compression
tar --create --gzip --file foo.tar.gz foo format that comes along because it passes compression to
The file extension is not required, but it’s a convention that another program. There are command line options to do this
makes it easier for people to see what type of archive it is – automatically for gzip, bzip2 and xz, but what if someone
the system itself needs no such help as it can work all this out comes up with a new compressor? Say something like sdc –
for itself. Unpacking an archive is simply a matter of replacing super-duper compressor? You could create an uncompressed
c with x, or --create with --extract. However, you don’t need tarball and then use sdc to compress it, but that’s wasteful
to give the compression type, as Tar figures it out: and slow, so instead use a pipe:
tar xf foo.tar.gz tar c foo | sdc >foo.tar.sdc
Another option you may want to add is v or --verbose, to unsdc foo.tar.sdc | tar xv
show you what Tar is doing. If you have been given a tarball, Here, we use only the --create option with Tar. The lack of
you may want to see what is inside it without unpacking it. If destination causes Tar to send the archive data to standard
you have created an archive, particularly a backup, you may output, which is then piped to the sdc compressor program.
want to check it’s correct before relying on it. The test option The second command reverses the process, decompressing
checks the integrity and lists the contents of the archive. the archive and sending it to Tar for extraction.
Tar and the compressors have man pages, with many Most environments can view the archive contents. Shown above is the result
options. You’ll usually only need the ones covered here. of double-clicking a tarball in LXDE (the preferred desktop for Raspberry Pi).
Terminal:
Core programs
Out of the hundreds of different terminal commands available, here’s a handy
summary of some of the more useful ones.
W
e’ve looked at various shell commands in the last see what it really contains.
few tutorials, but they have each been in the find Searches the current or given directory for files
context of performing a particular task. It’s time to matching certain criteria. For example, you could find all
take an overview of some of the general-purpose commands. LibreOffice spreadsheets with:
There are thousands of terminal commands, from the find Documents -name '*.ods'
commonplace to the arcane, but you need only a handful of locate This also looks for files but using a much faster
key commands to get started. Here we will look at some of system. The locate database is automatically rebuilt each
the core workhorse commands, giving a brief description of day by updatedb, and locate then searches this. It’s fast, but
what each one is for. As always, the man pages give far more doesn’t know about very recent changes.
detail on how to use them. Many of these produce more
output than can fit in your terminal display, so consider piping Text handling
them through less. Text files are all around us, from emails to configuration files,
Central to any terminal activity is working with files, and there are plenty of commands that deal with them. If you
creating, removing, listing and otherwise examining them. want to edit a text file, for example, there are a number of
Here are the main commands for this. choices, with the two big ones being Emacs and Vi. Both are
ls Lists the contents of the current or given directory. overkill if you just want to tweak a configuration file; in this
ls -l As for ls, but gives more information about each item. instance, try nano instead:
Add human-readable file sizes with -h: nano -w somefile.txt
ls -lh MyPhotos The -w option turns off word wrapping, which you
rm Deletes a file. Use the -i option for confirmation before certainly don’t want when editing configuration files. The
each removal or -f to blitz everything. With -r it deletes status bar at the bottom shows the main commands – for
directories and their contents, too. example, press [Ctrl]+[X] to save your file and exit.
rmdir Deletes a directory, which must be empty. This assumes you know which file you want, but what if
df Shows free disk space on all filesystems or just those you know what you’re looking for but not the name of the file?
given on the command line. In that case, use grep. This searches text files for a string or
du Shows the amount of space used by individual files regular expression.
or directories. grep sometext *.txt
df -h /home will search all .txt files in the current directory and show any
du -sh /home/user/* lines containing the matching text from each file, along with
file Identifies the type of a file. Unlike Windows, which uses the name of the file. You can even search an entire directory
the file name extension, this command looks inside the file to hierarchy with -r (or --recursive):
Getting help
The command line may appear a little 5 File formats and conventions The first two would tell you about the passwd
unfriendly, but there’s plenty of help if you know 8 System administration tools command, while the third would explain the
where to look. Most commands have a --help If you don’t specify the number, man will pick content and format of the /etc/passwd file.
option that tells you what the options are. The the first available, which usually works. But man Man pages have all the information on a
man and info pages are the main sources of pages are not limited to programs; they also single page but info pages are a collection of
information about anything. To learn all the cover configuration files. As an example, hypertext-linked pages contained in a single file.
options for a program and what they do, run: passwords are managed by the passwd They often provide more detail but aren’t very
man progname command, and information is stored in the intuitive to read – try info info to see how to use
The man pages are divided into numbered /etc/passwd file, so you could use: them. It’s often easier to use a search engine to
sections. The ones that are most applicable to man passwd find the online version of info pages, which
using the system are: man 1 passwd contain the same information in the more
1 User commands man 5 passwd familiar HTML format.
grep -r -I sometext somedir a stream of text, from a file or pipe, and makes the changes
Be careful when you are searching large directory trees, you tell it to. The most common uses are deletion and
because it can be slow and return strange results from any substitution. Normally, sed sends its output to stdout, but
non-text files it searches. The -I option tells grep to skip such the -i option modifies files in place:
binary files. sed -i 's/oldtext/newtext/g somefile.txt
Text is also the preferred way of passing data between sed -i '/oldtext/d' somefile.txt
many programs, using the pipes we looked at previously. The second example deletes all lines containing oldtext.
Sometimes you want to pass data straight from one program Another useful program is awk, which can be used to print
to the next, but other times you want to modify it first. You specific items from a text file or stream.
could send the text to a file, edit it and then send the new file awk '{print $1}' somefile.txt
to the next program, or you could pass it though a pipe and cat *.txt | awk '/^Hello/ {print $2}'
modify it on-the-fly. Nano edits files interactively, grep The first example prints the first word from each line of
searches them automatically, so we just need a program to the file. The second takes the contents of all files ending in
edit automatically; it’s called sed (Stream EDitor). Sed takes .txt, filters the lines starting with Hello (the string between the
slashes is a pattern to match) and then prints the second
word from each matching line.
Networking
We normally think of big graphical programs like Chromium
and Thunderbird when we think of networked software, but
there are many command line programs for setting up,
testing and using your network or internet connection.
Ping Sends a small packet to a remote server and times
the response, which is useful if you want to check whether a
site is available, or if your network is working.
ping -c 5 www.google.com
wget Downloads files. The only argument it needs is a URL,
although it has a huge range of options that you will not
normally need.
hostname Shows your computer’s host name, or its IP
address with -i.
lynx A text mode web browser. While not as intuitive as
KDE’s Filelight, shown here, and Gnome’s GDU provide a Chromium or Firefox, it is worth knowing about in case you
graphical alternative to du, representing disk usage visually. ever suffer graphics problems.
Terminal:
Time-savers
The terminal has a host of handy tricks that will save you time and make your
life easier. Let’s introduce a few of the most useful techniques.
E
arlier, we mentioned that using the terminal can be Aliasing a command to its own name is a neat trick, but
faster and more productive than using a GUI, what if you then need to use the original command? Don’t
especially with repeated operations. To get the most worry – the developers have thought of that. Prefix the
out of this, it helps to know a few of the shell’s secrets. command with a backslash and your alias will be ignored:
Do you often find yourself typing in the same command \ls Documents
options over and over again? Do you sometimes have trouble
remembering the correct options? Are you just plain lazy and Profiles
want to avoid typing wherever possible? If you answered yes You can customise your terminal experience with aliases and
to any of these, aliases are for you. You already have some custom prompts, but to make them even more convenient,
shell aliases set up. To list them, type: you need a way of applying these automatically when you
alias open a terminal. That can be done through your profile, which
which will return entries like this (from Ubuntu): is a file containing commands that are read and run whenever
alias ll=’ls -alF’ you open a shell session.
alias ls=’ls --color=auto’ There are several locations that are read, the first of which
The first of these examples is simple – if you type in ll, it is /etc/profile, which contains global profile settings. This in
runs ls -A. The second is cleverer, because the alias is the turn runs any files in /etc/profile.d, which makes it easy to
same as the command name, so the old ls behaviour add global settings without touching the default profile. Then
disappears and it’s always run with the --color=auto option. If the user’s profile is read from one of ~/.bash_profile,
you find yourself always using certain options with particular ~/.bash_login and ~/.profile. Only the first of these files that
commands, aliases like this effectively make those options exists is run, and any settings in here override those in the
the defaults. The alias is expanded before the rest of the global profile if the same thing is set in both.
command line is interpreted, so: The profile is simply a set of shell commands, one per line,
ll X Y Z that are run when the shell starts up. These can set up aliases
becomes or environment variables, or set the command prompt. A
ls -alF X Y Z typical use of environment variables would be to change the
These aliases aren’t always easy to remember, but fear default text editor to nano:
not – you can create your own aliases using exactly the same EDITOR=/usr/bin/nano
syntax as in the output from the alias command:
alias myalias=’somecommand --option1 --option2’ Word completion
If you aren’t a particularly confident touch typist, you’ll soon
get fed up with typing out command and file names in full,
then dealing with the error messages resulting from
misspellings. Fortunately, the shell provides a way to both
save typing and avoid mistakes, called tab completion. The
name is fairly self-explanatory – it uses the [Tab] key to
complete the word you are typing. If this is the first word on a
line, it will be a command, so it looks in the command path for
matches – for example, typing chm and hitting [Tab] will
complete to chmod. Used after the command, hitting [Tab]
completes file names, so instead of typing:
cat /pathto/somelongdirectory/someevenlongerfilename.txt
you can use:
cat /pa[Tab]som[Tab]som[Tab]
Isn’t that easier? When more than one file matches, the
[Tab] key will complete up to the point where it becomes
Aliases save you typing and enable you to use more memorable command ambiguous; pressing [Tab] again at this point shows a list of
abbreviations. You choose these yourself, so you have no excuse for forgetting! options, which you can cycle through with [Tab], or add
Terminal:
User accounts
Whether you want to have one user or a hundred on your computer, it’s time
to explain the basics of user accounts on Linux.
L
inux is a multi-user operating system, even if you are to run a web server will have a home directory somewhere
the only person using your computer. The most basic like /var/www. In addition to users, Linux also has groups. A
of systems has two users: you and the superuser, also group is basically a collection of users. For example if you
called root. Every file or directory is owned by a user and has have a USB scanner on your computer, you often need to be
settings, called permissions, that specify who can read or a member of the scanner group to be able to use it. Now that
write to it. This safeguards your files from being overwritten we understand usernames, groups, UIDs and home
by another user, or possibly even read by them if so set. It directories, we can create a user:
also safeguards system files because they are owned by root sudo useradd -m -c “John Smith” -g users -G scanner,audio
and can only be changed by root. This includes writing to john
system directories, so only the root user can install new We use sudo here because only the root user can create
software there. So how do you install software? See the users. The -m option creates a home directory at /home/
‘Becoming root’ box opposite for the answer. john, -c specifies a comment to store for the user, which is
One word of caution when using data on multiple usually the user’s full name, -g sets the primary group of the
computers, such as with an external hard disk. While you may user, while -G adds secondary groups. Finally, we give the
see your username as a name, say johnny99, the computer username. Not all of these options are necessary – if you omit
sees and stores it as a number, a UID or user ID. During -g, a default group will be used. Some distros use a single
installation, your distro will have created a root user, who group called users for all non-system users, while others
always has a UID of 0, and a normal user. Most distros start at create a separate group for each user. The groupadd
1000 for the first general user, but some start at 500. The command works in a similar way, as do both of their
point is, it’s that number stored on the disk as the owner of a counterparts – userdel and groupdel.
file, so the same username may not own the file when you
move the disk to another computer. Add a password
We have created a user but he cannot log in yet because we
Create a user haven’t given him a password.
Every user has a home directory. This is usually /home/ sudo passwd john
username but it can actually be anywhere – the user created will ask you for the password twice. The passwd command
Different filesystems
One area that causes confusion is that of system which is incompatible with Linux
permissions of mount points. It makes no permissions, so the filesystem driver imposes
difference what permissions and ownership are default permissions. These generally set all files
set on a mount point before a filesystem is and directories to be owned by the user who
mounted there; it acquires the permissions of mounted the device, otherwise you couldn’t
the root directory of the filesystem you mount write to it. File permissions usually default to
there. How you change things for the top-level rwxr-xr-x (or 755 if you prefer) by the
directory of a filesystem depends on its type. In automounter.
the case of Linux filesystems, this is simple: If you are mounting a filesystem manually,
mount it and then use chmod or chown to set use the uid option to set ownership and umask
Running the mount command on its own it up as you want. These settings will then apply for default permissions, like this:
shows the options a filesystem was mounted whenever, and wherever, you subsequently sudo mount /dev/sdb1 /mnt/removable -o
with. Here you see the mask setting for a mount that filesystem. uid=john,umask=022.
FAT formatted USB stick (fmask and dmask Windows filesystems, such as FAT on USB The umask is subtracted from 777 to give
do the same as umask, but only for files and sticks, are treated differently. FAT has no the permissions – 755 in this case. A umask of
directories respectively). concept of file ownership and NTFS has a 0 enables all permissions.
can also be used to change the password of an existing validity when you save it, before replacing the existing file. The
account. If you run it without sudo or a username, however, it format of /etc/passwd is explained fully with:
will change your own user’s password, because only root can man 5 passwd
set passwords for anyone else. It is considered good practice
to change passwords regularly, and you can enforce this by Transfer ownership
using passwd: If you want to change the owner of a file, you need chown:
sudo passwd --maxdays 60 -warndays 7 john chown john somefile
This password will become invalid after 60 days and john chown john:users someotherfile
will be warned about the expiry a week before. The usual rules chown john: someotherfile
about passwords – make them long and mixed case, chown -R john: somedir
preferably with numbers – apply here, and doubly so to the The first makes john the owner of a single file. The second
root password, the key to the kingdom. command also changes the group. If you do not give a group
User details are stored in /etc/passwd, which may be after the colon, as in the third example, the group is changed
edited should you wish to change them. However, making a to the user’s default group. When applied to a directory, the
mistake could prevent you from logging in, so use -R option also changes all files and sub-directories in that
vipw directory. You can change just the group with chgrp. These
to edit it. This loads a copy of /etc/passwd into your commands must be run as root. Changing file permissions is
preferred editor (as defined in $EDITOR) and checks its done with chmod.
Most desktops
provide graphical
alternatives
for user
management
– this is KDE’s
Kuser – but
they still need
root privileges.
Man pages:
Accessing help
Need more advice? Then you need to browse the ultimate collection of useful
self-help books that resides inside the Linux operating system.
R
TFM has long been considered the battle cry of the terminal with the --help option to see a synopsis of its
supposed Linux experts, and is claimed to scare new options. This applies to GUI programs, as well as shell
users away. If you haven’t come across it before, it commands. For example:
stands for something like ‘Read the fine manual’. It is perhaps firefox --help
easy to appreciate the frustration some individuals feel when If you need more detail, then it may be time to RTFM,
asked a question for the umpteenth time when the which on Linux systems usually means the man page. Man
information is clearly covered in the manual. However, it’s pages document just about everything on your system and
only possible for a user to read a program’s documentation if are viewed by keying in the man command. If you want to
they know where to find it. Happily, there are some sources of know how man itself works, the classic recursive example is
help within Linux, so let’s look at each of them. to open a terminal and run:
Before you even look for the manual, remember that many man man
programs have built-in help. Run the command from a A man page is a single page containing the reference
documentation for its topic. The man command renders this
document as readable text and displays it in your default
pager, usually less. This means you use the same keyboard
controls as less for navigating the page: cursor keys to scroll
up and down, [Spacebar] to page down, and so on. Some
man pages can be very long, so try man bash to enable you
to search. In less, press [/] to start searching (or [?] if you
want to search backwards), followed by your search term.
Then use [n] to jump to the next match or [N] for the
previous one. The man pages are divided into sections:
1 User commands
2 System calls
3 C library functions
4 Devices and special files
5 File formats and conventions
6 Games et al
This is the man page for ls, and it helpfully lists the 7 Miscellany
various options that you can use in alphabetical order. 8 System administration tools and daemons
Desktop viewing
Man and info are intended to be tkMan programs to display the
readable in a terminal, because you may respective formats in a GUI window.
need to use them on a system without a There are several websites containing
desktop. There are GUI viewers for them, comprehensive man page collections:
though, the most convenient being in such as http://linux.die.net, www.
KDE, where you can press [Alt]+[F2] and linuxmanpages.com and
type man:/command or info:/ http://manpages.ubuntu.com. These
command and get an HTML formatted are particularly useful if you want to read KDE users can read info and man
version of the document displayed in about something that you do not have pages in a browser, with clickable
Konqueror. There are also the tkInfo and installed locally. links, thanks to KDE’s KIO slaves.
Printing manuals
There may be times you want a hard man -t somecommand | lpr carrying around on a tablet or e-reader:
copy. As man pages are stored in a The Postscript is output to stdout; man -t somecommand | ps2pdf -
markup format and converted for piping it to lpr like this sends it straight somecommand.pdf
display by the man program, you can to the printer. You could also convert the Print info documents by passing them
use -t to convert them to a printable Postscript to PDF, and therefore create through the col command:
format, Postscript by default, like this: versions of your man pages suitable for info somecommand | col -b | lpr
Sysadmin:
Back to basics
You need some basic admin skills under your belt if you want to be able to use
Linux effectively. Read on and refresh your memory...
Managing users is one of the most basic Linux admin skills
you should possess, even if you are the only person using the
computer. That’s because knowledge about users and groups
is imperative in order to secure and control access to data.
Although you can manage users from the command line,
almost all modern Linux distros include a graphical tool to
help you add, control and remove user accounts. However,
there are a few things you should keep in mind when
managing users and groups.
It may sound obvious, but a user is anyone who uses a
computer. Some system services also run using restricted or
privileged accounts. The superuser, root, has complete
access to the operating system and its configuration.
Unprivileged users can use the su and sudo commands for
controlled privilege escalation.
Behind the scenes, a username has a unique string of
numbers known as a user ID (UID). Similarly, groups have
group IDs (GID). The root user is UID 0. Numbers from 1
through to 499 – and number 65,534 – are the system users,
sometimes called logical or pseudo-users. Regular users have
UIDs beginning with 1,000. When creating a user, the system
admin can add other users to an existing group, in which case
they’ll all bear the same GID. Alternatively, they can create a
new group, in which case the GID will probably be the same
as the unique UID for each user. Remember that a group
cannot be a member of another group in Linux.
S
ince you’ve read this far, there’s a high probability that devices. Every file has an accompanying set of ownership
you’ve already set up your Linux distribution. You’ve permissions, which provide data security by giving specific
probably also used the distro’s package manager to permission settings to every single item. They control who
pull-in additional software, and are capable of browsing the can read, write or execute a file. These three access
web and perhaps playing games. While you might get some permissions are set individually for three types of users: the
fair mileage with your current setup, sooner or later you’ll file’s owner, the members of the group the file belongs to, and
need to tweak things, whether you want to install a new piece all others on the system.
of hardware, troubleshoot the performance of an app or To list the permissions, type in this command:
share your computer with others. ls -l
Quick Most distributions bundle tools to help users manage When used without specifying a filename, it will list the
tip various aspects of their system. Some distros, such as permissions of all files within the directory in this format:
Ubuntu, have fairly easy to grasp administration tools, while -rw-r--r-- 1 bodhi bodhi 8980 Apr 24 09:21 somefile.txt
By using various
combinations of others have quite an expansive administration section with drwxr-xr-x 9 bodhi bodhi 4096 May 29 07:42 Downloads
permission settings, tools that aren’t very intuitive at first glance. The average The first character in the output indicates the type of file.
you can quickly set home user doesn’t need to have the proficiency and the The hyphen in the truncated listing above represents a plain
up a more secure dexterity of a professionally qualified system admin, yet there file and the d represents a directory. There are other
environment.
are a few skills that should be in your repertoire to help you characters as well to identify the different types of devices.
manage your computer efficiently. This is followed by the file’s read, write and execute
Schedule tasks
There are some admin tasks – creating backups specifications. In addition to AM and PM, it also the last field lists the command to be executed.
and large downloads, for example – that are far accepts times in the HH:MM format and You can use the crontab -l command to list your
more effective when you execute them as per a recognises particular dates as well. scheduled jobs. System-wide crontabs are
schedule. When you press [Ctrl]+[D] to submit a job, stored in /etc/crontab, whereas user-specific
The at command helps you schedule tasks the command prints a job ID. Use the atq crontabs can be found under the /var/spool/
that you need to run at a specific time and date. command to list all submitted jobs, which you cron directory.
For example, if you need to download a large file, can then remove with the atrm command by
it’s best to schedule it late in the night or very suffixing the ID of the job you wish to delete.
early in the morning. The command at 1am If you wish to run a task repeatedly, you’re
tomorrow will change the prompt to at> and better off using the cron daemon. Use this
everything you type at this prompt will be run at command to edit your crontab file:
the specified time. To download a file, point to its crontab -e
location with the wget command. Press the The first time you run the command, you will
[Enter] key to specify another command – for be asked to select one of the available command
example, if you want to move the file to a specific line text editors.
folder. When you are done, press [Ctrl]+[D ]to Each job is specified in seven fields that define
save the job. At the designated time, the at the time to run, the owner, and the command.
command will perform the actions specified. The first five commands specify the execution You can find utilities on the internet which
The at command allows fairly complex time time, the sixth defines the day of the week, and help you to set up crontabs easily.
Sudo: Control
root access
If you’ve come this far it’s time to revel in the god-like powers of the
superuser, using sudo to grant the wishes of lesser beings.
need to work as root, how do you do it and how can you allow
other users to perform root tasks without giving them carte
blanche with your system?
The traditional way to give root access is with the su
command. This command, which stands for switch user, not
superuser, enables you to become another user for as long as
it is running. When run in a shell with no arguments, it lets you
into the root account (provided you know the root password).
It is not exactly the same as logging in as root, you still retain
some elements of your current environment. To provide as
close as is possible to a login environment, add the -l option.
We said the su stands for switch user as it defaults to
switching to root, but you can give a username to the
command, eg:
$ su -l fred
Once you have run su , you will stay as that user until you
type exit, or press Ctrl+D. This is not necessarily a good thing,
leaving a shell open as root is not good security practice,
so you can pass it a single command to run with the -c
option:
$ su -c “ifconfig eth0 up”
This doesn’t open a shell session, instead, after asking for
the root password, it runs the command given.
Projects
Build your own router........................................................................................... 128
Try a microkernel OS.............................................................................................132
Repair broken systems ................................................................................... 136
Analyse network traffic ................................................................................. 140
Router: set up
a gateway
Think you can do better than your own router? Let’s throw down some
iptables rules and make our own hotspot.
Y
ou probably have at least one router in your house. connected to it.
They perform the not insignificant task of routing We'll cover setting up a wireless gateway later, but for now
data from one network, eg the internet, to another, assume we've got some computers that aren't connected to
such as your home wired/wireless network. While in theory the external network, and one computer (the gateway) that is.
you could build on this tutorial and replace the box your ISP We'll assume all of these computers are connected by wired
gave you, it's probably not the best idea – getting a Linux box connections to a switch and that the gateway machine is
with a DSL or ADSL modem in it to talk to your ISP can be happily talking to the internet (either wired or wirelessly –
tricky. Besides, many of these hubs already run Linux, and for now we're just assuming that the internal network isn’t
many more allow you to install a DD-WRT or OpenWRT image, connecting wirelessly to the gateway, this requires some extra
both of which handle much of the ugliness for you. But there's configuring that we'll cover later).
lots of other routing that’s useful...
Quick Suppose your wireless card breaks, or needs some new Setting up IP addresses
tip firmware, leaving you without connection or a long enough The first thing we need to do is get the machines talking to
Simple traffic patch cable to reach the router. Certainly you could replace each other, which requires getting their IP addresses set up
routing doesn’t the broken hardware or download the files from another nicely. We won't deal with IPv6 in this tutorial (but soon my
require a powerful machine, but that's hardly cricket. Instead, why not have a pretties), since most home routers still work with IPv4 and it's
CPU, but if you're
anticipating a lot of
handy, portable, lifesaving gateway machine around, that can, simpler to keep our protocols homogenous. Your distro may
traffic you'll want to via a simple crossover cable, feed the starving machine the have progressed to kernel-generated persistent names for
make sure you've a network it so desires? You could even connect several your network devices, in which case your wired and wireless
Gigabit adaptor in machines this way via a simple switch – only the gateway devices will, have names such as enp0s327 and wlp999,
the gateway and a
machine needs to be able to see the internet, or whatever respectively. Or you may still have the old-style, human-
gigabit switch.
external network you want to share access to. You may also readable names, such as eth0 and wlan0. We'll just refer to
Ext0
192.168.1.127 the miracle of
NAT, packets
Wired/wireless link can traverse
10.0.1.254 Int0 the murky
marshes of our
internal network,
negotiate all
Switch kinds of perils in
the 192 plains and
soar amongst the
cloud birds of the
internet wider internet.
the external interface of the gateway (eg the one connecting Installing dnsmasq will just be a matter of
to your ISP-supplied router) as ext0, and the internal interface $ sudo apt-get install dnsmasq Quick
(the one connecting to the switch) as int0. So you'll have to or whatever is your distribution's equivalent command is. tip
make your own substitutions. This will install a heavily-commented /etc/dnsmasq.conf file
Basic forwarding,
RFC1918 provides a few standard IPv4 addresses that can which we shall tweak to our requirements. It's good practice routing and
only be used for internal networks, eg 10.x.x.x, 172.16.x.x, to add the following lines right after their commented masquerading can
192.168.x.x, so let's go with the first format. We can be a bit equivalents, so that options are sensibly grouped. We'll first now be carried
more specific here, so let's stipulate that all our internal IPs set up our ersatz DNS server to listen to requests from our out via systemd's
networking
are in the form of 10.0.1.x. This is usually written 10.0.1.0/24 fledgling internal network. Add the following line to /etc/
daemon, networkd.
ie a 24-bit netmask (255.255.255.0). We'll set up the gateway dnsmasq.conf: Is nothing sacred?
machine's Ethernet interface manually, with the static IP listen-address=10.0.1.254 We're taking bets
address 10.0.1.254. Depending on how your machine is set We'll also set up our DHCP server while we've got this file on what its next
up, this might be achieved through Network Manager, the open. It's going to allocate addresses in the range 10.0.1.128 trick will be. Our
money's on Siry-
ifconfig or ip commands, making a netctl (Arch Linux) script, to 10.0.1.253, this way addresses with a lower final octet can stemd: "Siry, can I
editing /etc/network/interfaces (Debian). Whatever you be reserved for machines on the internal network which need have my init scripts
choose, it should be straightforward, and also not interfere static IPs. It’s also possible to have DHCP assign specific back, please?"
with the gateway machine's existing internet connection. addresses to specific machines based on their MAC address, No! – ED.
We could do this for all the machines on our network, but using the dhcp-host option:
it's easier to use the dnsmasq program, which provides a dhcp-range=10.0.1.128, 10.0.1.253, 12h
simple DHCP server to allocate addresses. This program will Now start the dnsmasq service with
also be useful later since it will enable the gateway machine to $ sudo systemctl start dnsmasq
masquerade as a DNS server (hence the program's name). or if you're not running systemd:
Cutting cords
Sometimes it's desirable to make your router accessible
wirelessly, so that your mobile devices can connect to it.
This is particularly useful if you find yourself using said
devices in areas of your house with poor wireless coverage:
Your gateway machine may be connected to your ISP-
supplied box via Powerline Ethernet, and situated in or around
the blackspot, bringing light to the darkness. It is also possible
for this to work if there is a wireless link instead of a Powerline
one, so that we have a simple wireless repeater. This may
This is what a successful WPA2 handshake should look like, but our hotspot require two wireless cards in the gateway machine though,
fails to make it warm in here [see Hotspots With Hostapd, p129]. since some cards cannot be access points and clients
simultaneously. Furthermore, some cards lack Linux support A network bridge amalgamates two disparate interfaces
for Access Point mode entirely. To check the capabilities of (eg our eth0 and wlan0) into a single interface, which in our
your wireless adapter use the iw tool (sudo apt-get install example will be br0. Traffic will flow unimpeded between the
iw, if you don't have it). Running two interfaces, and machines connected to our wireless
$ iw list hotspot will behave exactly as if they were connected to the
will show you everything you could possibly want to know same network as eth0. Hopefully, anyway. The first thing we'll
about your wireless devices. Check the ‘Supported interface need to sudo apt-get install bridge-utils, or equivalent.
modes’ section and ensure that ‘AP’ features somewhere. Then we create a new bridge with
For a repeater set up you'll want to check ‘valid interface $ sudo brctl addbr br0
combinations’ for ‘AP, mesh point’. Bear in mind that mesh and then add our wired interface to it with:
protocols haven't yet been standardised so we won't try and $ sudo brctl addif br0 eth0
cover them here. You'll need to be sure your wireless driver We can't add the wlan0 interface to the bridge without
supports 4-address frames if you want to have a go. first starting our access point, since only devices in so-called
promiscuous mode can be bridged. We can automate this by
Building bridges adding the following line to our hostapd.conf:
So let's reverse our previous setup – we'll have an internet- bridge=br0
facing wired connection to the gateway machine and we want Now we can test our access point by starting the service:
to set up a local wireless network which provides access to $ sudo service hostapd start
this. In the previous section we used NAT to direct traffic Replace with systemctl start hostapt if you're using
between the internal and external networks, for this part we'll Systemd. If everything works then enable the service. You can
show you the alternative: network bridging. In many ways this recreate the bridge setup in Network Manager, or by
is easier to understand than NAT, since it effectively unifies modifying /etc/network/interfaces.
the two (or more) networks – providing a transparent bridge And that concludes our foray into the world of bespoke
over which traffic flows unimpeded. However, the NAT routers. We've covered two different set ups, but don't be
approach is a little more flexible and provides more granular afraid to mix and match if you require, all these technologies
control, so you may prefer to use it again. will work together where it makes sense. We'll also be
Whatever your preference, the first task is to install and covering replacing the firmware on your home router with
configure the hostapd package (see the Hotspots With Linux one of these days. For now we're all huddled round an
Hostapd box, p129). overclocked Raspberry Pi for Wi-Fi warmth.
Anonymising gateway
A nice thing about this setup is that any routing Then you can set up any applications running on traffic travels via tun0, redirecting everything
beyond the gateway machine propagates trivially our internal network to use that proxy. A more through the VPN. If you have already successfully
to our internal network. So if you have your passive approach is to set the gateway machine set this up on your gateway machine, then all
gateway machine's traffic routed through a VPN up as a transparent proxy or an isolating proxy, that is required is a small addition to our
or Tor, then so can all our internal network traffic. but this is beyond the scope of this little box. NAT rules:
Installing Tor is straightforward, the default config You may subscribe to a commercial VPN $ sudo iptables -t nat -A POSTROUTING -o
sets up a SOCKS proxy which you must connect provider, or even be running your own OpenVPN tun0 -j MASQUERADE
your applications to. You can make this proxy server somewhere on the internet. Either way, Since VPN traffic travels through the tun0
available to the internal network by adding a line, connection is usually achieved by setting up a interface, this line ensures that it can still find its
such as SOCKSPort 10.1.0.254:9050 and TUN device (usually called tun0) on the client way back to the internal network. As before, you
TransPort 10.1.0.254:9040 to /etc/tor/torrc. end. The routing table is then modified so that all can use SNAT here if ext0 has a static IP.
Minix 3: Test a
microkernel OS
Minix 3 has gone way beyond its educational origins with ARM compatibility,
but microkernel reliability is still at its heart.
Despite historical spats with Linux (see Ancient history,
opposite) and the education-targeted early releases, Minix
has become an appealing OS for many users, particularly as
it’s gradually integrated the NetBSD userland. This has been
achieved largely because of millions in EU funding focused on
‘secure and reliable’ OS development, and many generous
contributions from the Google Summer of Code.
The Minix team presented the latest version at FOSDEM
this year and the ‘MINi UnIX’ has grown in scope, but not in
bloat. ARM support, for instance, has made it into the master
code branch, and the team say that version 3 has "more
complete source compatibility with NetBSD in terms of
utilities, calls, types (lots of 64-bit), toolchain, codebase
and packages", with "all Minix-specific code in a top-level
minix/ subdir".
Minix 3.3.0 isn’t really production-ready, but it could make
a stable base for a number of projects, so we’d encourage you
to try it, whether on a BeagleBoard or a virtual machine, and
keep an eye on developments.
Unfortunately, for those wanting to tinker outside of ARM
boards on an old PC, in a desktop fashion, there's a major
stumbling block: the X Window System, which was working in
M
inix 3 is a microkernel-based Unix clone, targeted the previous release (based on a monolithic XFree86 server),
towards robustness, reliability, and a small memory has spectacularly broken. At time of writing, the current
footprint. In a microkernel, drivers and servers are release of Xorg was being ported, but still wasn't ready, so it's
isolated, running in User Mode, and restricted in the effects command-line-only for now. You can, however, download
they can have on the rest of the system (more on this later). previous releases if you really want to try the desktop. Not all
The price for this is a small performance overhead, and some NetBSD packages will run, but compatibility is improving and
design challenges, but performance is not as important here building from source may enable you to get favourite
as security and stability for most users. packages onto your system that aren't in the repos.
Microkernels have a long history. In the ‘80s, academics
were convinced they were the only way forward for OS Inside the (virtual) box
development, and Minix author Andrew Tanenbaum never Minix 3 will install on your x86 PC, but hardware compatibility
considered designing Minix in any other way. It also meant is limited. Any i586 processor or later should be fine, although
Richard Stallman turned to a microkernel as the basis of the problems have been reported on Pentium 4, and the system
Hurd, the kernel of the GNU OS. The imminent arrival of GNU can work with as little as 32MB of RAM. Peripherals are
– and BSD Unix – motivated Tanenbaun to keep Minix as an another matter, however: the list of compatible network cards
academic OS, but that fitted well with the aims of having is short, but includes those emulated by Bochs, Qemu,
something small enough to teach from, and cover in his VirtualBox, Virtual PC and VMware, as well as the
famous book, Operating Systems: Design and Implementation. BeagleBone's LAN8701A. The remainder of the list is mostly
Legal problems, and then technical challenges, held up the old classics, which will seem familiar if you happen to have
development of the Hurd, but Minix’s tight focus enabled experimented with alternative OSes from a decade or more
Tanenbaum to produce Minix 1 more or less single-handed, ago: 3Com 509, NE2000, Realtek RTL8139. At least the Intel
and three decades of putting the few thousands of lines of PRO option is one you're more likely to have on hardware that
kernel code under close scrutiny while his doctoral students hasn't been consigned to the attic.
at Vrije Universiteit, Amsterdam worked on every area, have It's probably better to grab a recent Qemu or VirtualBox
built a solid foundation for Minix 3. from your distro's repository; we did most of our installs on
the latter. Click the big New button at the top left of the BeagleBoard-xM (and its Qemu-based emulator), the
VirtualBox window, and name your VM. We used MINIX3. BeagleBone, and the BeagleBone Black. Pre-built 3.3.0 Quick
Choose Other in both dropdown menus for OS type and images are available, but you'll miss out on the latest tip
version; on the next screen give it as much RAM as you can developments. To build a disk image for your BeagleBoard, So often *nix
spare. We'd suggest that 256MB is adequate for Minix 3, make a directory at ~/minix and cd to it – or to wherever you problems come
but naturally more is better while you're exploring a new prefer to do the cross-compile – then get the source code: down to either
permissions or
environment and pushing to see what it can do. We kept the $ git clone git://git.minix3.org/minix minixsrc
DNS. If you can't
default 2GB disk size on one VM install, and expanded to 8GB Now cd to minixsrc/ and make a .settings file for get pkgin to work
for another. Be inclined towards the latter if you're going to BeagleBoard-xM use: after you install on
install everything Minix 3 has to offer, but bear in mind 3.3.0's # beagleboard-xm VirtualBox with NAT,
put our old friend
lack of some software from previous releases. U_BOOT_BIN_DIR=build/omap3_beagle/
8.8.8.8 in /etc/
Click Create and you'll see a MINIX3 VM listed in the left CONSOLE=tty02 resolv.conf, instead
pane. Before starting, go to Settings, and tick the Hardware And for the BeagleBone: of 127.0.0.1.
clock in UTC time checkbox, and check that Storage points to #beaglebone (and black)
your downloaded ISO file. You can now start up the VM from U_BOOT_BIN_DIR=build/am335x_evm/
the GUI. On a Core 2 Duo machine, without VT-x/AMD-V/ CONSOLE=tty00
nested paging, we had to start VirtualBox with: Provided you have g++, the GNU C++ compiler, installed,
VBoxSDL --startvm MINIX3 --norawr0 --norawr3 the build tools in Minix will provide you with everything almost
Now follow the instructions in the walkthrough overleaf. else. On Ubuntu you'll also need to:
Once the installation is complete, use poweroff instead of apt-get install zlibc zlib1g zlib1g-dev
shutdown to halt the machine. Go back to Settings > Storage The build tools are based on NetBSD's build.sh. Call the
in VirtualBox, get rid of the ISO, and point at the newly created ARM-specific version with:
virtual disk image instead. Now boot with VirtualBox's Start ./releasetools/arm_sdimage.sh
button (or use the workaround on PCs without VT-x and and you should find a minix_arm_sd.img waiting for you to
AMD-V virtualisation extensions). copy across to your SD card, for booting your BeagleBoard
or BeagleBone:
Running on a BeagleBoard sudo dd if=minix_arm_sd.img of=/dev/mmcblk0 bs=1M
With 3.3.0, the ARM port of Minix is finally integrated in the oflag=direct
master code branch, along with the official x86 port. Targeted Put the card in your BeagleBoard, boot up and you can log
at the BeagleBoard, with its Cortex-A8-based system on a in as root. Ethernet isn't working on the BeagleBone, but on
chip (SoC), it runs with varying degrees of success on the the BeagleBoards run netconf and select the LAN8710A.
USB support on the BeagleBone is tagged as experimental,
and there are known issues with hot-plugging on USB hubs in
3.3.0. Audio and the analogue-to-digital aren't yet working
either, but GPIO is.
This is a promising first release of the port, and if you've
got a BeagleBoard, it's a good sandbox for trying out Minix,
particularly as this port will receive a lot of developer time,
so you'll see improvements if you keep checking out the code.
You can also try the ARM port under emulation with Linaro
Qemu, the custom version of Qemu for the BeagleBoard-xM.
You can find instructions at: http://bit.ly/LinaroQemu.
A minimalist codebase
A few years ago, Linux passed 15 million lines of showing that Linux driver code had three to reach of vulnerabilities is strictly limited. Take
code (LoC). Minix 3 has 6,000 (6 KLoC) in the seven times more bugs than the rest of the Netfilter, which replaced Linux 2.2's ipchains to
kernel, and about the same again for the drivers kernel – simply because there's no fun in looking control packet direction – offering options for
(that's traditional kernel code running in User at messy driver code, rather than the important packet filtering, network address translation and
Mode). With a thousand times more code in (and interesting) algorithms in the core kernel. In port translation. Netfilter sits inside the kernel,
Linux, we could assume that it has a thousand Linux 70% of the code is drivers. In Windows, whereas Minix Netfilter sits in user space.
times more bugs. But it's worse than that. 85% of the crashes are caused by drivers (which If malicious executable code targets Netfilter
All code has bugs, typically five to ten bugs are mostly third-party). Running those buggy again (such as the 2.6 'packet of death' kernel
per KLoC, although FreeBSD comes out drivers in kernel space means vulnerabilities can vulnerability) in Minix the User Mode process
somewhat better with three per KLoC. bring down the whole system; in protected would be compromised, but in Linux the whole
At FOSDEM, Tanenbaum cited a Stanford study memory, isolated from other processes, the system would be owned.
Rescatux:
System repairs
All those commands feeling a bit complex? Repair common system
problems without resorting to the command line.
engine from a live CD to try and find the correct Grub
incantation for your situation. I consider myself reasonably
knowledgeable about bootloaders, but I still don’t break
them so often that I feel comfortable fixing them from the
command line without at least a cursory RTFM to check
my options.
L
inux live CDs are a wonderful invention, they let you try brought out when things go seriously wrong.
new distros, show Linux off to your unenlightened Many system recovery operations require you to be
friends, and fix broken systems. There are live distros booted from a live CD, either because normal booting is
aimed specifically at repairing damaged systems, but they broken or because you need your root filesystem to be
have a common drawback. They all require a certain unmounted. You normally also need to use command line
amount of expertise and most of us don’t break our systems tools, and Rescatux provides all of this, but the Rescapp
often enough to gain that sort of experience. When your makes life much easier for many tasks.
computer sits there showing you nothing but a glum When you press any of the operation buttons in Rescapp,
message from the bootloader, your main priority is fixing it it does not directly perform the operation. It displays a
as quickly as possible, not spending time using a search documentation page explaining how to use the option and,
considering the low-level aspect of many of the operations,
it’s a good idea to read this. Then press the Run! button at the
top right to perform the operation.
if you have a separate home, it will appear as ‘Not detected’ computer with
(or ‘Cannot mount’ if it is damaged). There may be other sudo shutdown -n
reasons for a partition being unmountable; it may be your This kills processes without using the usual init system,
swap partition or an extended partition, so choose carefully. If which reduces the number of disk writes. Now you can boot
in doubt, the Boot Info Script log (covered later) lists your Rescatux. If you partitioned a drive, you can use testdisk to
partitions and their types. search for the old partition boundaries and restore them.
Repartitioning a drive only writes to the partition table, the
#2 My password is not recognised! actual data on the rest of the disk isn’t touched until you
Aside from boot merely resulting in an unfriendly grub> format the new partitions. So if you can find the old partition
prompt, this is one of the most scary moments of computer boundaries and write them back into the partition table,
use. You checked that you typed it correctly and that the everything should be back as it was. This is what testdisk
caps-lock is not on. You may have forgotten it or, on a new does. After accepting the option to create a log file, that may
install, have mis-typed it on setup. be useful later, pick the disk to scan. The partition type
Resetting a password involves booting a live CD and should be Intel for the old-style MBR partition tables or EFI
messing around with chroots – you cannot simply edit a
file – or you can use Rescapp. Press the ‘Change Gnu/Linux
password’ button and, after reading the explanation, press
Run!, pick the distro (there will always be at least two, your
installed distro and Rescatux, which appears as Debian 7)
and then select the user to change. Enter the new password
and the job is done. Try not to forget this one! This button
is only for Linux passwords. If you run a dual-boot system
with Windows, there is a separate option to reset your
Windows password.
Fixing Grub
Wireshark:
Analyse traffic
We’ll explain the necessary things that you need to know to start using
Wireshark, and analyse three kinds of network traffic.
W
ireshark is a very popular and extremely capable mind that on a truly busy network, capturing using Wireshark
network protocol analyser that was developed by might slow down a machine or, even worse, might not enable
Gerald Combs. Wireshark was born in June 2006 you to capture everything because Wireshark needs more
when Combs renamed the network tool Ethereal, which he system resources than a command line program. In such
also created, as he was changing jobs and couldn't use the cases using tcpdump for capturing network traffic is the
old name anymore. Nowadays, most people use Wireshark wisest solution.
The IP protocol
IP stands for Internet Protocol. The main When the information doesn't need many routers mainly perform IP routing but every
characteristic of IP is that it's not a reliable network packets, using a protocol that's based TCP/IP device has to do basic routing.
protocol by design. Unreliable means that on IP is more efficient than using TCP, even if you Each IP address is a sequence of four 8-bit
packets may not reach its destination for various have to re-transmit a network packet, because numbers, separated by dots. Each number has a
reasons, including transmission errors, network there’s no three-way handshake traffic overhead. value between 0 (=2^0-1) and 255 (=2^8-1).
hardware failures and network congestion. IP encapsulates the data that travels in a Example IP addresses are 10.25.128.254,
Networks may also deliver packets out of order, TCP/IP network, because it's responsible for 213.201.43.23 and 192.168.1.200.
deliver them after a substantial delay or deliver delivering packets from the source host to the IPv6 was developed by IETF and its purpose is
duplicates. Nevertheless, a programmer can destination host according to the IP addresses. to solve the problem of running out of IPv4
program reliable applications that use IP by IP has to find an addressing method to addresses. IP uses 32-bit addresses whereas
implementing their own error-checking code but effectively send the packet to its destination. IPv6 uses 128-bit addresses, offering more than
this is a non-trivial task. Dedicated devices that you'd recognise as 7.9×1,028 times as many as IPv4.
&
On iOroSid!
And
Discover the most amazing Linux apps Try a minimal installation, make a rescue Resurrect those old machines with
for absolutely any task disk, and much more low-powered Linux distros