Linux 学習ロードマップ

「Linux の勉強をやろうと思ったけど、どこから勉強すればいいの?」という方のために、学習ロードマップを用意しました。

Linux の基本機能

まず、全く Linux を触れたことがない方は「基本機能」から学習を始めます。

Linux の基本機能 (⭐️は学習必須)

Linux カーネル

次に、「Linux カーネル」について学びます。

Linux カーネルの機能

サーバー構築

次に Linux でサーバーを構築します。

ネットワークの基礎知識

サーバー構築には、基本的なネットワークの知識が必要なので、OSI 参照モデルを学習します。

OSI 参照モデル

サーバー構築の実践

実際にサーバーを構築してみます。

サーバー一覧

コンテナ&パフォーマンス調査

一通りサーバーを構築できるようになったら、コンテナを利用したサーバーの構築を学習します。
また、実践力を鍛えるためにパフォーマンス調査の基礎を学びます。

その他

おすすめの書籍 (本)

Linux の学習を始める上でおすすめの書籍を、おすすめの学習順に並べて紹介します。

  1. 新しいLinuxの教科書 (必須・実践)
  2. Amazon Web Services 基礎からのネットワーク&サーバー構築 (必須・実践)
  3. Linux のしくみ (必須・基礎知識)
  4. 絵で見てわかるOS/ストレージ/ネットワーク (オプション・基礎知識)
  5. CentOS8 で作るネットワークサーバ構築ガイド (オプション・実践)
  6. Linux教科書 LPICレベル1 (オプション・基礎知識)

知識から入ってもよくわからないと思うので、まずは実践経験を積んで Linux に慣れる方がいいと思います。

新しいLinuxの教科書

まずは Linux の操作やできることを把握するためにコマンドを実際に叩くことをおすすめします。

コマンド自体はググれば出てきますが、学習を始めたばかりの時はググるキーワードすらわからないと思うので、書籍を利用することをおすすめします。

Amazon Web Services 基礎からのネットワーク&サーバー構築

サーバー構築の実践経験を積みたい場合におすすめの書籍です。また、ネットワークの知識が全く無い状態でも読むことができる本です。

上記と同じく、本書籍の情報自体は全て google 検索で取得可能ですが、学習を始めたばかりの時はググるキーワードすらわからないかと思います。

そのため、何もわからない段階では書籍を利用して、順を追って学習することをおすすめします。

本書を読み終え、自分でキーワードが自分で思い浮かぶようになれば後は google 検索だけで知識を収集できるようになります。

Linux のしくみ

OS、カーネルの機能を知識として学ぶことができる本です。

誤字はあるものの、図を使って説明してくれるため、とにかくわかりやすいです。

初学時は、ネット上にある OS、カーネルの解説が難しすぎて挫折するので、この本から入ることをおすすめします。

Linux について広く浅くキャッチアップできるので、インフラエンジニアとして生きていく上での必要最小限の知識は網羅されているかと思います。

絵で見てわかるOS/ストレージ/ネットワーク

ある程度基礎ができている方は、こちらの書籍をおすすめします。

バラバラな「OS/ストレージ/ネットワーク」の知識を繋げ、実際の動作がイメージできるようになります。この総合力は、新規技術の習得やトラブルシューティングの際に大きな力となります。

CentOS8 で作るネットワークサーバ構築ガイド

Linux (CentOS) でサーバーを構築する場合の手順書的な本となっています。

そのため、実際に手を動かしながら学びたい場合におすすめの書籍となります。

先程の「Amazon Web Services 基礎からのネットワーク&サーバー構築」よりも少しだけ難易度が上がってます。

一方で網羅性が高く、ネットに全然情報の無い情報等もまとめられているため、サーバー構築を行う際に非常に助けになる書籍です。

とても分厚い本なので、業務の必要に応じて各章をつまみ読みするのがおすすめです。

Linux教科書 LPICレベル1

Linux の基礎知識を網羅的に勉強するなら、やはり LPIC です。

世界的な技術者資格だけあって、幅広い範囲を学習できます。

おすすめの学習サイト

Linux を学習する上でおすすめのサイトは以下の2つです。

「A の記事と B の記事で矛盾したことを言っている。どっちが正しいの?」
という時は以下を見ましょう

Linux 記事の一覧

カーネル

【Linux カーネル: OS 入門1】OS、カーネルとは

OS (Operating System) OS (Operating System) とは、主に以下の2つの役割を持つソフトウェアです。 ・ハードウェアの管理 ・プロセス (実行中のソフトウェア) からハードウェアにア...
基礎知識

【入門】初心者が練習すべき Linux コマンドの一覧

初めて Linux のコマンドを学ぶ時は、ググるキーワードがわからなかったり、1つずつ調べるのが大変です。 そのため、本記事の上から順にコピペして実行することで、Linux でよく利用するコマンドを網羅的に理解できるようにしました。...
カーネル

【Linux カーネル: OS 入門8】IPC (プロセス間通信)

IPC (Inter Process Communication) IPC とは、プロセス間で通信 (データをやりとり) する仕組みです。 本記事では、以下の IPC について説明します。 IPC の種類特...
基礎知識

【Linux 入門】 cron (コマンドを予定実行)

cron とは cron とは、指定したコマンドを決まった時間に定期的に実行するプログラムです。 cron の設定 cron は crontab コマンドで設定します。 ...
カーネル

【Linux カーネル: OS 入門7】I/O デバイス管理

I/O デバイスとは I/O デバイス とは、カーネルに対して Input や Output を行うデバイスのことです。 I/O デバイスの具体例は、USB・Disk (SSD等)・Printer・キーバード・マ...
カーネル

【Linux カーネル: OS 入門4】ストレージ管理、ファイル

ストレージとは ストレージとは、電源を切ってもデータが残るデバイス (SSD, HDD 等) です。実際にデータを CPU で処理する場合、メモリにロードします ファイルとは ファイルとは、「名...
カーネル

【Linux カーネル: OS 入門5】ファイルシステムの機能

ファイルシステムとは ファイルシステムとは、ストレージ等を「ファイル」単位で管理するカーネルの機能です。これにより、ファイル名を経由してストレージ上のデータへアクセスできるようになります。 ファイルシステムには様...
カーネル

【Linux カーネル: OS 入門3】メモリ管理

メモリとは メモリとは、CPU が直接読み書きする領域です。CPU で実行するプログラム (プロセス) を置いたり、実行した結果を読み書きする領域です。 メモリ管理とは ...
基礎知識

udev とは【Linux 入門】

udev とは udev とは、Linux カーネル 用のデバイス管理ツールです。 udev とは udev とは udev とは、Linux カー...
基礎知識

文字コードとは?一覧表や確認方法や変換コマンド等について

文字コードとは 文字コードとは、各文字に割り当てられたデータ列(バイト列)のことです。 文字コードは以下の2段階に区別されます。 符号化文字集合(Coded Character Set) 文...