mount point を読んでいる間、Linuxでのファイル管理は次のように思います:
/
は木の本体です/a
は本体からのブランチ、/a/b
は/a
ブランチからのブランチですc
をマウントポイント/a/b
にマウントするということは、/c
を/a/b
ブランチに「ぶら下げる」ことを意味し、結果として/a/b/c
になります。いくつか質問があります:
パーティション全体のみをマウントできますか、それともそのパーティションの一部でマウントできますか?詳しく説明してください。
すでにマウントされている別のパーティションにパーティションをマウントしますか?たとえば、いくつかのd
が/mnt
にマウントされていますが、別の/e
をd
にマウントして、/mnt/d/e
を作成できますか?または、/
、/mnt
などの「固定ブランチ」にのみマウントできますか?可能であれば、/d
をアンマウントするとどうなりますか?/e
も自動的にアンマウントされますか?
別のファイルシステムで何かにマウントできますか?たとえば、ファイルシステムF1を持つ/a
をファイルシステムF2を持つ/b
をa
にマウントし、/a/b
を作成できますか?
2つのパーティションsda1
、sda2
を持つデバイスsda
としましょう。一般的に、人々は/sda1
から/a/sda1
、sda2
から/b/c/sda2
など、任意のマウントポイントにマウントしますか、それとも同じディレクトリにマウントしますか?
Fedora 22などのLinuxで、マウントとマウントポイントをテストおよび学習するための仮想または一時パーティション/ファイルシステムを作成するにはどうすればよいですか?
まず、パーティションをマウントしません。マウントされるのはfilesystemです。ファイルシステムはパーティション上に存在する可能性がありますが、必ずしもそうではありません。ファイルシステムは一般的に生きています:
ファイル内(ISOイメージなど)、
完全にRAM(たとえば、/ tmpはこの方法で作成されることがあります))、
カーネル内(/ sysと/ procはこのように機能します)、
またはネットワークサービスとして(NFSとSambaはこのように機能します)。
パーティションcをマウントポイント/ a/bにマウントするということは、/ cを/ a/bブランチに「ぶら下げる」ことを意味し、結果として/ a/b/cになります。
これは正しくありません。
まず、ファイルシステムを参照する方法はたくさんあります(たとえば、最も一般的で、ほとんどの場合最も安全な方法はUUIDを使用する方法です。通常のユーザーとしてlsblk -o +UUID,LABEL
を実行して、カーネルが認識しているIDを確認してください)。それらのどれも、実際の結果のパスに影響を与えません。
したがって、マウントするときにパスを指定します(そのパスはマウントポイントと呼ばれ、すでに存在している必要があります)。ファイルシステムがマウントされた後、そのルートは、指定したまさにそのパスでアクセス可能になります。 -)---そのサブディレクトリではありません。
- パーティション全体のみをマウントできますか、それともそのパーティションの一部でマウントできますか?詳しく説明してください。
理論的には、1つのパーティションに複数のファイルシステムを置くことができますが、そこで見つけるには特定のソフトウェアが必要になります(これを行うために使用されるtruecrypt、IIRC)。
ファイルシステムの一部のみをマウントしたい場合は、理論的には可能かもしれませんが、カーネルはこのようにはしません。理論的には、部分的にしかマウントできないファイルシステムを考案して、そのドライバーを作成することもできますが、それは難しいことと不可能なことの間だと思います。 AFAIK、一般的に使用されるファイルシステムはどれもこれをサポートしていません。
- すでにマウントされている別のパーティションにパーティションをマウントしますか?
はい、できます。同じパスを介して任意の数のファイルシステムをマウントし、それらを任意の順序でアンマウントできます。ただし、最後にマウントされたファイルシステムにのみアクセスできます。
実際、それはいくつかのプログラムによって一般的に行われています。セキュリティ上の理由から、ファイルシステムをマウントし、そのファイルを開いてから、同じパスに別のファイルをマウントします。これで、他のプロセスは最初のファイルにアクセスできなくなります。
たとえば、いくつかのdが/ mntにマウントされていますが、別の/ eをdにマウントして、/ mnt/d/eを作成できますか?または、/、/ mntなどの「固定ブランチ」にのみマウントできますか?可能であれば、/ dをアンマウントするとどうなりますか?/ eも自動的にアンマウントされますか?
/ mntにファイルシステムをマウントし、そのファイルシステムにたとえばが含まれている場合。ディレクトリ 'foo'の場合、このディレクトリを使用して別のファイルシステムをマウントできます。ただし、カーネルでは、使用されているファイルシステムをアンマウントできません。ファイルを開き、ディレクトリへのプロセスchdirを持ち、ディレクトリをマウントポイントとして使用することは、すべて「使用中」としてカウントされます。
/などの「固定ブランチ」にマウントします。
ああ、ちなみに、決してこれを行う。何も直接/にマウントしないでください。これにより、システムがすぐに破損する可能性があります。
- 別のファイルシステムで何かにマウントできますか
うん。実際、一般的なディストリビューションでは、ログイン画面が表示されるまでに、約5つの異なるファイルシステム(現在、私のFedoraボックスでは16です)が/の下のどこかにマウントされています。
mount
を実行して、現在マウントされているファイルシステムを確認します。
- 2つのパーティションsda1、sda2を持つデバイスsdaを考えてみましょう。一般的に、/ sda1から/ a/sda1、sda2から/ b/c/sda2など、任意のマウントポイントにマウントしますか、それとも同じディレクトリにマウントしますか?
私が覚えている限り、唯一の要件は、マウントポイント(つまりディレクトリ)がすでに存在している必要があるということです。それ以外に、あなたはあなたのニーズに合うどんな計画も思いつくことができます。ファイルシステムが同じディスク上にあるという事実は、制限をもたらしません。
結局のところ、後でファイルシステムを別のメディアに移動して再マウントすることもできます。あなたはそれをするでしょう例えばディスクに障害が発生している場合、またはより多くのスペースが必要な場合。
命名に関しては、そもそもなぜファイルシステムが必要なのかという問題です。ユーザーのホームディレクトリ専用に別の(大きな)ファイルシステムを用意するのが一般的です。ホームディレクトリの自然な場所は/ homeであるため、そのファイルシステムをこのパスにマウントするのがコツです。サーバーの場合、この方法で/ varを分離すると有利なことがよくあります。ただし、別のストレージが必要な場合は、パスが一意でユーザーにとって意味のあるものである限り、未使用のパス(/ Financeなど)にいつでもマウントできます(/ sda1はYMMV以外ではないと思います;)) 。
- [...]マウントとマウントポイントをテストおよび学習するための仮想または一時パーティション/ファイルシステムを作成するにはどうすればよいですか?
Archemarの答えを参照してください。 (ちなみに、Fedora 22だけでなく、一般的なGNU/Linuxディストリビューションでも動作するはずです。)
これは非常に広いです
foo.txt
に「b」をマウントすると/mnt/a/b/foo.txt
のファイル/mnt/a/b
は非表示になります)を使用して一時的なデバイスとマウントポイントを作成できます
dd if=/dev/zero count=100 bs=1K of=foo
、mkfs -t ext3 foo
、次に、ルートとして、mount foo /mnt
/mnt
をアンマウントし、完了したらfoo
を削除します。
リクエストに応じて。
/ 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