ENGLISH

Mastering Linux Administration: A comprehensive guide to installing, configuring, and maintaining Linux systems in the modern data center

Book information

Publisher
Packt Publishing
Year
2021
ISBN
1789954274, 9781789954272
Language
english
Format
PDF
Filesize
22 MB (23537017 bytes)
Pages
772\772
Time added
2021-09-18 14:34:52

Description

Develop advanced skills for working with Linux systems on-premises and in the cloud Key FeaturesBecome proficient in everyday Linux administration tasks by mastering the Linux command line and using automationWork with the Linux filesystem, packages, users, processes, and daemonsDeploy Linux to the cloud with AWS, Azure, and KubernetesBook Description Linux plays a significant role in modern data center management and provides great versatility in deploying and managing your workloads on-premises and in the cloud. This book covers the important topics you need to know about for your everyday Linux administration tasks. The book starts by helping you understand the Linux command line and how to work with files, packages, and filesystems. You'll then begin administering network services and hardening security, and learn about cloud computing, containers, and orchestration. Once you've learned how to work with the command line, you'll explore the essential Linux commands for managing users, processes, and daemons and discover how to secure your Linux environment using application security frameworks and firewall managers. As you advance through the chapters, you'll work with containers, hypervisors, virtual machines, Ansible, and Kubernetes. You'll also learn how to deploy Linux to the cloud using AWS and Azure. By the end of this Linux book, you'll be well-versed with Linux and have mastered everyday administrative tasks using workflows spanning from on-premises to the cloud. If you also find yourself adopting DevOps practices in the process, we'll consider our mission accomplished. What you will learnUnderstand how Linux works and learn basic to advanced Linux administration skillsExplore the most widely used commands for managing the Linux filesystem, network, security, and moreGet to grips with different networking and messaging protocolsFind out how Linux security works and how to configure SELinux, AppArmor, and Linux iptablesWork with virtual machines and containers and understand container orchestration with KubernetesWork with containerized workflows using Docker and KubernetesAutomate your configuration management workloads with AnsibleWho this book is for If you are a Linux administrator who wants to understand the fundamentals and as well as modern concepts of Linux system administration, this book is for you. Windows System Administrators looking to extend their knowledge to the Linux OS will also benefit from this book. Table of ContentsInstalling Linux and Setting up the EnvironmentLinux Structure, Basic Commands, Files and Text EditorsLinux Software ManagementManaging User Accounts and PermissionsWorking with Processes, Signals, Services and DisksLinux Server Setup and Remote AdministrationBasic Networking with Linux: TCP/IP and Network ConfigurationConfiguring Servers: Print, Web, FTP, Samba, NFS, E-Mail, DNS, DHCPSecuring Linux: AppArmor, SELinux, PAM, Cryptography, iptables, firewallsDisaster recovery, diagnostics and troubleshootingShort Introduction to Cloud ComputingWorking with Containers and Virtual MachinesOrchestration with KubernetesDeploying to the Cloud: OpenStack, AWS, AzureInfrastructure and Automation with Ansible Cover Preface Section 1: Linux Basic Administration Chapter 1: Installing Linux Technical requirements The Linux operating system Linux distributions Choosing the right Linux distribution Common Linux distributions Linux distributions – a practical guide Installing Linux – the basics How to install Linux Installing Ubuntu Installing CentOS The Windows Subsystem for Linux (WSL) Installing Linux graphical user interfaces GNOME KDE Setting up and using the Linux workstation Installing Ubuntu Desktop Default software packages Additional software packages Managing software packages with APT Summary Questions Chapter 2: The Linux Filesystem Technical requirements Introducing the Linux shell Bash shell features The shell connection The command-line prompt Shell command types Command structure Help from the manual The Linux filesystem Directory structure Working with files and directories Understanding file paths Basic file operations Commands for file viewing Commands for file properties Using text editors to create and edit files Summary Questions Further reading Chapter 3: Linux Software Management Technical requirements Linux software package types The DEB and RPM package types The snap and flatpak package types Managing software packages Managing DEB packages Managing RPM packages Using snap and flatpak packages Application streams in CentOS 8 Building a package from source The source code file Preparing the source code Setting up the environment Summary Questions Further reading Chapter 4: Managing Users and Groups Technical requirements Managing users Understanding sudo Creating, modifying, and deleting users Managing groups Creating, modifying, and deleting groups Managing permissions File and directory permissions Summary Questions Chapter 5: Working with Processes, Daemons, and Signals Technical requirements Introducing processes Understanding process types The anatomy of a process Working with processes The ps command The pstree command The top command The kill and killall commands The pgrep and pkill commands Working with daemons Working with SysV daemons Working with systemd daemons Exploring interprocess communication Shared storage Shared memory Unnamed pipes Named pipes Message queues Sockets Working with signals Summary Questions Section 2: Advanced Linux Server Administration Chapter 6: Working with Disks and Filesystems Technical requirements Understanding devices in Linux Linux abstraction layers Device files and naming conventions Understanding filesystem types in Linux The Ext4 filesystem features The XFS filesystem features The btrfs filesystem features Understanding disks and partitions Common disk types used Partitioning disks Logical Volume Management in Linux LVM snapshots Summary Chapter 7: Networking with Linux Technical requirements Exploring basic networking Computer networks The OSI model The TCP/IP model TCP/IP protocols IP addresses Sockets and ports Linux network configuration Working with networking services DHCP servers DNS servers Authentication servers File sharing Printer servers File transfer Mail servers NTP servers Remote access Understanding network security VPNs Working with VPNs Setting up OpenVPN Summary Questions Chapter 8: Configuring Linux Servers Technical requirements GitHub Questions Further reading Chapter 9: Securing Linux Technical requirements Understanding Linux security Introducing SELinux Working with SELinux Introducing AppArmor Working with AppArmor Final considerations Working with firewalls Introducing netfilter Working with iptables Introducing nftables Using firewall managers Summary Questions Further reading Chapter 10: Disaster Recovery, Diagnostics, and Troubleshooting Technical requirements Planning for disaster recovery A very short introduction to risk management Risk calculation Designing a disaster recovery plan Backing up and restoring the system Disk cloning solutions Introducing common Linux diagnostic tools for troubleshooting Tools for troubleshooting boot issues Tools for troubleshooting general system issues Tools for troubleshooting network issues Tools for troubleshooting hardware issues Summary Exercises Further reading Section 3: Cloud Administration Chapter 11: Working with Containers and Virtual Machines Technical requirements Introduction to virtualization on Linux Efficiency in resource usage Introduction to hypervisor Understanding VMs Choosing the hypervisor Understanding Linux containers Containers versus VMs Understanding the underlying container technology Understanding Docker Working with Docker Which Docker version to choose? Installing Docker CE Using the Docker commands Managing Docker containers Deploying a containerized application with Docker Summary Further reading Chapter 12: Cloud Computing Essentials Technical requirements Introduction to cloud technologies Understanding the need for cloud computing standards Knowing the architecture of the cloud Knowing the key features of cloud computing Short introduction to OpenStack Introducing IaaS solutions Amazon EC2 Microsoft Azure Virtual Machines Other strong IaaS offerings Introducing PaaS solutions Amazon Elastic Beanstalk Google App Engine DigitalOcean App Platform Red Hat OpenShift Cloud Foundry The Heroku platform Introducing CaaS solutions Introducing the Kubernetes container orchestration solution Deploying containers in the cloud The rise of micro operating systems Introducing microservices Introducing DevOps Introducing cloud management tools Summary Further reading Chapter 13: Deploying to the Cloud with AWS and Azure Technical requirements Working with AWS EC2 Creating AWS EC2 instances Using AWS EC2 instances Working with the AWS CLI Working with Microsoft Azure Creating a virtual machine Managing virtual machines Working with the Azure CLI Summary Questions Further reading Chapter 14: Deploying Applications with Kubernetes Technical requirements Introducing Kubernetes Understanding the Kubernetes architecture Introducing the Kubernetes object model The anatomy of a Kubernetes cluster Installing and configuring Kubernetes Installing Kubernetes on desktop Installing Kubernetes on virtual machines Running Kubernetes in the cloud Working with Kubernetes Using kubectl Deploying applications Summary Questions Further reading Chapter 15: Automating Workflows with Ansible Technical requirements Introducing Ansible Understanding the Ansible architecture Introducing configuration management Installing Ansible Installing Ansible on Ubuntu Installing Ansible on RHEL/CentOS Installing Ansible using pip Working with Ansible Setting up the lab environment Configuring Ansible Using Ansible ad hoc commands Using Ansible playbooks Using templates with Jinja2 Using roles with Ansible Galaxy Summary Questions Further reading Other Books You May Enjoy Index

Similar books