*

初心者が効率良くLinuxを学習・習得する方法

  最終更新日:2016/08/30

Pocket

Linux習得法

 Linuxを習得するにはどうすれば良いのか、そんな疑問に応えるためにLinuxの学習・習得方法をまとめました。

スポンサーリンク

「Linuxを使いこなす」とは?

 「WindowsやMacを使いこなす」と書くと皆さんどのようなイメージを持つでしょうか?大体以下の様なことを思いつかれるのではないでしょうか。

  • メールソフトを使うことができる
  • ブラウザを使うことができる
  • Officeを使うことができる
  • アプリケーションのインストールができる
  • OSの各種設定変更ができる
  • ドライバをインストールして新しい機器を使えるようにできる

 では、Linuxではどうでしょう。私が考える「Linuxを使いこなす」は、WindowsやMacのものとは異なります。

  • コマンドラインだけで作業できる
  • シェルの環境設定ができる
  • シェルスクリプトを作成できる
  • viエディタを使える
  • ディレクトリ構造を把握している
  • システム設定の変更ができる
  • ソフトウェアパッケージを検索してインストールできる
  • Apache、Sambaなどのサーバソフトのインストール、設定ができる
  • 様々なLinuxディストリビューションを使いこなせる

 基本的なところだけ挙げましたが、人によってはもっと高度な内容も挙がることでしょう。いずれにしろ、先に挙げた「WindowsやMacを使いこなす」の例とは全く異なることが分かって頂けると思います。なぜこんなに違うかと言うと、OSの成り立ちや用途が異なるためです。

 WindowsやMacは誰でも使えることを前提として作られた個人向けのOSです。そのため、「使いこなす」条件を挙げたとしても、特定のアプリケーションが使えるか、OSの設定変更ができるかどうか等の作業項目がほとんどでしょう。

 それに対してLinuxは、Linuxカーネルが動いていればそれは全てLinuxです。スマホのAndroid、テレビやDVDレコーダーなどの組み込み機器、無線LANルーター、ファイルサーバ、Webサーバなどのネットワーク機器、メインフレーム、スーパーコンピュータ等々、個人利用から大規模なものまで様々な分野、ハードウェアで使われています。と言うことは、「Linuxを使いこなす」には、Linuxそのものだけでなく、Linuxに関連するソフトウェア、ハードウェア、ネットワークなどの広範囲のコンピュータ関連の知識が必要になってきます。私が最初に挙げた使いこなし例はあくまで初歩であり、ごく一部に過ぎません。

 これからLinuxを習得しようと考えている人にとっては難しそうだと感じたことでしょう。確かに難しいです。ですが、千里の道も一歩から、きちんとした基礎知識を身に付ければ、いずれは使いこなせるようになります。

学習におすすめの本

 私がおすすめするLinuxの基礎知識を習得するための本はこちらです。LPIC(Linux Professional Institute Certification)、Linux技術者認定資格の学習本です。

 LPICの資格を取得しましょうと言う話ではなく、あくまで基礎知識習得に有効なので選びました。初心者向けのLinux本として、LinuxディストリビューションであるCentOSやUbuntuの使い方のような本もあります。しかし、それぞれのディストリビューションを使いこなすための知識は得られるものの、Linuxの深い知識は得られない本が多いです。

 この本の内容は、ハードウェアの基礎知識、インストール、ディストリビューションの違い、コマンド、デバイス、シェル、システム管理、ネットワークまで広範囲の知識が得られます。ページ数は500ページ以上ありますが、この本の内容を習得しておけば、その知識を土台としてかなりの応用が効くようになります。この本を隅から隅まで把握しておく必要はありませんが、最初だけは初めから終わりまで目を通しておくことをおすすめします。ちなみにレベル2以降はかなり応用的な内容なので、無理に読む必要はありません。

 Linux教科書本の内容では難しいと言う場合、こちらの本もおすすめです。Linuxを全く使ったことが無い人はこちらを最初に読むのが良いかもしれません。この本ではCentOSの仮想環境をダウンロードできるので、WindowsやMac OSに仮想環境をインストールして、実際にLinuxに触れながら学習を進めることができます。この本を買わなくても、仮想環境ぐらいはインストール手順の学習のために自分で作成してみてもよいでしょう。

最初のディストリビューション

 Linuxには多くのディストリビューションがあります。初心者ではどれを選べば良いか分からない人も多いでしょう。

 もし職場や学校で既に使用しているディストリビューションがあれば、同じものを使うのが一番です。この利点は、家で憶えた知識を職場でもすぐ使えることです。逆に職場で憶えた知識を家で使えば、うまく学習サイクルを回すことができます。

 それ以外の場合、おすすめはUbuntuです。Ubuntuをすすめする理由は、使いやすさを前提に作られたディストリビューションだからです。また、Ubuntuはインターネット上に記事が多いので、疑問点の検索がしやすいのも利点です。

 逆におすすめしないのはCentOSです(CentOSフリークの方が読まれていたらごめんなさい)。CentOSはSELinuxを始めとしてセキュリティがしっかりしたディストリビューションです。しかし、セキュリティがしっかりし過ぎて初心者には扱いづらい面があります。また、CentOSは新しいソフトウェアのパッケージがないことも多いので、EPELと呼ばれる拡張パッケージをインストールしたり、自分でビルドする必要があることもあります。

 個人の学習用で使うならUbuntuが一番良いと思います。コンピュータの学習はとにかく色々やってみて慣れることが大事なので、その最初の段階で面倒な苦労をする必要はないと私は考えます。

 ただし、Ubuntuに慣れ切ってしまうと弊害として他のディストリビューションを使う時に困ることになるでしょう。ある程度慣れたら、他のディストリビューションにも挑戦してみましょう。

応用力を付けるには?

 今までの内容はLinuxの基礎を身につけるためのものです。ここまでは効率的に習得できます。しかし、応用力となるとそううまくは行きません。

 応用力を付ける一番の方法は、Linuxを使って何らかのシステムを自分で作ってみることです。例えば、日経Linuxなどの雑誌に掲載されているシステムを作ってみるなどが良いでしょう。私の場合、テレビがアナログ放送の時代にLinuxで録画サーバを作っていました。それこそ寝る間を惜しんでやっていたので、その頃に習得したことが一番大きかったように思います。

 学習用におすすめのシステム作りは、USBメモリ起動のLinuxを自分で構築することです。LinuxカーネルとBusyBoxを使ってファイルシステムを作れば、比較的簡単に自分専用のLinuxを作ることができます。これは組み込み系でよく使われる手法なので、組み込み技術者の方は特に試してみることをおすすめします。私もかつて1枚のフロッピーディスクにLinuxを詰め込んだことがありました。圧縮ファイルシステムまで使ってVNCなども入れて、仮想端末もどきを作りました。

 もうひとつ有効なのは、いつでも使えるLinuxサーバを家に作ることです。古いPCでもRaspberry Piでも何でも良いので、Linuxに触れる機会を増やすことが大事です。私自身、Plat’HomeのOpenBlockSと言う小型サーバを長年使っています。ネットワーク設定は大体これで習得しました。

 応用力とは別の話になってしまいますが、Linuxに詳しい人を探す事も重要です。職場の同僚や学校の同級生や先輩でも良いですし、Linuxの勉強会に参加してみるのもひとつの手段です。自分がどれだけの知識を持っているかより、誰がどの分野に詳しいのかを知っていることのほうが重要な時もあります。Linux人脈を作ることも長い目で見ると有効でしょう。

Linux習得に本当に必要なのものは?

 Linux習得に本当に必要なものは探究心だと思います。Linuxで何かをやろうとして、インターネットで調べたことを鵜呑みにそのまま実行するだけの人も多いと思います。しかし、Linuxを習得する気があるのなら、なぜそのコマンドを実行する必要があるのかまで突き詰めて考える必要があります。なんとなく実行するだけでは何も身につきません。何かを調べて面白いと感じる探究心がないと、Linuxに限らずですが、長続きしないのではないでしょうか。

 Linux習得のために必要な物はもうひとつあります。それは調査力です。分からないことをインターネットで検索するのは誰でも行いますが、欲しい情報が英語でしかない場合もあります。コマンドのトレースやログを調べたり、manなどのマニュアルやソースコードまで調べる必要があるかもしれません。分からないことを自力で解決するためにはとにかく調査力が必要です。前節で取り上げたLinux人脈に頼るのもひとつの手ですが、ひとりで調査力を上げるための地道な取り組みも必要です。

まとめ

 Linuxの基礎的な内容は効率的に習得は可能ですが、応用力まで考えると長い年月が必要です。この記事を読んで大変だと感じたかもしれませんが、継続は力なりで頑張りましょう。

 ここまでの内容を箇条書きでまとめました。

  • LPIC本で基礎力を付けよう
  • 学習用のおすすめディストリビューション
    • 第一候補は職場や学校で使用しているもの
    • 第二候補は初心者でも使いやすいUbuntu
    • 慣れたら他のディストリビューションも試す
  • 応用力を付ける方法
    • Linuxを使ったシステムを作ってみる
    • 家にLinuxサーバを常設して、Linuxに触れる機会を増やす
    • Linux人脈を増やすことも大事
  • Linux習得に本当に必要なもの
    • 探究心
    • 調査力
    • 地道な努力

 私自身、まだまだLinuxを勉強中です。自分よりまだまだ上の技術者がいると思いながら頑張っています。そんな私が書いた記事でも誰かの手助けになれたなら幸いです。

 本記事では概念的な説明しかできていないので、反響があれば本文中で触れたシステム作りなどについても今後記事化していけたらと考えています。