Linuxとは?サーバーでよく使われるOSを初心者向けに解説
サーバーについて勉強すると、Linuxという名前を頻繁に目にします。
AWSなどのクラウドを学ぶときにもLinuxの知識は役立ちます。
Linuxとは?
厳密にはLinuxは、OSの中核となるLinuxカーネルを指します。
実際に私たちが「Linuxを使う」と言うときは、Linuxカーネルとさまざまなソフトウェアを組み合わせたLinuxディストリビューションを指していることが多くあります。
初心者のうちは、
Linux = サーバーなどで広く使われているOS系統
というイメージから始めても大丈夫です。
OSとは?
OSは Operating System の略です。
コンピューターのハードウェアを管理し、アプリケーションが動作するための基本的な機能を提供します。
代表的なOSには、
- Windows
- macOS
- Linux系OS
などがあります。
Linuxディストリビューションとは?
Linuxカーネルだけでは、一般的なOSとして利用するにはさまざまなソフトウェアが必要です。
Linuxカーネルにパッケージ管理ツールや基本コマンドなどを組み合わせ、利用できる形にまとめたものがLinuxディストリビューションです。
代表例には、
- Ubuntu
- Debian
- Red Hat Enterprise Linux
- Rocky Linux
- AlmaLinux
- Amazon Linux
などがあります。
それぞれ特徴や利用目的が異なります。
なぜサーバーでLinuxを使うの?
Linux系OSがサーバーで広く利用される理由には、
- オープンソースのソフトウェアが豊富
- サーバー用途の実績が多い
- CLIによる管理や自動化を行いやすい
- クラウド環境でも広く利用されている
- 用途に応じたさまざまなディストリビューションがある
などがあります。
ただし、サーバーではWindows Serverなども利用されます。
サーバー = Linuxだけ
ではありません。
CLIとは?
Linuxでは**CLI(Command Line Interface)**を利用して操作する場面が多くあります。
画面上のボタンをクリックする代わりに、文字でコマンドを入力します。
例:
pwd
ls
cd /var/log
pwd:現在いるディレクトリを確認ls:ファイルやディレクトリを一覧表示cd:ディレクトリを移動
最初は難しく見えますが、サーバー管理では非常に重要です。
Linuxのディレクトリ
Linuxではファイルやディレクトリが、ルートディレクトリ / を起点とした階層構造で管理されます。
/
├── etc
├── home
├── usr
├── var
└── tmp
用途は環境によって異なりますが、代表的には、
/etc:各種設定ファイル/home:一般ユーザーのホームディレクトリ/var:ログなど変化するデータ/tmp:一時ファイル
などがあります。
rootとは?
Linuxにはrootと呼ばれる特権ユーザーがあります。
rootはシステムに対して非常に強い権限を持つため、操作を誤ると重要なファイルを変更・削除できてしまいます。
そのため実際の運用では、必要なときだけ適切な権限を利用することが重要です。
sudoとは?
sudo は、許可されたユーザーが別ユーザーの権限でコマンドを実行するための仕組みです。
管理作業でroot権限が必要な場合などに利用されます。
sudo <command>
ただし、sudoを付ければ何を実行してもよいわけではありません。
コマンドの内容を理解して実行することが大切です。
パーミッション
Linuxではファイルやディレクトリに対して、
- 読み取り
- 書き込み
- 実行
などの権限を管理できます。
これをパーミッションと呼びます。
複数ユーザーが利用するサーバーでは、誰がどのファイルを操作できるかを適切に管理する必要があります。
パッケージ管理
Linuxディストリビューションでは、ソフトウェアのインストールや更新を管理するための仕組みがあります。
たとえばUbuntu系ではAPT、Red Hat系ではDNFなどが利用されます。
ディストリビューションによって利用するツールは異なります。
LinuxとApache・Tomcat
Linuxサーバー上では、さまざまなサーバーソフトウェアを動かせます。
たとえば、
Linux
├── Apache HTTP Server
├── Tomcat
├── nginx
├── データベース
└── その他のアプリケーション
というような構成が可能です。
Linuxは土台となるOSであり、ApacheやTomcatはその上で動作するソフトウェアです。
🍯 はちみつメモ
今日覚えることは1つだけ!
Linux = サーバーやクラウドで広く利用されているOS系統
厳密にはLinuxはOSの中核となるカーネルを指します。
まとめ
- Linuxは厳密にはLinuxカーネルを指す
- 実際にはLinuxディストリビューションをLinuxと呼ぶことが多い
- UbuntuやRed Hat Enterprise Linux、Amazon Linuxなどがある
- サーバーではCLIによる操作がよく利用される
- rootは強い権限を持つ特権ユーザー
- ファイルにはパーミッションを設定できる
- Linux上でApacheやTomcatなどを動かせる
次におすすめ
次は**「Apacheとは?」**を学びます。