設定ファイルとは
設定ファイルとは、
コンピュータの動作を制御するための重要なファイルです。プログラムや
オペレーティングシステム (OS) など、様々な設定条件を記述したもので、動作をカスタマイズするために使用されます。
概要
プログラムの動作は、
エンドユーザーが設定を変更することで、ある程度カスタマイズできます。例えば、ウェブブラウザの文字の色やサイズ、
DVDプレーヤーの音量などを調整できます。これらの設定は、プログラムの初期設定値とは異なるため、次回使用時にも反映させるには、ファイルとして保存する必要があります。このためのファイルが設定ファイルです。初期設定ファイル、またはプログラムを作業環境に見立て、その設定を保存したファイルということで環境設定ファイルとも呼ばれます。
設定ファイルは、多くの場合
プレーンテキスト形式で記述されていますが、
コンピュータプログラムが認識できるように、特定のファイル名が用いられます。例えば、DOSやWindowsには「CONFIG.SYS」や「SYSTEM.INI」といった設定ファイルがあります。
Microsoft Windows 3.xで採用された形式では、設定ファイルの
拡張子としてINIが使用されています。Mac OSでは「QuickTime 初期設定」や「QuickTime Preference」、macOSでは「com.apple.QuickTime.plist」のようなファイル名が用いられ、プロパティリストと呼ばれます。
設定ファイルの管理
設定ファイルには、データやプログラムの読み込み手順が記載されており、この内容を書き換えることで、設定を切り替えたり、利便性を向上させるための各種機能を呼び出すことができます。しかし、設定ファイルの記述を誤ると、プログラムの誤動作や動作不良を招く可能性があるため、扱いには注意が必要です。誤って削除してしまった場合などは、致命的な結果を招くこともあります。
現代のOSでは、設定ファイルを自動的に作成するプログラムも数多く存在しており、専門知識がなくても、必要な機能を選択するだけで、自動的に設定ファイルが変更されます。また、OS側がそのような自動的な機能を持っている場合もあります。そのため、最近では設定ファイルの存在を意識しなくても、
コンピュータを利用できるようになっています。
Unix系OSには、多種多様な設定ファイル形式が存在します。個々のアプリケーションやサービスが固有のファイル形式を持つこともあります。かつては、
Unix系OSの設定は設定ファイルを編集することによってのみ変更されていました。一部のファイル形式では、特別な文字を先頭に付けることでエントリを無効にすることができます。
Unix系OSでは、設定ファイルを特定の
ディレクトリに配置することで、管理性を高めています。特に、設定ファイルだけをバックアップするような場合に非常に効率的です。また、
Unix系OSは
マルチユーザーOSであるため、ユーザーアプリケーションはしばしば起動時にユーザーのホーム
ディレクトリ内にファイルや
ディレクトリを作成し、そこに個人ごとの設定を保存します。ホーム
ディレクトリの中身を一覧表示する際に、そのようなファイルや
ディレクトリが表示されないようにするため、ファイル名や
ディレクトリ名の前にピリオドが付けられます。そのため、そのようなファイルや
ディレクトリに対して「ドットファイル」という異名が生まれました。
サーバプロセスはしばしば `/etc` 内に保存された設定ファイルを使用しますが、インストール
ディレクトリ、ルート
ディレクトリやシステム管理者によって定義された場所を使用することもあります。
Unix系OSといっても、各OSごとに
ディレクトリ構成はそれぞれ異なるため、使用しているOSでどのような構成になっているのかを確認する必要があります。また、設定ファイルに一定の
拡張子の規則はありませんが、`config`、`init`、`rc`等の文字列が含まれていることが多いです。ソフト名の
ディレクトリ内に
拡張子無しの`config`という名称のファイルを置く場合もあります。
Windowsでは、Application Data (AppData)
ディレクトリ以下にアプリケーションごとに
ディレクトリを作成し、そこに設定ファイルを配置することが推奨されています。Windows Vistaで導入されたユーザーアカウント制御では、適切な権限なしにプログラムファイル
ディレクトリ (%PROGRAMFILES%) を変更しようとすると、ファイルの書き込みはシステムによってトラップされ、ヴァーチャルストアと呼ばれる
ディレクトリに保存されます。このような処置は、マルウェア対策や
マルチユーザー対応のためのものですが、現状では、実行ファイルと同じ
ディレクトリに設定ファイルを置く
ソフトウェア (特にフリーソフト) が多く存在します。
Windowsでは、
レジストリと呼ばれる
データベースファイルで設定の一括管理を行っています。
アプリケーション[[ソフトウェア]]やツール
ソフトウェアの多くが、この
レジストリファイルに依存して、ユーザーの設定や過去の使用状況を記憶し、ユーザーの利便性向上に貢献しています。
関連項目
ソフトウェア
TOML