機械翻訳について

mountコマンドの使用

警告:

このドキュメントはドラフトであり、本番での使用を目的としたものではありません。 ブランチ: OL10-FSADMIN

mountコマンドを使用して、ファイル・システムを含むデバイスを次のようにマウント・ポイントに接続します:

sudo mount [options] device mount_point

「装置」は、名前、UUIDまたはラベルを参照することでマウントできます。 たとえば、次のマウント・コマンドのいずれかが適切です:

sudo mount /dev/sdb1 /mnt
sudo mount UUID="ad8113d7-b279-4da8-b6e4-cfba045f66ff" /mnt
sudo mount LABEL="Projects" /mnt

mount_pointは、既存のファイル・システム内にディレクトリとして存在する必要があります。 通常、マウント・ポイントは空のディレクトリですが、空でない場合、デバイスがマウントされている間はディレクトリの内容にアクセスできません。

オプション

通常、ファイル・システムのマウント時には、次のオプションが使用されます。 使用可能なオプションの詳細は、mount(8)マニュアル・ページを参照してください。

auto

mount -aコマンドを使用して、ファイル・システムが自動的にマウントされます。

exec

ファイル・システム内のバイナリ・ファイルの実行を許可します。

loop

ループ・デバイス(/dev/loop*)を使用して、ファイル・システム・イメージが格納されたファイルをマウントします。 losetup(8)マニュアル・ページを参照してください。 「ループ・デバイスを使用したファイル・システム・イメージのマウント」も参照してください

ノート:

使用可能なループ・デバイス数のデフォルトは8です。 カーネル・ブート・パラメータmax_loop=Nを使用して、最大255個のデバイスを構成できます。 または、次のエントリを/etc/modprobe.confに追加します。

options loop max_loop=N 

前述の例では、Nは、必要なループ・デバイスの数(0から255)でシステムを再起動します。

noauto

mount -aの発行時にファイル・システムが自動的にマウントされないようにします。

noexec

ファイル・システムにあるバイナリ・ファイルが実行されないようにします。

nouser

rootユーザー以外のユーザーがファイル・システムをマウントまたはアンマウントできないようにします。

remount

ファイル・システムがすでにマウントされている場合にそれを再マウントします。 通常は、このオプションをrorwなどの別のオプションと組み合せて、マウント済のファイル・システムの動作を変更します。

ro

ファイル・システムを読取り専用でマウントします。

rw

ファイル・システムを読取り/書込み用でマウントします。

user

任意のユーザーによるファイル・システムのマウントまたはアンマウントを許可します。

例3-1 読み取り専用アクセス権を持つデバイスのマウント

読取り専用アクセス権で/dev/sdd1デバイスをマウント・ポイント/testにマウントし、rootユーザーにファイル・システムのマウントまたはアンマウントのみを付与します:

sudo mount -o nouser,ro /dev/sdd1 /test

例3-2 ISOイメージのマウント

ループ・デバイスを使用して、読取り専用アクセスでISOイメージ・ファイルをマウント・ポイント/media/cdromにマウントします:

sudo mount -o ro,loop ./Oracle_Linux.iso /media/cdrom

例3-3 読み取り/書き込みアクセス権を持つファイルシステムの再マウントとバイナリ・ファイルの実行の防止

読取りアクセスと書込みアクセスの両方で/testファイル・システムを再マウントし、ファイル・システム内のバイナリ・ファイルの実行を禁止します:

sudo mount -o remount,rw,noexec /test

バインド・マウントの使用

バインド・マウントを使用すると、ファイル・システム階層内の別のロケーションにディレクトリまたはファイルを再マウントできます。

バインド・マウントは通常、基礎となるファイル・システムからchrootまたはコンテナ環境にデータを公開するために使用されます。 バインド・マウントは、ファイルシステムの代替のロケーションにデータが表示される可能性があるアプリケーションを操作する場合にも役立ちます。

各ディレクトリ階層は、他のミラーとして機能します。 同じファイルは、いずれの場所でもアクセスできます。

標準バインド・マウントの場合、サブマウントはレプリケートされません。 再帰的バインド・マウントを使用して、新しいマウント・ロケーション内のサブマウントをレプリケートすることもできます。

mountコマンドには、マウント・ポイントへのバインドを防止し、ミラー間でサブマウントのマウント・アクションを共有するオプションも含まれています。

バインド・マウントを使用して作成されたミラーは、データの冗長性を提供しません。

  • ファイル・システム内のディレクトリまたはファイルの別のディレクトリまたはファイルへの標準バインド・マウントを実行するには、mount -Bまたはmount --bindコマンドを使用します:
    sudo mount --bind source target                    

    「ソース」をマウントするディレクトリまたはファイルへのパスに置き換え、「ターゲット」をマウントするパスに置き換えます。 たとえば:

    sudo mount --bind /mnt/data /home/user/data

    このコマンドは、/mnt/dataディレクトリを/home/user/dataディレクトリにバインドします。

    ファイルを別のファイルにマウントするには、同じコマンドを使用できますが、ソースとしてファイルを使用し、ターゲットとして別のロケーションにあるファイルを使用します。 たとえば:

    sudo mount -B /etc/hosts /mnt/foo

    /etc/hostsファイルは、/mnt/fooファイルにマウントされます。 マウント・ポイントとして機能する既存のファイルは、その上にあるファイルをアンマウントするまでアクセスできません。

  • 再帰的バインド・マウントを実行するには、mount --rbindまたはmount -Rコマンドを使用します。
    sudo mount --rbind source target                    

    「ソース」をマウントするディレクトリまたはファイルへのパスに置き換え、「ターゲット」をマウントするパスに置き換えます。 たとえば:

    sudo mount --R /mnt/data /home/user/data

    この場合、/mnt/dataにサブマウントが含まれていると、サブマウントも/home/user/data内にレプリケートされます。

  • バインド・マウントのマウント・オプションを変更するには、バインド・マウントを再マウントし、必要なオプションを指定する必要があります。

    -Bまたは-Rオプションを使用すると、ファイルシステムのマウント・オプションは元のマウント・ポイントのものと同じままになります。 mountのオプションを変更するには、別個のremountコマンドを使用します。次に例を示します。

    sudo mount -o remount,ro /home/user/data
  • マウントおよびマウント解除のアクションを、任意のマウント・ポイントのサブマウントにどのように伝播するかを制御します。

    マウント・ポイントにあるサブマウントを、共有、プライベートまたはセカンダリとしてマークできます。 次のオプションを指定できます。

    mount --make-shared mount_point

    指定したマウント・ポイントの下でのマウントまたはアンマウントは、作成したあらゆるミラーに伝播され、このマウント階層には、他のミラーに適用したマウント変更やアンマウント変更が反映されます。

    mount --make-private mount_point

    指定したマウント・ポイントの下でのマウントまたはアンマウントは他のミラーに伝播されず、このマウント階層には、他のミラーに適用したマウント変更やアンマウント変更は反映されません。

    mount --make-slave mount_point

    指定したマウント・ポイントの下でのマウントまたはアンマウントは他のミラーに伝播されませんが、このマウント階層には、他のミラーに適用したマウント変更やアンマウント変更が反映されます。

    たとえば、バインド・マウント内にマウント・アクションを伝播するには、次を実行します:

    sudo mount --bind --make-shared /mnt/data /home/user/data

    /mnt/dataサブツリー内で新しいマウントが実行された場合、そのマウントは/home/user/dataサブツリー内の同じロケーションに伝播されます。

  • -Bまたは-Rオプションを使用してマウントがミラー化されないようにするには、そのマウント・ポイントをバインド不可としてマークします:
    sudo mount --make-unbindable mount_point

loopデバイスを使用したファイル・システム・イメージのマウント

既存のファイル・システム内にファイル・システム・イメージを作成し、loopデバイスを使用してファイル・システム・イメージをマウントできます。

ループ・デバイスを使用すると、ブロック・デバイスとしてファイルにアクセスできます。 たとえば、次のように、DVD ISOイメージを含むファイルをマウント・ポイント/ISOディレクトリにマウントできます。

sudo mount -t iso9660 -o loop /tmp/OracleLinux.iso /ISO

mountコマンドは、ファイル・システムのタイプを検出し、ファイル・イメージをマウント・ポイントにマウントする場合、ループ・デバイスが意図されていることを理解できます。 したがって、-tおよび-oオプションを指定せずにmountコマンドを実行することもできます:

sudo mount /tmp/OracleLinux.iso /ISO

既存のファイル・システム内に代替ファイル・システムを使用してファイル・システム・イメージを作成することもできます。 次の手順では、空のファイルを作成し、ファイルシステムでフォーマットしてから、ループ・デバイスを使用してマウントする方法について説明します。

  1. 必要なサイズの空のファイルを作成します。
    sudo dd if=/dev/zero of=/fsfile bs=1M count=4096

    または、次を実行します:

    sudo fallocate -l 4G /fsfile
  2. イメージ・ファイルにファイル・システムを作成します。

    たとえば、Ext4ファイル・システムでファイルをフォーマットするには、次を実行します:

    sudo mkfs.ext4 -F /fsfile
  3. ループ・デバイスを使用してイメージ・ファイルをファイル・システムとしてマウントします。
    sudo mount -o loop /fsfile /mnt

    必要に応じて、ファイル・システムの永続エントリを/etc/fstabに作成します。

    /fsfile          /mnt      ext4    rw,loop     0 0

新しいマウント・ポイントへのファイルシステムの移動

mount --moveコマンドを使用して、マウント・ポイントにマウントされたファイル・システムを新しいマウント・ポイントに移動できます。

mount --moveコマンド。ファイル・システムをマウント解除せずに、あるマウント・ポイントから別のマウント・ポイントに移動できます。

実行中のプロセスやファイルへのアクセスを中断することなくマウント・ポイントを切り替える必要がある場合は、ファイルシステムの移動が役立つことがあります。 移動は、初期段階のブート・プロセス、またはコンテナ化された環境でより一般的に実行されます。 ファイルシステムを新しいターゲットに移動すると、移動操作によって元のマウントが削除されます。 プロセスに元のマウント・ポイントに基づくオープン・ファイルがある場合、ファイル記述子がパスではなくiノードを指し示すため、プロセスは影響を受けず、ファイルシステムは移動操作中にアンマウントされないため、引き続き使用可能です。

  • マウントされたファイル・システム、ディレクトリ階層またはファイルを新しいマウント・ポイントに移動するには、mount --moveまたはmount -Mコマンドを使用します。

    たとえば、次を実行します。

    sudo mount -M /mnt/users /home

    移動するソース・マウントはマウント・ポイントである必要があり、マウント内のディレクトリにはできません。 共有マウントでのマウントの移動は無効であり、エラー・アウトです。