これ以降の節では、autofs の高度な機能を取り上げます。
autofs は一部の文字を、特別な意味を持つものとして認識します。これらの文字には、置換に使用される文字や、他の文字を autofs のマップ構文解析機能から保護する目的のものがあります。
たとえば次のように、多数のサブディレクトリを指定したマップがある場合、
john willow:/home/john mary willow:/home/mary joe willow:/home/joe able pine:/export/able baker peach:/export/baker |
この場合、文字列の置換が使えます。アンパサンド文字 (&) を使用して、任意の位置に記述されたこのキーを置換することができます。アンパサンドを使用した場合、上のマップは次のようになります。
john willow:/home/& mary willow:/home/& joe willow:/home/& able pine:/export/& baker peach:/export/& |
キー置換はまた、次のような直接マップでも使用できます。
/usr/man willow,cedar,poplar:/usr/man |
これは次のようにも記述できます。
/usr/man willow,cedar,poplar:& |
なお、アンパサンドによる置換ではキー文字列全体を使用するため、直接マップでキーが / で始まる場合、そのスラッシュは引き継がれます。したがって、次のような指定はできません。
/progs &1,&2,&3:/export/src/progs |
その理由は、autofs がこれを次のように解釈するためです。
/progs /progs1,/progs2,/progs3:/export/src/progs |
任意のキーを一致させるのに、任意の文字を表す置換文字であるアスタリスク (*) を使用できます。このマップエントリを使って、すべてのホストから /export ファイルシステムをマウントできます。
* &:/export |
ここでは、各アンパサンドは特定のキーの値によって置換されています。autofs はこのアスタリスクをファイルの終わりとして解釈します。
特殊文字が含まれているマップエントリがある場合、autofs のマップ構文解析機能を混乱させるような名前のディレクトリについてはマウントする必要があります。autofs の構文解析機能は、名前に含まれるコロン、カンマ、スペースなどを認識します。これらの名前は二重引用符で囲んでください。
/vms -ro vmsserver: - - - "rc0:dk1 - " /mac -ro gator:/ - "Mr Disk - " |