インストール
テンプレート:Redirect3 コンピュータの分野におけるインストール(テンプレート:Lang-en)とは、コンピュータにソフトウェアを追加し、使用可能にすることを指す。この意味では、セットアップ(テンプレート:Lang-en)とも呼ばれる。
目次
概要
コンピュータは、大きく分けてハードウェア(物理的部分)とソフトウェア(電子情報、処理手順)の2つの要素で成り立っている。ハードウェアはソフトウェアによって制御され、ソフトウェアはハードウェアが無ければ実行することができない。ハードウェアをコンピュータとして機能させたり、また必要な機能を持たせるためには、ハードウェアにソフトウェアを追加し、必要な設定を行い、動作可能な状態にしなければならない。この一連の作業をインストールという[1][2]。
英語のinstallは「設置する」「取り付ける」といった意味であるから、本来はソフトウェアに限らず、物理的要素であるコンピュータやディスプレイを設置すること、周辺機器を接続すること、拡張カードを取り付けることなど、ハードウェア全般についても用いる語である。だが、日本語ではIBM用語などに見られる程度で、一般的にはソフトウェアを導入する意味に用いられる[1]。
すなわちインストールとは、オペレーティングシステム (OS) やアプリケーションソフトウェアなどが格納されているCD-ROMなどの記憶媒体や圧縮ファイルなどからファイルを展開し、コンピュータでこれらを利用可能にし実行できる状態にすることを指す。
ただしmakeにおけるmake installは、単にパスの通った場所にコピーして利用可能にすることを慣習的に意味しており展開の操作を含まない。むしろ上記の語義に近い。
インストールのうち、製品の旧バージョンから新バージョンに上書きすることはアップグレードという場合が多い(逆に旧バージョンに上書きすることはダウングレードという)。使用者が他のマシンや媒体からハードディスクドライブ等に直接コピーする方法と、インストーラと呼ばれるインストール専用のプログラムを用いて行う方法がある。対義語はアンインストール(削除)。
一般的にインストールはソフトウェアを利用可能にする手順の一つであり、ファイルを展開し、実行可能な状態にするところまでを指すことが多い。 ソフトウェアの規模や性質から、インストール作業に一部の(あるいはすべての)設定作業を伴うものもあり、またOSのインストールとデバイスドライバのインストールのように連続した作業を要する場合もある。
専門用語
- サイレントインストール
- プロセス中にメッセージやウィンドウを表示しないインストール。「サイレントインストール」は「無人インストール」とは別物だが、しばしば誤用される。
- 無人インストール (Unattended install)
- インストールの過程でユーザ入力を必要としないインストール。厳密には、インストール開始の操作以外にまったくユーザの関与を必要としないものをいう。インストールには、ソフトウェア利用許諾契約への「同意」を選択する操作や、各種オプションの指定、パスワードの入力などを必要とすることがよくある。GUI環境では、ウィザード形式でこれらの手順を示すインストーラが一般的である。しかし、そのようなインストーラでも一部のものはコマンドラインスイッチで無人インストールが指定可能である。
- アンサーファイル
- インストール中に入力・選択すべき項目をアンサーファイルと呼ばれるファイルにあらかじめ記述しておき、それに基づいて無人インストールを実行するというインストーラが存在する。大量のコンピュータにWindowsをインストールするなどといった場面で活用される。同等の機能はOS/2ではレスポンスファイルとして実装され、またRed Hat Enterprise Linuxではキックスタートという機能で同様の自動作業が行われる。
- ヘッドレスインストール
- 対象のコンピュータ(特に映像出力のないコンピュータ)に接続されたモニタを使用せずに機能するインストール。これはLocal Area Network経由で、あるいはシリアルケーブル経由で接続された別のマシンで実行されるインストールであることがある。
- アンアテンデドおよびヘッドレスインストールはシステムアドミニストレータの一般的な業務である。
- クリーンインストール
- 典型的な設備の複雑さを与えられたとき、成功した終了を妨げるかもしれない多くのファクターがある。同じプログラムの古いインストールから残り物である特定のファイルや、OSの複雑な状況が、与えられたプログラムが正しくインストールし、動作させることを防止するために作動するかもしれない。そのような妨害因子(プログラムによって変わるもしれない)がいない状況で実行されたインストールはクリーンインストールと呼ばれる。特に、OSのクリーンインストールは、実際にインストールする前にそのあて先のパーティションをフォーマットすることによって実行することができる。
- フラットインストール
- メディアから直接ではなく、ハードディスクへのそのオリジナルのメディア(たいていCDかDVD)の内容のコピー(フラットコピーと呼ばれる)からプログラムのインストールを行うこと。これは目標のマシンが、しばしばインストールに必要なCPUに集中したタスクを実行すると同時に、CD/DVDからのランダムアクセスに対処することができないか、目標のマシンが適切な物理的ドライブを持っていないようないくつかの状況を助ける。
- ネットワークインストール
- 共有されたネットワークドライブからのプログラムのインストール。これは単に(フラットインストールのために)オリジナルのメディアのコピーであるかもしれないが、頻繁に、大口顧客のために、サイトのライセンスを提供するソフトウェアの製作者はネットワークインストールが意図されているバージョンを提供する。またLinuxやFreeBSDなどでは、光学ドライブなどを備えないPCのためにネットワークを介したOSのインストールが提供される場合がある。OS/2のように起動FDを介して、ネットワーク経由でインストールCDにアクセスするネットワークインストール形態も存在する。
- バーチャルインストール
- AmigaOSは1991年のバージョン2.0以降Installerと呼称されるセンタライズされた標準のインストールユーティリティを特徴とする。それはLISP言語インタプリタによって動作し、これらがプレーンテキストファイルであるのでユーザはインストールのスクリプトを編集する能力を持っている。インストーラはまた、ユーザーがバーチャルインストールを実行し、本当のインストールを委任する前に起こりえるどのような問題をも確認するための卓越した機会を特徴とする。
- 上書きインストール
- 主にもともと入っていたソフトの異なるバージョンを、元のバージョンを削除せずにインストールすることを指す(主に古いバージョンから新しいバージョンに上書きする。アップグレードともいう)。設定ファイルなどの再設定を行わず、実行ファイルなどのみを更新することで、異常になったソフトウェアを回復させる試みとして実行されることもある。
インストーラ
インストールを対話形式で簡単に行うためのプログラムである。特定の場所に確実にインストールしてもらう必要がある場合、インストールするファイルが複数のディレクトリに散在している場合、ライセンスキーの照合が必要な場合、システムのクリーンインストール(ハードディスクを初期化したうえで再度システムを入れ直すこと)後の自分のデータの復旧を自動で行いたい場合、あるいは単に見栄えをよくする目的で用いられる。
インストーラで行うことは、まず使用許諾契約書の承認、次に使用ユーザーの入力(必要な場合)、インストール先の選択(必要な場合)、最後に必要なファイルのアーカイブからの展開である。インストール中は用意された画像の表示やほかの製品の宣伝が行われることもある。
一般的にインストーラでインストールしたプログラムにはアンインストーラがついている。これはインストールしたプログラムをアンインストール(削除)するためのプログラムである。また、プログラムのバージョンアップを行う際にインストーラと同じ要領でバージョンアップを行えるようにアップデータを使用することもある。アップデータは自動的にパージョンアップの対象となるプログラムを検索し、入れ替えるべきファイルを自動的に入れ替える(またはすべてのファイルを入れ替える)。これと似たプログラムにパッチプログラムが存在する。これはデータの変更された部分の差分だけが用意されており、アップデータよりデータを小さく出来る。パッチプログラムは用意された差分から既存のデータを最新のものに書き換えることでバージョンアップを行う。
ブートストラッパー
コンピュータプログラムのインストールの間、インストーラまたはパッケージマネジャー自身をアップデートすることが時々必要である。これを可能にするためにブートストラップと呼ばれるテクニックが使用される。このための共通のパターンは、インストーラをアップデートし、アップデートの後で本当のインストールを始める小さな実行可能ファイル(例:setup.exe)を使う。この小さな実行形式はブートストラッパーと呼ばれる。時々、ブートストラッパはブートストラップのプロセスの間にもソフトウェアのためのほかの必須のものをインストールする。
共通のインストーラ
Windows、Mac OS X、およびLinuxのためにインストーラを作り出すクロスプラットフォームのインストーラのビルダーとして、InstallAnywhere(フレクセラ・ソフトウェア)、JExpress (DeNova)、InstallBuilder (BitRock)が存在する。
Microsoft WindowsのためのインストーラはソフトウェアのインストールコンポーネントMicrosoft Windows Installerが存在する。Windowsのためにインストーラを作成するための追加のサードパーティの商用のツールは、InstallShield(フレクセラ・ソフトウェア)、Wise Installation Studio(ワイズソリューションズ)、SetupBuilder (Lindersoft)、Installer VISE (MindVision Software)、MSI Studio(スクリプトロジック)、Actual Installer(Softeza Development)、Smart Install Maker (InstallBuilders Company)、MSI FactoryとSetup Factory(インディゴローズソフトウェア)が存在する。フリーな代わりのインストーラオーサリングツールはNSIS、IzPack、Clickteam、Inno Setup、WiXが存在する。
Mac OS XにはネイティブのパッケージマネジャーソフトウェアInstallerが存在する。Mac OS Xはアプリケーションをアップデートする別個のソフトウェアApple Software Updateを含むが、アップルのソフトウェアとシステムソフトウェアのみをサポートする。Mac OS Xのための商業的なアプリケーションはまたInstaller VISE(MindVision Software)、InstallerMaker (StuffIt) などのサードパーティーのインストーラを使用することがある。
オープンソースにおける簡略化の取り組み
LinuxやFreeBSDなどのオープンソースのOSでは、パッケージ管理システムにより、多くの異なる組織や個人によって作成された多様なアプリケーションソフトウェアの入手とインストールを統一的な方法で行える。
クローズドソースであるWindowsでは、マイクロソフトが用意した追加/削除管理システムやMicrosoft Updateが活用されている。しかし、WindowsやMac OSでは、OS(基本ソフトウェア)とアプリケーションソフトウェアとの間で、追加インストールの方法が完全に統一はなされていない。
それに対して、一部のオープンソースのOSのアプリケーションソフトウェアではソースから再編成したパッケージを再配布できるため、適宜パッケージ形式を変更した上で、特定の配布拠点をインターネット上に設けることができる。
これによって、単一の管理システムで、OSのカーネルから配布拠点に置かれるアプリケーションソフトウェアまで、すべてを自動ダウンロードしてアップデートや追加インストールできるようになっている。
Mac OS における簡便化の取り組み
Macintoshではアプリケーションソフトウェアは原則としてどこにでも置け、アイコンをダブルクリックするだけで起動できるものとして設計されていた。この場合「インストール」という概念は希薄となり、必要とするソフトウェアを好きなところに置けば良いことになる。ただし、共有ライブラリやシステムに密接に関わるソフトウェアはこの限りではなく、フォントや機能拡張ファイルはシステムフォルダに組み込む必要があった。その後共有ライブラリやプラグインなど外部のソフトウェアに依存するソフトウェアの増加により、インストーラを必要とするものが増えていったが、アプリケーションは原則としてどこに置いても起動可能であるということは変わらなかった。
現在のMac OS Xでは、アプリケーションパッケージの採用により、多くのアプリケーションソフトウェアはハードディスクの中にアプリケーションファイルを移動するだけで簡単にインストールでき、アプリケーションファイルをゴミ箱に捨てるだけでアンインストールできる。デバイスドライバやシステム環境設定ファイルのインストールについては、インストーラを必要とする。フォントはファイルをダブルクリックすることでインストールできる。オペレーティングシステムやアップルのソフトウェアのインストールについては、ソフトウェア・アップデートで提供されている。
脚注
関連項目
- アンインストール
- プリインストール
- 再インストール
- ネットワークインストール
- アプリケーションストリーミング
- Microsoft Windows Installer
- パッケージ管理システム
- インスタレーションテンプレート:Asbox