18.2.3. マウントの共有
						システム管理作業の中には、同じファイルシステムにディレクトリーツリー内の複数の場所からのアクセスしないといけない場合があります (chroot 環境を準備する場合など)。Linux では同じファイルシステムを複数のディレクトリーに必要なだけマウントすることが可能です。さらに、mount コマンドは、特定のマウント を複製する手段を提供する 
--bind オプションを実装します。以下のような使用法になります。
					mount --bind old_directory new_directory
mount --bind old_directory new_directory
						上記のコマンドにより、ユーザーはいずれの場所からでもファイルシステムにアクセスできるようになりますが、これは元のディレクトリー内にマウントされているファイルシステムには適用されません。これらのマウントも追加するには、以下を入力します。
					
mount --rbind old_directory new_directory
mount --rbind old_directory new_directory
						さらに Red Hat Enterprise Linux 6 では、可能な限り柔軟性を持たせるために、共有サブツリー と呼ばれる機能を実装しています。次の 4 種類のマウントを使用することができます。
					
- 共有マウント
- 共有マウントにより、任意のマウントポイントと同一の複製マウントポイントを作成することができます。マウントポイントが共有マウントとしてマークされている場合は、元のマウントポイント内のすべてのマウントが複製マウントポイントに反映されます (その逆も同様です)。マウントポイントのタイプを共有マウントに変更するには、シェルプロンプトで以下を入力します。mount --make-shared mount_point mount --make-shared mount_pointCopy to Clipboard Copied! Toggle word wrap Toggle overflow または、選択したマウントポイントと、その下のすべてのマウントポイントのマウントタイプを変更する場合は、以下を入力します。mount --make-rshared mount_point mount --make-rshared mount_pointCopy to Clipboard Copied! Toggle word wrap Toggle overflow 使用例は、例18.4「共有マウントポイントの作成」 を参照してください。
- スレーブマウント
- スレーブマウントにより、所定のマウントポイントの複製を作成する際に制限を課すことができます。マウントポイントがスレーブマウントとしてマークされている場合は、元のマウントポイント内のすべてのマウントが複製マウントポイントに反映されますが、スレーブマウント内のマウントは元のポイントに反映されません。マウントポイントのタイプをスレーブマウントに変更するには、シェルプロンプトで次を入力します。mount --make-slave mount_point mount --make-slave mount_pointCopy to Clipboard Copied! Toggle word wrap Toggle overflow 選択したマウントポイントとその下にあるすべてのマウントポイントのマウントタイプを変更することも可能です。次のように入力します。mount --make-rslave mount_point mount --make-rslave mount_pointCopy to Clipboard Copied! Toggle word wrap Toggle overflow 使用例は、例18.5「スレーブマウントポイントの作成」 を参照してください。例18.5 スレーブマウントポイントの作成 この例は、/mediaディレクトリーのコンテンツが/mntにも表示され、/mntディレクトリーのマウントが/mediaに反映されないようにする方法を示しています。rootになり、まず/mediaディレクトリーに 「shared」 のマークを付けます。mount --bind /media /media mount --make-shared /media ~]# mount --bind /media /media ~]# mount --make-shared /mediaCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次に、/mntに複製を作成しますが、「スレーブ」 としてマークします。mount --bind /media /mnt mount --make-slave /mnt ~]# mount --bind /media /mnt ~]# mount --make-slave /mntCopy to Clipboard Copied! Toggle word wrap Toggle overflow /media内のマウントが/mntでも表示されるかを確認します。たとえば、CD-ROM ドライブに何らかのコンテンツを持つメディアがあり、/media/cdrom/ディレクトリーが存在する場合は次のコマンドを実行します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow また、/mntディレクトリー内にマウントされているファイルシステムが/mediaに反映されていないことを確認します。たとえば、/dev/sdc1デバイスを使用する空でないUSBフラッシュドライブが接続されていて、/mnt/flashdisk/ディレクトリーが存在する場合は、次のように入力します。mount /dev/sdc1 /mnt/flashdisk ls /media/flashdisk ls /mnt/flashdisk ~]# mount /dev/sdc1 /mnt/flashdisk ~]# ls /media/flashdisk ~]# ls /mnt/flashdisk en-US publican.cfgCopy to Clipboard Copied! Toggle word wrap Toggle overflow 
- プライベートマウント
- プライベートマウントはマウントのデフォルトタイプであり、共有マウントやスレーブマウントと異なり、伝播イベントの受信や転送は一切行いません。マウントポイントを明示的にプライベートマウントにするには、シェルプロンプトで以下を入力します。mount --make-private mount_point mount --make-private mount_pointCopy to Clipboard Copied! Toggle word wrap Toggle overflow または、選択したマウントポイントとその下にあるすべてのマウントポイントを変更することもできます。mount --make-rprivate mount_point mount --make-rprivate mount_pointCopy to Clipboard Copied! Toggle word wrap Toggle overflow 使用例は、例18.6「プライベートマウントポイントの作成」 を参照してください。例18.6 プライベートマウントポイントの作成 例18.4「共有マウントポイントの作成」 の状況を考慮に入れ、共有マウントポイントが次のコマンドを使用してrootで以前に作成されていると仮定します。mount --bind /media /media mount --make-shared /media mount --bind /media /mnt ~]# mount --bind /media /media ~]# mount --make-shared /media ~]# mount --bind /media /mntCopy to Clipboard Copied! Toggle word wrap Toggle overflow /mntディレクトリーに 「private」 のマークを付けるには、次のように入力します。mount --make-private /mnt ~]# mount --make-private /mntCopy to Clipboard Copied! Toggle word wrap Toggle overflow これで/media内のマウントはいずれも/mnt内では表示されないことを確認できるようになりました。たとえば、CD-ROM デバイスに何らかのコンテンツを含むメディアがあり、/media/cdrom/ディレクトリーが存在する場合に、次のコマンドを実行します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow また、/mntディレクトリーにマウントされているファイルシステムが/mediaに反映されていないことを確認することもできます。たとえば、/dev/sdc1デバイスを使用する空でないUSBフラッシュドライブが接続されていて、/mnt/flashdisk/ディレクトリーが存在する場合は、次のように入力します。mount /dev/sdc1 /mnt/flashdisk ls /media/flashdisk ls /mnt/flashdisk ~]# mount /dev/sdc1 /mnt/flashdisk ~]# ls /media/flashdisk ~]# ls /mnt/flashdisk en-US publican.cfgCopy to Clipboard Copied! Toggle word wrap Toggle overflow 
- バインド不可能なマウント
- 任意のマウントポイントに対して一切複製が行われないようにするには、バインド不能のマウントを使用します。マウントポイントのタイプをバインド不能のマウントに変更するには、次のようにシェルプロンプトに入力します。mount --make-unbindable mount_point mount --make-unbindable mount_pointCopy to Clipboard Copied! Toggle word wrap Toggle overflow または、選択したマウントポイントとその下にあるすべてのマウントポイントを変更することもできます。mount --make-runbindable mount_point mount --make-runbindable mount_pointCopy to Clipboard Copied! Toggle word wrap Toggle overflow 使用例は、例18.7「バインド不可能なマウントポイントの作成」 を参照してください。例18.7 バインド不可能なマウントポイントの作成 /mediaディレクトリーを共有しないようにするには、rootで次のコマンドを実行します。mount --bind /media /media mount --make-unbindable /media ~]# mount --bind /media /media ~]# mount --make-unbindable /mediaCopy to Clipboard Copied! Toggle word wrap Toggle overflow これにより、これ以降はこのマウントを複製しようとすると、エラーが発生して失敗します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow