スキル
初心者でもわかる!Linuxの学習ロードマップ完全版
- #プログラミング 独学
更新
私が書いたNoteにも書いてあるのですが、ITエンジニアとして生きていくならLinuxを学ぶことは必須です。
しかし、多くの方がこのLinuxを理解せずにエンジニアとして働いている状況で、胆力のないエンジニアがないと感じています。
プログラミング業界には、希少型エンジニアと量産型エンジニアという言葉がありますが、希少型を目指すなら絶対に学んでおきましょう!
このページでは、Linuxの基礎知識から学び方までをお伝えしています。
Linuxの勉強の進め方を押さえて、自身のスキルアップにつなげていきましょう。
監修者
古里 栄識
クラウドエンジニア/RareTECHメイン講師
慶應義塾大学理工学部卒業。フリーランスエンジニアとして活動後、AWS Japanに入社。現在は、RareTECH講師としての登壇や、法人向けIT研修講師として勤務。情報処理安全確保支援士。
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でおすすめの勉強の進め方は以下の通りです。
- Linuxをインストールする
- 手軽に学べるサイトで基礎コマンドを勉強する
- 学習本で応用・ネットワークでの操作方法を学ぶ
実際に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エンジニアとしてさらに良い方向に迎えると確信しているので、ぜひ併せてご一読ください。