Enterprise Linux System Administration Training with Michigan Technology Services
Michigan Technology Services offers many Linux instructor-led courses. This Enterprise Linux System Administration training can take place at our location in Farmington Hills, 20 miles outside of Detroit, where you will sit in a room with one of our instructors, onsite at your office anywhere throughout the United States, or if you prefer, instructor led live online.
About this Course
The MTS-L-250 class is an in-depth course that explores installation, configuration and maintenance of Linux systems. The course focuses on issues universal to every workstation and server. Like all MTS courses, the course material is designed to provide extensive hands-on experience. Topics include: installation and configuration; the boot process; user and group administration; filesystem administration, including quotas, FACLs, RAID and LVM; task automation; client networking; SELinux; software management; log files; troubleshooting; and more.
For complete Linux course outlines and pricing information on other Linux classes or to request a class date contact Michigan Technology Services at 248-489-0408
Prerequisites
Students should already be comfortable working in a Linux or Unix environment. Fundamentals such as the Linux filesystem, process management, and how to edit files will not be covered in class. An understanding of network concepts, and the TCP/IP protocol suite is helpful. These skills are taught in the MTS-L-120 "Linux Fundamentals" course.
Detailed Course Outline
- Hardware Discovery Tools
- Configuring New Hardware with hwinfo
- Kernel Hardware Info – /sys/
- /sys/ Structure
- udev
- Managing Linux Device Files
- List Block Devices
- SCSI Devices
- USB Devices
- USB Architecture
- Kernel Modules
- Configuring Kernel Components and Modules
- Handling Module Dependencies
- Configuring the Kernel via /proc/
- Console
- Virtual Terminals
- Serial Ports
- Random Numbers and /dev/random
Lab Tasks
- Adjusting Kernel Options
- Introduction to Troubleshooting Labs
- Troubleshooting Practice: Kernel Modules
- System Boot Method Overview
- systemd System and Service Manager
- systemd Targets
- Using systemd
- Legacy Support for SysV init
- Booting Linux on PCs
- GRUB 2
- GRUB 2 Configuration
- GRUB 2 Security
- Boot Parameters
- Initial RAM Filesystem
- init
- Linux Runlevels Aliases
- Systemd local-fs.target and sysinit.target
- Systemd basic.target and multi-user.target
- Legacy local bootup script support
- System Configuration Files
- RHEL7 Configuration Utilities
- SLES12 Configuration Utilities
- Shutdown and Reboot
Lab Tasks
- Boot Process
- Booting directly to a bash shell
- GRUB Command Line
- Basic GRUB Security
- Managing Services With Systemd's systemctl
- Troubleshooting Practice: Boot Process
- Managing Software
- RPM Features
- RPM Architecture
- RPM Package Files
- Working With RPMs
- Querying and Verifying with RPM
- Updating the Kernel RPM
- Dealing With RPM & Yum Digest Changes
- Yum Plugins & RHN Subscription Manager
- YUM Repositories
- YUM Repository Groups
- Compiling/Installing from Source
- Manually Installed Shared Libraries
- Rebuilding Source RPM Packages
Lab Tasks
- Managing Software with RPM
- Creating a Custom RPM Repository
- Querying the RPM Database
- Installing Software via RPM & Source and Rebuilding SRPMs
- Troubleshooting Practice: Package Management
- Partitioning Disks with fdisk & gdisk
- Resizing a GPT Partition with gdisk
- Partitioning Disks with parted
- Filesystem Creation
- Persistent Block Devices
- Mounting Filesystems
- Resizing Filesystems
- Filesystem Maintenance
- Managing an XFS Filesystem
- Swap
- Filesystem Structures
- Determining Disk Usage With df and du
- Configuring Disk Quotas
- Setting Quotas
- Viewing and Monitoring Quotas
- Filesystem Attributes
Lab Tasks
- Creating and Managing Filesystems
- Hot Adding Swap
- Setting User Quotas
- Logical Volume Management
- Implementing LVM
- Creating Logical Volumes
- Activating LVM VGs
- Exporting and Importing a VG
- Examining LVM Components
- Changing LVM Components
- Advanced LVM Overview
- Advanced LVM Components
- Advanced LVM Caching
- Advanced LVM Striping & Mirroring
- Advanced LVM RAID Volumes
- gnome-disk-utility
- SLES Graphical Disk Tool
- RAID Concepts
- Array Creation with mdadm
- Software RAID Monitoring
- Software RAID Control and Display
Lab Tasks
- Creating and Managing LVM Volumes
- Troubleshooting Practice: LVM
- Creating and Managing a RAID-5 Array
- Remote Storage Overview
- Remote Filesystem Protocols
- Remote Block Device Protocols
- File Sharing via NFS
- NFSv4+
- NFS Clients
- NFS Server Configuration
- YaST NFS Server Administration
- Implementing NFSv4
- AutoFS
- AutoFS Configuration
- Accessing Windows/Samba Shares from Linux
- SAN Multipathing
- Multipath Configuration
- Multipathing Best Practices
- iSCSI Architecture
- Open-iSCSI Initiator Implementation
- iSCSI Initiator Discovery
- iSCSI Initiator Node Administration
- Mounting iSCSI Targets at Boot
- iSCSI Multipathing Considerations
Lab Tasks
- Using autofs
- NFS Server Configuration
- iSCSI Initiator Configuration
- Multipathing with iSCSI
- Approaches to Storing User Accounts
- User and Group Concepts
- User Administration
- Modifying Accounts
- Group Administration
- Password Aging
- Default User Files
- Controlling Login Sessions
- system-config-authentication
- SLES DS Client Configuration
- System Security Services Daemon (SSSD)
Lab Tasks
- User and Group Administration
- Using LDAP for Centralized User Accounts
- Troubleshooting Practice: Account Management
- PAM Overview
- PAM Module Types
- PAM Order of Processing
- PAM Control Statements
- PAM Modules
- pam_unix
- pam_nologin.so
- pam_limits.so
- pam_wheel.so
- pam_xauth.so
Lab Tasks
- Restricting superuser access to wheel group membership
- Using pam_nologin to Restrict Logins
- Setting Limits with the pam_limits Modules
- Using pam_limits to Restrict Simultaneous Logins
- Security Concepts
- Tightening Default Security
- SuSE Security Checker
- Security Advisories
- Fine Grained Authorizations with Polkit
- File Access Control Lists
- Manipulating FACLs
- Viewing FACLs
- Backing Up FACLs
- File Creation Permissions with umask
- User Private Group Scheme
- Alternatives to UPG
- AppArmor
- SELinux Security Framework
- SELinux Modes
- SELinux Commands
- Choosing an SELinux Policy
- SELinux Booleans
- Permissive Domains
- SELinux Policy Tools
- SUSE Basic Firewall Configuration
- FirewallD
Lab Tasks
- User Private Groups
- Using Filesystem ACLs
- Exploring AppArmor
- Exploring SELinux Modes
- SELinux File Contexts
- IPv4 Fundamentals
- TCP/UDP Fundamentals
- Linux Network Interfaces
- Ethernet Hardware Tools
- Network Configuration with ip Command
- Configuring Routing Tables
- IP to MAC Address Mapping with ARP
- Starting and Stopping Interfaces
- NetworkManager
- DNS Clients
- DHCP Clients
- SUSE YaST Network Configuration Tool
- Network Diagnostics
- Information from ss and netstat
- Hardware and System Clock
- Managing Network-Wide Time
- Continual Time Sync with NTP
- Configuring NTP Clients
- Useful NTP Commands
Lab Tasks
- Network Discovery
- Basic Client Networking
- NTP Client Configuration
- Multiple IP Addresses
- Configuring a DHCP server
- IPv6
- Interface Aggregation
- Interface Bonding
- Network Teaming
- Interface Bridging
- 802.1q VLANS
- Tuning Kernel Network Settings
Lab Tasks
- Multiple IP Addresses Per Network Interface
- Configuring IPv6
- Troubleshooting Practice: Networking
- System Logging
- systemd Journal
- systemd Journal's journactl
- Secure Logging with Journal's Log Sealing
- gnome-system-log
- Rsyslog
- /etc/rsyslog.conf
- Log Management
- Log Anomaly Detector
- Sending logs from the shell
Lab Tasks
- Using the systemd Journal
- Setting up a Full Debug Logfile
- Remote Syslog Configuration
- Remote Rsyslog TLS Configuration
- System Status – Memory
- System Status – I/O
- System Status – CPU
- Performance Trending with sar
- Determining Service to Process Mapping
- Realtime Monitoring of Resources — Cgroups
- Troubleshooting Basics: The Process
- Troubleshooting Basics: The Tools
- strace and ltrace
- Common Problems
- Troubleshooting Incorrect File Permissions
- Inability to Boot
- Typos in Configuration Files
- Corrupt Filesystems
- RHEL7 Rescue Environment
- SUSE Rescue Environment
Lab Tasks
- Recovering Damaged MBR
- Cgroup for Processes
- Pre-Installation Considerations
- Hardware Compatibility
- Multi-OS Booting
- Partition Considerations
- Filesystem Planning
- Selecting a Filesystem
- Anaconda: An Overview
- Anaconda: Booting the System
- Anaconda: Common Boot Options
- Anaconda: Loading Anaconda and Packages
- Anaconda: Storage Options
- Anaconda: Troubleshooting
- FirstBoot
- Kickstart
- Network Booting with PXE
- A Typical Install
Lab Tasks
- Linux Installation
- Automating Installation with Kickstart
- YaST Install Program Interface
- Network Installation
- SLP for SUSE Linux Installation
- Installation Choices
- Kernel Crash Dump Configuration
- Network Booting with PXE
- Creating AutoYaST2 Files
- Using AutoYaST2 files
- linuxrc Automation
- Installation Diagnostics
- After The First Reboot
- A Typical Install
Lab Tasks
- SUSE Linux Enterprise Server Installation
- Automating Installation with AutoYaST
- Virtualization: What and Why?
- Introducing libvirt
- libvirt: Basic Concepts
- libvirt: Storage Architecture
- libvirt: Network Architecture
- libvirt: Graphical Tools
- libvirt: Command Line Tools
- virsh: Basics
- virsh: Common Tasks
- virt-install
- Virtual Machine Guest Tools & Drivers
- libguestfs and guestfish
Lab Tasks
- Installing a Virtual Machine
- Backup Software
- Managing Optical Media
- Tape Libraries
- Backup Examples
Lab Tasks
- Using rsync and ssh for Backups
- Using tar for Backups
- Using cpio for Backups
- Creating ISO Images for Backups
- Using dump and restore for Backups