気の向くままに辿るIT/ICT/IoT
システム開発

Linux/BSD/PC-UNIX系OSを常用する場合の注意点

ホーム前へ次へ
Linux/BSD/PC-UNIXを選別してみる

仮想マシンで動くOS

Linux/BSD/PC-UNIX系OSを常用する場合の注意点

 Linux/BSD/PC-UNIXOSを常用する場合、唯一とも言える注意点としてセキュリティに関心を持つこと、その為にも関連して利用するOSの情報にある程度アンテナを張っておく必要性が挙げられます。

 特にセキュリティハードウェアスペックという観点からのチェックは重要です。

セキュリティ

 CD/DVD/USBメモリなど物理的なメディアにもウイルス感染の可能性はありますが、より気をつけたいのは、インターネットです。

 ウイルスやスパイウェアがなぜ存在するのかという話もあり、その内容いかんによっては、まんまとやられている感もありますが、面倒なことに存在することが確かな以上、完全に無視するわけにもいきません。

 そこで無料や市販のアンチウイルスソフトウェアやスパイウェア対策ソフトウェアなどを導入しますが、それ以前に利用しているPCのOSのアプリケーション自体を、それらの脆弱性を突く既知の脅威・リスクへの対策が施されているはずの最新の状態に保つことが大前提となります。

 これまで広く普及していたからか、ターゲットとされているからか、はたまた、何れも要因としてあるのかは別としてWindowsは、その危険が、より大きいわけですが、仮にLinux/BSD/PC-UNIX系OSがターゲットになった場合、同様に危険であることに変わりはなく、何れを利用するにしてもOSカーネルやアプリケーションソフトウェアの脆弱性を突かれた場合は、普通、回避できませんから利用するカーネルやアプリケーションソフトウェア、それらへのリスク情報や更新情報にも気を配る必要があります。

 OSやアプリケーションも一切、何も手を加えることなく今あるモノを半永久的に維持し続けるというわけではなく、普通、バージョンアップされていくことから、全てに気を配るのが難しくなることもあり、新たなバージョンのリリースに伴ってある時点でサポートを打ち切ることになり、これは、その後、何があっても手を加えないという意味であることから、セキュリティ対策も施されない為、使い続けるには、リスクがあるわけです。

 この点については、WindowsやMac OS/Mac OS X/OS X、Linux/BSD/PC-UNIX系OSでも同様です。

 もう少し長いスパンで考えるとWindowsやMac OSのような商用製品、OS X Mavericsは無償化されましたが、プロプライエタリ製品の場合、一定のニーズがある前提なら基本的に企業が存続する限り、その時点で有効なバージョンのOSを使っている分には、一定の安心をもって利用できますし、大きな更新があれば、宣伝も兼ねてテレビや新聞、専門誌やネットニュースなどを通じて大々的に報道される傾向があるので仮に興味関心が薄くても情報に接する機会も豊富です。

 一方、オープンソースのLinux/BSD/PC-UNIX系OSの場合、中には、世界的に認知された企業がバックアップしたり、スポンサーについたりする場合もあるでしょうが、大中小様々な規模の違いこそあれ、それらプロジェクトは、基本、有志の集まりであり、普通、法人による多角経営のような手法をとることは、あっても稀、1つの方向性に向かって突き進む傾向が強いこと(、異なる方向性が生まれた場合、歴史的に見ると派生プロジェクトが登場すること)もあり、一定の目的を達した時点で開発停止や終了、ニーズがなくなれば、先細り、自然消滅、他方、他のプロジェクトとの統廃合ということも十二分にあり得る世界です。

 その為、カーネルからビルドするのが当たり前というスキルがあって、まして立ち消えするくらいなら自分が引き継ぐとか、ネットにつながず、スタンドアローンでしか利用しないなどという場合は別としても、普通、一般には、そのOSの開発が今尚継続中か否かは、インターネットに接続可能なPCと同じLAN上にあるPCや直接インターネットに接続するPCなら尚更、そのOSを使用するか否かの選択における重要な判断基準の1つとなります。

 更にLinux/BSD/PC-UNIX系OSの場合、開発は継続中であってもカーネルは、比較的古いものをベースにしているというケースもあり、仮にカーネルの脆弱性が発見された場合においては、カーネルのバージョンが最新か否かも重要になる可能性が多分にあります。

 逆にLinux/BSD/PC-UNIX系OSには、こうした文化があることから、ウィルスにしてもLinuxカーネルに対しては、攻撃の狙いを定めにくい、また、BSD系OSについても連携しつつも、分散しているので、やはり、攻撃の狙いを定めにくいという点で仮に何かあっても影響範囲が小さいということは、リスクが低いということにもつながるでしょう。

 その上で歴史のあるもの、新しいもの、保守的なもの、先進的なもの、どのくらいの頻度でバグの解消、セキュリティ強化、アップデートやリリースがなされているかというのも判断基準の1つとなってきます。

 よって、いくつか、または、どれか1つに絞り込んだなら、そのOSの公式サイトを一定の頻度でチェックすることは重要になります。

 なぜなら、世界中の新聞・雑誌がこぞって取り上げるOSばかりではないからです。

 尤も数多くの中から、厳選して絞り込んだのなら、愛着もわくでしょうし、興味津津、誰が何を言わなくとも黙ってても公式サイトをマメにチェックするようになるでしょうし、そのオープンソースプロジェクトに参加、貢献するようになることもあるでしょう。

 ソフトウェアに関して言えば、Linux/BSD/PC-UNIX系OSとWindowsでは、ソフトウェアの入手に関する背景や考え方が大きく異なり、その意味では、Linux/BSD/PC-UNIX系OSの方が安全と言えます。

 Linux/BSD/PC-UNIX系OSの場合、通常、ソフトは基本無料、OS指定の一定の場所(リポジトリ等)にOS認定の安定版・コミュニティで人気のソフト・実験段階の開発版などに分けて、いくつか用意されおり、基本的には、初心者なら安定版にあるバイナリパッケージソフトウェアだけを使い、少し慣れてきたら、もしかすると他のリポジトリからも取得するようになるかもしれません。

 より慣れてくれば、安全が確保された方法で最新に維持したソースコードからコンパイルしてインストールするなり、パッケージを生成し、それをインストールに使うなりすることに抵抗もなくなるでしょうし、都度、適切にコンパイルオプションを設定するなどすれば、セキュリティ面では、それが、最も安全でしょう。

 ただ、それ以前にも状況に応じてコンパイルオプションを指定する必要があったり、ライセンス上、バイナリでの配布が禁止され、ソースでのみ配布されるパッケージを使用する場合には、ソースをコンパイルせざるをえないこともあるでしょう。

 当初は、ソースコードをビルドするのは、大変な作業でしたが、FreeBSDのPorts CollectionやこれをベースにNetBSD用に開発され、後に*BSDやSolarisをはじめ、広く利用可能となったpkgsrcなどの登場により、常に最新のソースを入手できたり、全て一貫して最新に維持したり、依存関係を解決してくれたりするようになっており、以前に比し、格段に容易になっています。

 また、pkgsrcは、pkg_*コマンドを使ったバイナリパッケージの管理もできるように設計されており、これは、FreeBSDやOpenBSDでも標準的に使われています。(後にFreeBSDは、pkgngに移行中。)

 このように初期の頃は、ソースからビルドするのは半ば当然でしたが、近年、こうしたパッケージ管理システムの充実により、たいていの場合、そこまでする必要がなくなってきており、それでも尚どこからともなく持って来たソースからビルドするユーザーは、セキュリティリスクについては十分、承知の上であると考えてよいでしょう。

 一方、Windows用のソフトウェアは、特に無料のソフトは、Microsoftで配布されるものよりも他で配布されているものの方が圧倒的に多く、セキュリティリスクを常日頃、気にかけている場合は、まだしも、特にセキュリティを意識しない初心者でもどこからともなく、(OSがWindowsに限られることもあって)ほぼ同じ手順でインストールできてしまう点でセキュリティリスクの考慮における個人差が大きく、その分、被害も拡散しやすい傾向にあると言えるでしょう。

ハードウェアスペック

 Linux/BSD/PC-UNIX系OSのプロジェクトが数多ある中で『システム要件』、『インストール要件』、『ハードウェア要件』に注意が必要です。

 例えば、Arch LinuxやGentooのように『ローリングリリース』やこれに類する最新バージョンのリリース形態をとるディストリビューションについては常に、そうでないディストリビューションにおいても前バージョンと最新版の間で同じことが言えます。

 なぜなら極端に言えば、昨日までの最新リリース安定版のシステム要件と今日リリースされた最新版が以前のシステム要件と同じか、それに限りなく近いとは限らないからです。

 これは、常に最新のハードウェアを追い求める向きには無縁である一方、一世代前含む古いPCやセキュリティアップデートのサポート期限が切れたOSが入ったPCにLinux/BSD/PC-UNIX系OSを入れたり、載せ換えてインターネットの継続利用やインターネットに接続したPCと同一LAN上で継続利用しようようと考えるユーザーにとっては、相当、衝撃的なのではないでしょうか。

 実体験としてもRAM別のディストリビューションを列挙する記事を書いている際にローリングリリースのディストリビューションでは、ハードウェア要件すらすぐに陳腐化してしまい、数か月すらも記事内容の整合性が保てないどころか、結果、ディストロ名だけで見れば、内容が著しく乖離してしまったり、それゆえ古いPCにOSを検討するにあたって思い描いていた候補も、いざ実際にやってみる段になると候補となり得なくなっていたことがあります。

 具体的には、VirtualBox上で検証した際、install-x86-minimal-20121213.isoでは、RAM:96MBで起動したGentooが、1年ちょっと経ってリリースされたinstall-x86-minimal-20140128.isoでは、RAM:256MB以上ないと起動せず、archlinux-2013.09.01-dual.isoでは、RAM:48MB以上で円滑に起動したArch Linuxに至っては、約5か月後のarchlinux-2014.02.01-dual.isoでは、やはり、RAM:256MB以上ないと起動しないということがありました。

 幸いというべきか、こうしたローリングリリースのディストリビューションを除けば、ほとんどのLinux/BSD/PC-UNIX系OSは、かなり古いバージョンでもダウンロードできることが多いので、それを利用させて頂くという手はありますが、前段のセキュリティ面を考えると手放しで喜べるものでもなく、より安全を見るなら、やはり、古いPCをネットにつなぐのも、ネットにつながったPCと同じLAN上につなぐのも悩ましいということになってしまいます。

 今時、開発継続中でx86(32bit)、RAM:128MB以下のPCで動作するウィンドウマネージャ含むデスクトップ環境となると限られる上にbusyboxやメモリロードなどトリッキーな方法を使わないものとなると尚更、ArchBang(archbang-2013.09.01-i686.iso)はRAMが192MB以上ないと動かないこともあり、Arch Linux(archlinux-2013.09.01-dual.iso)+ウィンドウマネージャ(jwm/icewm/fluxbox...etc.)+日本語入力・変換機能(scim+anthy/ibus+anthy...etc.)を最有力候補として考えていたマシンがあっただけに結構ショック。

 それでもまだ選択の余地があるところが、Linux/BSD/PC-UNIX系OSのよいところでもあります。

  1. OS選定の目安
  2. いくらでも練習できる環境もある-仮想化ソフトウェア
  3. Linux/BSD/PC-UNIX系OSを常用する場合の注意点
  4. オープンソースOSの背景
  5. Linux/BSD/PC-UNIXの選定方法と前提
  6. RAM容量ごとに利用可能なOS

ホーム前へ次へ