Linuxに触れよう:Linuxに触れよう(4/4 ページ)
これからLinuxを学ぶ人、この春新社会人としてLinuxを学ぼうと考えている人へ、Linux管理者に必要な前提知識をお届けする。Windowsとの違い、Linuxのインストールの仕方、Linuxの学習方法や覚えるべきことを順番に解説。
管理者を目指して
以上、Linuxの導入に関する話をしてきましたが、これからLinuxのシステム管理者を目指そうとする人にとっては、今後どのようなことを学んでいけばよいのかが気になるところだと思います。もちろん管理者として一人前になるためにはさまざまな知識や経験が必要となります。経験は地道に積んでいくしかないのですが、知識は自身の努力でいくらでも増やせます。ただし管理者に必要とされる知識は広範囲に及びます。また、対応する管理範囲によって必要となる知識が違ってくるということや、最新の情報を常に取り込んでいくことも知っておく必要があります。その中で管理者として最低限必要な知識とは何かを考えてみると、以下のようなものが項目として挙げられると思います。
管理者に必要な知識
- ハードウェア
- OS
- TCP/IPネットワーク
- セキュリティ
●ハードウェアの知識
当然ながらすべてのシステムはハードウェア上で動作しています。このためハードウェアに関するさまざまな知識は必要不可欠です。しかしこれはハードウェア単体の知識だけではなく、コンピュータの仕組み自体も含まれています。コンピュータの動作原理や、その上で動作するさまざまなソフトウェアの動作原理まで含めて学ぶことにより、コンピュータに関するさまざまな知識の確固たる土台を形成することができます。
●OSの知識
例えばLinuxであればその利用はもちろん、仕組みや周辺情報、動向なども含めて知っておく必要があるでしょう。実際システムの基盤であり、全体のパフォーマンス、堅牢性、安定性などさまざまな要素はOSに深く関係しています。OSに関する深い知識があれば表面的な管理だけではなく、さまざまな問題に柔軟に対応することも可能です。特にLinuxのようなOSSのOSであれば、その中をソースコードレベルで調べて学ぶことができますし、情報もインターネット上に豊富に存在しますので学ぶにはうってつけの題材だといえます。
●TCP/IPネットワークの知識
現状のシステムは何らかの形でネットワークを利用しており、このネットワークはほとんどの場合TCP/IPというプロトコルによって実現されています。通信に関する知識は現在のシステム管理にとって、必須の知識だといえるでしょう。
●セキュリティの基礎知識
セキュリティに関しては、基本的な概念がここでは必要です。具体的な実践や設定に関しては、関連する知識を別途多く必要としますので、ある程度基本的な設定ができるようになってからあらためて学ぶというスタンスでもよいかと思います。
以上はあくまで基本です。これだけを知っておけばいいというものではなく、これは知らないと話にならないという項目です。さらにいうと、以下の項目も必要な知識として考えておいた方がよいかもしれません。
管理者になるためにプラスアルファで必要な知識
- 専用ネットワーク(例:Windowsネットワークなど)
- アプリケーションレイヤの各プロトコル
- 各サーバアプリケーション
- プログラミング言語
●専用ネットワークの知識
クライアントOSとしてWindowsを利用している企業は多いと思います。この場合、ファイル共有などのネットワークはTCP/IP上にWindowsネットワークを構築するという形で実現されています。Windowsネットワークは独立した1つのプロトコルであるため、これを管理しようとした場合、最低限Windowsネットワークの知識が必要になります。このように実際に使われている専用ネットワークの知識も必要になります。
●アプリケーションレイヤの各プロトコルの知識
アプリケーションレイヤというのはTCP/IPプロトコルスタックといわれる階層構造の上位に存在します。実際にユーザーが目にするアプリケーションのネットワークプロトコルのことです。例えばWebやメールなどで考えると、HTTP、SMTP、POP3などのプロトコルがそれに相当します。各サーバやクライアントは基本的にこれらのプロトコルをベースに実装されたソフトウェアです。このため動作の基本は各プロトコルに依存しており、アプリケーション、ネットワークの動作の原理を知るために必要な知識だといえます。
●各サーバアプリケーションの知識
各アプリケーションのプロトコルを知ると同時に、実際のサーバアプリケーションの設定や動作に関しての知識も必要になります。基本的な動作はプロトコルに依存しているため、例えばWebサーバならばどのようなサーバアプリケーションでも基本的な動作は似ています。しかし、設定方法や細かい動作、機能は実装により異なる場合があるため、アプリケーション自体の知識が必要になります。
●プログラミングの経験
システム管理において本格的なプログラミングをすることはないかもしれませんが、バッチ処理を行うスクリプトなどは自身で記述したり、既存のものを読み解いたりする必要が出てくる可能性があります。それだけではなくプログラミングを知ることによりコンピュータやソフトウェアの動作を具体的に知ることができます。またLinuxカーネルを学ぶ際にはプログラミングの知識が必要です。サーバ、システムなども結局はソフトウェアであるため、プログラミングの知識があるとないとではスキル的に大きな違いがあるといえるでしょう。
以上の項目をすべて習得することは一朝一夕にはいかないと思いますが、これらを含めて必要な知識であると考えておいた方がよいでしょう。もちろんこれを学んだからといって、終わりというわけではありません。新たに出てくる技術の知識を積極的に取り込んでいく姿勢は重要ですし、それを続けていく意欲や好奇心も必要です。そして、これらを習得した際にはあなたはどこにでも通用するITエンジニアになっているでしょう。
@IT自分戦略研究所の関連サービス
ITトレメ(LPIC Level 1)
筆者紹介
株式会社エイチアイ 研究開発部 部長
末永貴一(すえながよしかず)
ヒューマンインターフェイスの研究開発、コンテンツの開発を行う株式会社エイチアイで次世代技術の研究開発を行う業務を担当している。オープン系のシステム開発事業、教育事業を経て、自社独自の組み込み機器向け3Dリアルタイムレンダリングエンジンであるミドルウェアの「MascotCapsule」を中心とした開発に従事する。10年前にLinuxを知って以来、サーバ構築、開発、教育、執筆などさまざまな場面でLinuxにかかわるようになり、現在では組み込み開発でもLinuxを利用することがある。
関連記事
Copyright © ITmedia, Inc. All Rights Reserved.
スキル創造研究室 記事ランキング
- AI分野での活用も増加している「GPU」の種類と選び方を学ぼう
- お悩みその27 VBAとPython、どちらを勉強した方がいいのでしょうか(40代 女性 SE)
- 何でスキル不足のエンジニアをアサインしたからって訴えられるんですか
- 仕様書通りにシステムを作りました。使えなくても知りません
- システムが動かないなら、紙でオーダーすればいいじゃない
- AWSを使ったローコード開発の支援サービス サーバーワークスが提供開始
- お悩みその22 テレワークに戻りたい(33歳 男性 プログラマー)
- 「スクラムマスター認定」は取得する価値があるのか?
- ベンダー社員過労死の遠因はユーザー企業にもあるのか
- 私のメールが届かないのは、何かの陰謀ですか?