はじめに
基礎が出来てなくて最近何かと困るので、初歩の初歩からLinuxのお勉強をやり直していきます。
そもそもOSの役割
- メモリの管理
- ディスク管理(記憶装置の管理)
- ハードウェアからの情報をアプリケーションに受け渡す
Linuxの動作の仕組み
LinuxのOSはLinuxカーネルという中心部のソフトウェアとそれを覆うシェルというソフトウェアから出来ています。 実際に人間側がPCを操作する場合は、Linuxカーネルに対してアクションを起こすわけではなく、terminal(winだとコマンドプロンプト)でLinuxにログインし、シェルを介してLinuxカーネルを操作します。
Linuxの特徴(マルチタスク・マルチユーザー)
複数のアプリケーション(処理)を同時に実行出来る。
バッチ処理やRailsアプリのRakeタスクを同一アプリで同時に複数実行出来るイメージで良さそうです!
複数のユーザーが同時にログインして作業を行うことが出来る。
こちらは複数人でサーバーにsshでログインして作業することもあるので言わずもがなですね!
Linuxディストリビューション
Linuxという言葉は本来Linuxカーネルのことを意味していますが、カーネルだけではOSとして手軽に使うことはできません。
そこでLinuxを利用しやすいようにアプリケーションなどをパッケージにしてすぐに使える状態にしたものを「ディストリビューション」と呼びます。
RedHat系
Debian系
- Debian GNU/Linux
- Ubuntu
- Rasbian(Raspberry Pi専用に開発されたLinux)
Slackware系
Android系
Linuxのインストール方法(2パターン)
1. ネイティブ型
2. 仮想化型
仮想環境へインストールする方式
仮想化型の中の3種類の方式
- アプリケーション方式
- ハイパーバイザ方式
- パーティショニング方式
アプリケーション方式とは?
仮想化用のソフトウェアをPCにインストールして実施する方式のことになります。
主なソフトはVMwareやVirtualbox。
ハイパーバイザ方式とは?
主に仮想化用のカーネル上で動作させる方式です。
主なソフトは、VMware ESXiなど。
AWSやVPSなどがこの方式で主にコマンドラインのCUIで操作を行う方式になります。
パーティショニング方式
物理的なハードウェア資源を物理的・論理的に分割して利用する方式のことらしいです。
最後に
とりあえずざっくりまとめたけど、まだ全然わからなことだらけなのでちょっとずつ勉強していきます...