さまざまなパーティションとさまざまなファイルシステムのマウントポイント

さまざまなパーティションとさまざまなファイルシステムのマウントポイント

読み続けながらマウントポイント、Linuxのファイル管理は次のとおりです。

  • /木の本体である
  • /a本体の枝、枝/a/bの枝です/a
  • cマウントポイントにパーティションをマウントするとは、パーティションをブランチに/a/b「マウント」することを意味します。/c/a/b/a/b/c

質問がいくつかあります:

  1. パーティション全体のみをマウントできますか、またはパーティションの一部のみをマウントできますか?詳しく説明してください。

  2. すでにマウントされている別のパーティションにパーティションをマウントしますか?たとえば、いくつかdはにインストールされていますが、作成された別のものをインストール/mntできますか?それとも「固定分岐」にマウントできますか?可能であれば削除するとどうなりますか?自動的に削除されますか?/ed/mnt/d/e//mnt/d/e

  3. 別のファイルシステムを使用してインストールできますか?たとえば、/aファイルシステムF1がある場合、/bファイルシステムF2をここにマウントしaて作成できますか/a/b

  4. デバイスに2sdaつのパーティションがあるとしますsda1sda2一般に、人々は、/sda1to /a/sda1sda2to、/b/c/sda2または同じディレクトリなど、目的のマウントポイントにマウントしますか?

  5. Linux(Fedora 22など)でマウントポイントとマウントポイントをテストして理解するために、仮想または一時パーティション/ファイルシステムをどのように作成できますか?

答え1

まず、パーティションをマウントしませんでした。設置されているものファイルシステム。ファイルシステムはパーティションにありますが、通常ファイルシステムは存在しません。

  • 内部ファイル(例:ISOイメージ)、

  • 完全にRAM上にあります(たとえば、/ tmpは時々このように生成されます)。

  • カーネル内部(/sysと/procはこのように動作します)

  • または、ネットワークサービス(NFSとSambaがこの方法で動作します)として使用されます。

マウントポイント/a/bにパーティションcをマウントするとは、/cを/a/b分岐に「マウント」して/a/b/cになることを意味します。

これは正確ではありません。

まず、ファイルシステムを参照する方法はいくつかあります(たとえば、最も一般的で最も安全な方法はUUIDを使用することです。lsblk -o +UUID,LABEL通常のユーザーとして実行してカーネルが知っているIDを確認すること)。パスの実際の結果に影響します。

したがって、インストール時にパスを提供する必要があります(このパスはマウントポイントと呼ばれ、すでに存在する必要があります)。ファイルシステムがマウントされた後、その根これでアクセスできます。あなたが提供したパス---サブディレクトリではありません。

  1. パーティション全体のみをマウントできますか、またはパーティションの一部のみをマウントできますか?詳しく説明してください。

理論的には、単一のパーティションに複数のファイルシステムがありますが、そのファイルシステムを見つけるには特定のソフトウェアが必要です(これを行うにはIIRCでtruecryptが使用されます)。

ファイルシステムの一部だけをマウントしたい場合は理論的には可能ですが、カーネルではこれを行いません。理論的には、部分マウントのみを許可するファイルシステムを設計してから、そのためのドライバを作成できますが、これは難しく不可能であると思います。 AFAIK、一般的に使用されるファイルシステムのどれもサポートしていません。

  1. すでにマウントされている別のパーティションにパーティションをマウントしますか?

はい、できます。同じパスに任意の数のファイルシステムをマウントし、順序に関係なくアンマウントできます。ただし、最後にマウントされたファイルシステムにのみアクセスできます。

実際、セキュリティ上の理由から、一部のプログラムではファイルシステムをマウントしてファイルを開き、同じパスに別のエントリをインストールすることがよくあります。他のプロセスは最初のファイルにアクセスできません。

たとえば、いくつかのdが/ mntにマウントされました。別の/eをdにマウントして/mnt/d/eを作成できますか?それとも/、/mntのような「固定分岐」にマウントできますか?可能であれば/ dをアンマウントするとどうなりますか? / eも自動的にマウント解除されますか?

/ mntにファイルシステムをマウントし、そのファイルシステムにたとえば次のものが含まれている場合は、 'foo'ディレクトリがある場合は、このディレクトリを使用して他のファイルシステムをマウントできます。ただし、カーネルでは使用中のファイルシステムをマウント解除できません。ファイルを開く、ディレクトリのchdirプロセス、およびディレクトリをマウントポイントとして使用することはすべて「使用中」と見なされます。

「固定ブランチ」にマウントします(例:/)。

ああ、さて、絶対これを行います。何もインストールしないでくださいまっすぐ/にすると、システムがすぐに中断される可能性が高くなります。

  1. 別のファイルシステムを使用してマウントできますか?

はい。実際、一般的な展開では、ログイン画面に到達するまでに、すでに/下のどこかに約5つの異なるファイルシステムがマウントされています(現在のFedoraボックスには16があります)。

mount現在マウントされているファイルシステムを確認するには、実行してください。

  1. デバイスsdaにsda1とsda2という2つのパーティションがあるとします。一般的に、人々は、/sda1から/a/sda1、sda2から/b/c/sda2、または同じディレクトリなど、目的のマウントポイントにマウントしますか?

私が覚えている限り、唯一の要件は、マウントポイント(つまりディレクトリ)がすでに存在する必要があることです。それ以外はあなたのニーズに合ったものを思い出すことができます。ファイルシステムが同じディスク上にあるという事実は、いかなる制限も構成しません。

最後に、ファイルシステムを別のメディアに移動して後で再マウントすることもできます。たとえば、ディスクに障害が発生した場合、またはより多くのスペースが必要な場合は、この操作を実行します。

命名に関する問題は、もともとファイルシステムが必要な理由です。通常、ユーザーのホームディレクトリのみのための別々の(大きな)ファイルシステムがあります。ホームディレクトリの元の場所は/homeなので、ファイルシステムをこのパスにマウントするのがコツです。このように/varを分離することがサーバーにとって有利なことがよくあります。ただし、別のリポジトリのみを必要とする場合は、そのパスが一意で、ユーザーに適している場合は、常に使用していないパス(たとえば/ finance)にマウントできます(/ sda1ではないようですが、YMMV;)。 )。

  1. [...]マウントとマウントポイントをテストして学習するために、仮想または一時パーティション/ファイルシステムをどのように作成しますか?

Archemarの回答を参照してください。 (しかし、Fedora 22だけでなく、一般的なGNU / Linuxディストリビューションでも動作するはずです。)

答え2

この範囲は非常に広いです。

  1. ローカルパーティションは全体的にマウントされます。部分的にインストールすることはできません。
  2. パーティションを別のパーティションにマウントできます(通常は多くの操作を実行します)。既存のデータが「隠されている」(例:「b」をマウントすると、そのファイルは非foo.txt表示になります)/mnt/a/b/foo.txt/mnt/a/b
  3. はい、可能です。ローカルからローカルへ、リモートからリモートまたはローカルにマウントすることをお勧めします。ただし、ローカルext3をnfsとしてマウントし、ext3としてマウントできます。
  4. それはあなたのニーズによって異なります。
  5. /etc/fstab に書き込まれないと、起動時にマウントポイントが消えます。

次のコマンドを使用して、一時デバイスとマウントポイントを作成できます。

  • dd if=/dev/zero count=100 bs=1K of=foo

  • 次にmkfs -t ext3 foo

  • その後、ルートとしてmount foo /mnt

    完了したら削除して削除します/mntfoo

必要に応じて。

/dev/sda1 /dev/sda2があります。

ls /mnt
#empty
mount /dev/sda1 /mnt/a
error mount point doesn't exist (1)
mkdir /mnt/a 
mount /dev/sda1 /mnt/a
ls /mnt
a
ls /mnt/a
# empty
mkdir /mnt/a/b
date > /mnt/a/b/foo.txt
mount /dev/sda2 /mnt/a/b
ls /mnt/a/b
# empty
umount /mnt/a
device busy (2) 
date > /mnt/a/b/bar.txt
ls /mnt/a/b
bar.txt
umount /mnt/a/b
ls /mnt/a/b
foo.txt
  • (1) 既存のディレクトリにインストールする必要があります。
  • (2) /mnt/a はマウントポイントで使用中なのでマウント解除できません (/mnt/a/b)。

関連情報