【月間10万PV達成】ブログの作り方を無料公開中!

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

Linuxとは

「Linux(リナックス)って名前は聞くけど、実際に使ったことがない…」

そんなあなたも、Webエンジニアを目指しているのであれば、Linuxを避けて通ることは絶対にできないでしょう。

なぜなら、Webサイトを構築する際に利用するほとんどのOSが「Linux」だからです。

よくわからないからといって後回しにせず、いまのうちにLinuxについてしっかり学んでおきましょう。

早い段階でLinuxを理解することが、結果的にあなたが作りたいシステムを実現する近道になります。

僕の研修では、初日からLinuxを教えてるくらいだからね!

Linux(リナックス)とは

Linuxとは

まず、注意してもらいたいのは、「Linux(リナックス)」には2つの意味があるということ。

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

さっそく、この2つが何を指しているのか確認していきましょう!

Linuxカーネルとは

Linuxカーネル

まず1つ目のLinuxの意味ですが、それは「Linuxカーネル」です。

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

このLinuxカーネルのことを、単に「Linux」と呼ぶこともあります。

そして、このLinuxカーネルは、リーナス・トーバルズさんが「UNIX」というOSを参考にして作った(UNIXライクな)ソフトウェアです。

ちなみにリーナスさんは、このLinuxカーネルのプログラムを管理するために、「Git」というバージョン管理システムを作ったことでも有名です。

Gitとは?仕組みを解説【読むだけ】Gitとは?仕組みを初心者にもわかりやすく解説【図解】

Unixを参考にしたってことは、LinuxはUNIXに似ているってことだね!

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

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

Linuxという用語は、Linuxカーネル以外にもう1つ意味をもっています。

むしろ、こちらの意味で使われることのほうが圧倒的に多いかもしれません。

その意味とは、「Linuxカーネルを使っているOS(オペレーティングシステム)」のことなんです。

OSとは、コンピュータを管理したり操作したりするソフトウェアのことで、以下のような種類があります。

  • Windows
  • macOS
  • iOS
  • Android
  • UNIX

ここでいうLinuxも、WindowsやmacOSと同じ「OSの仲間」ってことですね。

Linuxって聞くと、多くの人はこのOSとしてのLinuxを思い浮かべると思うよ!

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

Linuxディストリビューション

Linuxの勉強をしていると、たまに「Ubuntu(ウブントゥ)」や「CeontOS(セントオーエス)」などの用語を見かけることがあるかもしれません。

実は、このUbuntuやCentOSの正体は、さきほどのLinuxカーネルを使って作られたOSなんです。つまり、これらも「Linux」の定義に含まれます。

簡単にいうと、色々なソフトウェアをLinuxカーネルにくっつけて、新たなOSを作ったってこと。

また、このようなOSを「Linuxのディストリビューション」とよび、非常にたくさんの種類があります。

すべて覚える必要はまったくありませんが、上の2つは有名なので覚えておいたほうがいいでしょう。

用語がたくさん出てきてややこしいので、使い分けられるようにまとめますね。

  • 「Linux」…LinuxカーネルやLinuxのディストリビューションを指す
  • 「Linuxカーネル」…Linuxのコアとなる機能が集まったソフトウェア
  • 「Linuxのディストリビューション」…Linuxカーネルで作られたOSの総称

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

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

Linuxカーネルとシェルの関係

Linuxの仕組みについて、もう少し詳しく見ていきましょう。

Linuxカーネルは、「OSとしての基本機能を集めたコアとなるソフトウェア」でしたね。

機能自体は、すべてカーネルが持っているのですが、カーネルの機能を僕たちユーザが使うには、「シェル(shell)」と呼ばれるソフトウェアを使う必要があります。

  • 「カーネル」…Linuxの機能の核(機能を提供するソフトウェア)
  • 「シェル」…カーネルを覆っている殻(インターフェースを提供するソフトウェア)

シェルを日本語にすると「殻(から)」ですよね。

そう、シェルは核(カーネル)を覆っている殻のようなものなんです。

このシェルを操作することで、シェルの中にあるカーネルに指示を出していきます。

また、カーネルを操作する「シェル」にも、いくつかの種類があります。

  • sh
  • bash
  • zsh

ほかにも色々ありますが、よく使われるのは「bash(バッシュ)」です。

最近のLinuxでは、このbashがデフォルトのシェルとして設定されているので、bashが使えるようになればLinuxの操作で困ることはないでしょう。

もちろん、あとからシェルを変更することもできるよ!

「でも、Linuxを触っていてbashなんて意識したことないけどな…」

そんな方もいるかもしれませんね。

でも、Linuxにログインして「黒い画面」を操作したことはないでしょうか?

そのインターフェースこそが、シェルなんです。

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

Linuxの特徴

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

CUIとは

Linuxは、シェルを使うことで操作できます。

このシェルは、「CUI(キャラクタユーザインターフェイス)」で操作することが特徴です。

だいたいの方は、WindowsやmacOSのような「GUI(グラフィカルユーザインタフェース)」しか使ったことがないと思います。

  • 「GUI」…画面上で視覚的に操作できる直感的なインターフェース
  • 「CUI」…キーボードで入力される文字だけで操作するインターフェース

GUIは、WindowsやMacのようなグラフィカルな画面をマウスなどで操作できるインターフェースのこと。

これらのOSを普通に使ってる分には、GUI操作になりますね。

CUIは、Windowsの「コマンドプロンプト」やMacの「ターミナル」のような、文字だけでやりとりするインターフェースのことです。

意識しないと、あまり使うことはないかもしれません。

ですが、Linuxはこの「CUI操作」が基本になります。

GUIに慣れてしまっている方は、少し苦手意識を持ってしまうかもしれませんね。

ただ、これも慣れなので、使っていれば「CUI便利じゃん!」となるので安心してください。

また、LinuxはCUIなので、グラフィカルなツールは使えません。

たとえば、Linuxの中でプログラミングをする場合、テキストエディタもCUI対応のものしか使えないということになります。

CUI対応のエディタっていえば、EmacsやVimが有名だね!
プログラマーおすすめのエディタおすすめのテキストエディタとは?WindowsとMacで使えるエディタ3選!

ちなみに、あとからLinuxにGUIを導入することもできますが、実際の業務でGUIが使われることはほとんどありません。

難しそうだからといって後回しにせず、少しずつCUIにも慣れていくようにしましょう。

エンジニアなら、必ずCUIを使いこなせるようになろう!

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

Linuxは、「OSS(オープンソースソフトウェア)」です。

OSS(オープンソースソフトウェア)とは、ソースコードを無償で公開し、誰でも自由に改良・再配布ができるようにしたソフトウェアのこと。

Linuxがここまで世に普及した理由として、無償で利用でき、改変できるOSSだったからこそといわれています。

様々なディストリビューションが存在するのも、このOSSの影響ですね。

Linuxがこれだけ普及したのも、このOSSのおかげだね!

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

いまやLinuxは、Webシステムで使われるOSとして、デファクトスタンダード(事実上の標準)になりました。

Windowsと違い、Linuxは無償で使えるため、企業がシステムを導入する際のコストダウンに直結したのです。Windowsだと、マシンを増やすたびにお金がかかっちゃいますから。

ちなみに、これからLinuxを使い始めるなら「CentOS(セントオーエス」)をおすすめします。

無償で使えるのはもちろん、実際の業務で使われることが多いので、勉強にも最適です。

「Ubuntu」も人気だけど「CeontOS」のほうが業務では多いかも!
Linux環境構築【Linux環境構築】VagrantとVirtualBoxとは?使い方を初心者向けに解説!

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

  • Linuxとは「Linuxカーネル」と「カーネルを使っているOS」の2つの意味がある
  • Linuxカーネルを使って作られたOSを「ディストリビューション」と呼ぶ
  • Linuxカーネルは、シェル(主にbash)によって「CUI」操作される
  • Linuxは「OSS」で、無料で使えて改良や再配布できるから広まった
  • 勉強で使うLinuxは「CentOS」がおすすめ

正直、Linuxは実際に使ってみないと理解が進まない部分が多いです。

「習うより慣れろ!」だね!

とはいっても、初心者がいきなりLinuxを触ったところで、何をどうしていいかわからず困ると思います。

そこでまずは、「Linuxのディレクトリ構造」について確認するところから始めてみましょう。

【Linux入門】基礎知識の勉強まとめ!構築方法やコマンドを学習する【Linux入門】基礎知識や構築、使い方の勉強【初心者向け学習】
テキストのコピーはできません。