この記事はアーカイブ済みで、これ以上更新されることはありません。

OS X Server:構成ファイルの編集方法

サーバのドキュメンテーションでは、プロパティリスト (plist) やその他のテキストベースの構成ファイルを作成または変更して、サーバ管理ツールに表示されていない機能を有効にするように指示されていることがあります。

構成ファイルの編集方法について十分に把握していない場合は、下記の内容に目を通してください。

適切なテキストエディタの選択

「/アプリケーション/」にあるテキストエディットは、よく使用されるグラフィカルテキストエディタです。このテキストエディットを使用すると、特定の状況下で構成ファイルを編集することができますが、システムが利用できるフォーマットでファイルを保存する際に十分な注意が必要となります (下記を参照)。また、テキストエディットでは、コマンドラインテキストエディタよりも、アクセス権に制限のあるファイルの編集が複雑になります。

コマンドラインテキストエディタを使用すると、テキストエディットを使用した場合のフォーマットとアクセス権に関わる潜在的なリスクの一部を回避することができます。OS X には、以下の 3 種類の高機能なコマンドラインテキストエディタが搭載されています。

  • nano は、単純なコマンドラインベースのエディタです。nano は、pico エディタを使用するように指示されている場合に、pico エディタの代わりに使用できます。実際に、pico エディタを起動すると、nano が起動します。nano は、画面上にわかりやすいヘルプが表示される点から、初心者に適したコマンドラインベースのエディタであるといえます。

  • vim は vi と互換性のあるテキストエディタです。vim では、ファイルの移動、検索、編集など、多くの点が強化されています。基本的な編集方法を簡単に習得できるだけでなく、豊富な追加機能を利用することもできます。特定の動作を開始するキーの組み合わせを使用することで、ほとんどの機能にアクセスできます。vim またはそのモデルとなっている vi は、たいていの UNIX ベースのオペレーティングシステムに用意されています。コマンドラインから編集することが多い場合は、このエディタの使い方を習得すると便利ですが、コマンドラインベースのエディタをたまにしか使用しない場合は、このエディタの使い方を習得しなくてもかまいません。

  • Emacs も、vim と同様に、ほとんどの UNIX ベースのオペレーティングシステムに用意されている高機能エディタです。編集機能が豊富なだけでなく、Emacs は高度にカスタマイズ可能なエディタでもあります。追加機能を使って、Emacs インターフェイスにテキスト編集以上のことを実行させることもできます。基本的な編集方法は比較的簡単ですが、専用ユーザは深く掘り下げて機能を活用することができます。vim のように Emacs でも、キーの組み合わせを使って多種多様な機能を利用できます。Emacs は、使用頻度の高い機能を記憶させる必要があるため、コマンドラインをよく使用するユーザにとって最も有益なエディタです。

コマンドラインの使用に不慣れであり、コマンドラインを使って編集作業を行うことがほとんどないユーザの場合は、おそらく nano が最善の選択肢となります。コマンドライン環境を使用する機会が多いと思われる場合は、vim または Emacs の使い方を習得することをお勧めします。これらのエディタは設計方針がかなり異なっているので、時間をかけてそれぞれのエディタの特長を調べた上で、どちらが現在の環境に適しているかを判断する必要があります。

コマンドラインエディタを起動するには、まずそのエディタの名前を入力し、その後にスペースを 1 つ入れて、開きたいファイルの名前を入力します。新しいファイルを作成する場合は、そのファイルの名前を入力します。「書類」フォルダから「myFile.conf」という名前の新しいファイルを開く場合の nano の使用例を以下に示します。

nano ~/Documents/myFile.conf

ファイルのアクセス権によっては、sudo コマンドを使用してもかまいません。root ユーザしか変更できない「ldap.conf」ファイルを編集する場合の nano の使用例を以下に示します。

sudo nano /etc/openldap/ldap.conf

nano、vim、または Emacs の使い方について詳しくは、それぞれの man ページを参照してください。

システムで使用できるようにテキストファイルを保存する

テキストファイルを編集して UNIX ユーティリティで実行されるようにする場合は、呼び出し元のプログラムで使用 (または実行) できるようにそのファイルを適切に保存しておく必要があります。この場合は、標準テキストを使用することと権限の正否を確認することが特に重要となります。

標準テキストの使用

テキストエディットなどの多くのグラフィカルテキストエディタでは、大部分の UNIX プログラムよりも、テキストファイルを保存する際のフォーマットが複雑です。テキストエディットを使ってテキストベースの構成ファイルを編集する場合は、デフォルトのリッチテキストフォーマットではなく、標準テキストでファイルを保存します。テキストエディットでテキストファイルのデフォルトフォーマットを変更する方法として、以下の 2 通りの選択肢があります。

  • すべてのファイルを標準テキストで保存する場合は、テキストエディットの環境設定の「新規書類」パネルにある「フォーマット」から「標準テキスト」を選択します。

  • ファイルのフォーマットを個別に変更する場合は、「フォーマット」メニューから「標準テキストにする」を選択します。

エディタ上ではリッチテキストフォーマットが単純テキストのように表示されますが、実際には、ほとんどの UNIX プログラムの標準テキストファイルに格納されていないフォーマット、色、フォントなどの情報がすべて記述されています。リッチテキストフォーマットのファイルに実際に格納されている情報を確認するには、ファイルをテキストエディットで保存した後、同じファイルをコマンドラインテキストエディタで開きます。

コマンドラインテキストエディタでは、自動的に構成ファイルが標準テキストで保存されます。

アクセス権

構成ファイルの読み取りアクセス権と書き込みアクセス権を設定する必要があります。また、必ず編集後のファイルで元のアクセス権が保持されていなければなりません。保持されていないと、システムでそのファイルが使用できなくなる可能性があります。

システムファイルの多くは、root ユーザしか編集できません。通常のユーザとしてログインした後で、テキストエディットを使ってアクセス権に制限のある構成ファイルを開くと、アクセス権がないのでファイルを保存できないという内容のメッセージが表示されることがあります。ファイルにアクセスするために、そのファイルのアクセス権を変更したり、root ユーザとしてログインするのは避けてください。その代わりに、管理者としてログインし、コマンドラインエディタで sudo コマンドを使って (上記の例を参照) root 権限を一時的に有効にします。

プロパティリストの編集

OS X に含まれる多くの環境設定ファイルと構成ファイルでは、アプリケーションまたはプロセスの属性やプロパティを指定するのに、プロパティリスト (plist) が使用されます。ユーザのホームフォルダの「ライブラリ/Preferences/」フォルダに格納されている Finder の環境設定 plist を例に挙げます。このファイルには、「com.apple.Finder.plist」という名前が付けられています。plist のデフォルトの命名規則として、アプリケーション名またはプロセス名の前にディストリビュータの逆引き DNS 名が付加され、後に「.plist」拡張子が付加されます。

プロパティリストはバイナリフォーマットまたは xml フォーマットのどちらかになります。xml フォーマットのプロパティリストを編集する場合はテキストエディタを使用し、両方のフォーマットのプロパティリストを編集する場合は以下のツールを使用します。

  • Xcode Property List Editor は、プロパティリストを編集するためのグラフィカルインターフェイスが用意されている OS X のデベロッパツールです。バージョン 4 以降の Xcode では、プロパティリストを直接編集できます。旧バージョンのデベロッパツールには、Property List Editor が単体のアプリケーションとして別途組み込まれています。これらのツールは、プロパティリストとその使い方をすでに把握している場合に特に有益です。詳しくは、http://developer.apple.com/mac を参照してください。

  • defaults は、プロパティリストの読み取りと編集に使用できるコマンドラインツールです。このツールは、変更する必要のあるプロパティリストのキーと値が具体的にわかっている場合に有効に利用できます。

  • PlistBuddy は、プロパティリスト内で値の読み取りと変更を直接実行できるもう 1 つのコマンドラインツールです。このツールは、複雑な plist ファイルを変更する必要がある場合に defaults よりも柔軟性を発揮します。

defaults と PlistBuddy の使い方について詳しくは、それぞれの man ページを参照してください。

関連情報

編集する前にファイルのバックアップを取る

構成ファイルやプロパティリストを編集する場合には、編集の前にそのファイルのバックアップを取っておくことが適切な対応策になります。このようにバックアップを取っておくと、ファイルの構成を間違えてしまった場合でも、そのファイルをバックアップコピーに置換できます。読み取りアクセス権はあるが、書き込みアクセス権がない場所に多くの構成ファイルが格納されているため、通常は、Finder を使ってファイルを別の場所にコピーするか、sudo コマンドを使ってファイルを所定の場所にコピーすることができます。たとえば、以下のコマンドを使用すると、「syslog.conf.original」という syslog.conf ファイルのバックアップコピーが作成されます。

sudo cp /etc/syslog.conf /etc/syslog.conf.original

以下の 2 つのコマンドを使用すると、構成に誤りのある syslog.conf ファイルが別の場所に移され、上記で作成したバックアップコピーに置換されます。

sudo mv /etc/syslog.conf /etc/syslog.conf.bad

sudo cp /etc/syslog.conf.original /etc/syslog.conf

公開日: