The duel between Linux and Windows may have an obvious victor on the home computer front, but the battle for server use paints a very different picture: since the beginning, Linux has bested Windows, as usage figures show. But many users remain unconvinced by statistics and rightfully ask the question: what are the actual differences between the two platforms?
Although Linux operating systems are relatively well-known, there are few computer users who have Linux installed on their PC. The situation with the server environment looks totally different, however: Unix-like systems are a more popular alternative to Microsoft Windows.
What is Linux exactly?
Linus Torvalds, from Finland, released an operating system kernel under the name Linux in 1991. The word is a composition of his first name and the underlying model, Unix. This basic interface between software and hardware was, and still is, used as a basis for a variety of operating systems, which are often denoted as Linux. In addition to the free licensed Linux kernel, the Linux operating systems are mostly based on freely available GNU software. The kernel and software package are also called distributions and continue to be popular among developers. This is because they are quickly distributed and can also be adjusted to as needed. In addition to the Linux kernel and free software programs, the distributors can add proprietary applications to the packages, e.g. Adobe Reader, as well as self-created programs (proprietary or free).
Throughout the years, countless distributions and their derivatives have been released this way. Debian, Ubuntu (its derivative), Mint, Gentoo, Fedora, Red Hat (Enterprise), openSUSE, and the smartphone system, Android, are among the most well-known Linux operating systems.
What are the advantages of Linux operating systems?
Cost, flexibility, and security are the biggest advantages of Linux distributions. Most distributions are available for free on CD/DVD or available as a downloadable file. If you have a Linux system installed on your hard drive, you can use it on any computer that has the similar architecture, without having to re-install a system or application. The modular design allows you to choose which components you need, depending on the computing power of your system. With options like Gnome or Unity, users can freely choose between different user interfaces that best match their individual tastes. Free extensions benefit your platform, provided that you don’t opt for a commercial distribution. Other users can make changes or you can adjust them yourself, completely independent from the manufacturer.
When it comes to security, Linux distributions have the added bonus of providing free encryption capabilities and the option of limiting user rights. This may help minimize any damage from occurring within a corporate network should a virus accidentally be opened and distributed. The widespread myth that there aren’t any security gaps or malware for Linux systems just doesn’t hold up. Using Linux at home is an unattractive target for hackers due to its low usage. Servers are a different story: at least half of all servers run on Linux operating systems, making them just as attractive for criminals as Windows Server set-ups.
Is a Linux distribution suitable for you?
It’s especially worthwhile for private users to set Linux as an operating system for the PC when looking for a free, non-proprietary solution. Whereas new Windows systems usually have to be bought, Linux distributions are developed and supplemented by users and security updates. Should this no longer apply to a certain system, you can easily switch over to another variant. It’s true that many private users find it difficult to get started with Linux. Even experienced Windows users planning on switching might need a while to get used to the unfamiliar environment and new applications.
Using Linux as a server operating system is just as beneficial and considerably more widespread. Besides the advantages mentioned above–flexibility, security, and independence from the manufacturer–the manageable hardware requirements and the considerably simpler licensing (in comparison to Microsoft) as well as the excellent Cloud support are some other rewarding benefits of the Linux operating system. When making your decision, you should also take the clients’ usage into consideration: while Linux excels at being a solution for web-based applications like e-commerce or CRM systems, Windows takes the lead when it comes to client-based services, such as Office programs. Linux distributions might present the most cost-effective solution as a server system; it’s often the case, however, that the support for free software will cost you.
Server administration via command line: Linux and the shell
If you have decided on a Linux distribution, you’re now faced with setting up and managing the system. In order for you, as a user, to be able to communicate with the computer, it’s recommended to use the services of a shell. This interface passes your commands on to the system kernel. There are two types of shells to choose from: with the help of a graphic interface you can comfortably operate your system with your mouse and by using symbols, control elements, and widgets. Command lines, on the other hand, can be managed by entering commands using the keyboard; corresponding user interfaces are normally named ‘shell’. With Linux systems, it can also be referred to as a ‘terminal’.
Server administration via command input is a bit more complex, but it is also very efficient since all system changes can be carried out centrally. In order to give you a small insight into the capabilities of the Linux terminal, we’ve put a short list together of all the important Linux commands used for server administration:
|ls||Show the content of a directory|
|chmod||Adjust the access rights of a directory or file|
|chown||Change the group and owner of a file or directory|
|mkdir||Create a directory or folder|
|rmdir||Delete a directory or folder|
|ps||Show the status of a process|
|kill||End a process|
|sudo||Run as administrator|
|useradd||Create a user|
|groupadd||Create a group of users anlegen|
|ifconfig||Configuration and status of network interface|
|curl||Transfer files to or from another server|