Re: Mehrfach mounten abschalten

From: Oliver Fromme <olli(at)lurza.secnetix.de>
Date: Fri, 24 Mar 2006 13:58:07 +0100 (CET)

Rocco Rutte <pdmef(at)gmx.net> wrote:
> Oliver Fromme <olli(at)lurza.secnetix.de>:
> > Für den Kernel sind das ganz einfach verschiedene Mounts.
> > Wenn Du denselben NFS-Pfad mehrfach mountest (egal, ob auf
> > denselben Mountpoint oder unterschiedliche), dann _darf_
> > der Kernel nicht annehmen, daß es sich um dasselbe Datei-
> > system handelt -- theoretisch darf der NFS-Server für beide
> > Mounts unterschiedliche Daten liefern. Man sieht das auch
> > daran, daß die beiden Mounts verschiedene Filesystem-IDs
> > erhalten (»mount -v« listet sie auf). Das bedeutet auch,
> > daß sie aus Sicht des Buffercaches unabhängig voneinander
> > sind.
>
> "mount -v" liefert das gleiche wie "mount".

Dann hast Du kein aktuelles FreeBSD 6.

Ich habe mal einen kleinen Test gemacht:

# mount -t nfs -o ro 127.0.0.1:/var/empty /mnt
# mount -t nfs -o ro 127.0.0.1:/var/empty /mnt
# mount | grep mnt
127.0.0.1:/var/empty on /mnt (nfs, read-only)
127.0.0.1:/var/empty on /mnt (nfs, read-only)
# mount -v | grep mnt
127.0.0.1:/var/empty on /mnt (nfs, read-only, fsid 05ff000303000000)
127.0.0.1:/var/empty on /mnt (nfs, read-only, fsid 06ff000303000000)

> Ich könnte jetzt noch fragen, für welchen "Mountpoint" die Buffer
> gelten, wenn der selbe NFS-Export mehrfach auf den selben Mountpoint
> gemountet wurde.

Ich verstehe die Frage nicht. Beiden Mounts sind natürlich
(unterschiedliche) Buffer zugeordnet.

> Ich sehe lieber zu, dass ich halt alle Instanzen
> entsprechend oft unmounte...

Das solltest Du natürlich, wenn Du möchtest, daß es nicht
mehr gemountet ist.

> > Dasselbe gilt natürlich ebenso, wenn man die Mounts auf
> > demselben Mountpoint übereinander macht. Der »obere«
> > Mount verdeckt dann den »unteren« und macht ihn unzugäng-
> > lich, sofern man nicht die Option "-o union" verwendet.
>
> "Oben" und "unten" ist die Reihenfolge der mounts, d.h. der letzte ist
> der aktuellste und damit der oberste?

Ja, so war das gemeint. Das ist ganz normale UNIX-mount-
Semantik, wie man es in jedem UNIX-Admin-Kurs lernen sollte.
Wenn es sich irgendwie anders verhielte, wäre das ein Bug.

Die Situation (oder eine ähnliche) hat sicher jeder UNIX-
Admin schon erlebt: Es wurde vergessen, /tmp als separates
Dateisystem zu machen, d.h. es ist Teil des root-Filesy-
stems. Um das zu korrigieren, mountet man eine neue Parti-
tion (oder ein memory-Filesystem) über /tmp drüber, ver-
gißt aber, die alten Dateien darin zu löschen. Das neue
/tmp ist jetzt »oben« und verdeckt den alten (»unteren«)
Inhalt. Alle Zugriffe erfolgen auf das »obere« Dateisy-
stem. An das »untere« kommt man nur noch dran, indem man
das »obere« wieder unmountet.

Wie gesagt: Ob man nun dasselbe auf einen existierenden
Mountpoint mountet, oder etwas anderes, spielt dafür gar
keine Rolle. Der neue Mount verdeckt immer das, was da
vorher war (egal was das ist), wie oben beschrieben.

> Dass hiesse die Buffers des
> unteren wären für die Files aktiv, die zwischen zwei Mounts benutzt
> wurden?

Die Frage verstehe ich nicht.

Gruß
   Olli

-- 
Oliver Fromme,  secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing
Dienstleistungen mit Schwerpunkt FreeBSD: http://www.secnetix.de/bsd
Any opinions expressed in this message may be personal to the author
and may not necessarily reflect the opinions of secnetix in any way.
Perl is worse than Python because people wanted it worse.
        -- Larry Wall
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Fri 24 Mar 2006 - 13:59:30 CET

search this site