Article directory
Copyright Notice
- The content of this blog is based on my personal study notes from the Dark Horse Programmer course. I hereby declare that all copyrights belong to Dark Horse Programmers or related rights holders. The purpose of this blog is only for personal learning and communication, not commercial use.
- I try my best to ensure accuracy when organizing my study notes, but I cannot guarantee the completeness and timeliness of the content. The content of this blog may become outdated over time or require updating.
- If you are a Dark Horse programmer or a related rights holder, if there is any copyright infringement, please contact me in time and I will delete it immediately or make necessary modifications.
- For other readers, please abide by relevant laws, regulations and ethical principles when reading the content of this blog, refer to it with caution, and bear the resulting risks and responsibilities at your own risk. Some of the views and opinions in this blog are my own and do not represent the position of Dark Horse Programmers.
First introduction to Linux
The birth of Linux
- Linux founder: Linus Torvalds
- Linux was born in 1991, when the author was in college
- Because the founder often needed to browse news and process emails when he was in college, he found that the existing operating system was not easy to use, so he decided to write a protected mode operating system. This was the prototype of Linux. He was 21 years old at the time. With the support of netizens all over the world, it is now compatible with a variety of hardware and has become one of the most popular server operating systems.
Linux kernel
- The Linux system consists of two parts: the Linux system kernel and system-level applications .
- The kernel provides the core functions of the system, such as: scheduling CPU, scheduling memory, scheduling file system, scheduling network communication, scheduling IO, etc.
- System-level applications can be understood as factory-installed programs that allow users to quickly get started with the operating system, such as file managers, task managers, picture viewing, music playback, etc.
- For example, when playing music, whether the user uses their own music player or a third-party player installed by themselves, the player program calls the relevant functions provided by the kernel, and the kernel schedules CPU decoding, audio production, etc.
- The kernel is the core of the Linux operating system, and system-level applications are just the icing on the cake.
- The Linux kernel is free and open source, and anyone can download the kernel source code and view and modify it. The Linux kernel can be downloaded at: https://www.kernel.org .
Linux distribution
- Linux distribution: Since the kernel is free and open source, anyone can obtain and modify the kernel, and integrate system-level programs by themselves, providing a complete package of kernel + system-level programs.
Release name | main feature | Applicable scene | Package manager |
---|---|---|---|
Ubuntu | User friendly, tons of packages, strong community support | General, desktop, server | APT |
Debian | High stability, large number of software packages, and strong community support | General, server | APT |
Fedora | The latest open source software, innovation | General purpose, desktop | DNF |
CentOS | Commercial-grade stability, free Red Hat alternative | server | YUM |
Arch Linux | Rolling updates, highly customized | General purpose, desktop | Pacman |
openSUSE | YaST Control Center, enterprise-grade stability | General, server | Zypper |
Mint | User friendly, based on Ubuntu, good multimedia support | desktop | APT |
Gentoo | Highly customizable, source code installation | Power User, Desktop | Portage |
-
Ubuntu: Suitable for beginners, has a huge user community, and has multiple versions suitable for different purposes, such as desktop, server and IoT versions.
-
Debian: Suitable for users who need a stable system environment, and is also the basis for Ubuntu and many other distributions.
-
Fedora: attracts a large group of developers and technology enthusiasts by providing the latest open source software.
-
CentOS: Typically used in enterprise server environments, providing long-term support and stability.
-
Arch Linux: For experienced users who like customization and rolling updates.
-
openSUSE: Provides a friendly configuration and management system, also suitable for server and desktop environments.
-
Mint: Suitable for users who are new to Linux or want a plug-and-play system.
-
Gentoo: Highly customizable, suitable for experienced users and developers, all software is compiled and installed from source code.
Environment deployment
vm+centos
WSL-Free
- It is recommended that if there is a conflict with other software on the computer during use, please try the deployment method of vm virtual machine.
- Win10 uses WSL (Windows Subsystem for Linux) to install Ubuntu