Over the last few years, Microsoft has been working to initiate Linux on Windows Server, most notably when it introduced container support on Windows Server 2016 to make it easier for Windows Server to work alongside Linux-based systems.
Microsoft is making these changes for a variety of reasons, but they reflect the reality that most organizations run both Windows and Linux, and that many of the most innovative new data center systems were originally built on Linux technologies -- containers, as an example.
Many experts now suggest that it is not enough to simply be a Windows Server expert. If IT pros want to advance their career and keep abreast of the latest technology trends, they need to know a thing or two about Linux on Windows.
The command line
Although most Linux systems technically can be used with a GUI, no Linux administrator would do this. The command line is where Linux has historically been administrated from and for good reason. Everything on Linux is a file, and manipulating text files from the command line is simple using tools like vi, which opens and make changes to text files while in the shell.
Linux IT professionals are also well-versed in using scripts to make changes to many systems at once, something a GUI cannot do as well. Windows users who are familiar with PowerShell should have an easier transition to Bash. The main difference is that Bash uses text streams while PowerShell is object-based. For an even easier transition, PowerShell Core can be installed on Linux to provide a familiar interface to the Linux command-line interface.
Windows Remote Management (WinRM) is the most common method for remoting between Windows Server systems. When remoting between Linux servers, the Secure Shell (SSH) tunneling protocol is used. The good news is that Microsoft ported OpenSSH to Windows, so it can be used to connect to both Windows and Linux systems.
With PowerShell Core, Windows users can employ the common PowerShell remoting commands Enter-PSSession and Invoke-Command with SSH (instead of WinRM) as a transport to Linux systems.
Installing software on Linux is accomplished with package managers such as Yum and apt-get that are run from the command line. These package managers connect to software repositories, and then download and install software from them.
On Windows, the Chocolatey package manager works in a very similar manner. For instance, the command to install a package with Yum would be yum install <packagename>.
On Chocolatey, the syntax is choco install <packagename>.
The Windows registry is the main source of settings for the OS, applications and users, and is accessed through the command line or the regedit application. There is no equivalent on Linux that a Windows user can look to that is similar to the registry. Finding settings is not easy as the registry is a massive hierarchal structure that holds an enormous amount of data and settings are not stored is an intuitive manner.
On Linux, configurations are mostly stored in text files under the /etc directory and to other locations based on the application. While there is no central location like the registry, finding and manipulating text files is much easier since settings are usually kept in plain text files.
Get hands-on experience
To get hands-on experience with Linux, I would recommend using the Windows Subsystem for Linux. WSL is a feature that can be added to Windows 10 or Windows Server 2019 that enables users to run Linux on Windows without the need for a VM. It also supports access to the Linux file system and from the Linux distribution into the local Windows file system.
Distributions can be installed through the Windows Store, by command line or script, or by downloading and installing manually. The technology behind WSL is similar to how containers work in terms of isolation. WSL is made up largely of two components -- LX Session Manager and Pico Processes -- that translate Linux syscalls to Windows APIs.