My Account Log in

3 options

Mastering Ubuntu server : master the art of installing, configuring, managing, and troubleshooting ubuntu server 18.04 / Jay LaCroix.

EBSCOhost Academic eBook Collection (North America) Available online

View online

Ebook Central Academic Complete Available online

View online

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
LaCroix, Jay, author.
Language:
English
Subjects (All):
Operating systems (Computers).
Ubuntu (Electronic resource).
Physical Description:
1 online resource (552 pages)
Edition:
2nd edition
Place of Publication:
Birmingham ; Mumbai : Packt, [2018]
System Details:
text file
Summary:
Get up-to-date with the finer points of Ubuntu Server using this comprehensive guide About This Book A practical easy-to-understand book that will teach you how to deploy, maintain and troubleshoot Ubuntu Server Get well-versed with newly-added features in Ubuntu 18.04. Learn to manage cutting-edge technologies such as virtualization, containers, Nextcloud and more Who This Book Is For This book is intended for readers with intermediate or advanced-beginner skills with Linux, who would like to learn all about setting up servers with Ubuntu Server. This book assumes that the reader knows the basics of Linux, such as editing configuration files and running basic commands. What You Will Learn Manage users, groups, and permissions Encrypt and decrypt disks with Linux Unified Key Setup (LUKS) Set up SSH for remote access, and connect it to other nodes Add, remove, and search for packages Use NFS and Samba to share directories with other users Get to know techniques for managing Apache and MariaDB Explore best practices and troubleshooting techniques Get familiar with scripting Automate server deployments with Ansible In Detail Ubuntu Server has taken the data centers by storm. Whether you're deploying Ubuntu for a large-scale project or for a small office, it is a stable, customizable, and powerful Linux distribution that leads the way with innovative and cutting-edge features. For both simple and complex server deployments, Ubuntu's flexible nature can be easily adapted to meet to the needs of your organization. With this book as your guide, you will learn all about Ubuntu Server, from initial deployment to creating production-ready resources for your network. The book begins with the concept of user management, group management, and filesystem permissions. Continuing into managing storage volumes, you will learn how to format storage devices, utilize logical volume management, and monitor disk usage. Later, you will learn how to virtualize hosts and applications, which will cover setting up KVM/QEMU, as well as containerization with both Docker and LXD. As the book continues, you will learn how to automate configuration with Ansible, as well as take a look at writing scripts. Lastly, you will explore best practices and troubleshooting techniques when working with Ubuntu Server that are applicable to real-world scenarios. By the end of the book, you will be an expert Ubuntu Server administrator who is well-versed in its advanced concepts. Style an...
Contents:
Cover
Title Page
Copyright and Credits
Dedication
Packt Upsell
Contributors
Table of Contents
Preface
Chapter 1: Deploying Ubuntu Server
Technical requirements
Setting up our lab
Determining your server's role
Deciding between 32- and 64-bit installations
Obtaining Ubuntu Server installation media
Creating a bootable Ubuntu Server flash drive
Planning the partitioning layout
Installing Ubuntu Server
Installing Ubuntu Server on Raspberry Pi 3
Summary
Questions
Further reading
Chapter 2: Managing Users
Understanding when to use root
Creating and removing users
Understanding the /etc/passwd and /etc/shadow files
Distributing default configuration files with /etc/skel
Switching users
Managing groups
Managing passwords and password policies
Configuring administrator access with sudo
Setting permissions on files and directories
Chapter 3: Managing Storage Volumes
Understanding the Linux filesystem
Using symbolic and hard links
Viewing disk usage
Adding additional storage volumes
Partitioning and formatting volumes
Mounting and unmounting volumes
Understanding the /etc/fstab file
Managing swap
Utilizing LVM volumes
Understanding RAID
Chapter 4: Connecting to Networks
Setting the hostname
Managing network interfaces
Assigning static IP addresses
Understanding NetworkManager
Understanding Linux name resolution
Getting started with OpenSSH
Getting started with SSH key management
Simplifying SSH connections with a config file
Chapter 5: Managing Software Packages
Understanding Linux package management
Taking advantage of hardware enablement updates.
Understanding the differences between Debian and Snap packages
Installing and removing software
Searching for packages
Managing package repositories
Backing up and restoring Debian packages
Cleaning up orphaned apt packages
Making use of Aptitude
Chapter 6: Controlling and Monitoring Processes
Showing running processes with the ps command
Managing jobs
Dealing with misbehaving processes
Utilizing htop
Managing system processes
Monitoring memory usage
Scheduling tasks with cron
Understanding load average
Chapter 7: Setting Up Network Services
Planning your IP address scheme
Serving IP addresses with isc-dhcp-server
Setting up DNS with bind
Creating a secondary (slave) DNS server
Setting up an internet gateway
Keeping your clock in sync with NTP
Chapter 8: Sharing and Transferring Files
File server considerations
Sharing files with Windows users via Samba
Setting up NFS shares
Transferring files with rsync
Transferring files with scp
Mounting remote directories with SSHFS
Chapter 9: Managing Databases
Preparations for setting up a database server
Installing MariaDB
Understanding the MariaDB configuration files
Managing MariaDB databases
Setting up a slave database server
Chapter 10: Serving Web Content
Installing and configuring Apache
Installing additional Apache modules
Securing Apache with SSL
Installing and configuring NGINX
Setting up failover with keepalived
Setting up and configuring Nextcloud
Chapter 11: Learning Advanced Shell Techniques
Understanding the Linux shell
Understanding Bash history.
Learning some useful command-line tricks
Redirecting output
Understanding variables
Writing simple scripts
Putting it all together: Writing an rsync backup script
Chapter 12: Virtualization
Setting up a virtual machine server
Creating virtual machines
Bridging the virtual machine network
Simplifying virtual machine creation with cloning
Managing virtual machines via the command line
Chapter 13: Running Containers
What is containerization?
Understanding the differences between Docker and LXD
Installing Docker
Managing Docker containers
Automating Docker image creation with Dockerfiles
Managing LXD containers
Chapter 14: Automating Server Configuration with Ansible
Understanding the need for configuration management
Why Ansible?
Creating a Git repository
Getting started with Ansible
Making your servers do your bidding
Putting it all together - Automating web server deployment
Using Ansible's pull method
Chapter 15: Securing Your Server
Lowering your attack surface
Understanding and responding to CVEs
Installing security updates
Automatically installing patches with the Canonical Livepatch service
Monitoring Ubuntu servers with Canonical's Landscape service
Securing OpenSSH
Installing and configuring Fail2ban
MariaDB best practices for secure database servers
Setting up a firewall
Encrypting and decrypting disks with LUKS
Locking down sudo
Chapter 16: Troubleshooting Ubuntu Servers
Evaluating the problem space
Conducting a root cause analysis
Viewing system logs
Tracing network issues
Troubleshooting resource issues.
Diagnosing defective RAM
Chapter 17: Preventing and Recovering from Disasters
Preventing disasters
Utilizing Git for configuration management
Implementing a backup plan
Replacing failed RAID disks
Utilizing bootable recovery media
Further Reading
Appendix A: Using the Alternate Installer
Obtaining the Alternate Installer
Installing via the Alternate Installer
Setting up software RAID
Appendix B: Assessments
Chapter 1 - Deploying Ubuntu Server
Chapter 2 - Managing Users
Chapter 3 - Managing Storage Volumes
Chapter 4 - Connecting to Networks
Chapter 5 - Managing Software Packages
Chapter 6 - Controlling and Monitoring Processes
Chapter 7 - Setting Up Network Services
Chapter 8 - Accessing and sharing files
Chapter 9 - Sharing and Transferring Files
Chapter 10 - Serving Web Content
Chapter 11 - Learning Advanced Shell Techniques
Chapter 12 - Virtualization
Chapter 13 - Running Containers
Chapter 14 - Automating Server Configuration with Ansible
Chapter 15 - Securing Your Server
Chapter 16 - Troubleshooting Ubuntu Servers
Chapter 17 - Preventing and Recovering from Disasters
Other Books You May Enjoy
Index.
Notes:
Description based on print version record.
Previous edition published: 2016.
Includes bibliographical references.
OCLC:
1039690274

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account