Zwei Dateisysteme im gleichen Ordner gemountet. Wie gezielt unmounten?


  • Mod

    Hallo,

    ich habe bei meinem Rechner (typisches Linuxsystem, genauer Xubuntu 14.04) beim Herumspielen leider etwas verstellt. Zwar nur kosmetisch, aber ich würde es dennoch gerne korrigieren:

    Zustand vorher:
    -NFS-Dateisystem auf dem mein Homeverzeichnis war
    -Leerer lokaler Raid

    Was ich machen wollte:
    -Lokaler Raid als neues Homeverzeichnis, NFS als Backup behalten

    Was ich tat:
    -Alle Daten aus dem alten Home auf den Raid kopiert
    -In /etc/fstab den Raid als /home eingetragen und das NFS als /backup

    • sudo mount -a
      Der aufmerksam mitdenkende Leser wird merken, dass der letzte Schritt etwas voreilig war. Da das NFS noch als /home gemountet war, sind in /home nun zwei Dateisysteme gemountet:
    $> mount
    ...
    server.de:/home on /home type nfs (rw,nfsvers=3,addr=XXX.XXX.XXX.XXX)
    /dev/md0 on /home type btrfs (rw)
    server.de:/home on /backup type nfs (rw,nfsvers=3,addr=XXX.XXX.XXX.XXX)
    ...
    

    Da der Raid (/dev/md0) zuletzt gemountet wurde, ist eigentlich alles so wie gewollt. Ich will bloß aus Schönheitsgründen den "server.de:/home on /home type nfs" loswerden (außerdem werden manche Tools, wie df, durch den Doppelmount total verwirrt).
    Da auf dem Rechner mittlerweile einige Prozesse angeworfen wurden, die ich nicht unterbrechen möchte ich dabei folgendes nicht tun:
    -Neu starten
    -Den Raid unmounten

    Mein Problem: Wie gebe ich bei bei umount gezielt an, dass ich das NFS aus /home unmounten möchte? Wenn ich " umount /home " machen würde, würde ich ja zuerst den Raid unmounten. Ich habe schon versucht " umount server.de:/home ", um alle Instanzen des NFS zu unmounten (Wenn dabei das Backup unmounted wird, ist es egal), aber dabei kommt die Fehlermeldung "umount.nfs /home is not an NFS filesystem".

    P.S.: was ist eigentlich der gängige deutsche Artikel für "Raid"? Das Hauptwort in der Abkürzung ist zwar "das Array", aber das interessiert bei Abkürzungen schließlich selten. Es klingt irgendwie nach "der Raid", aber ich bin nicht ganz überzeugt.



  • Kann nur zu deinem BTW was sagen: ich sag "das RAID". Und zwar unabhängig von "das Array".
    "Der RAID" klingt für mich nämlich komisch 😉



  • Spontane, ungetestete Idee: Wenn das mit umount so geht, wie du sagst, dann könntest du doch versuchen dein nfs mit mount -o remount... zu remounten (dann ist es hoffentlich wieder das letzte gemountete device) und dann umount auf /home durchführen.



  • Müsste nicht umount /home funktionieren? Es ist doch auf /home gemounted, für /backup zu unmounten nimmst du umount /backup. Oder habe ich was falsch verstanden? Eventuell verstehe ich das Problem nicht.



  • Löscht den Quatsch von mir bitte, habe gepennt, tut mir leid!!!



  • Es ist nicht möglich Devices sondern nur Mountpoints zu unmounten. Hier zählt das LIFO-Prinzip. Ob der Tip von Zebald mit dem remount funktioniert weiß ich nicht, da es nicht gesagt ist das bei einem remount die Reihenfolge geändert wird. Probier es doch mit einem anderen Verzeichnis aus, wenn möglich, und berichte deine Ergebnisse wenn du möchtest. Ich sitze vor einer Windowskiste und kann es leider nicht testen.


  • Mod

    Ich kann im Moment auch nicht an den fraglichen Rechner, aber morgen experimentiere ich ein wenig. Bei dem Tipp von Zebald wage ich mal die Voraussage, dass dann das NFS einfach 2x auf /home gemounted sein wird (mit dem Raid 1x dazwischen) und das dann ein unmount nur die oberste Instanz entfernt. Wie du schon selber sagtest, LIFO=Prinzip. Werde es aber trotzdem mal probieren, vielleicht ist es ja doch anders als ich vermute (Ich bin, wie man an der Frage merkt, nicht so der Experte fuer verzwickte Mountprobleme).



  • http://linux.die.net/man/ schrieb:

    The move operation.
    Since Linux 2.5.1 it is possible to atomically move a mounted tree to another place. The call is

    mount --move olddir newdir

    or shortoption

    mount -M olddir newdir

    This will cause the contents which previously appeared under olddir to be accessed under newdir. The physical location of the files is not changed.

    http://linux.die.net/man/8/mount
    Das könnte eine Lösung sein. Rückmeldung wäre nett, hoffe es hilft.


  • Mod

    esistspaetnun schrieb:

    http://linux.die.net/man/ schrieb:

    The move operation.
    Since Linux 2.5.1 it is possible to atomically move a mounted tree to another place. The call is

    mount --move olddir newdir

    or shortoption

    mount -M olddir newdir

    This will cause the contents which previously appeared under olddir to be accessed under newdir. The physical location of the files is not changed.

    http://linux.die.net/man/8/mount
    Das könnte eine Lösung sein. Rückmeldung wäre nett, hoffe es hilft.

    Leider nein, das verdoppelt die Einträge, unter denen das FS gemounted ist*. Ich werd's wohl einfach aussitzen und warten, bis die Prozesse fertig sind, dann alles sauber neu mounten.

    *: Das passiert übrigens auch, wenn es das einzige FS ist, welches an dem alten Mountpoint hängt. Es liegt also nicht da dran, dass der alte Mountpoint hier nicht aufgelöst werden konnte. Die Option sollte schlicht lieber "copy" heißen.



  • Scheint wohl nur eine Art Link zu sein, dann weiß ich leider auch nicht weiter.
    Wenn mir mal echt langweilig ist suche ich auf der LKML, es muss doch was auf Kernelebene geben um so ein triviales Problem zu lösen.


  • Mod

    Nun, die Jobs werden in ein paar Stunden fertig sein, daher werde ich dann die einfache Methode wählen. Von daher ist das Problem nur noch eine rein akademische Herausforderung, ob und wie dies möglich ist. Häng dich also nicht zu tief rein, es sei denn, du willst es wirklich wissen.



  • Ohne sich verrückt machen zu wollen, kann man wenn noch möglich, das hier versuchen.

    umount /home /home
    

    Normalerweise kann der Syscall nicht mit Devices umgehen außer wenn es eindeutig zu ermitteln ist das dieses Device einem eindeutigen Mountpoint zugewiesen ist.
    Ggf. kann man noch mit -t das Filesystem angeben, sollte hier aber nicht notwendig sein. Aber nur machen wenn danach sowieso neu gebootet werden soll. So unmounte ich normalerweise nicht, also keine Gewähr. Wenn der doch das RAID aushängt dann geht es so auch nicht ⚠


Anmelden zum Antworten