自動マウンタの構成

自動マウンタを使用すると、ファイル・システムのマウントのために常に接続が維持されるのではなく、ファイル・システムがアクセスされたときにそのファイル・システムがマウントされます。ファイル・システムが一定期間非アクティブになると、自動マウンタによってそれがアンマウントされます。自動マウントを使用することで、システム・リソースが解放され、システム・パフォーマンスが向上します。

自動マウンタは、autofsカーネル・モジュールとautomountユーザー空間デーモンの2つのコンポーネントで構成されます。また、自動マウンタ構成ファイル/etc/auto.masterのエントリも参照されます。

自動マウンタ構成ファイルについて

/etc/auto.master構成ファイルで、各マップ・エントリは、マウント・ポイントとマウントできるリモート・ファイル・システムの定義を含むマップ・ファイルを指定します。次に例を示します。

/-          /etc/auto.direct
/misc       /etc/auto.misc
/net        -hosts

前述の例では、次のタイプのマップ・エントリが示されています。

  • /-: 直接マップ・エントリ。直接マップ・エントリでは、マウント・ポイントとして必ず/-を指定します。

  • /misc: 間接マップ・エントリ。

  • /net: ホスト・マップ・エントリ。ホスト・マップでは、マップ・ファイルではなく、必ずキーワード-hostsを指定します。

直接マップには、指定された絶対パスで自動マウントされるディレクトリの定義が含まれます。この例のauto.directマップ・ファイルには、次のようなエントリが含まれています。

/usr/man   -fstype=nfs,ro,soft             host01:/usr/man

このエントリは、次の操作を実行するディレクティブです。

  • ファイル・システム/usr/manをマウントします。これは、roオプションとsoftオプションを指定することでhost01によってエクスポートされます。

  • /usr/manマウント・ポイントを作成します(まだ存在していない場合)。このマウント・ポイントが存在する場合、マウントしたファイル・システムに含まれている既存のファイルは非表示になります。

ファイル・システムのデフォルト・タイプはNFSです。そのため、前述の例は次のように短くできます。

/usr/man   -ro,soft                        host01:/usr/man

間接マップには、/etc/auto.masterファイル内で指定されているマウント・ポイント(/misc)を基準にして自動マウントされる、ディレクトリまたはキーの定義が含まれています。たとえば、/etc/auto.miscマップ・ファイルには、次のようなエントリが格納されます。

xyz       -ro,soft                         host01:/xyz
cd        -fstype=iso9600,ro,nosuid,nodev        :/dev/cdrom
abc       -fstype=ext3                           :/dev/hda1
fenetres  -fstype=cifs,credentials=credfile      ://fenetres/c

なお、/miscディレクトリがすでに存在している必要があります。ただし、キーxyzcdなどのマウント・ポイントがまだ存在しない場合は、自動マウンタによって、それらのマウント・ポイントが作成され、ファイル・システムがアンマウントされるときに削除されます。

たとえば、ls /misc/xyzコマンドを使用すると、自動マウンタはhost01により/misc/xyzとしてエクスポートされた/xyzディレクトリをマウントします。

cdおよびabcエントリは、ローカル・ファイル・システム(/misc/cdのCD-ROMドライブからのISOイメージと/misc/abc/dev/hda1からのext3ファイル・システム)をマウントします。fenetresエントリにより、Samba共有が/misc/fenetresとしてマウントされます。

ホスト・マップ・エントリが存在し、コマンドでマウント・ポイント(/net)を基準にしてNFSサーバーが名前で参照されている場合は、自動マウンタにより、そのサーバーでエクスポートされるすべてのディレクトリが、そのサーバー用に指定されたマウント・ポイントのサブディレクトリ内にマウントされます。たとえば、cd /net/host03コマンドでは、host03からのすべてのエクスポートが、自動マウンタによって/net/host03ディレクトリの下にマウントされます。デフォルトでは、ホスト・マップ・エントリでオプションを上書きしないかぎり、nosuid,nodev,intrのマウント・オプションが使用されます。次に例を示します。

/net        -hosts    -suid,dev,nointr

ノート:

NFSサーバーの名前は、DNSまたは/etc/hostsファイルのIPアドレスに解決できる必要があります。

NFS管理の詳細は、『Oracle Linux 8 共有ファイル・システムの管理』、『Oracle Linux 9 共有ファイル・システムの管理』で、「Oracle LinuxでのNFSの使用」の章を参照してください。hosts.master(5)およびauto.master(5)のマニュアル・ページも参照してください。

自動マウンタのインストールと有効化

  1. autofsパッケージ、およびリモート・ファイル・システムのサポートに必要なその他のパッケージをインストールします。

    sudo dnf install autofs
  2. /etc/auto.master構成ファイルを編集してファイル・システムに応じたマップ・エントリを定義します。

    詳細は、自動マウンタ構成ファイルについてを参照してください。

  3. autofsサービスを開始し、システムの再起動後にサービスが開始するように構成します。

    sudo systemctl start autofs
    sudo systemctl enable autofs

/etc/sysconfig/autofsファイルではautofsの各種設定を構成できます。これには、ファイル・システムが自動的にアンマウントされるまでのアイドル・タイムアウト値が含まれます。

/etc/auto.masterファイルまたは/etc/sysconfig/autofsファイルを変更した場合は、autofsサービスを再起動して該当するファイルを再読込みします。

sudo systemctl restart autofs

詳細は、automount(8)およびautofs(5)のマニュアル・ページを参照してください。