インフラを学ぶにあたり重要となってくるOSや
Linux ディストリビューションについて投稿しようと思います。
OSとは
オペレーティングシステム(Operating System, OS)のこと
直訳すると「動作システム」となります。
キーボードの操作、マウスの挙動、イヤホンの音声などなどハードについてや
入出力、タスク管理、ファイル管理などのソフトについてなど
基本機能のシステムにあたります。
OSの種類
代表的なOSは下記のようなものがあり
具体的な派生としては
バージョン違いのwindows10やvista
後述する。機能性別のlinuxディストリビューションなどあります。
- Windows
- Mac OS
- iOS
- Linux
- Android
Windows
Microsoft社が開発したOSです。パソコンで使用されているOSの中では
世界で最もユーザーが多いOSです。
Mac OS
Apple社が作ったOSです。銀色ボディが特徴的なパソコンにインストールされています。
なめらか操作のタッチパッドや、シンプルさで、人気があります。
iOS
Apple社がMac OSを携帯端末用に改良して作ったOSです。
iPhoneやiPadなどにインストールされています。
Linux
WindowsやMacが有料なのに対して、Linuxは無料で使えます。
Linuxには、誰でも自由に改良できるという特徴もあります。
Android
Google社がLinuxを携帯端末用に改良して作ったOSです。
Xperia、Galaxyなどのスマートフォンやタブレットに入っています。
Linux
Linuxは、主にサーバー用として使うOSです。
以下のようなIT技術者向けです。
- OS開発
- 大規模基幹システムの開発,運用
- Iotなどのロボット、家電の組み込み系エンジニア
- ネットワーク機器やデータベースに関わるインフラ従事者
原本となるのがカーネルで、企業などが改造したのがディストリビューションになります。
Linuxカーネル
Linuxの原本となるのがLinuxカーネル
リーナス・トーバルズ氏が開発したLinux。
Linuxディストリビューション
Linuxカーネルを企業などが改造したもの
Linuxカーネルと区別するための呼称。
ディストリビューションとは分布とか流通とかいう意味で
Linux関連で使うときには「種類」にあたります。
Linuxはオープンソースなので進化(改造)の過程で、様々な分布元(企業など)から
様々な種類のLinuxができています。
ちなみに、これを提供する人を「ディストリビューター」と呼びます。
Linuxディストリビューション代表3系列
RedHat系
商業ディストリビューションの代表格
管理を楽にするツール提供に率先的であったり、メーカーによる独自のドライバなども
rpm形式で配布していることが多い。
入門者はまずRedHat系をたしなむ方が仕事につながりやすい。
Debian系
Debianはパッケージ管理が非常に優秀なディストリビューションである。
パッケージはdeb形式を採用し管理の為のフロントエンドapt系のコマンドを使用する。
aptによりパッケージ依存関係を迅速かつ的確に解決してくれる。
Slackware系
なによりも「シンプル」というのが特長だ。
上記の2種のディストリビューションと違いパッケージ管理において
パッケージ間の依存関係の解決をおこなわない。
Linuxディストリビューション簡易一覧
RedHatEnterpriseLinux(Redhat系)
業界のデファクトスタンダードであり、最も成功した商業ディストリビューション
非常に高価。
CentOS(Redhat系)
RedHatEnterpriseLinuxの商標などを徹底的に除去し、リビルドした
クローン代表的な存在としてCentOSがある。
基本的に商用でも無料で使える。
Fedora(Redhat系)
RedHat社が支援するコミュニティーベースのディストリビューション
RedHat社の実験場とも言える。
リリースが非常に早く、ライフサイクルが短い、RedHat社が関与する重要技術は
まずFedoraに導入され、実証と完成を得たのがRedHatEnterpriseLinuxへと反映される。
Debian(Debian系)
Linuxの世界でも最も組織的でありフリーであることを尊重しているディストリビューション
組織規模も最大級であり、パッケージ管理ツールが非常に優秀
Ubuntu(Debian系)
最もユーザに優しいディストリビューション
通常版とロングサポート版、デスクトップ用途とサーバ用途をある程度わけて開発しているのも特徴
Slackware(Slackware系)
老舗ディストリビューション
「シンプルで見通しがよい」のが特徴
GentooLinux(その他ソースベース)
最も難易度が高いディストリビューション
ローリングリリースという形式をとっており随時新しいパッケージが導入されるようになっている。
公式ハンドブックを片手に一からベースシステムを手動でインストールすることになる。
パッケージ管理はソースコードから半自動でコンパイルするようになっている。
ArchLinux(その他ソースベース)
「シンプル」を念頭において開発されているディストリビューションである。
開発者側からみたシンプルさであり、余計なGUIフロントエンドや過度な独自化を避けることを意味している。
GentooLinuxと決定的に違うのは「バイナリパッケージが提供される」という点である。
これによりユーザは迅速に自分好みの環境を構築することが可能となっている。
LinuxFromScratch(LFS) (その他ソースベース)
「自分で全てを管理したい!!」というユーザのいきつく果ては「LinuxFromScratch」である。
その名のとおりベースシステムからなにから全てを自分でコンパイルし環境を構築するのである。