スキル

    初心者でもわかる!Linuxの学習ロードマップ完全版

    • #プログラミング 独学

    更新

    ITエンジニアとして生きていくならLinuxを学ぶことは必須です。

    しかし、多くの方がこのLinuxを理解せずにエンジニアとして働いている状況で、胆力のないエンジニアがないと感じています。

    プログラミング業界には、希少型エンジニアと量産型エンジニアという言葉がありますが、希少型を目指すなら絶対に学んでおきましょう!

    このページでは、Linuxの基礎知識から学び方までをお伝えしています。

    Linuxの勉強の進め方を押さえて、自身のスキルアップにつなげていきましょう。

    監修者

    古里 栄識

    クラウドエンジニア/RareTECHメイン講師

    慶應義塾大学理工学部卒業。フリーランスエンジニアとして活動後、AWS Japanに入社。現在は、RareTECH講師としての登壇や、法人向けIT研修講師として勤務。情報処理安全確保支援士。

    仕事も、働き方も、自分で決められるエンジニアに。 希少型エンジニア育成専門ITスクールRareTECH 公式LINEで資料を受け取る

    Linuxとは?

    Linuxは、世界で最も使われるコンピュータの基本ソフト(OS)です。

    これからプログラマーとして活動していくならば、世の中にある多種多様なコンピュータに載せられるため、Linuxの知識を身につけておいて損はありません。

    Linuxの知識を身につけると、以下のようなことができるようになります。

    • 古いコンピュータを動かす
    • サーバーを構築・運用する
    • Androidのような新しいOSを作る
    • OSの中身を変える

    Linuxに興味を持った方はぜひ挑戦してみてください。

    LinuxはIT技術者として活躍したい方におすすめ

    Linuxは、コンピュータのOSを構築する重要な作業に利用されています。

    そのため、IT技術者として活躍したい方はぜひ身に着けておきたいスキルになります。

    • 公共機関や会社などのさまざまな通信で使われるサーバーの構築
    • 社内のネットワーク監視・管理
    • システム開発用OSの環境構築作業

    近年ではIoT分野が盛んですが、そこでの物体の制御にもLinuxの知識を活かすことができます。

    このようにさまざまな場面でLinuxの知識を活かすことができます。

    Linuxの3つの特徴

    Linuxについてもう少し掘り下げてみていきましょう。

    Linuxには3つの特徴があります。

    • 基本的に無料で使える
    • コマンドで操作するCUI
    • PCの性能が低くてもLinuxをインストールできる

    基本的に無料で使える

    Linuxが広く普及している理由の一つは、「基本的に無料で使える」オープンソース性にあります。

    オープンソースとは、ソフトウェアを構成するソースコードが無料で公開されることを指します。

    このオープンソースのアプローチにより、ソフトウェアのソースコードが無料で公開され、様々な人がそれを利用して新しいサービスを構築したり、改良してより高度なものを作ったりすることが奨励されています。

    Linuxもこのオープンソースのアプローチを採用することで、コミュニティ全体でソフトウェアの改良が行われ、より優れたソフトウェアが進化し、広く普及することとなりました。

    コマンドで操作するCUI

    Linuxは、Unixと同じくコマンドで操作する「CUI(Character User Interface)」を使用し、言語的・論理的なアプローチで画面を制御します。

    一方で、WindowsやmacなどのOSは、直感的な操作が可能な「GUI(Graphical User Interface)」を提供しています。

    LinuxのCUIは、「コマンドでの操作が面倒くさい」と感じるかもしれませんが、実際にはコマンド入力が複雑でありながらも、より細かく操作が可能です。

    なお、macOSはUnixから派生しており、MacのターミナルではUnixコマンドが使用できます。

    CUIはLinuxの使用において避けて通れない要素ですので、早めに慣れておくと良いでしょう。PCの性能が低くてもLinuxをインストールできる

    Linuxは、必要な機能だけを備えた軽量なOSのため「PCの性能が低くてもインストール」できます。

    以下のPCでもLinuxを利用できます。

    • 最近で10年以内に作られたPC
    • あらかじめOSが入っていないもの(OSが入っていても良い)
    • 中古PC
    • 動画を再生しても重くならないもの
    • フリーズしないもの

    Linuxでおすすめの勉強の進め方3ステップ

    では、Linuxの勉強方法について具体的に見ていきましょう。

    Linuxでおすすめの勉強の進め方は以下の通りです。

    1. Linuxをインストールする
    2. 手軽に学べるサイトで基礎コマンドを勉強する
    3. 学習本で応用・ネットワークでの操作方法を学ぶ

    実際にLinuxに触りながら、だんだんと操作方法等を学習することで効率的にマスターできます。

    はじめに|勉強する前に確認しておきたいこと

    Linuxの勉強をする前に確認しておきたいことがあります。

    • サポートがない
    • Officeが利用できない
    • ディストリビューションによっては少し日本語に違和感がある
    • 最低限の前提知識をつけておくことが大切

    Linuxは、上記の特徴があることを確認しておきましょう。

    特に最低限の前提知識を確認しておくことが大切です。

    Linuxをスムーズに使うためにも以下のキーワードを簡単に紹介します。

    カーネル:Linuxの中枢部で働くソフト

    ファイル:文章や画像、動画、資料、設定情報などの情報のまとまり

    パッケージ:複数のファイルを1つのソフトにしてインストールできる形にしたもの

    ディストリビューション:カーネルにさまざまなソフトを組み合わせた配布携帯。独自のコミュニティが開発していて、さまざまな種類がある。

    ディレクトリ:Windows・Macでいうフォルダ・保存するための区分

    マウント:記録が「デバイスファイル」に入り、それを一つのディレクトリに認識させること

    シェル:LinuxのCUIの機能を利用するためのソフト

    ターミナル:シェルを画面で表示させるシステム

    Linux関連のキーワードは、学習サイト・本で何回も出てきますので押さえておきましょう。

    Step1. Linuxをインストールする

    Linuxを専用のパソコンや「VirtualBox」などの仮想マシンにインストールする際には、まずLinuxディストリビューションを選択しましょう。

    Linuxには「ディストリビューション」と呼ばれる配布形態が複数存在します。インストールの際には、これらのディストリビューションから一つを選ぶ必要があります。

    各ディストリビューションは内容や特徴が異なるため、自身のニーズに合ったものを選ぶことが重要です。初心者におすすめのディストリビューションは以下の通りです。

    Ubuntu:Debian系の人気が高いディストリビューション

    ferenOS:Ubuntuをベースとしたディストリビューション

    Linux mint:Windows・macOS・Ubuntuの次にユーザー数が多い、軽量で簡単なディストリビューション

    上記の中でも最もおすすめなのが、「Ubuntu」です。

    理由としては以下の通り。

    • 最もメジャーなもので、ネットに情報が多く記載されている
    • 無料で使える
    • 特定のバージョンは、長期間サポートされるため、不具合が少ない(LTSのバージョン)
    • 頻繁に新しいものが更新される

    またDockerというコンテナを使って自分のPC上にLinuxを操作することも出来ます。

    初心者はメジャーで情報が収集しやすいUbuntuのインストールがオススメです。

    Step2. 手軽に学べるサイトで基礎コマンドを勉強する

    Linux OSをインストールしたら基礎コマンドを学習サイトで勉強しましょう。

    例えば、Envaderという無料でも使える学習サイトがあります。

    Envaderは、オンライン上でサーバー構築やネットワーク、サイバーセキュリティなどのインフラ系の学習ができるプラットフォームです。

    ユーザーは、1クリックで仮想システムを作成できるため、自分だけのサーバー環境を簡単に構築できるのが特徴です。Linuxの環境構築に手間取ることなく、Linuxコマンドを触れる点がよいです。

    Linuxを学習できるコースが無料で用意されているため、初心者でも手軽に勉強できるのでおすすめです。

    Step3. 学習本で応用・ネットワークでの操作方法を学ぶ

    最後にLinuxをインストールしてある程度コマンドを覚えたら、学習本で応用・ネットワークでの操作方法を学びましょう。

    学習本ではある程度Linuxの操作が出来ることが前提で書かれています。

    そのため、Linuxでの操作方法に慣れてから学習本で学ぶ方が効率的に学習できます。

    おすすめ学習本:「入門者のLinux」

    「入門者のLinux」はLinuxについての基礎知識を学べる本です。

    入門的な知識から難しいものまでをわかりやすく、丁寧に解説してくれる本です。

    素朴な疑問も解消しながら読み進められるため、Linuxへの理解が深まります。

    おすすめ学習本:「ITエンジニア1年生のためのまんがでわかるLinux シェルスクリプト応用&ネットワーク操作編」

    「ITエンジニア1年生のためのまんがでわかるLinux シェルスクリプト応用&ネットワーク操作編」では、漫画形式でLinuxについて詳しく学ぶことができます。

    レベルとしては中級者向けでネットワーク操作に関する内容が多く、実践でも使える知識が身につけられます。

    安全でセキュリティ性の高いサーバー構築を行えます。

    ゼロからわかる Linux Webサーバー超入門[Apache HTTP Server対応版] かんたんIT基礎講座

    「ゼロからわかる Linux Webサーバー超入門」では、初心者が知識・スキルゼロから実務に取りかかるまでの状態を想定した基礎的な内容が含まれています。

    VirtualBoxやCentOS、Apachの使い方などが詳細に記載されているため、サーバーの構造についての理解を深めることができます。

    難しい内容もありますが、わからないところは検索しながら進めることで、エラーや不具合に対応する知識も身につけられます。

    Linuxのスキルを身に着けるための3つのポイント

    Linuxのスキルを身に着けるための3つのポイントを紹介します。

    1.とにかくインストールの回数をこなす

    まずは「Linuxをインストールする回数」を増やしていきましょう。

    Linuxのインストールの回数をこなせばこなすほど、Linux OSの知識・スキルは深まっていきます。

    自身の環境にLinuxをインストールして勉強したい内容を実践することを繰り返すことで、エラーや不具合対応も含めてできることが増えていきます。

    実際に自分の環境にLinuxをインストールして試してを繰り返すことが大事!

    2.わからないことはコンピュータで確かめる

    Linuxを勉強する際には、必ずといっていいほど不具合やエラーなどのわからないことが出てきます。

    • 年々新しくシステムが更新されるため、指定のソフトウェアや条件下でのOS構築ができない
    • ソフトが更新されてネットワーク処理の対応方法が変わっている

    何かうまくいかない場合はコンピュータ側を操作して何が起きているか確かめましょう。

    問題の原因はコマンドでログやファイルの中身を調べたり、ネットで解決方法を探したりすることで、わからないことを解決できます。

    こうしたエラー解決スキルは実践でもかなり重宝されるので、問題が起こったら成長のチャンスとしてとらえていこう!

    3.古い情報は対応するバージョンを確認しよう

    Linuxは頻繁にバージョンが更新されるため「対応するバージョンを確認する」ことも大切です。

    特にネットで解決方法を探した際には、古い情報が見つかることが何回もあります。

    そのため、バージョンを指定して検索するなどの工夫をして、自身の環境にあった適切な情報を見つけましょう。

    ネットなどでLinuxについて調べるときは、バージョンにも意識しよう!

    Linuxとあわせて身に付けたい知識・スキル

    Linuxの勉強方法について見ていきました。

    ここではLinuxの勉強ととあわせて身に着けたいスキルや資格について見ていきましょう。

    Linuxディストリビューションの種類

    Linuxには”ディストリビューション“と呼ばれる配布形態があります。

    Linuxディストリビューションには、以下の種類があります。

    Red Hat Enterprise Linux (RHEL):RedHat社が開発・商用向け・有料

    Fedora:RedHat社が支援・無料

    Debian:世界中の有志から生まれた・利用者の割合が1番高い・無料

    CentOS:商用部分が除かれたRHELのクローンOS・無料

    Ubuntu:Debianをベースに作成された・世界中で人気のOS

    今回はUbuntuを例として紹介していましたが、上記のように他のディストリビューションも数多く存在します。

    どれも実務で使う可能性が高いものなので、IT技術者になりたい方はそれぞれの特徴や操作方法などもチェックしておいてください。

    Linuxディストリビューションによって企業のサポートがあったり、コマンドが違ったりと特徴や操作方法が違うので、押さえておきましょう。

    Apachサーバー・WEBサーバーの運用・構築の知識

    Linuxは、コマンドを覚えて終わりではありません。

    コマンドを入力してOSを運用・構築できるようになる必要があります。

    Apachサーバー:世界中で使用されるWEBサーバー・性能と動作性が優れている

    WEBサーバーの構築:配線を行い、OSとサーバーアプリケーションをインストールして、設定を行う

    WEBサーバーの運用:サービスやネットワークが動いているか管理する

    クラウド化が進んでいますが、まだまだ企業では自社でサーバーを動かしている所が多く、サーバー運用・構築のスキルは重宝されます。

    Linuxだけでなくサーバー構築・運用の知識を付けることでより高いレベルのエンジニアにスキルアップできます。

    Linuxの資格取得でインフラエンジニアとして活躍できる

    Linuxの資格を取得することもおすすめです。

    自身のスキルを資格取得で証明することでLinuxの場合ではインフラ系のエンジニアとしてアピールできます。

    おすすめ資格:「LinuC」

    「LinuC(Linux技術者認定試験 LinuC)」は、日本の市場に適した試験・運用サービスをテーマに開発された資格です。

    試験では、物理・仮想環境でのLinuxサーバー構築・運用の知識が求められます。

    LiunC-1⇒LinuC-2⇒LinuC-3とレベルが上がっていき、LinuC-3を取得できると非常に専門的な技術力を証明できます。

    2018年に開始された比較的新しい認定資格のため、現在デフォルトとなっている設計や構築を勉強できるのがメリット!

    おすすめ資格:「Linux Professional Institute LPIC-1」

    「Linux Professional Institute LPIC-1」はLinux経験の浅い初心者向けの資格です。

    Linuxの資格として世界基準で認定されています。

    101試験・102試験の両方を受験して合格すれば、「LPIC-1」に認定されます。

    コマンドの使い方などLinuxの基礎操作やシステム管理が求められるので、勉強の習得度を測るのにはおすすめです。

    Linuxのシステムやサーバー管理、セキュリティ、仮想化などに関する実務経験者向けの資格が欲しい場合はLPIC-2かLPIC-3を受験しよう!

    データサイエンスのスキル

    データサイエンスやコンピューターサイエンスにおいてLinuxの知識はベースとして必要です。

    大がかりなデータ分析を行う際はLinuxOSで分析した方が効率が良いことも多いです。

    そのためLinuxを学んだ後にLinuxの知識を活かしてデータサイエンスを学ぶのもおすすめです!

    ぜひデータサイエンティストを目指してみてください。

    まとめ|初心者でもわかる!Linuxの学習ロードマップ完全版


    いかがでしたか?

    このページをご覧のほとんどの方がこれからプログラミングを学ぶ方だと思いますが、勉強の進め方としてはとても良い方向に進んでいると思います。

    冒頭でもお伝えした通り、希少型エンジニアと量産型エンジニアと言う言葉があります。

    希少型エンジニアとして活躍して、キャリアや収入面も上げていきたい方はぜひLinuxを学びましょう。

    以下、参考情報です。

    量産型エンジニアの特徴

    • 夜中にシステムを見守らなくてはいけない
    • ひたすら単純作業に追われがち
    • システム異常が起きると残業・休日出勤が当たり前
    • 古い技術しか学べず応用が効かない
    • 納期に追われて激務になりやすい

    量産型エンジニアは「初心者でも転職しやすい」というメリットがありますが、ワークライフバランスが取りにくく、自分のスキルアップもしづらいタイプのエンジニアなのです。

    一方、希少型エンジニアであれば下記のような働き方ができます。

    希少型エンジニアの特徴

    • システムを根本から設計できる
    • リモートやフルフレックスで自由に働ける
    • クライアントと直接交渉しながら工程を管理できる
    • 異常を根本から解決できるので緊急案件が少ない

    こちらの記事を読むことで、ITエンジニアとしてさらに良い方向に迎えると確信しているので、ぜひ併せてご一読ください。

    → 爆速IT勉強法

    【番外編】USBも知らなかった私が独学でプログラミングを勉強してGAFAに入社するまでの話

    IT未経験者必見 USBも知らなかった私が独学でプログラミングを勉強してGAFAに入社するまでの話

    プログラミング塾に半年通えば、一人前になれると思っているあなた。それ、勘違いですよ。「なぜ間違いなの?」「正しい勉強法とは何なの?」ITを学び始める全ての人に知って欲しい。そう思って書きました。是非読んでみてください。

    「フリーランスエンジニア」

    近年やっと世間に浸透した言葉だ。ひと昔まえ、終身雇用は当たり前で、大企業に就職することは一種のステータスだった。しかし、そんな時代も終わり「優秀な人材は転職する」ことが当たり前の時代となる。フリーランスエンジニアに高価値が付く現在、ネットを見ると「未経験でも年収400万以上」などと書いてある。これに釣られて、多くの人がフリーランスになろうとITの世界に入ってきている。私もその中の1人だ。数年前、USBも知らない状態からITの世界に没入し、そこから約2年間、毎日勉学を行なった。他人の何十倍も努力した。そして、企業研修やIT塾で数多くの受講生の指導経験も得た。そこで私は、伸びるエンジニアとそうでないエンジニアをたくさん見てきた。そして、稼げるエンジニア、稼げないエンジニアを見てきた。

    「成功する人とそうでない人の違いは何か?」

    私が出した答えは、「量産型エンジニアか否か」である。今のエンジニア市場には、量産型エンジニアが溢れている!!ここでの量産型エンジニアの定義は以下の通りである。

    比較的簡単に学習可能なWebフレームワーク(WordPress, Rails)やPython等の知識はあるが、ITの基本概念を理解していないため、単調な作業しかこなすことができないエンジニアのこと。

    多くの人がフリーランスエンジニアを目指す時代に中途半端な知識や技術力でこの世界に飛び込むと返って過酷な労働条件で働くことになる。そこで、エンジニアを目指すあなたがどう学習していくべきかを私の経験を交えて書こうと思った。続きはこちらから、、、、

    note記事3000いいね超えの殿堂記事 LINE登録で記事を見る