Overview and Background
If you have signed up for an account with the SCRTP, you will have been given access to the SCRTP Linux desktop. This is currently an installation of CentOS 7. In most senses it's very similar in use to the normal Windows or macOS machines that you are used to, but there are some significant differences, and further there are some tools that are essential to using an academic Linux install that a general computer user will be unfamiliar. This page aims to give a bit of background to Linux, describe a few terms and provide an overview of Linux computing generally. If you want to get started on the SCRTP Linux computer system straight away, go here.
What is Linux?
Used informally Linux is an operating system (OS), similar to Microsoft Windows and Apple's macOS. The purpose of an operating system is to interact directly with the computer and to provide an interface within which other programs run. A program is generally described as running "on" or "in" a given operating system. Linux is a very widely used operating system, but is less common than Windows or macOS for desktop computers.
Formally, Linux is only the kernel of the operating system, the very core part that deals with processors, memory, graphics hardware etc. The formally correct name of the OS is GNU/Linux, but this technical distinction is not often respected. Linux usually refers to the entire OS, and we will follow this convention here.
Why are there many different type of Linux? Are they different versions?
Yes, and no. Windows and macOS are both proprietary operating systems, they are owned by a single company. That company produces versions of their OS, which add new features, support for newer computers and extended support. These versions typically follow a straight line (Windows XP, Window Vista, Windows 7, Windows 8, Windows 10 for example). Microsoft (but not Apple) also produce different "categories" of OS intended for different purposes (Windows 10 for normal users, Windows Server 2016 for servers for example).
The situation is more complex for Linux. Linux is Open Source Software. This means that anyone that wants to can take the source code, recompile it and create their own "distribution" or "distro" of Linux, and many different companies have done so. A quick flick through the wikipedia page for "List of Linux Distributions" shows that there are a bewildering array of different types of distributions available. They are all different, with their own advantages and disadvantages, but they are all Linux operating systems. Within each distribution there are also always versions (SUSE Linux Enterprise is currently on version 12, and we are using 11 while a new deployment is underway).
This doesn't look the same as [Other Linux Distro]. Why not?
Any given version of Windows or macOS provides a consistent "look and feel" for programs running in them. In Linux this behaviour is due to a combination of two pieces of software : the "Window Manager" which decides what the frames of windows look like, and how to draw the widgets (menus and the close and minimise buttons) or controls (text entry fields, buttons, message and information boxes etc), and the "Desktop Environment" (DE) which controls things like the start menu, the system tray and other global interface elements. Linux doesn't have a single Desktop Environment or Window Manager (although typically a given Desktop Environment is always paried with a given Window Manager), there are a choice. Most distros have a single preferred environment that they are shipped with, but almost all of them allow you to change as well. The SCRTP desktops use KDE4 (for more information click here), but other popular choices are Ubuntu Unity, XFCE or Gnome3. These different window managers all look and feel quite different, but function in much the same way. It should only take you a day or so to adjust to a different one.
Are there other differences between Linux installs?
Yes. Most of the differences are either cosmetic, or make little difference to an end user but there are lots of differences. If you have to search for a problem, remember to include the fact that you are using CentOS in your search.
So if this is Linux, what is UNIX?
Linux is a "UNIX-Like OS", there are others. UNIX was originally an OS designed at Bell Labs in the 1970s, and until 1994 an OS called UNIX was published by various vendors. In 1994 ownership of the trademark moved to a standards group called "The Open Group" which created a standard called the "Single UNIX Specification (SUS)". From this time onwards, any OS which complies with this standard and registers with The Open Group can call itself a UNIX system. Currently IBM AIX, EulerOS, HP-UX, Inspur K-UX, macOS, Solaris and IBM z/OS are the only UNIX OSs. Only macOS is a common desktop OS. You might encounter AIX, HP-UX or Solaris on high performance computing equipment. Linux is very UNIX like, and familiarity with Linux will often allow you to use these systems, but there can be differences.
What about macOS then? Can I use it like Linux?
macOS is a proprietary, SUS compliant, POSIX compliant OS. As a result, macOS is able to use almost all software intended for UNIX or UNIX-like OSs (so long as you have the source code or a macOS version has been released). However, there are some differences in how many tools work between macOS and Linux. If you're using macOS and you're finding that instructions for Linux tools don't work, try finding ones for macOS or BSD.
What is "root"?
"Root" is the name for the adminstrative super user. The root user is generally able to control everything, install any software that they want and generally muck around with the system. You will never be given root access to an SCRTP machine, all of our machines are administered remotely.
What is a package manager?
Most modern Linux distros do not come with every piece of software that you might ever want preinstalled. To make it easier for you to get the software, they generally come with a package manager to help find, acquire and install additional software. Once again there is no one "package manager" that comes with "Linux", each distro has its own package manager. There are often both command line and graphical versions of the package manager installed, and one or the other might be more suitable for what you want, consult the documentation for your distro. You cannot use the package managers on the SCRTP desktop since distribution of software is centrally managed.