「マウント」とは何ですか? 「データストレージにアクセスできるようにする」ことを意味する気がしますが、実際にはどういう意味ですか? 「ディスクにアクセスできる」と「ディスクがマウントされている」が異なる場合を指定してください。
簡単にするために、この答えをディスクやフラッシュドライブなどの通常のストレージデバイスに限定します。
デバイスを接続すると、そのドライバーによりデバイスノードとしてアクセス可能になり、ユーザープログラムからはファイルのように見えます。 /dev/sda
。これで、ディスクはalreadyアクセス可能になりました。あなたはそれを読み書きすることができます。 16進数+ ASCII形式でMBR(最初の512バイト)を確認する方法の例を次に示します。
Sudo head -c 512 /dev/sda | xxd -g1
しかし、そのデバイスにいくつかのファイルがあり、それらにアクセスしたい場合、この低レベルの外観はあまり満足のいくものではありません。 ファイルシステム ドライバーが必要です。このために、mount
ユーティリティを使用してデバイスをマウントします。わかりやすくするために、次のコマンドでファイルシステムを明示的に指定します(ext4
を正しく選択したと仮定します。そうでない場合は、mount
が通知します)。
Sudo mount /dev/sda1 /mnt/ -t ext4
この後、デバイスは、ユーザープログラムが期待する形式の/mnt/
で公開されます。単なるセクターではなく、ファイルとディレクトリです。
上記のコマンドでsda
の代わりにsda1
を使用した理由を疑問に思うかもしれません。これは、ファイルシステムレベルとプレーンセクターレベルの間に partitioning の小さなレイヤーがあり、ここでsda1
はデバイスsda
の最初のパーティションを示しているためです。
Windows(または—うーん— — DOS)に慣れていますか?いずれかの絶対的な初心者の状態を超えている場合、メインシステムのセカンダリストレージデバイス(ハードディスクまたはSSD)がC:
と呼ばれていることがわかります。 (簡単にするために、コンピューターにはセカンダリストレージデバイスが1つしかなく、パーティションは1つだけであると想定します。)ルートディレクトリはC:\
であり、C:\Intel
、C:\Program Files
、C:\Users
、およびC:\Windows
。これらには、さらに別のディレクトリ層を含めることができます。例:C:\Program Files\Oracle
、C:\Users\your_name
など。
D:
になります。また、ルートディレクトリD:\
、および通常はD:\Install
などの下位ディレクトリもあります。A:
であったことを思い出すでしょう(そして、実際には、2番目のディスクがあり、それは当然B:
)。また、同じパターンが適用されます。ルートディレクトリA:\
には、A:\GAMES
やA:\WORK
などのフォルダーを含めることができます。D
(おそらくF
)を超えるドライブ文字があり、ルートディレクトリF:\
にはF:\Project1
などのフォルダーが含まれます。Z
)があり、ルートディレクトリZ:\
にはZ:\Project2
などのフォルダーが含まれることがあります。したがって、コンピュータ全体のディレクトリレイアウトは次のようになりました。
A:\ C:\ D:\ F:\ Z:\
⋰ ⋱ ⋰ ⋰ ⋱ ⋱ ⋰ ⋰ ⋰
⋰ ⋱ ⋰ ⋰ ⋱ ⋱ ⋰ ⋰ ⋰
⋰ ⋱ ⋰ ⋰ ⋱ ⋱ ⋰ ⋰ ⋰
GAMES WORK Intel Program Files Users Windows Install Project1 Project2
⋰ ⋰
⋰ ⋰
⋰ ⋰
Oracle user480468
したがって、原則として、それぞれ独自のルートディレクトリを持つ最大26の独立したファイルシステムディレクトリツリーを作成できます。そして、特にWindowsがComputer
(以前はMy Computer
として知られていました)スーパーフォルダーでそれらをすべて結び付けているので、これで十分に機能すると思います。 (しかし、もう一度、C:
以外のディスクにプログラムをインストールすること、またはC:
からユーザーディレクトリを移動することがどれほど難しいかを見てください。)そして、Computer
は擬似であることに注意してください。 -folder — Computer
にファイルまたはディレクトリを作成できません。
nixには哲学があります これには概念が含まれています Do One Thing and Do It Well 。 (名前「Unix」でさえも 接頭辞「un-」または「uni-」に由来し、「one」を意味します 。)したがって、Unixの設計者がsingleファイルシステムのディレクトリツリー;あなたはおそらくそれに精通している:
/
⋰ ⋰ ⋰ ⋮ ⋱ ⋱ ⋱
⋰ ⋰ ⋰ ⋮ ⋱ ⋱ ⋱
⋰ ⋰ ⋰ ⋮ ⋱ ⋱ ⋱
⋰ ⋰ ⋰ ⋮ ⋱ ⋱ ⋱
⋰ ⋰ ⋰ ⋮ ⋱ ⋱ ⋱
⋰ ⋰ ⋰ ⋮ ⋱ ⋱ ⋱
bin dev etc home mnt tmp usr …
⋰ ⋰⋱
⋰ ⋰ ⋱
⋰ ⋰ ⋱
user48046 bin lib
この利点は、(システム管理者の役割で)すべてを1つのパーティションに入れるか、/home
を1つのパーティションに、/usr
を別のパーティションに入れて、あなた(ユーザーのロール)に入れることができることです。それを忘れることができます。どのディスク(パーティション)/usr
がオンになっているかを知る必要はありません。関係なく、唯一のファイルシステムルート(/
)の下に表示されます。軽度の欠点は、ストレージコンポーネントを追加(および削除)するときに、(パワーユーザーの役割で)この統一されたファイルシステムディレクトリツリーを維持する必要があることです。 CDまたはフラッシュドライブを挿入すると、それは/dev
の下にある単なるエントリになります。これは、あまり混乱させないでください。実行fsck
またはfdisk
;など、デバイスノードでいくつかのことができます。または、可能であれば、専用のデータベースストレージデバイスとして構成します(例:Oracle用)—ディスクにアクセスできるため。ただし、ファイル(およびディレクトリ)はまだファイルシステムにないため、ファイル(およびディレクトリ)にアクセスできません。ディスクがマウントされていないためです。
そして、これがmount
の出番です。mount
は、aファイルシステム(例えば、リムーバブルデバイス上)をアタッチするコマンドですtheファイルシステム(/
で始まるファイルシステム)。1/mnt
ディレクトリの下に/
ディレクトリがあります。従来、一時的な(リムーバブル)ファイルシステムストレージデバイスは、/mnt
の下のディレクトリにマウントされます。つまり、それらはそこでファイルシステムに接続されます。一部のシステムでは、一部のデバイスは検出されると自動的にマウントされます。しかし、理論的には、a filesystemanywherein theファイルシステム。
___________
1 髪の分割、mount
はmount()
システムコールを呼び出すプログラムです。これはaファイルシステムをtheにアタッチしますファイルシステム。
何かを「マウント」すると、その中に含まれるファイルシステムへのアクセスがルートファイルシステム構造に配置されます。ファイルに場所を効果的に与える。これは、WindowsのC:/ D:ドライブラベルに似ています。
/ dev/sdb1を/ mnt/disk1にマウントすると、デバイスstandard disk B partition 1
に含まれるすべてのファイルとフォルダーが、アクセス可能なディレクトリ/mnt/disk1
に配置されます。
最近のシステムには、Windowsがドライブをドライブ文字に自動マウントするのと同じようにドライブを自動マウントする方法がありますが、Unixのロケーションマウントシステムはより柔軟です。そして、アンマウントとは、明らかに、その場所からそれらのファイル/フォルダーへのアクセスを削除することです。次のコマンドを実行すると、マウントされているファイルシステムを確認できます。
mount
関連するパーツ: mount、umount、fstab(固定マウント用)、udev、gvfs(自動マウント用)