Linux Overview

Machine Learning Artificial Intelligence Natural Language Processing Semantic Web Search Technology DataBase Technology Ontology Technology Algorithm Digital Transformation UI and DataVisualization Workflow & Services IT Infrastructure OS Technology Navigation of this blog

Summary

From “Starting a Linux Server from Scratch”. In this article, we will give an overview of Linux. For an overview of IT infrastructure in general, see “IT Infrastructure Technology.

Linux Overview

Linux is a free operating system that was created in 1991. It is the software that controls the operation, management and operation (operating) of computers. It is located between the user/application program and the hardware, and provides a standard interface to the user/application program, as well as efficient management of resources such as hardware.

Specific functions include auxiliary memory management such as file system, memory management such as virtual memory, process management such as multitasking, user interface such as GUI, and network management such as TCP/IP.

The purpose of an OS is to abstract hardware specifications that differ from manufacturer to manufacturer, to improve the efficiency of software development, and to manage resources so that multiple programs can operate independently of each other when used simultaneously.

Linux is similar to the Unix operating system that has been developed by universities and research institutes since around 1980, and the following OSes are derivatives of Unix, including apple’s OSX and FreeBSD.

ゼロから始めるLinuxサーバーより

Unlike the above O, Linux is an OS developed from scratch. However, since it complies with POSIX, the standard specification of UNIX, many commands are common to UnixOS, and software for Unix can be run on Linux, so it is also called a Unix-like OS.

The Linux kernel has developed in the form of Open Source Software (OSS), where the source code is disclosed on the Internet, anyone can participate in the development, and anyone can use it freely. The major OSS are listed below.

The opposite of OSS is proprietary software, which is software that is developed only within a software company. Open source software is released under some kind of license (license agreement). The most famous license is the GPL (GNU General Public License), and the Linux kernel also uses the GPL license.

The core program of the OS is called the kernel. The name “Linux” was originally given to the kernel. The kernel alone cannot be used as an OS, but only when combined with a shell that acts as an intermediary between the user and the kernel, various user programs, and programs that realize the user interface, can an OS be created that can be used for daily purposes.

However, it is gionally difficult and time-consuming for ordinary users to combine these components. Therefore, the Linux development community started to combine the Linux kernel with a number of open source software and distribute them together with installers. This is called a distribution. In general, the term “Linux OS” refers to this distribution. The structure of a distribution is shown below.

There are more than hundreds of distributions available for various purposes such as server, entertainment, education, and embedded systems. There are two main types of distributions. One is the RedHat system and the other is the Debian system.

RedHat distributions include fedora, which is developed by the Fedora community, Red Hat Enterprise Linux (RHEL), which is an enterprise distribution developed by RedHat, and CentOS, which consists almost entirely of RHEL. There are several distributions. For more information on CentOS and its implementation, please refer to “CentOS8 Overview and Installation“.

Among Debian distributions, there are Debian GNU Linux, which can be used for both servers and clients, Ubuntu, which is a derivative distribution of Debian GNU Linux (designed to be easy to use for beginners and popular for desktop use), and CentOS. There are also Debian GNU Linux, which can be used for clients, Ubuntu (a derivative distribution of Debian GNU Linux, designed to be easy to use for beginners and popular for desktop use), Remix, which was improved by the Japanese community, Lubuntu, which uses the lightweight LXDE desktop environment, and Linux Mint.For more information on Ubuntu and its implementation, see “Getting Ubuntu Up and Running“.

There is also Gentoo Linux by Slackware, which is neither Red Hat nor Debian-based.

A more detailed description of the distribution structure is given below.

Of the above, the “shell” is a program that acts as an intermediary between the kernel and the user, and receives and executes commands as described below. There are thousands of commands in Linux, but if you know about 50 of them, you can do basic business management. A “library” is a common component of a program, and in linux, a C library called glibc is used.

GUI” is a graphical user interface, created by a group of programs called X Window System and Window Manager, which are separate from the Linux kernel. The X Window System manages the core processing of input and output, while the Window Manager manages appearance and operation. The “client software” is a variety of application software such as web browsers and office suites, such as Chrome and Firefox for browsers, LibreOffice for office suites, and GMP for graphical software.

Next, we will discuss the kernel in detail. The structure of the kernel is as follows.

Kernel versions are represented by three numbers, such as “4.3.6”. When various features are added, the second number goes up from “4.2” to “4.3”, and when bugs are fixed for “4.3”, the version goes up to “4.3.1”, “4.3.2”, and so on.

There are several types of kernels, such as mianline, which is released by Linus, stable, which is a stable board, and longterm, which is a long-term support.

Linux distributions come standard with a variety of server software. The following is a list of typical server software.

  • Apache HTTP Server : The most widespread web server software in the world, with the largest share of the web server market.
  • nginx : read as engine x. It has better performance than Apache for websites with a large number of connections, and is often used as a reverse proxy.
  • Postfix : A standard mail server used in Linux, also used in CentOS and running in order. In the past, the standard mail server was Sendmail, but it was very complicated to set up, so it was replaced by Postfix.
  • Dovecot : Dovecot is a POP server that mail clients connect to in order to download mail delivered to the mail server, and IMAP protocol allows mail to be sent and received without leaving the server. Dovecot is a server that supports POP and IMAP.
    Dovecot is a server that supports POP and IMAP.
  • BIND : DNS servers provide DNS services that map host/domain names to IP addresses, and BIND is the most widely used DNS server.
  • Samba : Samba is a server that provides file server functions for Windows and domain controllers for Active Directory, allowing Linux servers to be used as alternatives to Windows servers.
  • Squid : A proxy server is a server that accesses a web server on behalf of internal clients when they access the web from inside the company to outside the company, and it can speed up web access or restrict access to specific web sites. Squid is the most famous proxy server.

コメント

タイトルとURLをコピーしました