Introduction to Open Source Operating Systems - Bachelor's (Coursera)

Offered by Illinois Tech,
Introduction to Open Source Operating Systems - Bachelor's (Coursera)

This course will cover the fundamental concepts and philosophy behind free and open source software (FOSS). The course will discuss open source and free software licensing; open source business strategies and impact; FOSS utilization in the enterprise; and development methodologies.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

Students will learn to set up and configure an industry-standard open source operating system, including system installation, and basic system administration; system architecture; package management; command–line commands; devices, filesystems, and the filesystem hierarchy standard. Also addressed are applications, shells, scripting and data management; user interfaces and desktops; administrative tasks; essential system services; networking fundamentals; and security, as well as support issues for open source software. Multiple distributions are covered with emphasis on the two leading enterprise distribution families.

Syllabus

Module 1: The History and Philosophy of Unix and Linux Free and Opensource Software
Welcome to Introduction to Open Source Operating Systems! Module 1 offers a deep dive into the rich technological and philosophical history of the Unix operating system, covering two pivotal periods: from its inception in 1969 to 1984, and from 1984 to 2015. Students will explore the groundbreaking developments and the ethos that shaped Unix during its formative years and how it has continued to influence modern computing paradigms. Emphasis is placed on recognizing the seminal contributions of Unix's key architects and contributors, providing a comprehensive understanding of the system's enduring legacy in today's technological landscape.

Module 2: Navigating the Linux Desktop
This module provides a comprehensive exploration of the Linux ecosystem, beginning with the function and features of package managers and App stores, which streamline software installation and management. Students will understand the roles of window managers and desktop environments in shaping user interaction, as well as the intricacies of display protocols like X and Wayland. The course demystifies the various types of desktop Linux, delves into the practicalities of compiling source code, and explains the concept and diversity of Linux distributions. Comparing the major distribution families, the module also equips students with the skills to utilize virtualization platforms for deploying different distros, offering a holistic view of Linux's framework and its applications.

Module 3: Introduction to the Linux Editors and Shell Scripts
Module 3 turns the spotlight on the powerful capabilities of the Linux command line, providing learners with the expertise to leverage the grep command for intricate search operations and replacements using shell meta-characters. Students will delve into techniques for locating files and directories within the filesystem, and grasp the essentials of input/output redirection and piping, including the nuances of standard input, output, and error. Key concepts such as file permissions, security nomenclature, and the significance of shell meta-characters in expanding shell functionalities will be explained. The course also covers the fundamentals of traversing the filesystem with shell commands, the role of the Linux Shell within the OS, and the use of absolute and relative paths, all while demystifying the structure of the Linux Filesystem for efficient system navigation and management.

Module 4: Intermediate Shell Scripting
Module 4 empowers students with the skills to automate routine tasks in Linux using the cron scheduling service and to craft effective shell scripts incorporating positional parameters. Students will learn to declare and understand the scope of system environment variables, and to construct conditional statements within Bash scripts for logical flow control. The course also explains the manipulation of the system PATH, modifications to user profiles, and the automation of tasks through shell scripting. Additionally, students will become familiar with the capabilities of the vi(m) editor, and distinguish between stream editors and text editors, laying a solid foundation for advanced text processing and system administration in a Linux environment.

Module 5: Introduction to System Administration
Module 5 provides a deep understanding of Linux system administration, starting with the sudo command's crucial role in maintaining root user security. Students will learn the processes for creating and managing user accounts, as well as the significance and analysis of system logs for maintaining system health and security. The coursework introduces essential system tools for ongoing monitoring and reporting, and presents the "3Ps" (Problem, Procedure, and Prevention) troubleshooting methodology. Additionally, the module covers secure remote access techniques, ensuring students can administer Linux systems effectively while upholding stringent security standards.

Module 6: Introduction to Managing Linux Processes and Filesystems
This module focuses on the Linux boot process by breaking it down into its three fundamental phases, providing a clear explanation of what occurs during each stage. Students will compare the traditional SysVinit system with the newer systemd init system, gaining insight into their differences, functionalities, and service management techniques. Focusing on system tools for process examination, this module clarifies the purposes of Linux targets and service levels. It also delves into the structure and management of filesystems, including a comparison of different Linux filesystems, the mechanics of virtual disk creation and attachment, and the fundamentals of Logical Volume Management. Additionally, the course covers efficient command-line tools for compression, archiving, disk utilization, and mounting, equipping students with practical skills for comprehensive system management.

Module 7: Introduction to Networking, Databases, and Web Technologies
This module equips students with the essential knowledge to configure, manage, and troubleshoot basic network settings on Linux operating systems. It introduces fundamental network diagnostic tools to maintain connectivity and system integrity. The course also provides in-depth training on configuring and deploying major webserver platforms, allowing students to compare and discuss the applications of leading open-source webservers within the industry, with a focus on securing webserver configurations. Students will learn to install and configure popular SQL and NoSQL databases, gaining practical database management skills. And lastly, this module covers the selection and configuration of desktop-based firewalls, ensuring students can secure Linux systems effectively against network threats.

Module 8: Introduction to Automation
This module addresses the critical role of automation in Linux systems, outlining the challenges it solves by streamlining and simplifying complex tasks. Students will be introduced to the current landscape of orchestration and automation tools, with a particular focus on the contributions of Hashicorp to the field. They will learn the processes for automating the installation of Linux operating systems and discover solutions for deploying complete applications using automation tools. Additionally, the course delves into the concept of secrets management within automated environments, teaching students how to securely handle sensitive information in an automated and scalable manner.

Summative Course Assessment
This module contains the summative course assessment that has been designed to evaluate your understanding of the course material and assess your ability to apply the knowledge you have acquired throughout the course. Be sure to review the course material thoroughly before taking the assessment.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Real-Time Embedded Systems Concepts and Practices (Coursera) Coursera
University of Colorado Boulder

Real-Time Embedded Systems Concepts and Practices (Coursera)

This course can also be taken for academic credit as ECEA 5315, part of CU Boulder’s Master of Science in Electrical Engineering degree. Course Description: In this course, students will design and build a microprocessor-based embedded system application using a real-time operating system or RT POSIX extensions with Embedded Linux. The course focus is on the process as well as fundamentals of integrating microprocessor-based embedded system elements for digital command and control of typical embedded hardware systems.

Nov 9th 2026
4 Weeks
Sistemas operativos y tú: Convertirse en un usuario avanzado (Coursera) Coursera
Google

Sistemas operativos y tú: Convertirse en un usuario avanzado (Coursera)

En este curso, a través de una combinación de conferencias de video, demostraciones y prácticas, aprenderás acerca de los componentes principales de un sistema operativo y cómo realizar tareas críticas tales como administrar software y usuarios, y configurar hardware. Vamos a terminar con un ejemplo de cómo puede aparecer este contenido en una entrevista.

Nov 2nd 2026
5-12 Weeks
Introduction to Open Source Application Development (Coursera) Coursera
Illinois Tech

Introduction to Open Source Application Development (Coursera)

This course introduces basic concepts of systems programming using a modern open source language. You will learn to apply basic programming concepts toward solving problems, writing pseudocode, working with and effectively using basic data types, abstract data types, control structures, code modularization and arrays. You will learn to detect errors, work with variables and loops, and discover how functions, methods, and operators work with different data types. You will also be introduced to the object paradigm including classes, inheritance, and polymorphism.

Nov 9th 2026
5-12 Weeks
Interagir com sistemas operativos (Coursera) Coursera
Google

Interagir com sistemas operativos (Coursera)

Neste curso, através de uma combinação de palestras em vídeo, demonstrações e experiências práticas, vai adquirir conhecimentos acerca dos componentes principais de um sistema operativo e como realizar tarefas críticas, como gerir software e utilizadores e configurar hardware. Vamos terminar com um exemplo de como este conteúdo pode surgir no contexto de uma entrevista.

Nov 9th 2026
5-12 Weeks
Digital Forensics Essentials (DFE) (Coursera) Coursera
EC-Council

Digital Forensics Essentials (DFE) (Coursera)

Digital Forensics Essentials helps learners increase their competency and expertise in digital forensics and information security skills, thereby adding value to their workplace and employer. This course will introduce learners to Computer Forensics Fundamentals as well as the Computer Forensics Investigation Process. Plan to learn about Dark Web, Windows, Linux, Malware Forensics, and so much more! The interactive labs component of this course ensures that learners receive the hands-on, practical experience required for a future in digital forensics.

Nov 9th 2026
5-12 Weeks
Real-Time Project for Embedded Systems (Coursera) Coursera
University of Colorado Boulder

Real-Time Project for Embedded Systems (Coursera)

The final course emphasizes hands-on building of an application using real-time machine vision and multiple real-time services to synchronize the internal state of Linux with an external clock via observation. Compare actual performance to theoretical and analysis to determine scheduling jitter and to mitigate any accumulation of latency.

Nov 9th 2026
5-12 Weeks
C Programming: Advanced Data Types - 5 (Coursera) Coursera
Institut Mines-Telecom,Dartmouth College

C Programming: Advanced Data Types - 5 (Coursera)

In this course you will define your own data types in C, and use the newly created types to more efficiently store and process your data. Many programming languages provide a number of built-in data types to store things such as integers, decimals, and characters in variables, but what if you wanted to store more complex data?

Nov 9th 2026
3 Weeks
操作系统原理 (Operating Systems) (Coursera) Coursera
Peking University

操作系统原理 (Operating Systems) (Coursera)

操作系统原理》是针对计算机科学技术专业三年级本科生开设的一门专业基础课程。本课程着重学生系统观的培养,通过重点讲述操作系统的内部结构、工作原理及典型技术的实现,使学生建立起对操作系统的整体及各个功能模块的认识,从而系统掌握计算机的专业知识,进一步提升学生的软件开发能力乃至系统软件开发能力。

Nov 23rd 2026
13-24 Weeks
Fundamentals of Red Hat Enterprise Linux (Coursera) Coursera
Red Hat

Fundamentals of Red Hat Enterprise Linux (Coursera)

This course will provide you with a basic introduction to Linux® skills using Red Hat® Enterprise Linux 8. It will show you how a Linux system is organized, and will demonstrate introductory system administration tasks, which you will be able to practice on your own. You will be introduced to reasons why Linux and the open source development model are so important in today's computing environment. Linux systems are used everywhere—the internet, point-of-sale systems, and the world's stock markets. You’ll find Linux running smart TVs, in-flight entertainment systems, and most of the top supercomputers in the world.

Nov 23rd 2026
5-12 Weeks
Getting Started with Go (Coursera) Coursera
University of California, Irvine

Getting Started with Go (Coursera)

Learn the basics of Go, an open source programming language originally developed by a team at Google and enhanced by many contributors from the open source community. This course is designed for individuals with previous programming experience using such languages as C, Python, or Java, and covers the fundamental elements of Go.

Nov 9th 2026
4 Weeks
Internet of Things V2: DragonBoard™ bring up and community ecosystem (Coursera) Coursera
University of California, San Diego

Internet of Things V2: DragonBoard™ bring up and community ecosystem (Coursera)

Do you want to develop skills to prototype embedded products using state-of-the-art technologies? In this course you will build a hardware and software development environment to guide your journey through the Internet of Things specialization courses. We will use the DragonBoard™ 410c single board computer (SBC).

Nov 9th 2026
5-12 Weeks
The Unix Workbench (Coursera) Coursera
Johns Hopkins University

The Unix Workbench (Coursera)

Unix forms a foundation that is often very helpful for accomplishing other goals you might have for you and your computer, whether that goal is running a business, writing a book, curing disease, or creating the next great app. The means to these goals are sometimes carried out by writing software. Software can’t be mined out of the ground, nor can software seeds be planted in spring to harvest by autumn. Software isn’t produced in factories on an assembly line. Software is a hand-made, often bespoke good. If a software developer is an artisan, then Unix is their workbench.

Nov 23rd 2026
4 Weeks