【初心者向け】Linuxとは?特徴やカーネルの仕組み、種類をわかりやすく解説

【初心者向け】Linuxとは?特徴やカーネルの仕組み、種類をわかりやすく解説

「Linux(リナックス)って名前は聞いたことあるけど、触ったことはないんだよなぁ……」

そんな人でも、Webエンジニアを目指すならLinuxを避けて通るのはまず無理だと思っておいてください。

というのも、WebサイトやWebシステムを作るときに使われるOSの大半がLinuxベースだからです。

「よくわからないから後回しでいいや」と放置せず、今のうちにLinuxをきちんと学んでおきましょう。

早い段階でLinuxを理解しておくほど、あとで作りたいサービスやシステムを実現するスピードがぐっと上がります。

目次

Linux(リナックス)とは

最初に押さえておきたいポイントがあります。

それは「Linuxという言葉には2つの意味がある」ということです。

  • Linuxカーネル
  • Linuxカーネルを使っているOS

では、この2つがそれぞれ何を指しているのか見ていきましょう。

Linuxカーネルとは

Linuxの1つ目の意味は、Linuxカーネルそのものを指します。

Linuxカーネルは、OSに必要な基本機能をまとめた中核(コア)部分のソフトウェアのこと。

文脈によっては、このカーネルを指して単に「Linux」と呼ぶこともあります。

このLinuxカーネルは、リーナス・トーバルズ氏がUNIXを参考にして作り上げた(UNIXライクな)ソフトウェアです。

さらにリーナス氏は、カーネル開発を管理するためGitというバージョン管理システムを生み出した人物としても知られています。

ファルコン

UNIXを元にしてるってことは、LinuxはUNIXに近い存在なんだね!

Linuxカーネルを使っているOSとは

Linuxという言葉は、カーネル以外にもう1つの意味でも使われます。

むしろこちらの意味のほうが一般的かもしれません。

それは「Linuxカーネル上に作られたOS(オペレーティングシステム)」のことです。

OSとは、コンピュータ全体を管理・操作するためのソフトウェアで、例えば次のようなものがあります。

  • Windows
  • macOS
  • iOS
  • Android
  • UNIX

この並びの中に入るOSの一種としてLinuxがある、という理解です。

ファルコン

Linuxって言われると、たいていはOSとしてのLinuxを思い浮かべるよね!

Linuxの種類(ディストリビューション)とは

Linuxを勉強しているとUbuntu(ウブントゥ)やCentOS(セントオーエス)といった名前をよく見かけると思います。

これらはすべてLinuxカーネルを使って作られたOSです。

ファルコン

つまりUbuntuもCentOSもLinuxの仲間というわけですね。

イメージとしては、Linuxカーネルにさまざまなソフトを組み合わせて、用途に合わせたOSを作ったものです。

こうしたLinuxベースのOSはまとめて「Linuxディストリビューション」と呼ばれ、種類はものすごくたくさんあります。

全部覚える必要はまったくありませんが、UbuntuとCentOSは特に有名なので押さえておくと良いでしょう。

混乱しやすいので整理すると、こうなります。

  • Linux:Linuxカーネル、またはLinuxディストリビューション全般
  • Linuxカーネル:Linuxの核となる基本機能の集合
  • Linuxディストリビューション:Linuxカーネルを土台に作られたOSの総称
ファルコン

ちなみにmacOSはUnix系ディストリビューションなんだよ!

Linuxの仕組み(カーネルとシェルの関係)

もう少し踏み込んでLinuxの構造を見てみましょう。

Linuxカーネルは、OSの基本機能を担うコアでした。

ただし、そのカーネルの機能をユーザーが直接操作することはできません。

そこで登場するのがシェル(shell)です。

  • カーネル:Linuxの機能の中心(機能を提供する側)
  • シェル:カーネルを包む“殻”(ユーザーとのインターフェース)

「shell=殻」という意味の通り、カーネルを覆う外側の存在だと思うとわかりやすいです。
私たちはシェルを操作し、シェルがカーネルへ命令を渡しています。

シェルにもいくつか種類があります。

  • sh
  • bash
  • zsh

中でもよく使われるのがbash(バッシュ)

最近のLinuxではbashが標準シェルとして設定されていることが多いので、まずはbashを使えるようになれば困りません。

もちろん後から別のシェルに切り替えることもできます。

bashとか意識したことないな……」という人もいるかもしれませんが、Linuxにログインして黒い画面でコマンドを打った経験はありませんか?

あの画面こそがシェルです。

ファルコン

Linuxを操作できるのはシェルのおかげなんだね!

Linuxの特徴

LinuxはCUI(キャラクタユーザインターフェイス)

Linuxはシェルを通じて操作しますが、そのシェルの操作はCUI(文字ベースの操作)が基本です。

普段使いのWindowsやmacOSはGUI(視覚的な操作)が中心ですよね。

  • GUI:マウスなどで直感的に操作できる画面
  • CUI:キーボード入力の文字だけで操作する画面

CUIはWindowsの「コマンドプロンプト」やMacの「ターミナル」を想像すると近いです。

普段意識してなくても、LinuxではこのCUIが標準。

GUIに慣れている人ほど最初は戸惑うかもしれませんが、慣れればむしろCUIのほうが便利だと感じるはずです。

またLinux上で開発する場合、エディタもCUI対応のものが中心になります。

代表例はEmacsやVimですね。

なお後からGUIを入れることもできますが、実務でGUIが常用されるケースはかなり少なめです。

「難しそうだから後回し」ではなく、少しずつCUIに慣れていきましょう。

ファルコン

エンジニアならCUIは必須スキルです!

LinuxはOSS(オープンソースソフトウェア)

Linuxが広く普及した理由のひとつがOSSであることです。

OSS(オープンソースソフトウェア)とは、ソースコードが無償公開され、誰でも自由に改良・再配布できる仕組みのソフトウェアを指します。

Linuxが無料で使え、自由に改変できたからこそ、世界中で利用されるようになったわけです。

ディストリビューションの種類が多いのもOSSの文化があるからこそですね。

ファルコン

Linuxがここまで広まったのもOSSだからなんだね!

LinuxはWebシステムのデファクトスタンダード

今ではLinuxは、WebシステムのOSとして事実上の標準(デファクトスタンダード)になっています。

Windowsのようにライセンス費用がかからないため、企業がサーバーを増やすほどLinuxのコストメリットが大きくなるからです。

Windowsだと台数が増えるごとに費用がかかってしまいますからね。

これからLinuxを学び始めるなら、まずはCentOSを使うのがおすすめです。

無料で使えるうえ、実務でも採用例が多いので学習との相性が良いからです。

ファルコン

Ubuntuも人気だけど、現場ではCentOSのほうが多い印象かもね!

まとめ:Linuxを触ってみよう!

  • Linuxには「カーネル」と「そのカーネルを使うOS」の2つの意味がある
  • Linuxカーネルで作られたOSは「ディストリビューション」と呼ばれる
  • Linuxカーネルはシェル(主にbash)を通してCUI操作する
  • LinuxはOSSで無料利用でき、改良・再配布できるから普及した
  • 学習用途ではCentOSが特におすすめ

正直、Linuxは実際に触ってみないと腑に落ちない部分が多いです。

ファルコン

まさに「習うより慣れろ」ですね!

とはいえ、初心者がいきなりLinuxを触ると「何から手を付ければいいか分からない…」となりがちなので、まずはLinuxのディレクトリ構造から順に確認していくのが良いスタートになります。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次