Linuxとは?OSの基本・Windowsとの違いを初心者向けにわかりやすく解説

  • URLをコピーしました!

これからLinuxを学習するとき、 最初に知っておきたいのが 「そもそもLinuxとは何なのか?」 という部分です。

Linuxという名前は聞いたことがあっても、

LinuxはWindowsと何が違う?
LinuxはOSなの?
なぜServerではLinuxがよく使われる?
黒い画面でCommandを入力するのはなぜ?

と疑問に思う方も多いでしょう。

PC 💻 Windows
SERVER 🖥 Linux
CLOUD ☁ Linux

Linuxは、 Web ServerやCloud、Network機器など、 IT Infrastructureを支えるさまざまな場所で利用されています。

そもそもLinuxは何をするSoftwareなのでしょうか?
🐧 LINUX BEGINNER

この記事はLinux初級講座の第1レッスンです。 Linuxを初めて学ぶ方は、上から順番に進めていきましょう。

Linux初級講座を見る →
LESSON GOAL この記事のゴール

Linuxを単に 「黒い画面でCommandを打つもの」 と覚えるのではなく、 OSがどのような役割を持ち、 LinuxがComputerの中で何をしているのか を説明できる状態を目指します。

目次

まずOSとは何かを理解しよう

Linuxを理解する前に、 まず OS(Operating System) について理解しておきましょう。

Computerには、 CPU・Memory・Storage・Network Interfaceなどの Hardwareがあります。

しかしApplicationが、 これらのHardwareを毎回直接操作するのは非常に大変です。

APPLICATION Web Browser / Web Server / Database
OPERATING SYSTEM Windows / Linux / macOS
HARDWARE CPU / Memory / Disk / Network

そこでApplicationとHardwareの間に入り、 Computer全体を管理するのが OSです。

OS=ApplicationとHardwareをつなぐ管理者

CPUをどのProcessへ割り当てるか、 Memoryをどう使うか、 FileをStorageへどう保存するかなどを OSが管理しています。

OSは何を管理している?

01 CPU

どのProcessを実行するか管理

02 Memory

Programが利用するMemoryを管理

03 File

Storage上のFileやDirectoryを管理

04 Device

DiskやNetwork Interfaceなどを管理

つまり、 WindowsでもLinuxでも、 OSとしての基本的な役割は共通しています。

Linuxとは?

Linuxは、 Unix系の考え方を受け継いだOS環境として広く利用されているSoftware です。

厳密には Linuxという名前はKernelを指します。

しかし一般的な会話では、 Linux Kernelを中心としてCommandやUtilityなどを組み合わせた OS環境全体を 「Linux」 と呼ぶことが多くあります。

USER SPACE Command / Application / Service
LINUX KERNEL Hardwareを管理
CPU / Memory / Disk / Network

Kernelとは?

Kernelは、 OSの中核部分 です。

Applicationからの要求を受け取り、 Hardwareを制御します。

Application Fileを読みたい
Kernel Diskへ処理を依頼
Disk Dataを読み出す
Linux 広い意味:Linux OS環境全体 Linux Kernel 狭い意味:OSの中核部分

LinuxとWindowsは何が違う?

WindowsもLinuxもOSですが、 利用される場所や操作方法などに違いがあります。

WINDOWS Desktopでも広く利用
  • GUI操作が中心になりやすい
  • Windows Applicationが豊富
  • 企業PCでも広く利用
  • Windows Serverも存在
LINUX Server・Cloudで広く利用
  • CLIでの管理が多い
  • Server用途で非常に多い
  • 柔軟に構成できる
  • 多くのDistributionが存在
項目 Windows Linux
代表的な用途 PC / Server Server / Cloud / Embeddedなど
操作 GUI中心になりやすい CLIを多用
種類 Windows 11 / Serverなど Ubuntu / Debian / Rocky Linuxなど
Source Code 基本的に非公開 Linux KernelはOSS

なぜLinuxはServerでよく使われる?

Linuxは、 Web ServerやDatabase Server、 Cloud環境などで広く利用されています。

01 軽量な構成にできる

GUIを使わず、 必要な機能だけでServerを構成できます。

02 Remote管理しやすい

SSHを利用して 離れた場所からCLIで管理できます。

03 Automationしやすい

Shell Scriptなどによって 処理を自動化できます。

04 Server Softwareが豊富

Web・DNS・Databaseなど 多くのSoftwareを利用できます。

Linuxはどこで使われている?

🌐 Web Server Apache / Nginxなど
☁ Cloud Virtual Machineなど
🗄 Database MySQL / PostgreSQLなど
📡 Network Network Appliance等
📱 Embedded 機器・組み込みSystem

Linuxは黒い画面しかない?GUIとCLIの違い

Linuxというと、 黒いTerminal画面を思い浮かべる方も多いでしょう。

しかしLinuxでも GUI(Graphical User Interface) を利用できます。

GUI 🖱 Mouseで操作

Window・Icon・Menuなどを利用する 視覚的な操作方法。

CLI > Commandで操作

TerminalへCommandを入力して Computerを操作する方法。

Serverでは、 GUIを入れず CLI中心で管理する構成 も多く利用されています。

LinuxではCommandを使って操作する

たとえば、 現在いるDirectoryを確認する場合は pwdを利用します。

Linux Terminal
$ pwd
/home/user

現在のDirectoryにあるFileを確認したい場合は lsを利用します。

$ ls
Documents  Downloads  sample.txt

OSやKernelの情報を確認するCommandとして uname もあります。

$ uname
Linux
Linux学習では「Commandを実際に入力する」ことが重要

Commandは読むだけでは覚えにくいため、 この講座では実際に操作しながら学習していきます。

ここで実際に試してみよう:Linux疑似ターミナル

次のTerminalへLinux Commandを入力してみましょう。

今回は、 pwd・ls・uname の3つを利用できます。

INTERACTIVE LAB

Linux Terminal

BEGINNER
user@linux
Linux learning environment
pwd / ls / uname を入力してみましょう。
user@linux:~$
TRY COMMAND

まずpwdを実行してみましょう

pwdは現在いるDirectoryを表示するCommandです。

今実行したCommandを理解しよう

pwd 現在位置を確認

現在作業しているDirectoryのPathを表示します。

ls File一覧を確認

Directory内にあるFileやDirectoryを表示します。

uname System情報を確認

OS Kernelに関する情報を確認できます。

今後のLinux初級講座では、 こうしたCommandを少しずつ増やしていきます。

LinuxではFileとDirectoryを操作する機会が多い

LinuxをCLIで利用すると、 FileやDirectoryをCommandから操作する機会が多くあります。

/ Root Directory
├── home
├── etc
├── var
└── tmp

Windowsでは C:\ などから始まるPathを見ることが多いですが、 Linuxでは /(Root Directory) を起点としたDirectory構造を利用します。

Directory構造は後の記事で詳しく学習します

今回は 「Linuxには/を起点とするFile Systemがある」 くらいの理解で問題ありません。

Linuxは複数Userで利用できる

Linuxは、 複数のUserが利用することを前提とした Multi-user OS としての仕組みを持っています。

USER A alice
USER B bob
ADMIN root

FileごとにOwnerやPermissionを設定し、 「誰が読めるか」 「誰が編集できるか」 などを制御できます。

この仕組みも、 今後のLinux学習で非常に重要になります。

LinuxとOSSの関係

Linux Kernelは Open Source Software(OSS) として公開されています。

Open Sourceでは、 Source Codeを確認したり、 Licenseの条件に従って変更・再配布したりできます。

OPEN SOURCE Source Codeを公開
世界中で開発
多様なLinux環境

ここから、 さまざまな企業やCommunityが Linuxを組み合わせて提供するようになりました。

Ubuntu・Debian・Rocky Linuxは何が違う?

Linuxについて調べると、 次のような名前が出てきます。

Ubuntu
Debian
Rocky Linux
AlmaLinux

ここで初学者が疑問に思いやすいのが、

LinuxというOSがあるのに、
なぜUbuntuやRocky Linuxなど たくさんの名前が存在するのでしょうか?

これらは Linux Distribution(Linuxディストリビューション) と呼ばれるものです。

次の記事では、 Linux KernelとDistributionの関係や、 Ubuntu・Debian・Rocky Linuxなどの違いを学習します。

確認問題:Linuxの基本を理解できたか確認しよう

QUESTION 01

OSの代表的な役割として正しいものはどれですか?

正解:B

OSはCPU・Memory・File・Deviceなどを管理し、 ApplicationとHardwareの間を取り持ちます。

QUESTION 02

Linux Kernelとは何ですか?

正解:A

KernelはOSの中核で、 CPU・Memory・DeviceなどHardwareの管理を担います。

QUESTION 03

LinuxでCLIを利用するメリットとして適切なものはどれですか?

正解:C

CLIはSSHによるRemote管理や Shell ScriptによるAutomationとの相性がよく、 Server管理で広く利用されています。

YOUR SCORE 0 / 3

3問に挑戦してみましょう。

まとめ

01

OSは ApplicationとHardwareの間に入りComputer全体を管理するSoftware

02

LinuxはServer・Cloudなど IT Infrastructureで広く利用されている

03

Linux Kernelは CPU・Memory・Deviceなどを管理するOSの中核

04

LinuxではGUIだけでなく CLIによるCommand操作 が重要

05

LinuxにはUbuntuやRocky Linuxなど 複数のDistribution が存在する

NEXT LESSON

次は「Linuxディストリビューションとは?違いを理解する」を学びましょう

LinuxがOSとしてどのような役割を持ち、 KernelがComputerの中核を担っていることを学びました。

しかし実際にLinuxを利用しようとすると、 Ubuntu・Debian・Rocky Linux・AlmaLinuxなど さまざまな名前が登場します。

次は、 「Linuxは1種類ではないのか?」 「Distributionによって何が違うのか?」 を整理していきましょう。

Linuxディストリビューションとは?違いを理解する
LINUX BEGINNER

Linux初級講座の一覧へ戻る

学習順を確認したい場合は、 Linux初級講座の一覧ページへ戻れます。

← Linux初級講座へ戻る
目次