「Linux」(リナックス)という言葉を聞いたことがありますか?
私たちは普段パソコンや、スマートフォン、タブレットなどのIT機器を使用して、動画を見たり、音楽を聴いたり、友達とメッセージを交換したり様々な事をしています。
それらの機器の中では必ずOSが動いています。LinuxはそれらのOSの中のひとつです。IT業界で働いたり、プログラミングを勉強する際には必ず触れる事になるOSです。
OSとは
OSとは、「Operating System(オペレーティングシステム)の略語です。基本ソフトウェアとも呼ばるこのOSは、IT機器が動くために必要な情報を伝達し、アプリケーションやデバイスに伝える非常に重要な機能を担っています。
具体的には、マウスやキーボード、タッチパッドから入力された情報を読み取り、表示したり、接続しているデバイスに情報を連携して様々な動作をさせます(人間で表現すると「脳」と同じです。)
OSには様々な種類がありますが、大きく分けて一般的に知られているのは、以下の6つです。
パソコン向けOS
Windows、macOS
スマートフォン、タブレット向けOS
Android、iOS
サーバ向けOS
Windows Server、Linux
各OSそれぞれの特徴があり、使用シーンや機器の特性などを考慮して、様々な場所、様々な機器で使用されています。
この記事では、エンジニアとして必須知識のLinuxに関する説明をします。
Linuxの概要・歴史
Linuxは1991年に当時大学生であったフィンランドのリーナス・トーバルズにより開発されました。
当時、Unixが大学や研究所などを中心に世界中に多く広く広まっていましたが、開発元のAT&Tが厳格なライセンス管理体制をとっていたため、ライセンス問題が発生していました。
そのため様々な系統に分離していきます(例えば、IBMのAIX、sunのSolaris、HPのHP-UXは現在も使用され続けています。)
その中の一つに、教育機関用のOSとして利用されるようになったMINIXというOSがありましたが、MINIXは教育目的のためUnixと比べて機能が大幅に簡略化されていたり、使用用途が教育目的に制限されていました。
リーナス・トーバルズはMINIXを参考に独自にOSを開発しました。それが後のLinuxです。
Linuxの特徴
Linuxはサーバ向けOSとして、サーバ系OSの元祖のUnix(Minix)をベースとしたOSで、世界中の様々な機器、用途で使用され、様々な特徴を持っています。個人向けのデスクトップOSとしては、世界で3位の使用率。サーバ向けとしては世界1位の使用率です。次にLinuxの特徴を述べます。
オープンソース
Linuxの一番の特徴は、OSの開発形態が「オープンソースソフトウェア(OSS)である。」という事です。
オープンソースソフトウェアとはプログラムのソースコードが無償で公開されているソフトウェアの事を言います。
一方、一般的に多く使用されているOSを見ると、WindowsであればMicrosoft、macOSであればApple、というように様々なOSには開発元の会社があり、OSライセンスの購入が必要になったり、様々な機器に自由にインストールできないという制約があります。
Linuxのようにオープンソースソフトウェアであれば、ソースコードが公開されているため基本的には無料です。ライセンス費用、導入費用がかからないため、コスト面でのメリットがオープンソースソフトウェアの大きな特徴です。
一方、オープンソースソフトウエアならではのデメリットとしては、サポート体制がない。という点が挙げられます。それは、開発元となる会社が存在しないため、何か不具合があってもサポートを受ける事ができません。
そのため、サポートのない無償のLinuxではなく、サポートを受けられる有償のディストリビューション(Linuxの基本OSに様々な機能を付加したパッケージ)を購入する企業がほとんどです。ディストリビューションについては後述します。
必要とするスペックが低い
Linuxをインストールした際に導入されるパッケージやソフトウェアは、必要最小限のものだけです。例えばWindowsの場合は、知らないソフトウェアが多数インストールされて動いていることが多く、必要なスペックは高めです。Linuxは低スペックな環境で軽快に稼働します。そのため、様々な機器で稼働する事ができます。
Linuxでできる事
Linuxはその特徴である「オープンソースソフトウェア」から、様々なことに利用されています。
それは企業が開発したのではなく、オープンソースであり、開発に関わった様々な技術者の思いを実現するために開発されたからです。
ファイル共有や、WEBサービスの構築の他に、HDDレコーダや、ネットワークハードディスク(NAS)などリソースが潤沢にない機器に導入されるケースもあります。
ちなみに、日本発のスーパーコンピュータとしてニュースとなった日本の「富岳」に採用されているOSもLinuxです
参考:https://www.fujitsu.com/jp/about/resources/publications/technicalreview/2020-03/article06.html
Linuxのディストリビューションとは
ディストリビューションとは、各開発会社がOSの基本となる部分(カーネル)と、各種ソフトウェアを組み合わせて開発、販売、サポートをしているものです。
それによりLinuxと各種ソフトウェア、機能を使いやすくし、ユーザは最低限の知識で環境構築、運用をする事ができます。最も有名なディストリビューションをご紹介します。
Red Hat Enterprise Linux
最も有名で、最も使用されているディストリビューションです。ライセンスは非常に高価ですが、技術的なサポートやセキュリティ対応など、安心して使用する事ができます。個人利用や、企業の開発環境として使用する場合は、クローンとして作成されている「CentOS」(無償)を使用するケースが多いです。
Ubuntu
雑誌の付録として同梱されていることもあり、個人用途として名前を広く知られています。特徴は非常に軽量で、メモリー1GBから動作可能な事が挙げられます。情報量としては、Red Hatに劣るものの、豊富であり、人気のあるディストリビューションです。個人利用の場合は3台までは無償で使用する事ができます。
自宅でLinuxを勉強するなら
Linuxの特徴として、低スペックな環境でも動作する事から、自宅でも簡単にLinux環境を構築する事ができます。必要なパッケージ(ソフトウェア)を必要なものだけインストールして自分のやりたい事に特化した環境を構築する事が可能です。
古いPCのOSをLinuxにする
Windowsでは性能が不足して使用できなくなったPCに無償のLinuxを導入する事が可能です。
Linux稼働に要求されるハードウェア性能が低く、CPU:1GHz以上、メモリ:1GB以上、ストレージ:10GB以上、ディスプレイ:1024×768ドット以上と昔のPCでも充分通常利用に耐える事ができます。
WindowsでLinuxを使えるようにする
今の最新OSである、Windows10では、「Windows Subsytem for Linux(WSL)という機能があります。その機能を有効にする事で、Microsoft StoreからLinuxディストリビューション(Ubuntu、Suseなど)をインストールする事ができます。
MacでLinuxを使えるようにする
Windows以外に、MacでもLinux環境を構築する事が可能です。構築方法はWindowsよりも少し手間がかかります。Mac上に仮想環境として作成した領域に、LinuxのOSイメージをインストールする方法です。環境構築には複数の手順が必要で難易度が高いです。
まとめ
いかがでしたでしょうか。LinuxはUnix系の派生OSであるMinixを参考に作成されたものであり、世界中の様々な機器、用途で使用されているオープンソース・ソフトウェアです。様々なディストリビューションが存在し、日々開発されています。
企業向けには有償のディストリビューションが使用されることが多いLinuxですが、個人的に無償のディストリビューションを使用して環境構築を行う事ができます。そして、IT関連の業務に従事し、プログラミングを行うのであればLinuxの知識は必須と言えます。