This content is derived from the book edited by Teacher Xia Liqin, titled “Linux Network Operating System Configuration and Management”, intended for the teaching of first-year vocational college students. Let’s work hard together for those who want to learn seriously!
1. Course Introduction
1.What is an Operating System
An Operating System (Operating System, abbreviated as OS): is a set of programs that directly control and manage computer software/hardware resources, enabling them to work efficiently, coordinately, and automatically, allowing users to fully and effectively utilize resources.
Common Operating Systems:UNIX,Windows,Linux.
2.Why Learn Linux
Job/Career Requirements: Software development (software, mobile, big data, cloud computing, IoT application development) or networking (network, IoT engineering)
2.Understanding and Installing the Linux Operating System
2.1 The Birth and Characteristics of Linux
2.1.1 The Birth of Linux
UNIX: Developed by Ken Thompson and Dennis Ritchie at Bell Labs in the summer of 1969 on the DEC PDP-7 computer, it is a time-sharing operating system. It was first released to the public in 1971. After that, it was widely used in academic institutions and large enterprises for 10 years (open source and free). In 1982, AT&T stopped licensing the Unix source code to academic institutions and claimed copyright on previous versions of Unix and its variants, with UNIX System III, developed based on version 7, becoming the first commercial version.
Minix: Developed by Professor Andrew S. Tanenbaum at the Free University of Amsterdam to teach students the practical details of operating system operations while avoiding copyright disputes, he created a UNIX-compatible operating system without using any UNIX source code. He named it MINIX, meaning mini-UNIX, with a total of about 12,000 lines of code, included as an example in his book “Operating Systems: Design and Implementation”. Released in 1987, it primarily operated on the 16-bit Intel 8080 platform and booted from floppy disks.
GNU Project & GPL Agreement: Proposed in 1983 by Richard M. Stallman, the goal was to develop a fully open-source operating system that is 100% compatible with Unix to replace Unix. This system is called GNU (which stands for “GNU’s Not Unix”). Since then, many programmers have gathered to develop free, high-quality software. GNU includes the GPL, LGPL, and GFDL 3 license terms. The GPL (General Public License) agreement refers to the GNU General Public License. To make software free software, it must be released under a free software license, typically using the GNU General Public License (GPL). The GPL license has the following characteristics:
-
Any software licensed under the GPL is free software, and anyone can obtain it and access its source code;
-
After obtaining GPL-licensed software, anyone can modify the source code to suit their preferences;
-
Modified source code should be returned to the network community for everyone’s reference!
Note: Software licensed under the GPL can still be sold; these are two different matters!
POSIX Standard (Portable Operating System Interface) defines the interface standards that an operating system should provide for applications. In other words, programs written for a POSIX-compatible operating system should be able to compile and run on any other POSIX operating system (even from another vendor).
Linus Torvalds: In 1989, he purchased the textbook by Andrew S. Tanenbaum and the Minix source code, starting his research on operating systems. In 1990, after his military service, he returned to university and began to work with Unix. On August 25, 1991, he wrote a UNIX-compatible [Linux operating system kernel and released it under the GPL. It was widely circulated online, and many programmers participated in its development and modification. The five pillars of Linux are summarized as follows:
•UNIX : UNIX was born in 1969 at Bell Labs. Linux is a clone of UNIX.
•Minix : Also a clone of UNIX, it was developed by the renowned computer professor Andrew S. Tanenbaum in 1987. The emergence of the MINIX system and its provision of source code (which could only be used for free in universities) sparked a learning frenzy for UNIX systems in universities worldwide. Linux initially referenced the Minix system and began development in 1991.
•GNU Project: Developed the Linux operating system, and most of the software used on Linux comes from the GNU Project. Linux is just the kernel of the operating system; without the GNU software environment (such as the bash shell), Linux would struggle to function.
•POSIX Standard : This standard plays an important role in promoting Linux’s development towards a formal path. It is the lighthouse guiding Linux’s progress.
•Internet : Without the Internet and the countless contributions of selfless computer hackers worldwide, Linux would have only developed to version 0.13 (0.95).
2.1.2 Characteristics of Linux
-
Open Source: Using Linux, including copying, modifying, and redistributing it, under the GPL agreement, you will not have any copyright issues, which can greatly reduce costs for enterprise deployment. Because the Linux platform does not rely on any proprietary software company, all major software and hardware vendors support and develop Linux, such as RedHat, IBM, Dell, Oracle, VMware, Google, Intel, etc.
-
Closed Source: If the source code is not open, users cannot see the underlying implementation of the software.
-
Open Source: Indicates that the source code is open.
True Multi-user and Multi-tasking: Linux inherits the design philosophy of UNIX’s multi-user and multi-tasking, allowing multiple users to work online simultaneously and reasonably allocate resources.
Powerful Hardware Platform Portability: Linux is a UNIX-like operating system that follows the POSIX (Portable Operating System Interface) standard, which is a series of interrelated standards defined by IEEE for running software on various UNIX operating systems. Software running under UNIX is easily portable to Linux, giving Linux immediate access to a wealth of excellent software.
Linux is a portable operating system that can run in any environment and on any platform, from microcomputers to mainframes.
Rich Networking Features: Since its inception, Linux has been closely linked with the Internet, supporting various standard Internet protocols and almost all mainstream network hardware. Linux can not only be used as a network workstation but also as various servers, providing various network services, such as IP-based packet filtering firewalls, routers, proxy servers, file servers, print servers, Web, FTP, DNS, DHCP, e-Mail servers, etc.
Reliable System Security: Strict user permission management maintains a high level of confidentiality and security between different users. Linux employs many security measures, including read and write controls, protected subsystems, audit trails, and core authorization, providing necessary security guarantees for users in a multi-user network environment.
High Stability: Linux inherits the excellent characteristics of UNIX, with a robust infrastructure. The infrastructure of Linux consists of independent layers, each with specific functions and strict permission settings, ensuring maximum stable operation, capable of running for months or years without needing a reboot.
2.2. Composition of the Linux System
2.2.1 Linux Kernel
The kernel is the core of the system, the core program that runs programs and manages hardware devices.
2.2.2 Linux File System
The method of organizing files stored on disks and other storage devices. Linux supports various current file systems, such as ext4, FAT, VFAT, ISO9660, NFS, SMB, etc.
2.2.3 Linux Shell
The shell is the user interface of the system, providing an interface for users to interact with the kernel.
2.2.4 Linux Applications include text editors, programming languages, X Window, office suites, Internet tools, databases, etc.
3. Deploying the Linux Learning Environment
There are three ways to set up a Linux learning environment:
1. Install a standalone Linux system, without installing any other operating systems.
2. Install Windows alongside Linux in a multi-boot setup, selecting the operating system to boot from a menu.
3. Use virtualization software: This software can simulate one or more complete computer systems (virtual machines), switches, and network cards on a host machine (physical machine). Various operating systems can be installed in the virtual machine.
3.1.Installing and Starting RHEL 8.1/CentOS7
(1)Installation Options——>(2)Select the language used in the installation interface——>(3)Installation Information Summary——>(4)Software Selection——>(5)Installation Target Location(6)Manual Partitioning——>(7) [KDUMP]——>(8)Network and Hostname——>(9) SECURITY POLICY()(10) [Configuration] Window——>(11)Set Administrator Account Password——>(12) [Create User]——>(13) [Initial Setup]—>[License Information]——>(14)Login Interface——>(15)User First Login to System Desktop

3.2. Using Finalshell to Achieve Cross-Platform Remote Login
