Linux - The Penguin Marches On

by Patrick McClanahan

Publisher
San Joaquin Delta College
Subjects
Engineering, Computer Science
Licence
CC BY-NC 4.0, as LibreTexts states it. Non-commercial use only.
Who can read
Tweens profiles and older, judged from its title and subjects

Contents

LibreTexts writes equations in TeX, and here they show as TeX; the PDF has them typeset.

  1. Front Matter
  2. Title Page
  3. InfoPage
  4. Table of Contents
  5. Licensing
  6. ASCCC OERI
  7. Module 01: Back to the Basics
  8. 01-A.1: Introduction to Linux
  9. 01-A.2: Open Source Software
  10. 01-A.3: Free Software vs Open Source
  11. 01-A.4: Different FOSS licensing...
  12. 01-A.5: The GNU Project
  13. 01-A.6: Unix - What's the Connection?
  14. 01-A.7: Finally - Linux
  15. 01-A.8: Advantages and Disadvantages of Linux
  16. 01-A.9: Distro List
  17. 01-A.10: How is Linux Used?
  18. 01-B.11: How the Shell and CLI Work
  19. 01-B.12: CLI - The Good and the Bad
  20. 01-B.13: Shells: What and Why
  21. 01-B.14: Doing bash
  22. 01-B.15: Bash Command How To
  23. 01-B.16: Let's Look at the Basics
  24. 01-B.17: File Basics: More Later
  25. 01-B.18: Who is superuser?
  26. 01-B.19: Leftovers, What Else Do We Need?
  27. 01-C.20: Help! Where can I find help in Linux?
  28. 01-C.21: Linux man pages
  29. 01-C.22: Man Page Format
  30. 01-C.23: Additional Linux System Help Choices
  31. 01-C.24: Sources of Online Linux Documentation
  32. 01-C.25: Asynchronous Linux Help Resources
  33. Module 02: User & Group Administration
  34. 02-A.1: Users, and How to Acquire Superuser Power
  35. 02-A.2: Who Is the Superuser?
  36. 02-A.3: su: The Command
  37. 02-A.4: Other Options for Administrative Privileges
  38. 02-B.5: Users: Create, Modify, and Delete
  39. 02-B.6: Users: Create, Modify, and Delete (cont'd)
  40. 02-B.7: Users: Create, Modify and Delete (continued)
  41. 02-B.8: Users: Create, Modify, and Delete - passwd Command
  42. 02-B.9: Users: Create, Modify, and Delete - etc passwd and etc shadow
  43. 02-B.10: Users: Create, Modify, and Delete - Edit /etc/passwd File
  44. 02-C.11: Groups: Create, Modify, and Delete
  45. 02-C.12: Groups: Create, Modify, and Delete - Modify Group
  46. 02-D.13: User and Group Queries
  47. 02-E.14: User Account Profile Configuration
  48. 02-E.15: Example: Bash RC file
  49. 02-E.16: System Wide User Profiles
  50. 02-E.16.1: System Wide User Profiles: /etc/profile
  51. 02-E.16.2: System Wide User Profiles: The /etc/profile.d Directory
  52. 02-E.16.3: System Wide User Profiles: The /etc/bashrc File
  53. Module 03: Permission and Ownership Management
  54. 03-A.1: Modify Permissions: File and Directory
  55. 03-A.2: Modify Permissions: File and Directory (continued)
  56. 03-B.3: Modify Ownership of Files and Directories
  57. 03-C.4: Special Permission Types - The setuid Bit
  58. 03-C.4.1: Special Permission Types - The setgid Bit
  59. 03-C.4.2: Special Permission Types - The Sticky Bit
  60. 03-C.5: File Attributes
  61. 03-D.6: Permission Issues and How to Troubleshoot
  62. Module 04: Managing Linux Storage
  63. 04-A.1: Storage Devices
  64. 04-A.2: Linux File Systems
  65. 04-A.3: Inodes
  66. 04-A.4 Journaling File Systems
  67. 04-A.5: Linux Virtual File System
  68. 04-A.6: Partitions and Labels
  69. 04-A.6.1: Partitions and Labels continued
  70. 04-A.7: Disk Setup Process - fdisk
  71. 04-A.7.1: Disk Setup Process - parted
  72. 04-A.7.2: Disk Setup Process - mkfs & mount
  73. 04-A.8: The dev Directory
  74. 04-B.9: Logical Volume Management
  75. 04-B.9.1: LVM and other stuff
  76. 04-B.9.2: LVM Tools
  77. 04-C.10: Mounting Linux File Systems
  78. 04-D.11: File System Management
  79. 04-D.11.1: File System Management - ext Filesystem Tools
  80. 04-D.11.2: File System Management - xfs Tools
  81. 04-E.12: Linux Directory Structure
  82. 04-E.12.1: Linux Directory Structure - Hierarchy
  83. 04-E.12.2: Linux Directory Structure - Home Directory
  84. 04-E.12.3: Linux Directory Structure - Paths
  85. 04-F.13: Storage Issues - Find and Fix
  86. 04-F.13.1: Storage Issues - IO Scheduling
  87. 04-F.13.2: Storage Issues - More IO Scheduling
  88. 04-F.13.3: Storage Issues - iostat, ioping
  89. 04-F.13.4: Storage Issues - Quota Management
  90. Module 05: File and Directory Management
  91. 05-A.1: Creating and Editing Text files
  92. 05-A.2: Creating and Editing Text files - Vim Editor
  93. 05-A.2.1: Vim - Insert Mode
  94. 05-A.2.2: Vim - Visual Mode
  95. 05-A.2.3: Vim - Command-Line Mode
  96. 05-A.3: Nano Editor
  97. 05-A.4: Gedit and More
  98. 05-B.5: Searching for Files on Linux
  99. 05-B.5.1: Searching for Files on Linux - find Command
  100. 05-B.5.2: Searching for Files on Linux - which Command
  101. 05-B.5.3: Searching for Files on Linux - whereis Command
  102. 05-C.6: Working with Files and Directories - cat Command
  103. 05-C.6.1: Working with Files and Directories - head/tail Commands
  104. 05-C.6.2: Working with Files and Directories - less/more Command
  105. 05-C.6.3: Working with Files and Directories - cp/mv Command
  106. 05-C.6.4: Working with Files and Directories - rm/touch Command
  107. 05-C.6.5: Working with Files and Directories - ls/rmidir/mkdir Command
  108. 05-D.7: Handling Text Files - echo/printf
  109. 05-D.7.1: Handling Text Files - tr/wc Command
  110. 05-D.7.2: Handling Text Files - sort/diff Commands
  111. 05-D.7.3: Handling Text Files - cut/paste
  112. 05-D.7.4: Handling Text Files - grep Command
  113. 05-D.7.5: Handling Text Files - awk Command
  114. 05-D.7.6: Handling Text Files - sed Command
  115. 05-D.7.7: Handling Text Files - ln Command
  116. 05-E.8: File Output Manipulation
  117. 05-E.8.1: File Output Manipulation - pipe
  118. 05-E.8.2: File Output Manipulation - xargs
  119. 05-E.8.3: File Output Manipulation - tee & /dev/null
  120. Module 06: Kernel Module Management
  121. 06-A.1: Examine the Linux Kernel
  122. 06-A.2: Linux Kernel
  123. 06-A.3: Linux Kernel Subsystem
  124. 06-B.4: Kernel Modules
  125. 06-B.5: Kernel Module Management - lsmod/modinfo Command
  126. 06-B.5.1: Kernel Module Management - insmod/rmmod Command
  127. 06-B.5.2: Kernel Module Management - modprobe/depmod Command
  128. 06-B.6: Kernel Modules - Configuration
  129. 06-B.7: Kernel Modules - Kernel Parameters
  130. 06-C.8: Kernel Module Monitoring
  131. 06-C.9: The dmesg Command
  132. Module 07: Linux Boot Process
  133. 07-A.1: Configuring Boot Components
  134. 07-A.2: Configuring Boot Components (continued)
  135. 07-A.3: Configuring initrd
  136. 07-A.4: Boot Process
  137. 07-B.5: GRUB2 - Installation
  138. 07-B.6: GRUB2 - Configuration
  139. Module 08: How to Manage System Components
  140. 08-A.1: Localization Options - Configuration
  141. 08-A.2: Localization - date/timdatectl Command
  142. 08-A.3: Localization - localectl Command
  143. 08-B.4: GUI Configuration
  144. 08-B.5: GUI Desktop Environments
  145. 08-B.6: Remote Desktop Access
  146. 08-B.7: Remote Console - SSH/X Forwarding
  147. 08-C.8: Managing Linux Services
  148. 08-C.8.1: Managing Linux Services - systemctl
  149. 08-C.8.2: Managing Linux Services - hostnamectl
  150. 08-C.8.3: Managing Linux Services - SysVinit
  151. 08-C.8.4: Managing Linux Services - inittab & init.d
  152. 08-D.9: Process Troubleshooting
  153. 08-D.9.1: Process Troubleshooting - ps command
  154. 08-D.9.2: Process Troubleshooting - top command
  155. 08-D.9.3: Process Troubleshooting - lsof Command
  156. 08-D.9.4: Process Troubleshooting - Process Priorities
  157. 08-D.9.5: Process Troubleshooting - Background / Foreground Processes
  158. 08-D.9.6: Process Troubleshooting - nohup and kill Commands
  159. 08-E.10: CPU and Memory Troubleshooting
  160. 08-E.10.1: CPU and Memory Troubleshooting - sar & Memory Issues
  161. 08-E.10.2: CPU and Memory Troubleshooting - free / vmstat Commands
  162. 08-E.10.3: CPU and Memory Troubleshooting - OOM & swap
  163. Module 09: Managing Linux Devices
  164. 09-A.1: Supported Linux Devices
  165. 09-A.1.1: Supported Linux Devices (cont'd)
  166. 09-A.1.2: Supported Linux Devices (continued)
  167. 09-B.2: Configuring Linux Devices
  168. 09-B.2.1: Configuring Linux Devices - Printing
  169. 09-C.3: Monitoring Devices in Linux
  170. 09-D.4: Troubleshooting: Hardware Issues
  171. Module 10: Network Management
  172. 10-A.1: TCP/IP Fundamentals
  173. 10-A.1.1: TCP/IP Fundamentals - Identities
  174. 10-A.1.2: TCP/IP Fundamentals - Addressing
  175. 10-A.1.3: TCP/IP Fundamentals - Ports and Segments
  176. 10-B.2: Server Roles in Linux
  177. 10-B.2-3: Server Roles in Linux (continued)
  178. 10-B.2.1: Server Roles in Linux - Continued
  179. 10-B.2.4: Server Roles in Linux (continued)
  180. 10-C.3: Network Connection
  181. 10-D.4: Static VS Dynamic IP Addresses
  182. 10-D.5: DHCP Configuration
  183. 10-D.6: Name Resolution
  184. 10-E.7: Cloud Configuration
  185. 10-E.8: The Cloud and Virtualization
  186. 10-E.9: Cloud Bootstrapping and Storage
  187. 10-E.10: Configuring Networks and Virtualization Tools
  188. 10-F.11: How to Troubleshoot Networking Problems
  189. 10-F.11.1: Network Troubleshooting Commands - netstat / ss
  190. 10-F.11.2: Network Troubleshooting Commands - dig / nslookup / host
  191. 10-F.11.3: Network Troubleshooting Commands - ip / route / nmap
  192. 10-F.11.4: Network Troubleshooting Commands - wireshark
  193. 10-F.11.5: Network Troubleshooting Commands - iftop / iperf / mtr
  194. 10-F.11.6: Network Troubleshooting Commands - arp / whois
  195. Module 11: Package Management
  196. 11-A.1: Who are the Package Managers
  197. 11-B.2: rpm / yum How To
  198. 11-C.3: dpkg / apt How To
  199. 11-D.4: Repository Configuration
  200. 11-E.5: Other Software Sources
  201. 11-F.6: Software Builds from Source
  202. 11-G.7: Software Dependency Troubleshooting
  203. Module 12: Linux Systems Security
  204. 12-A.1: Best Cybersecurity Practices
  205. 12-A.1.1: Best Cybersecurity Practices - Continued
  206. 12-A.2: chroot Jail
  207. 12-A.3: Encryption in Linux
  208. 12-A.4: Security Best Practices
  209. 12-B.5: Identity and Access Management
  210. 12-B.6: Pluggable Authentication Modules
  211. 12-B.7: TTY Security & PKI
  212. 12-B.8: OpenSSL / VPN
  213. 12-B.9: Authentication Issues
  214. 12-C.10: SELinux Configuration
  215. 12-C.11: AppArmor
  216. 12-D.12: Firewall Configuration in Linux
  217. 12-D.13: Access Control Lists / iptables
  218. 12-D.14: UFW & firewalld
  219. 12-D.15: Netfilter / IP Forwarding
  220. 12-E.16: Linux Logging
  221. 12-E.17: journalctl & last Commands
  222. 12-F.18: Backup and Restore in Linux
  223. 12-F.19: tar / cpio / dd
  224. 12-F.20: mirrorvg / rsync / scp
  225. 12-F.21: File Compression
  226. 12-F.22: Integrity Check and Checksums
  227. Module 13: Working with Bash Scripts
  228. 13-A.1: How to Customize the Bash Shell
  229. 13-A.2: env / alias / PATH / time
  230. 13-B.3: Fundamentals of Linux Scripts
  231. 13-B.4: Shell Operators
  232. 13-B.5: Strings / Arrays / Functions
  233. 13-C.6: Writing and Running Linux Scripts
  234. 13-C.7: Shell Expansion / Variable Substitution / Command Substitution
  235. 13-C.8: Positional Parameters / exec Command / source Command
  236. 13-C.9: Script Permissions / Script Extensions
  237. 13-D.10: Shell Control Statements
  238. 13-D.11: Script Loops
  239. Module 14: Task Automation
  240. 14-A.1: Job Scheduling - at Command
  241. 14-A.2: Cron
  242. 14-B.3: Git: Version Control
  243. 14-C.4: Orchestration
  244. Module 15: Linux Installation
  245. 15-A.1: Linux Installation
  246. 15-A.2: Installation: Methods and Preparation
  247. Ancillary Materials
  248. Lab Exercises
  249. Powerpoint Presentations
  250. Back Matter
  251. Index
  252. Glossary
  253. Detailed Licensing