※個人的な学習のアウトプットとなりますので間違い等あった場合ご指摘いただけると大変助かります。
Linux
LinuxとはOS(Operating System)のひとつでPCを動作させるために必要なシステム。
キーボード入力やマウス操作、サーバーへのリクエストやレスポンスの受信などPCを動かす際に必要で当然のように存在しているソフトウェアがOS。複数種類があるOSの中のひとつがLinux。
GUIとCUI
OSの環境には2種類あり、GUI (Graphical User Interface) か CUI (Character User Interface) がある。
GUIは一般的なPCで採用されているWindowsやMac OSのようなマウス操作によってファイルやフォルダ操作をするような視覚的にわかりやすいインターフェース。
一方CUIはいわゆる「黒い画面」に対してコマンドを打ち込むことで操作を行う一般人にはやさしくない環境。
ディレクトリという概念の理解した上で自分の現在地を把握することが重要。
こんな感じのやつ。
今回の記事に取り上げているLinuxはCUI環境に該当するOS。
Linuxの歴史
元はアメリカのAT&T社で開発されたUNIXというOSがありSystemⅤ系とBSD(Berkley Software Distribution)系の2つの系列で発展していた。
Linuxはその発展の先にいるわけではなく、UNIXを参考にLinus Tovaldsがゼロから作り上げたOSがLinux。
UNIXを参考にしているのでコマンドは似ているがソースは全くの別物となる。
Linuxはオープンソース (ソースコードを一般公開して誰でも使えるようにしている)になっており、企業や団体等がこれに独自ツールやサポートを付け加えてパッケージにすることをディストリビューション (配布形態)という。
有名なディストリビューションにはCentOSやUbuntuなどがある。
コンソール
LinuxではLinuxがインストールされたPC(ホスト)へネットワーク経由で別のPC(端末・ターミナル)から接続するような使い方が中心になる。
こういったCUI環境でコマンドを受け取り、ホストへ渡す役割を果たしているのがコンソールである。
仮想環境
Linuxを使う際にはOS上にハードウェアをエミュレート(模倣)して仮想環境を作り出すという方法がある。
ここで作られた仮想のハードウェアを仮想マシン(仮想PC・仮想サーバー)と言う。
仮想環境の管理ツールで有名なものにはVirtual Boxといったものがある。
この方法で環境を構築すると、CPUやメモリ、ディスク容量を多く必要とするので導入するPCにそれなりのスペックが必要となる。