Richard Blum

Mastering Linux System Administration


Скачать книгу

messages. When the make command is finished, you'll have the actual hello software program available in the directory! However, it's somewhat inconvenient to have to run it from that directory. Instead, you'll want to install it in a common location on your Linux system.

      6 Install the application by typing sudo make install. Now the hello application is installed on your Linux system.

      Unfortunately, uninstalling an application installed by source code may or may not be easy. It's up to the developers whether to include an uninstall make script. Try running the sudo make uninstall command from the software directory to see whether that works.

      THE CORE LINUX PROGRAMMING LANGUAGES

      Most Linux utility programs are written using the C or C++ programming language. To compile them on your system, you will need the gcc package installed, as well as the make package. Most Linux desktop distributions don't install these by default. If the configure program shows an error that these parts are missing, consult your specific Linux distribution docs on what packages you need to install.

       Explore different Linux software package management systems. Developers bundle the files required for an application into a package to make it easier to install. A package management system allows you to easily track, install, and remove application packages on your Linux system. There are two popular Linux package management systems: dpkg for Debian‐based systems, and rpm for Red Hat–based systems.Master It The Debian Linux distribution maintains an official website that tracks all software packages as they're developed for the Debian environment. Go to the packages.debian.org website and determine what version of the systat application is available as a stable Debian package.

       Use Debian software packages to install software. The Debian‐based Linux distributions use the dpkg utility to interface with the package management system from the command line, and they use the apt‐cache and apt‐get utilities to interface with a common repository to easily download and install new software. A front end to these utilities is apt. It provides simple command‐line options for working with software packages in the dpkg format.Master It The C shell provides an alternative to the Bash Shell, handy for writing advanced shell scripts. For Ubuntu, the C shell is bundled as part of the csh package. What commands should you use to install the csh package from the standard Ubuntu software repository?

        Install applications using Debian snap containers. Application containers are a relatively new player in software package management. An application container bundles all the files necessary for an application to run in one installable package. This means the application doesn't rely on any external dependencies such as library files, and the container bundle can be installed in any Linux distribution and run. Currently, the two most popular container packages are snap, common in the Ubuntu Linux distribution, and flatpak, used in Red Hat Linux environments.Master It The PowerShell package provides a powerful scripting language similar to that found on Microsoft Windows servers. Ubuntu distributes the PowerShell package as a snap container. What command should you use to install PowerShell on your Ubuntu server?

       Install software from source code. The chapter closed with a discussion on how to install software packages that are only distributed in source code tarballs. The tar command allows you to unpack the source code files from the tarball, and then the configure and make commands allow you to build the final executable program from the source code.Master It There are lots of handy utilities created and shared by Linux developers. One such utility is the sysstat tool. The sysstat tool provides statistics for various features of your Linux system. You can find the sysstat tool on the developer's website, sebastien.godard.pagesperso‐orange.fr. After downloading the package tarball, what commands would you need to use to compile the software and install it on your Linux server?

      Red Hat Enterprise Linux (RHEL) is the most popular Linux distribution, and chances are that you'll install it many times during your Linux career. Gaining experience with this distro's installation process will help you become a Linux expert. If you read through Chapter 2, “Installing an Ubuntu Server,” some items within the installation steps will feel familiar. However, there are enough differences between installing the two Linux distributions that you can get tripped up.

      Therefore, our goal in this chapter is to assist you through your first installation of a RHEL distribution. We'll provide step‐by‐step guidance, help you avoid pitfalls, and ultimately build your sysadmin skillset.

       IN THIS CHAPTER, YOU WILL LEARN TO

       Review needed Red Hat Server hardware resources

       Determine the requirements for a virtual Red Hat system

       Obtain Red Hat Server software

       Conduct an installation of a Red Hat Server

       Audit the Red Hat Server's installation

      Before taking a look at the needed resources, we need to have a chat about fees associated with RHEL. This particular distribution requires you to pay money to use it. For example, every year it would cost you about $350 to potentially more than $1,300 per system to run RHEL on a server. This is expensive if you just want a Linux distribution to work with for learning purposes! But don't give up hope, because we've got a free solution for you. The CentOS Linux distribution is free of charge and is a community‐supported version of RHEL. For learning purposes, it will work perfectly for you!

      UNDERSTANDING RED HAT CHARGES FOR RHEL

      While it may seem odd to you that a company charges for its Linux distribution, Red Hat has solid reasoning and experience behind what it calls its subscription model. When you pay a subscription, besides getting the RHEL distro to run on a server and access to any of its software updates, you have access to experts.

      As an example, suppose you have a mission‐critical system running RHEL. The system starts to exhibit some performance issues. Your subscription with Red Hat includes a system performance expert, who will analyze and evaluate your server configuration and then make recommendations for improvement. In addition, you can talk to RHEL security experts and get technical support at any time.

      Red Hat has been using this subscription model for more than 20 years, and the popularity of this Linux distribution shows that the model works. You can find more information about the Red Hat subscription model at redhat.com.

      For our purposes in this book, the CentOS distribution without a GUI will provide what is needed since our target is a headless server (see Chapter 2 for a more detailed explanation as to why a GUI is typically not used in modern server rooms). Specifically, we're using a CentOS 8 Linux distribution.

      Before starting your CentOS installation, it's a good idea to review what resources are needed. This step is important in order to achieve a successful Linux distribution installation.

      UNDERSTANDING BASIC VIRTUALIZATION TERMS

      If you're unfamiliar with virtualization computer terms, it's a good idea to read through the first several pages of Chapter 22, “Exploring the Virtualization Environment.” If you'd like a quick jump start instead, a few basic definitions were covered in Chapter