Seite 1 von 1
umount wenn Dateimanager beendet wird
Verfasst: Freitag 18. Februar 2022, 17:08
von LaGGGer
Hallo
Hatte vor kurzem ein ähnliches Problem, das wurde gelöst. Jetzt habe ich ein anderes Problem mit umount.
Es geht um dieses skript hier:
Code: Alles auswählen
#!/bin/bash
mount nas.local:/xxx # Freigabe mounten
sleep 0,5s # kurze Pause
nemo ~/xxx/text # Dateimanager in der Freigabe starten = springt sofort zur letzten Zeile
sleep 0,5s # kurze Pause
umount ~/nas.local:/xxx # Wird ausgeführt, Nemo findet die Freigabe nicht mehr .. logisch.
Also das skript funktioniert soweit, es soll aber den letzten Befehl erst ausführen wenn der Dateimanager, hier nemo, sich schließt.
Das bekomme ich nicht hin. Geht das überhaupt ? Wie fragt man ab das nemo beendet wurde ?
Re: umount wenn Dateimanager beendet wird
Verfasst: Freitag 18. Februar 2022, 18:56
von gosia
Hallo LaGGGer,
quick & dirty und nur mit PCmanFM kurz getestet, habe kein nemo:
Code: Alles auswählen
mount nas.local:/xxx
sleep 0,5s
nemo ~/xxx/text
while pgrep -fl nemo > /dev/null; do sleep 1; done
umount ~/nas.local:/xxx
rotiert so lange in der while-Schleife, bis kein Prozess nemo mehr gefunden wird = "nemo geschlossen"
Die Umleitung nach /dev/null ist nur, weil sonst ständig die Prozessnr. von nemo gepostet wird.
viele Grüsse gosia
Re: umount wenn Dateimanager beendet wird
Verfasst: Freitag 18. Februar 2022, 19:23
von LaGGGer
Danke dir @gosia
Geht soweit, aber solange ich noch ein zweites Nemo Fenster offen habe läuft das skript nicht ab.
Da ich ja auf xfce den nemo installiert habe, dachte ich mir mach das mit thunar, der liegt ja sozusagen brach, wird also so gut wie nicht benutzt.
Aber seltsamerweise funktioniert das ganze mit thunar nicht... warum auch immer. Der mount geht nicht weg, solange noch ein nemo Fenster offen ist. Wenn ich es schließe kommt das umount.
Seltsam.. wenn ich die beiden nemo Einträge mit thunar im script ersetze sollte das doch funktionieren ...
Code: Alles auswählen
#!/bin/bash
mount omvnas.local:/Safe
sleep 0,5s
thunar ~/mount/Safe/Texte
while pgrep -fl thunar > /dev/null; do sleep 1; done
umount ~/mount/Safe
Hab jetz mal PCmanFM installiert. Mit dem habe ich keine Probleme, den Intressiert kein thunar oder nemo Fenster.
Wenn dir nix mehr einfällt lass ich das so, mit deinem PCmanFM

Re: umount wenn Dateimanager beendet wird
Verfasst: Freitag 18. Februar 2022, 20:21
von Benutzer 1579 gelöscht
Hi,
gibt es ein Grund für sofort umount? würde nicht ein fstab auto umount reichen?
https://wiki.archlinux.org/title/Fstab# ... ic_unmount
ansonsten diesen Post nicht beachten.

Re: umount wenn Dateimanager beendet wird
Verfasst: Freitag 18. Februar 2022, 20:41
von gosia
Hallo LaGGGer,
Ich habe nur Thunar und PCManFM. Thunar funktioniert bei mir, Thunar + PCManFM funktioniert auch. Wüsste also nicht, warum es mit Thunar nicht gehen sollte. Zweimal der gleiche Dateimanager (egal welcher) kann so nicht funktionieren, weil die while-Schleife solange läuft, bis alle beiden gleichen Dateimanager geschlossen werden.
Abhilfe würde wohl bringen, die Prozess-ID des "richtigen" Dateimanagers beim Start abzufragen und zu speichern und in der Schleife testen, ob diese Prozess-ID noch existiert, wenn nicht ist der Prozess beendet und es kann umount durchgeführt werden. So ein möglicher Ansatz.
Aber vielleicht sollte man das ganz anders anpacken, aber da ist mir nicht ganz klar, was das überhaupt werden soll. Editierst Du die Datei? Und warum muss sie unbedingt sofort ausgehangen werden (wie country auch fragt)?
viele Grüsse gosia
Re: umount wenn Dateimanager beendet wird
Verfasst: Samstag 19. Februar 2022, 11:44
von LaGGGer
country hat geschrieben: ↑Freitag 18. Februar 2022, 20:21
gibt es ein Grund für sofort umount? würde nicht ein fstab auto umount reichen?
Nein, das muss nicht sein, hab da ein wenig rumgespielt. Ich kann das alles natürlich auch ohne scripts machen.
Ich habe so ein ähnliches script gebastelt das auf die selbe Freigabe zugreift und das funktioniert ohne Probleme. Da gehts um ein gepacktes, verschlüsseltes Archiv:
Da ich in meinem letzten Post schon aus versehen das Original gepostet habe, lass ich das jetzt mal so

:
Code: Alles auswählen
#!/bin/bash
mount omvnas.local:/Safe
sleep 1s
engrampa /home/ws/mount/Safe/xxx.7z
sleep 1s
umount ~/mount/Safe
Und das funktioniert einwandfrei, hab mich halt gewundert beim anderen skript das es da nicht funktioniert wenn ich nemo schließe.
Hier funktioniert es ja auch wenn ich engrampa zu mache. Die Freigabe wird ausgehängt.
@country
Hab mir das durchgelesen was in deinem verlinkten Beitrag steht. Dasselbe könnte ich auch erreichen wenn ich den letzen sleep Befehl auf 1min setze.
Aber ich werde es auf jeden fall mal testen, hatte aber in der vergangenheit Probleme mit mounts über x-systemd.
Hatte dann zwei Freigaben auf dem Monitor. Aber ich werde es testen.
Und wenn wir schon dabei sind, man kann die mounts auch über systemd Units machen und nicht über die fstab.
Aber wie gesagt, damit hatte ich in der Vergangenheit Probleme das zwei Freigaben angezeigt wurden.