Mounten - was genau ist das?

Es klappt alles bestens mit Manjaro und ich habe z.Zt. keine Linux-Probleme - aber ich würde gerne das Thema Mounten besser verstehen.
Wenn Mounten nur die Vergabe von Lese- und Schreibrechten einer Partition an den jeweiligen Benutzer ist, dann wäre ja alles klar. Wenn aber Mounten etwas ganz anderes ist, bitte ich Euch, mir links (am besten auf Deutsch) zu zeigen, wo ich mich einlesen kann.

mounten heißt:
einhängen/einbinden - in eine Struktur integrieren
(to mount a horse, or a bike, heißt: auf das Pferd oder auf das Rad aufsteigen - das ist nicht dasselbe, das ist die falsche Analogie)

Das Wort ist eigentlich ein besch$$erter Anglizismus - ein englisches Wort ohne Übersetzung ins Deutsche übernommen ohne daß die Mehrheit die Bedeutung in diesem Kontext kennt.

Du kennst die Struktur des Linux/Unix Dateisystems.
/ (root) ist das Wurzelverzeichnis
alle anderen Verzeichnisse sind relativ dazu
sieht man auch an der Schreibweise:
/home
/dev
/usr
usw. …

Nun hast Du z.B. einen USB Stick
Den zu mounten bedeutet
ihn in die vorhandene Struktur einzubinden
so daß der Inhalt des Dateisystems auf dem Stick
über einen bestimmten Pfad erreichbar ist
(z.B. über /mnt oder über /run/media)

Mounten hat NICHTS mit der Vergabe von Rechten zu tun.

1 Like

Nein hat mit den Rechten hat es nur bedingt was zu tun. Es geht beim mounten darum, ein Dateisystem einer Partition in die Verzeichnisstruktur einzuhängen (mounten) damit es von Programmen verwendet werden kann.

https://wiki.archlinux.de/title/Mounten

https://wiki.ubuntuusers.de/mount/

1 Like

Eure beiden Aussagen klären schon sehr viel für mich.
Verstehe ich es richtig:

  1. Bei Linux muss alles irgendwo im / oder einem Unterordner zu finden sein, damit das System oder die Programme darauf zugreifen können.
  2. Also muss das Laufwerk, oder das Dateisystem einer Partition in diese Verzeichnisstruktur (fiktiv, virtuelle?) eingebunden werden. (Die externe HDD z.B. die über USB am PC angeschlossen ist, bleibt zwar wo sie ist, aber, weil Linux nur auf / oder eines der Unterordner zugreifen kann oder möchte, muss ein Mountpoint in einem Unterordner von / gebildet werden, und dem System gesagt werden, dass jetzt die gemountete Partition dort zu finden ist.

Bitte korrigieren, wenn es nicht ganz stimmt.

1 Like

wie 2. - zumindest sehr nah dran

Du hast nicht, wie in Windows, ein Laufwerk, mit seiner internen Struktur
und noch eins
und noch eins

Du wechselst nicht zwischen diesen verschiedenen Strukturen um an den Inhalt zu kommen
es ist alles unter einem einzigen Punkt organisiert.

… unter C in Windows wirst Du nie an die Inhalte Deines USB Sticks gelangen - selbst wenn er “eingebunden” ist …

vielleicht hilft das ja :wink:

ist eine unterschiedliche Philosophie, ein anderes Design

1 Like

Meinst Du mit unter einem einzigen Punkt das / (root) Verzeichnis?
Auch den Hinweis mit C in Windows… verstehe ich nicht ganz (obwohl ich 30 Windows-Jahre hinter mir habe).
Ich sehe, wie wichtig es ist, diese völlig unterschiedliche Philosophie zu verstehen. Übrigens: Das Mounten hat mir den größten Linux-Frust bereitet, wegen meinem Nicht-Verstehen.

Ja, genau das meine ich.

Was ich allerdings nicht verstehe, auch nach mehrfachem lesen Deiner …Fragen ist, was Du genau damit für ein Verständnisproblem hast.
Das entzieht sich irgendwie meinem Verständnis. :wink:

Das kann so gesagt werden. Wobei es immer ein Unterordner vom Root-Verzeichnis (/) sein muss. Das Root-Verzeichnis, manchmal im Deutschen auch Wurzelverzeichnis, hat nichts mit dem Root User zu tun, heißt einfach auch so.

Es gibt das FHS
http://www.bitloeffel.de/DOC/fhs/fhs_de_files/fhs23_de10/online/book1.html

https://refspecs.linuxfoundation.org/fhs.shtml

Ich glaube für Version 3 gibt es keine deutsch Übersetzung. Also nicht alles auf die Goldwaage legen.

Naja, unter Linux ist alles eine Datei, wie das so schön heißt. Auch die externe HDD und deren Partitionen sind erst mal nur Dateien unter /dev/ . Mit so einer Geräte Datei ist aber nicht so viel anzufangen. Das in der Partitionsdatei enthaltene Dateisystem, muss irgendwo in dem Verzeichnisbaum eingehängt werden, damit darauf zugegriffen werden kann. Das kann fast überall sein und muss ein Ordner sein. Wobei wenn Dateien in dem Ordner sind, wären die erst mal nicht mehr zugänglich. Eine Partitionsdatei kann auch mehrmals in verschiedenen Orten eingehängt werden (nicht zu empfehlen aber grundsätzlich möglich.).

2 Likes

Ich danke Euch beiden, habe vorläufig erschöpfend viel gehört und überraschend viel verstanden.
Ich bleibe dran, muss die Infos noch vertiefen.
Danke Euch.

Nach 30 Jahren Windows, wo das nie ein Thema war, ist das doch verständlich, dass ich mich sehr wundere, oder ärgere, dass eine HDD, die mir gehört, und ich der einzige User auf dem System bin, die Platte nach dem Anschließen nicht automatisch benutzbar ist.
Es war früher so schön einfach: Anstöpseln und schon vergibt Windows einen Laufwerksbuchstaben und ich konnte mit der Platte machen, was ich wollte. Nicht so mit Linux. Selbst die fest eingebaute HDD mit all meinen Daten muss ich erst mounten, jedes Mal, wenn ich neu boote.
Ich habe das Problem gelöst mit der prima Software: “Laufwerke”. Jetzt ist meine HDD dauerhaft und sicher gemountet an den Mount-Point: direkt im Wurzelverzeichnis /MEDIEN. Klappt gut, aber als es noch eine NTFS war, war es noch komplizierter, da musste ich auch noch: „Dateisystemtyp“ (die Voreinstellung auto ersetzen durch: ntfs-3g). Habe aber längst auf ext4 gewechselt. Und wenn ich es genau so mache, wie ich mir aufgeschrieben habe, dann kann ich jederzeit Linux neu installieren und es klappt wieder. Aber es ist ein sehr steiniger Weg gewesen.
Das schreibe ich Dir nur, damit Du ein klein wenig nachvollziehen kannst, wie man sich da so schwer tun kann. Und ich erinnere mich auch noch an meine Datensicherungen, die ich mache. Wie oft ging was nicht, weil die HDD nicht richtig oder nicht an der gleiche Stelle gemountet wurde. Ein Horror, aber der Frust ist längst verblasst. Bin ein eiserner Linux-Begeisterter geworden, auch wenn ich oft lange brauche, zu verstehen: Ich lerne langsam.

Als kleine Anmerkung, du bist nicht der einzige User auf dem System. Du bist vielleicht der einzige menschliche Benutzer, aber auf einem Linux System gibt es immer ganz viele andere Benutzer. Und jeder hat ein paar Befugnisse. Wobei der Root User natürlich alle Befugnisse hat.

Anders als bei Windows ist der menschliche Benutzer nicht so der Mittelpunkt. Das ist vielleicht etwas komisch, aber ein Linux ist nicht umsonst ein Mehrbenutzer System und darauf ausgelegt das es viele Benutzer gibt.

… ist sie ja normalerweise - nur eben nicht automatisch lesend und schreibend
(das sind dann die von Dir wahrgenommenen Rechte Probleme)

Mußt Du in Windows auch - bzw.
man kann das automatisieren in Linux.

Funktioniert nur nicht so … automatisch wie in Windows.

Windows hat seine Wurzeln in DOS - oder noch vorher.
Linux hat seine Wurzeln in Unix.

Zwei sehr unterschiedliche System Designs.

Eins was auf Einzelbenutzer ausgelegt war - und dann versucht hat, dieses Konzept an die Multi user Realität anzupassen.
Und eins was von Anfang an niemals ein Einzelbenutzer System war.

Du benutzt Linux zwar auf Deinem Rechner als alleiniger Nutzer.

Aber es ist - und war es immer und von Anfang an - ein System für viele (mehr als einen …) Benutzer.

Komplett unterschiedliche Designs - die natürlich Unterschiede darin haben, wie sie benutzt werden können.

Verstehe ich es richtig?

Damit Linux auf ein Filesystem (z.B. das eines externen Datenträgers) zugreifen kann, muss es in das Dateisystem von Linux, also irgendwo im Wurzelverzeichnis (/) eingehängt (oder eingebunden) werden. Das nennt man Mounten. Die Stelle, wo das einzubindende Filesystem gemountet ist, heißt Mountpoint. Das ist (nach Möglichkeit) ein leerer Ordner (=Verzeichnis) irgendwo im Wurzelverzeichnis (/) oder in einem seiner Unterordner.

Die “Stelle” ist ein beliebiges Verzeichnis.
Der Satz wird einfacher wenn man ihn so schreibt:

Das Verzeichnis, über welches das (externe/einzubindende) Dateisystem zugänglich gemacht wird, nennt man Einhängepunkt.

Man kann das tatsächlich auch auf deutsch sagen - es ist der Einhängepunkt (oft auch Mountpoint genannt).
… einhängen/einbinden statt “mounten”
weil “mounten” kein deutsches Wort ist und zumindest bei Dir scheinbar für ziemliche Verwirrung gesorgt hat.

Aber ich glaube Du hast es jetzt. :grinning:

Wo ich das hier lese, kommt mir irgendwie Obstbaumveredelung in den Sinn…

2 Likes

Frage:
Ist das Wurzelverzeichnis (/) und deren Unterverzeichnisse, incl. das /home auch eingehängt? Oder nennt man das nicht so, weil Linux ja genau mit diesem (/) arbeitet, also sowieso Zugriff hat?
Werden die Zugriffsrechte für den user (immer) nur über den Mountpoint bestimmt, also das, vormals leere Verzeichnis des Mountpoints?

Das Wurzelverzeichnis ist - sozusagen per Definition - das von dem aus alle anderen erreicht werden.
Es ist die Basis - nirgends “eingehängt”. … irgendwo muß man ja anfangen …

Darunter sind verschiedene Standardverzeichnisse angelegt:

tree -L 1 /
/
├── bin -> usr/bin
├── boot
├── dev
├── etc
├── home
├── lib -> usr/lib
├── lib64 -> usr/lib
├── lost+found
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin -> usr/bin
├── srv
├── swapfile
├── sys
├── tmp
├── usr
└── var

Jedes dieser Verzeichnisse kann als Einhängepunkt für (z.B.) eine andere Festplatte dienen.
Du kannst z.B. Dein $HOME Verzeichnis auf einer extra Platte oder Partition haben
indem Du die Platte dort … einhängst.

Man kann auch eigene Verzeichnisse anlegen - und diese dann als Einhängepunkt nutzen.

Das weiß ich momentan nicht aus dem Hut.


ps:
@fumum_vendidi hat von der Obstbaumveredelung gesprochen - das fand ich eine gute Analogie :+1:
außer das man das ganze nicht so ohne weiteres einfach wieder auseinandernehmen und anders zusammenstecken kann, wie man das hier an Computer tun kann

1 Like

Es wird ein Wurzelverzeichnis benötigt und beim starten wird dem Kernel-Image die Partition mitgegeben die dann als Wurzelverzeichnis verwendet wird. Ich finde schon, dass das als einhängen bezeichnet werden könnte. Das hängt aber quasi im Nichts, oder steht auf dem Boden und daraus wächst der Verzeichnisbaum.
Wenn /home bei dir auf einer anderen Partition ist dann schon, sonst ist es einfach ein Ordner.

Nein. Der ganze Bereich des Mounten hat auch nichts mit Zugriffsrechten zu tun. Das ist davon unabhängig. Mounten kann erst mal nur der Root User (es gibt ein paar Ausnahmen).

Nein hat damit nichts zu tun. Die Rechte kommen bei nativen Linux Dateisystemen vom Dateisystem selbst.

1 Like

Mal ein kleines Beispiel

>$ fallocate -l 1G test.img
>$ mkfs -t ext4 test.img
mke2fs 1.46.5 (30-Dec-2021)
...

>$ mkdir mountpunkt  
>$ ls
total 33M
drwxr-xr-x 2 xabbu xabbu 4,0K 06.01.2023 17:22 mountpunkt
-rw-r--r-- 1 xabbu xabbu 1,0G 06.01.2023 17:22 test.img
>$ chmod 600 mountpunkt
>$ ls
total 33M
drwx------ 2 xabbu xabbu 4,0K 06.01.2023 17:22 mountpunkt
-rw-r--r-- 1 xabbu xabbu 1,0G 06.01.2023 17:22 test.img
>$ sudo mount -o loop test.img ./mountpunkt
>$ ls
total 33M
drwxr-xr-x 3 root  root  4,0K 06.01.2023 17:22 mountpunkt
-rw-r--r-- 1 xabbu xabbu 1,0G 06.01.2023 17:23 test.img
>$ 

Die Rechte des Ordners der als Mountpunkt verwendet wurde hat überhaupt keine Bedeutung.

Hallo xabbu,
wunderbar, wieder was geklärt und ein Vorurteil beseitigt: Die Rechte werden woanders vergeben, nicht über das Verzeichnis des Mountpoints. Gut, wieder ein wichtiger Baustein.

Deine “keines Beispiel” das Du wohl für mich erstellt hast, finde ich beeindruckende. Doch wenn ich mir das anschaue, sehe ich nur die Ästhetik der Anordnung der Zeichen, Zahlen und Buchstaben. Wenn’s Chinesisch wäre, würde ich nicht weniger verstehen.
Hoffentlich entmutigt Dich mein Unwissen nicht allzu sehr.
Aber Euer beider Infos hat mir schon sehr viel gegeben. Ich wage schon zu behaupten, ich wüsste jetzt, zumindest viel mehr als noch vor 24 h. Meine Frage ist und war: Mehr vom Mounten zu verstehen. Auch habe ich mir die Links, vor allem den von Arch angesehen, und taste mich da langsam voran. Wissen und Verständnis wachsen, wenn auch langsam.

Vielleicht wundert Ihr Euch auch, dass man mit so wenig Wissen und können, Linux überhaupt benutzen darf. Aber beachtet doch bitte, dass ich schon seit stolzen 26 Monaten und 6 Tagen windowsfrei bin! All meine Arbeit am Rechner mache ich mit Manjaro Linux. Und das ist ziemlich viel, was ich mache. Es klappt mittlerweile sogar sehr gut.