Comparison of operating systems for the server. Installing a Linux server. Linux for server

I needed to collect a small home server for the following tasks:
  1. Print server
  2. Backups of several home machines (a couple of laptops, one and a half desktops).
  3. Photo archive storage
  4. Music storage
  5. Document storage
In the future, perhaps, several more USB devices will be hooked up, such as webcams and thermometers, but this is true for the future...

It will not be a router - another computer does that. A this server will handle exclusively internal needs. Plus, for complete happiness, you will hang on a different phase (and ideally, you will also be connected via wifi n, but this is also for the future).

Iron
The hardware looks like this: an Intel board on a 330 atom (dual-core), a gigabyte of RAM, an Inwin 639 ITX case, a pair of screws - 250 gigabytes and 640 gigabytes (this is temporary, then I’ll replace it with a larger one). This iron was chosen due to its small size. The case allows you to install only two hard drives, but this will suit me - very large volumes are not expected. Even the current 640+250 will last a long time. But hardware is not interesting; people write about it here all the time. And everything is about the same thing. :)

I’d rather write about the server software - what I chose, why I chose it. Well, I’ll also write about my impressions. Later. :)

OS selection
Options.
Well, first, free and open source:
  1. FreeNAS. Free, but inside it is free with all its shortcomings in terms of hardware support. USB thermometers do not light up. :) And the functionality is not very interesting.
  2. ebox is undoubtedly an interesting and worthy thing, but inside it is neon Linux. That is, either take what they give by default, or a lot of manual work, because what they give by default rarely suits me in Linux... For example, I don’t like Linux file systems.
  3. Any Linux distribution. See previous point.

After I went through open sources, I came up with proprietary options, but free (in my case):

  1. Windows XP Home (distribution kit with a sticker lying around). I won't say anything here. Only from poverty or complete lack of support for the necessary equipment by Linux. Otherwise, it's no better than Linux. The file system is nicer, except that (from the user's point of view - by chance deleted files you can restore, for example :)). But if there was a choice between Linux or XP Home, I would choose Linux.
  2. Windows Web Server 2008. I have 3 of them - MS gave them out at one time at every opportunity. Maybe I would have stopped there, but WWS does not know how to share a printer, for example. Verified.
Somewhere at this stage I remembered a product called Windows Home Server, promoted by MS as an OS for home servers. After reading the description, I realized that this is almost what I need.

What exactly is WHS: it is a server operating system from MS, based on Windows based SBS 2003 SP2. That is, inside it is almost a full-fledged Windows Server with some additional features.

What I personally liked:

  • Collecting information about all home computers is initially just a security center complaint, but this is expanded with plugins.
  • Automatic full backup of all home machines. That is, if you are covered HDD, you can install a new one, boot from the CD, which will merge the backup from the server and deploy it to your computer. To save space, identical files located on several computers are stored on the server in only one copy. You don't have to back up data that is not particularly important - there is an exception setting. All sorts of swap files, hibernation files, etc. entered there immediately.
  • Single storage (all disks are combined into a single array, something like JBOD). But there is one very useful feature- replacing disks in an array (Drive Extender). That is, you can connect new disk, include it in the array, then click on the “Extract from array” button on one of the old drives and all the information from the extracted drive will be automatically shoved across all other drives. We can say that for this alone, in my eyes, WHS has no competitors - maybe Linux can be upgraded to the required functionality (dig towards LVM, mhddfs, etc.), but this is all the time, plus ease of use.
  • Possibility to assign storage on two disks for important data. Those. select the folder, click “Duplicate” in the properties - and it will be physically stored on two different drives. Those. If one of them takes off, the information will not be lost. True, backups are not duplicated. On the other hand, it rarely happens that both the original and the backup are covered at the same time.
There, of course, there is some other functionality, but in this case I needed this one.
OS mining
But here we need to dwell in more detail. I prefer to use legal software, so in this case torrents were closed to me. You can try it quite legally. 120 days, I think.

But there are some problems with buying. You won’t be able to just come to the store and pay $100 - it’s not sold at retail (I’m in Russia, in case anyone decides to tell me the store’s address :)).

  • Option one: Buy a piece of hardware based on WHS. It doesn’t fit - I don’t know any companies that sell such pieces of hardware in Russia.
  • Option two: Order a piece of hardware abroad. What stops me is the price of such pieces of hardware (especially taking into account delivery and customs).
  • Option three: Buy a box on ebay (~$130). I could try, but I still haven’t acquired a normal bank card.
  • Option four: www.softkey.ru. In principle, the most realistic and convenient, but not without pitfalls, the name of which is the WHS license, which allows it to be distributed only as part of ready-made devices. That is, you can’t buy it, put it on a self-assembling piece of hardware and use it. Assembled computer definitely need to sell. No problem. If I need it, I'll sell it. For yourself. :)

A friendly firm selling iron is hired. Ask to order it in the WHS softkey (the cost is around 3800 rubles + delivery). Then you order from this company the assembly of a system unit from the components you are interested in. When purchasing, enter WHS on the same receipt. Everyone is happy.

A couple of notes:
In principle, the components can be bought elsewhere, and the company can simply give the sales receipts - they will pretend that they bought them, and then sell them to you. :)

WHS in softkey can only be paid legal entity, they don’t give it to a private person. After ordering, they called me back and warned me about the above-mentioned licensing restrictions.

Conclusion
Basically, it's all about choice and purchase.
Description of the WHS installation I don’t see any point in doing it - the server is like a server. I've already said everything about hardware.
But I’ll do a review of the management interface (WHS Console) and the addons I like.

PS. Everything I write is my personal opinion. If I'm wrong somewhere, please point out the errors. But preferably not in the “you’re wrong, MS paid you” version, but something like “you’re wrong in this place, here’s the proof link.”

This material is devoted to the basics of the operating system. Linux server. From of this material You will learn why it is worth using Linux as a server, and also receive the necessary initial knowledge that will be useful to you to start working with servers based on this OS.

First, let's talk about why you should use Linux as a server operating system. Many people are so used to Windows that they don’t even want to hear about Linux, I mean even custom versions of Linux with beautiful and comfortable desktops. And to the question, why don’t you want to use Linux? Everyone answers: “ Yes, he's kind of clumsy!», « " and so on. But in fact, to all users who are so categorical about Linux, I want to say that Linux is a very friendly operating system, and you just need to understand it a little and everything will become clear to you.

Now I want to list some advantages of Linux over Windows, and also dispel some myths:

  • Linux is a completely free operating system ( with the exception of some paid distributions), unlike Windows;
  • Linux is virtually virus-free;
  • Everyone who says that " Programs I use on Windows do not install on Linux", You might think, why should they be installed!!! After all, this is a completely different OS, it has its own programs! It can also be said about Windows that “ programs that run on Linux do not install on Windows", for Linux there are many of their own programs that are not inferior to Windows, and many manufacturers also software They release their products for both Windows and Linux.
  • Linux is more productive, especially the server version of the operating system. I explain, server operating systems Linux systems without interfaces, but most of the resources ( more than a half!!!) just occupies the OS interface, i.e. visual shell ( today have become widespread and Windows versions without GUI ).
  • Linux OS practically does not freeze, ( I mean the operating system itself). For example, everyone has encountered a situation where in Windows everything freezes, you can’t help but move the mouse, you can’t even press ctrl+alt+del, and you have to reboot. Linux is designed in such a way that such a situation is excluded, except in one case when you yourself cause such a situation.
  • Regarding the Linux server OS, it is quite simple to configure, unlike its Windows counterparts, which have a lot of different gadgets that are not so easy to understand. The Linux system itself and all its services are configured by editing configuration files. These are ordinary text files, knowing their location and format, you can configure any distribution, even if you don’t have any tools at hand other than a text editor.

I don't want to popularize Linux OS and disparage Windows in any way, but in some cases best option How to use the Linux operating system cannot be found. Until some time, I also thought that Linux was somehow not our thing, but when I came across this OS, I was simply pleasantly surprised.

Now let's get straight to the basics of Linux Server. For example, we will use the distribution Linux Ubuntu Server 10.10.

Basic Linux Server Settings

Describe the process Ubuntu installations Server 10.10. I won’t, because it’s no more complicated, and maybe even simpler than Windows installation, the only thing I ask you to do during the installation process is when “ Selecting the software to install» mark installation « OpenSSH Server" This is so that you can later connect to this computer remotely using an ssh client ( for example PuTTY). And at the same time, you will have full access to the operating system from any computer on your network, since a monitor is usually not attached to the server and the server itself is located in a specially designated room for servers ( server).

In the window " Setting up user accounts and passwords» Enter your username and set a password.

After installation, you boot for the first time, and the OS management console appears before your eyes. To begin, enter your login, press enter, and then your password in order to enter the OS itself. You will be logged in as the user you just created, which does not have root privileges.

Setting up users in Linux

ROOT– standard superuser of Linux OS, which has maximum rights. By the way, unlike Windows, in which administrator rights are not the highest ( there are also system ones), and here root rights the highest and if you work as root and perform any actions, no one will ask you “ Do you really want to do this?"as in Windows, for example, but let's say right away that you will kill the system, without any questions there. But, one way or another, we first need to activate this user, because in the future we will need superuser rights ( Tip: Always work as a normal user until you need to switch to root mode), root is disabled by default. Activation account root is done as follows, just set the password for root.

Sudo passwd root

The system will ask you to enter the password of the user you are working under, and only then will you enter a new password for the future root and repeat it.

Since we're talking about users, let's learn how to create them. It's done like this.

Sudo useradd -d /home/testuser -m testuser

  • sudo is a utility that grants the user some administrative privileges;
  • useradd – a utility that adds a user to the system;
  • -d – option to set the home directory for the user;
  • /home/testuser – home directory path;
  • -m – option to create a home directory;
  • testuser is the name of our new user.

Now we set a password for the new user.

Sudo passwd tester

Setting up a network in Linux

Now that we have a little understanding of the users, we need to configure the network, it is quite possible that the DHCP server has already done this, but perhaps you want to set static IP addresses, gateway addresses and DNS ( which, in principle, is natural for the server).

To do this, edit the following file.

Sudo nano /etc/network/interfaces

  • nano is a standard Linux editor;
  • interfaces – a file responsible for the network configuration.

When you open this file, you will see something like the following, or rather, it will look like this in the end if you need static IP addressing on this computer.

# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet static address 192.168.1.2 netmask 255.255.255.0 gateway 192.168.1.1

Here eth0- it's yours network connection, there can be many of them depending on how many network cards you have, Static says that this is a static IP address, if it were dynamic, then DHCP would be specified instead of static. Well, the rest is probably all clear.

  • Address – computer IP address;
  • Netmask – subnet mask;
  • Gateway - default gateway.

Save the file by pressing ctrl+o and then exit the editor with ctrl+x.

Now you need to assign a DNS server, this is done by editing the following file.

Sudo nano /etc/resolv.conf

Write or change the following.

Nameserver 192.168.1.100 nameserver 192.168.1.200

Where, 192.168.1.100 and 192.168.1.200 are the addresses of our DNS servers, if you have only one DNS server, then indicate only one line.

When we have configured everything, we need to restart our network interfaces, this is done as follows.

Sudo /etc/init.d/networking restart

Installing programs on Linux Server

IN Linux programs are installed completely differently than in Windows, so the knowledge that you had when working with Windows will not help you here. In Linux, all software is stored in Repositories - this is a kind of repository of software packages special for Linux, which is located on the Internet, and is freely distributed online, or on CDs. In order to update your repositories ( already installed on Linux OS), You need to run the following command ( provided that you have an Internet connection).

Sudo apt-get update

Now that we have updated the standard repositories, you can install something, I suggest installing file manager, one of the most common in Linux is - Midnight Commander (MC). There are slight similarities with FAR, which is used in Windows. Programs in server Linux are installed as follows.

Sudo apt-get install mc

Where, mc is our program that we want to install, i.e. our file manager Midnight Commander.

After installation you can try this program, it is launched simply, enter the name of the program in the console, i.e. mc and press enter.

I think this is enough for the basis; in the following articles (Basic Linux Ubuntu Server Terminal Commands) we will talk more specifically about setting up any services ( demons). And that's all for now.

A server operating system is software that provides a computer with special capabilities, since setting up a computer with a server operating system installed on it turns it into a server (a server is a computer capable of serving shared resources on a network). As a result, such an operating system makes the server the control center for all requests from client computers that try to access local network resources.

Server operating systems have changed a lot over the past 15 years. The first systems were mainly intended to provide file and print services to users. That is, to deploy other types of servers on the network, such as Web servers and application servers, it was necessary to install a certain number of servers, each of which performed only one function.

Today, networking software has become more complex and supports many different services, meaning a single server can provide both remote access and Web services, as well as serve as a router between two IP subnets. Network interface operating systems also became more friendly towards system administrators.

For example, many platforms, such as Microsoft Windows Server 2003 and Novell NetWare 6.x, provide many different services beyond file and printer access. These services include remote access and management of the Web site, as well as support for network services such as DHCP and DNS. The network operating system utilities used to manage the server have a graphical user interface, unlike command line, making it easier to configure and monitor the network.

1.5.2 Interaction between the client and the server operating system

To exchange information between a network client and server, client computers must be equipped with software that “configures” them to work on the network. Such software is called network client software.

When a computer accesses a file on a local hard drive or a directly connected printer, the request is sent to the computer's processor. The processor executes the request and either opens specified file, or sends a print job to the printer. All these operations are carried out locally. Network client software installed on a client computer performs a special operation that causes the computer to consider network resources to be local.

This process is carried out by a component of network client software called a redirector. It intercepts any requests made on the computer, such as a request to open a specific file or print data to a printer. If the redirector detects that the user wants to access a remote file on the server or print to network printer, the request is sent to the network server. If access to a local file (on the computer's hard drive) is requested, the redirector passes the request to the computer's processor and the request will be processed locally.

So, the network is up and the switch is vigorously blinking its diodes. It's time to set up our small but proud server running Ubuntu Server 10.04 LTS. Using a disk image (it can be via HTTP or via torrent, - 700Mb.) we write it to a disc. For these purposes, I recommend using “Daemon Tools Lite" or " " since both of these programs are free and fully meet our requirements.

We exhibit in bios boot from CD or DVD and reboot.

To begin with, we will be asked to select the installation language. Let's choose Russian.

Clue: Pay attention to the line at the very bottom of the screen. It lists function keys, with which you can navigate menus, select options, access help, etc. This is a feature of nix systems.

We find ourselves in the disk boot menu. Select “Install Ubuntu Server”.



We will be asked where we will use our server, this will affect the choice of update mirrors (repositories). Since Internet providers usually provide access to IX (UA-IX, MSK-IX and similar segments) for more high speeds, choose our location. Since I live in Ukraine, I chose “Ukraine”.





In the list of countries, select “Russia”:



After this the search will begin network devices For additional features installations.



So, after a thorough search, two were found (in Linux environment they are designated as eth0 and eth1 - ethernet). We need to select the one that is connected to the Internet (router or modem on our local network).



If DHCP was configured on the router ( DynamicHostConfigurationProtocol- automatic assignment protocolIPaddresses), the network card will receive the appropriate settings automatically. In my case, the DHCP server was not configured, which the installation program informed us about. It doesn’t matter, because you can configure everything manually later, accept the failure and continue with the installation.



So we were offered to enter the connection settings manually or try again, skip the network setup or go back and select another network card. Select “configure the network manually”.



  • IP: 172.30.2.3
  • Netmask: 255.255.255.0
  • Gateway: 172.30.2.1
  • DNS: 172.30.2.1

After setting up, we will be asked what our new server will be called? I called him " CoolServ" The name should contain only Latin letters, numbers, dashes or underscores, otherwise unforeseen troubles may arise.

In general, it is better to follow three rules for naming variables in programming languages, namely: the name should not begin with a number, there should be no spaces in the name, and you cannot use reserved words (special constructs, for example if, else, for, goto, etc.) There is also a fourth thing - do not use characters from national alphabets other than Latin, for example: Russian, Japanese, Ukrainian, etc. If you adhere to this rule, you will never have problems with the operation of programs and the display of file names.



The OS has determined that we are in the Europe/Zaporozhye time zone, those are GMT+2, everything is so. Accordingly, you will have your own time zone if you do not live in Ukraine.



Now comes the worst part of any OS installation - the markup for its installation. But friendly The OS (this is how the word “ubuntu” is translated from the language of some banana republic tribe) will help us do everything quickly and efficiently. We have two marking options: automatic or manual. Since we are not looking for easy ways, we choose manual marking.



The photo below shows the connected drives. In our case, this is one 8 GB SDA disk under the name (WD, Seagate, etc. In my case this is - virtual disk Virtual Box). Let's choose it.

Note: In *NIX-like OSes, drives do not have the usual Windows names, such as “C” or “D”. Instead, they are referred to as HDA (for an IDE channel) or SDA (in the case of SATA or SCSI drives).

The last letter in the name (A) indicates the drive in alphabetical order. Those. - next SATA drive will be called SDB, SDC and so on. But this is only the naming of physical disks, and their logical partitions will look like SDA1, SDA2, SDA5, etc. Moreover, numbers from 1 to 4 mean the primary partition, from 5 and above - logical. Don’t be confused by such a strange name; over time, I hope, it will become as easy and familiar as in the MS Windows environment.



The ominous inscription in the screenshot below informs us that everything that was on the disk may be lost during re-partitioning, but we are not afraid of anything and click “Yes”.



After this, a partition table will be created, which needs to be “filled” with the partitions themselves. Choose free place and click next (Spacebar).



In the next screenshot, select “Create a new partition”, although everything can still be done automatically, we will stubbornly set it up manually :)



We enter the size of the new disk in MB or GB, first we will create a swap (analogous to a paging file in MS Windows), 512 megabytes in size. Although it is recommended to make a swap size one and a half times larger than the size of the total amount installed, we will make it equal to this value.

Note: *NIX operating systems (Unix and Linux) use the page file more correctly (especially in versions without a graphical interface), here the swap will be loaded extremely rarely. For example, on my server, out of a 1Gb swap, a few megabytes were used as much as possible, and that was due to a really heavy load and uptime for about a month. In any case, there is no point in doing more than a gigabyte, as you will simply lose space, which is always missing.



Select the partition type. I chose primary (i.e. full name this section will be - SDA1)



In the next screenshot we will need to explicitly indicate that this will be a swap section. To do this, in the partition settings, select the “swap partition” option, check the “boot” label and finish setting up the partition.



Now again we select a free area, create a disk, but now we will select the “logical” type. Let's set the size to 15 GB, file system type: EXT4, mount point: / (root) and that's it for this section.



For the remaining space, we create a logical partition with file system EXT4 and mount point /home, this will be the home directory of all users (analogous to the “Documents and Settings” directory in MS Windows). This is where we finish setting up the disks. As a result, you should get something like the following.



If everything is correct, then select “Yes” (as shown in the screenshot below). This is the last moment before writing the partition table to disk (so far all the settings we have made have been written exclusively to RAM PC). Well, here we go!



After recording the table, the installation of the Ubuntu Server 10.04 LTS OS itself will begin, it will take 5-7 minutes.



After the process is completed, we will be asked to enter the name of the future user. I'll enter my name. It will be used to send mail on behalf of this user.



After entering the name, we need to come up with an account name, the user under which we will log in. I used asus(this is not an advertisement :))





For security purposes, we will be offered to encrypt our home directory for free. We have nothing to hide, so we will refuse.

Note: When encrypting, there is a risk that in the event of problems with the hard drive, it will be difficult to recover the encrypted information.



We are asked to enter information about the proxy server to gain access to the Internet. Since we don’t have it yet, we’ll just leave the field empty. Select “Continue”.



Unlike money-hungry MS Windows, Ubuntu offers completely free and timely updates via the Internet. Let’s select the “install security updates automatically” option so as not to have to do this manually later.



Also, we will immediately be offered to install a couple of “daemons” (analogues of system services in Windows). Yes, this is a “scary” OS, there may even be “zombies” - frozen “demons”, and there are no icons :) For ease of configuration, we will select Open SSH server (so that if necessary, you can connect to the server remotely over the network using a terminal) .

Finally! Ubuntu Server 10.04 LTS is installed and you can check out the fruits of your labors! We try to log in using the username and password specified during installation.



After successfully entering your login and password, the OS will greet us brief information about your condition. It will look something like this for you:



From the information in the screenshot above you can see:

  • The system is loaded at 0.4%,
  • The home directory uses 3.3% of 1009 Mb of space.
  • 3% of 512 Mb of RAM is used, which in megabytes is only 21 Mb. For comparison, MS Windows XP Pro SP3 after a “clean” installation (from the original disk) uses about 100Mb and initially “holds” 30 megabytes in the swap file.
  • Now there are 84 processes running, there are no logged-in users (because the information was taken before the user, i.e. we, logged in).
  • One network card under the name eth0 the IP address 172.30.2.3 is assigned
  • There are also 89 service packs and 67 security update packs available.

After installation, you need to update the OS; this will require about 70 megabytes to download from the Internet. Run the update command as root (administrator) sudo apt-get update which will update the list of available packages.

Since the command requires the rights of the super user “su” (super user), we will be asked for our password, enter it. The command entered next apt-get upgrade will start the package update process itself. After launch, the list of packages will be checked and updates will be offered; confirm the installation by pressing the “Y” key.



The “get update” command updates the list of available software, including only information about it (version, etc.), and the “upgrade” command directly updates the software (downloads it from the developer’s website new version and installs it).

Let's look at the same update procedure using the sudo command



After downloading the necessary packages, installation will begin, which may take several minutes.

Your server is now ready to go! But it still needs to be configured. This is what we will do in the next article.

1. What trends in the development of server operating systems could you note in 2015–2016?

Vitaly Chesnokov, QSOFT
Server operating systems have always strived and strive for stability, speed, fault tolerance, uninterrupted operation during maintenance, and ease of deployment and administration.

IN last years The number of servers running on the *nix OS family is growing. This is due to their high stability and speed of operation. Co Linux time becomes more and more convenient to use. In addition, there are distributions that have official support from the manufacturer and are aimed at enterprise-level companies. In this situation, it is not surprising that even products such as MS SQL and .NET are receiving Linux support. In the next few years, full support for Linux applications in the Microsoft OS family is expected. Since support will be implemented by translating system calls from the Linux kernel to the Windows kernel, it is expected that the performance of applications operating in this way will not be reduced.

Also, over time, the uninterrupted operation of server operating systems has greatly increased. For example, not long ago it became possible to reboot and update drivers without rebooting the system. It has even gotten to the point where it is possible to completely update a modern Linux distribution (including the kernel), almost unnoticed by the end user.

Nikolay Apurin, Artwell
Increasing the number of Linux servers.

Nikolay Fetyukhin,MST
Mainly supporting and extending virtualization and clustering. The main modern trend is the rapid deployment of components and systems from prepared images to virtual machines. Also improved cluster management tools and remote control other cars.

Petr Urvaev, SimbirSoft
There have been no major changes, and Linux and Windows are still used as server operating systems (of course, in their latest versions and assemblies).

Evgeniy Gusev ITECH
Firstly, containerization is a revolutionary resource management concept that took root in the industry overnight, but is still only revealing its potential. Undoubtedly, many interesting things still await us.

Secondly, clustering, focus on cloud computing. In part it echoes the previous point, in part it is an independent trend. CoreOS, Openstack, Microsoft Azure are bright representatives of the present and near future of server computing.

2. How do you assess the extent of distribution and quality of domestic server OS?

Vitaly Chesnokov, QSOFT
Despite the small degree of distribution, the number of domestic operating systems based on Linux is growing steadily. These operating systems are mainly used in the government sector and the defense industry. It's safe to say that domestic operating systems have received all the advantages of Linux. In addition, they are mostly certified by FSTEC. We can predict a rapid growth in their popularity.

Nikolay Apurin, Artwell
They exist - this is definitely a plus. Of course, this is not a mass industrial solution (there are no domestic operating systems that have been installed by more than 100,000,000 people), but they perform their task of protecting information perfectly.

Nikolay Fetyukhin,MST
Domestic operating systems are mainly specialized for certain industries and the army. Good example- AstroLinux and WSWS, but they lag behind the main repositories, so they are rarely used widely in non-specialized projects

Petr Urvaev, SimbirSoft
Domestic server operating systems are niche products developed on Linux based. They do not provide additional functionality compared to world analogues and therefore are little used in commercial development. Domestic server operating systems are used mainly in the public sector and the defense industry, where complete control over all stages of development of the software used is more important than commercial profitability.

Evgeniy Gusev ITECH
In the niche that is reserved for them - mostly highly specialized operating systems - they are common and cope with the tasks. Like OS general purpose It is difficult for them to compete with free, more widespread and better documented analogues.

3. What factors influence the choice of server OS?

Vitaly Chesnokov, QSOFT
Each OS has its own advantages and disadvantages; in addition, there are some highly specialized OSs tailored for the operation of certain services. The main factors influencing the choice of OS will be: price, availability of support from the OS manufacturer, support for the software required for the project, complexity initial setup, complexity of administration and project tasks. In general, any of the server OS provides stability, speed and high fault tolerance in operation, so the choice is usually made based on the above points.

Nikolay Apurin, Artwell
First of all, it is necessary to understand what information will be processed, determine the required degree of its protection and the requirements for the OS information system, which will process the information.

Nikolay Fetyukhin,MST
First of all - the development platform, then - support, security and convenience. We deploy our .NET projects on Windows Server 2012 R2. For servers mobile applications(Python, Django) virtual machines with Debian are most often used. Virtual machines deployed on Hyper-V on Windows Server.

Petr Urvaev, SimbirSoft
Easy to use and configure, support for the selected OS technologies used in the project. This is especially true for software from Microsoft, some versions of which may not work on Linux.

4. What reasons can lead to the transition to a new server OS? What difficulties may arise in the process and how can they be overcome?

Vitaly Chesnokov, QSOFT
If properly configured, a server OS can work uninterruptedly for years in a static project. Typically, the reasons for the transition are either vulnerabilities that cannot be fixed without updating, or the rapid development of the project, the need to use new software and scale.

When switching to a new OS, administrators often encounter compatibility problems, although recently such problems have received a lot of attention from server OS and software developers. As practice shows, the transition can be carried out in any case, but this may require certain resources on the part of both administrators and programmers of the project. Naturally, such risks are reduced with competent, continuous administration and development.

Nikolay Fetyukhin,MST
Increased productivity, development platform requirements, more convenient management and monitoring tools. Difficulties most often arise in backward compatibility. Linux servers are especially prone to this problem. To overcome difficulties, it is better to clearly plan the transition in advance so that development can test and adapt applications to the new environment and use test machines.

Petr Urvaev, SimbirSoft
The reason for switching to a new server OS may be the end of support for the operating system you are using or the transition to new software that is incompatible with the current OS. At the same time, the transition to a new version of the OS is relatively painless, but difficulties arise when moving from one OS to another (for example, from Windows to Linux).

Evgeniy Gusev ITECH
Compliance with the intended tasks, level of support and size of the community, licensing policy and the degree of integration into the company’s existing infrastructure.