Cloud computing is slowly taking over our on-premises infrastructure. Major cloud vendors are now platforms that most employers expect us to be intimately familiar with. The cloud introduces a layer of abstraction we haven’t seen before. Nowadays, we sometimes don’t even know what kind of operating system is running our database or web application.
This is Part 1 in a four-post series on learning Linux from a Windows admin perspective.
But when a problem arises or when upgrades are necessary on a Linux host, Windows admins sometimes have to get their hands dirty and learn via the school of hard knocks. A lot of admins just don’t know where to begin with Linux.
In this series of posts, you’re going to learn how basic Windows-Linux concepts translate, how to use various remote tools, and some neat tricks to make administering Linux from a Windows box a bit easier.
Inside this in-depth blog post series, you will discover:
- Basic tips and tricks when starting out with Linux in a server environment
- An overview of the Linux filesystem and how to compares to Windows
- How users, groups, and file permissions work
- An introduction to Linux remote tools
- Some tricks to make navigating the command line a bit easier
If that all sounds good to you, let’s get started!
Table of Contents
This series will cover many topics that it’d be useful for you to follow along with. If you’d like to follow along with the concepts, you should have the following:
A virtual machine (VM) or physical host running OpenSUSE Linux. with the System Role set to Desktop with KDE Plasma as shown below. This article uses Leap version 15.2, which is the latest Leap release (as of writing this guide).
Using the desktop role (Desktop with KDE Plasma) in the Linux world is traditionally seen as using a crutch. Linux admins will assume you can work without a desktop environment and that should be the goal you are working towards. For tinkering and learning though, there is no drawback to using the desktop environment.
The majority of Linux guides use Ubuntu Server as their distribution of choice. Most people start out on Ubuntu when they dip their toes into Linux. Using Ubuntu Server is a natural extension. This article uses OpenSUSE because it is used by many businesses. It is even marketed as a distribution for developers and Sysadmins.
The article uses the latest OpenSUSE Leap release because these releases tend to be more stable than the bleeding edge Tumbleweed flavor.
- A Windows machine for remote administration. This article will assume you’re on Windows 10 but any version of Windows after 7 should work.
Getting Started with the Desktop Environment
At this point, you should have OpenSUSE up and running. Right after installation, you should see a barebones desktop environment as shown below. Now is a great time to introduce some of the basic features of the OpenSUSE desktop environment.
Notice how the desktop environment looks similar to Windows. The layout is nearly identical, with a taskbar, start menu, and desktop icons all placed in similar locations. This placement of GUI elements is an intentional choice by choosing the KDE desktop environment.
There are other Linux desktop environments that look nothing like Windows. Starting from a familiar place though is a good idea and a large reason why KDE is a good learning environment.
What’s the first thing you do when running a new operating system? It’s probably learning how to tweak all of the settings you don’t like! You can do just that and more with an important tool you should be immediately familiar with (at least in Ubuntu) called YaST or Yet Another Setup Tool.
As a Control Panel
You’ll need a place to manage all of the settings in Linux; one great tool to do that is using YaST. YaST’s other ability is to act as a Windows control panel too! If you are looking for a system setting to change such as an installed program, network settings, firewall, etc, the YaST control panel should be the first place to check.
To get to the settings area of YaST, click on the start menu and type yast. You should see a YaST menu item show up then click on the YaST menu item and provide your root password as you did before.
You can see a quick demonstration of these steps below.
YaST will become relevant when you start managing Linux systems remotely: it’s one of the big reasons OpenSUSE is the platform of choice.
Perhaps you need to change the hostname of your Linux instance. To do that, you could use YaST. If you’re on a new installation of OpenSUSE, your instance is probably named localhost.localdomain. That hostname isn’t descriptive. Let’s change the hostname with YaST.
If you’re more of a visual how-to kinda person, these steps are demonstrated in the next animated GIF.
With YaST settings open (shown above), click on the Network Settings menu item.
You’ll notice a warning when accessing the network settings like
Network Settings are Handled by NetworkManager. You’re receiving this warning because the network settings aren’t handled directly by this control panel. Instead, network settings are handled by the KDE display manager which is completely different than YaST.
One drawback about Linux’s collaborative nature is that not all programs will work through a single cohesive panel. Because KDE is separate from YaST, not everything can be changed in a single spot. The network interface settings is an example of that.
2. Click on the Hostname/DNS tab.
3. In the Static Hostname box, provide a new name for your computer and click OK. The animated GIF below is using homelab.local.
Think of YaST like the Windows control panel. It’s a tool to help you manage all of the various settings in OpenSUSE and manage all packages for installing, removing, and managing software.
As a Package Manager
Linux offers many (some would say, too many) ways of installing a program. You can find a program off the web, download it and install it like you would on Windows but, as an admin, this shouldn’t be the default way to find install new software in Linux. Why? Because using a package manager has various security measures in place that downloading random executables off the web doesn’t offer.
One of YaST’s most common features is acting as a package manager. A package manager, in the Linux world, is the same concept as something like NuGet packages or the PowerShell Gallery in the Windows world. A Linux package manager is simply a way to download, install, and remove software via packages.
Let’s now dive in and begin exploring YaST by installing the popular Nmap scanning package called zenmap.
If you’re more of a visual how-to kinda person, these steps are demonstrated in the next animated GIF.
- Click on the start menu in the lower-left corner and type software. You should see the YaST Software pop up.
2. Click on YaST Software (YaST Software Management is the same thing).
3. Provide the root password you provided at install time. This will being up the YaST interface. This step is like the familiar “Run as Administrator” step in Windows.
When YaST starts, you’ll see it scanning through a set of repositories. A repository is exactly like the PowerShell Gallery which is a central place where packages are stored.
4. On the Search tab, type zenmap and click Search. This will bring up the zenmap package.
5. Click on the checkbox beside the zenmap package to select it.
6. Click on the Dependencies tab. Notice how the package manager knows all of the dependent packages automatically.
Linux follows a concept called microservices. You’ll rarely see a program built as a single package. Instead, programs will link to lots of other external programs called dependencies to perform functions not built into the program.
7. Click on the Accept button and then on Continue to instruct YaST to begin downloading and installing the zenmap package.
8. Once all dependent packages and YaST are installed, you’ll see a summary screen. If so, you’re done!
For many packages, YaST will work just fine but if you need packages for more GUI-based applications, you might need the KDE Discover package manager.
Using the YaST Text User Interface
You’ve seen how to open up YaST and install a package but did you know you can also perform everything possible in the GUI via a text user interface (TUI) also?
What is a Text User Interface?
Because the command line is such an integral part of Linux, a goal of this series will be to introduce you to command line tools as you go. The good news is that there are plenty of Linux tools that have gotten really darn sophisticated at user interfaces inside the command line.
A TUI is designed to bridge the gap between a GUI and a bare command line. Linux servers make the assumption that your remote administration will be inside of a Secure Shell (SSH) remote session. This is entirely command line driven. As such, many Linux developers have spent a large amount of effort generating full user interfaces just using the command line. Let’s explore that with YaST!
For the most part, you can treat a TUI just like you would a GUI in Windows: albeit with a much greater focus on keyboard shortcuts. For example, the popular tool YaST control panel also has a TUI equivalent. You can see that in the YaST TUI below. Everything you do in the YaST GUI, you can also do in the YaST TUI.
Package Management with the YaST TUI
Let’s run through a great example of using a TUI. In this case, you’ll be using YaST’s TUI.
Note: All examples will be using OpenSUSE Linux with the KDE Desktop Manager installed.
For a visual walkthrough of the steps below, check out the following animated GIF.
- In Linux, open a command-line window by clicking on the start menu and typing
- In the start menu, click on Konsole. Konsole is KDE’s terminal.
- Type in
sudo yastto bring up an elevated YaST TUI session.
- Once in the TUI, navigate around using the arrow keys and the function keys. Any key highlighted yellow (such as the R in run) can be activated by holding down the Alt key and the highlighted letter.
- Use the arrow keys to highlight
software managementand press
alt+rto run the item.
- Search for
midnight commanderand use the arrow keys to select the package.
spacebarto accept the request.
alt+ato accept the changes and hit
alt+fto finish and
You’ve now installed the midnight commander software package using a TUI!
Finally, run the midnight commander software by running
mc inside the terminal. You should see a TUI pop up as shown below with your file system.