ah32
Anmeldungsdatum: 3. September 2011
Beiträge: 311
|
Hallo, wenn noch Verzeichnis per samba gemounted sind verzögert dies den gesamten Shutdown. Aber anscheinend nur, wenn ich im WLAN verbunden bin. CIFS VFS: Server 192.168.178.xx has not respondet in 120 seconds. Reconnecting ...
Timed out stopping /dev/disk/by-id/...
Timed out stopping /dev/disk/by-id/...
Timed out stopping /dev/disk/dm-0
... Anscheinend wird die WLAN Verbindung zu früh gekappt? Die Anleitung mit der /etc/init/smb-umount.conf, hat bei mir nicht funktioniert.
https://wiki.ubuntuusers.de/Samba_Client_cifs/#Problembehebung Hat noch jemand eine Idee? Danke
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
Dies ist leider ein altes, wohlbekanntes Problem, das immer wieder, aber eben nicht bei allen Systemen auftritt. Kommt nebenbei auch bei NFS vor. Deine Erklärung ist wohl völlig richtig. Verschiedene Auswege wurden gefunden, die manchmal funktionieren:
Wähle den Mountpunkt in einem anderen Verzeichnis, z.B. media anstatt von mnt Mounte die Freigaben mittels Eintrag in fstab nicht sofort, sondern verwende den systemd-Automounter Hänge die Freigaben durch ein Dispatcher-Skript beim Shutdown automatisch frühzeitig aus Verwende zum Herstellen der Netzwerk-Verbindung nicht den NetworkManager, sondern einen Eintrag in interfaces Verwende zum Einbinden der Freigaben statt des cifs-vfs das GVFS, evtl. mittels Gigolo
Gruß – Max-Ulrich
|
ah32
(Themenstarter)
Anmeldungsdatum: 3. September 2011
Beiträge: 311
|
Danke.
Zu dem Dispatcher, dieser müsste dann so aussehen? #!/bin/bash
## INITIALISIERUNG
#Diese Werte werden vom NetworkManager an das Skript übergeben
INTERFACE=$1
ACTION=$2
## ESSID des Netzwerkes
ESSID_MY="MY-WLAN-ID"
## ESSID des verbundenen Netzwerks bestimmen
ESSID=$(iwconfig $INTERFACE | grep ESSID | cut -d":" -f2 | \
sed 's/^[^"]*"\|"[^"]*$//g')
case "$2" in
up)
;;
down)
if [ "$ESSID" = "$ESSID_MY" ]; then
umount /media/mount1
umount /media/mount2
fi
;;
pre-up)
;;
post-down)
;;
*)
echo $"Usage: $0 {up|down|pre-up|post-down}"
exit 1
esac Kann ich die Datei auch irgendwo in einem lokalen config file im home Verzeichnis ablegen?
|
ah32
(Themenstarter)
Anmeldungsdatum: 3. September 2011
Beiträge: 311
|
1. Meine mount Verzeichnisse liegen bereits in media. 2.
/etc/NetworkManager/dispatcher.d/pre-down.d
-rwxr-xr-x 1 root root 769 Mai 17 09:52 02umount
#!/bin/bash
## INITIALISIERUNG
#Diese Werte werden vom NetworkManager an das Skript übergeben
INTERFACE=$1
ACTION=$2
## ESSID des Netzwerkes
ESSID_MY="WLAN-***"
## ESSID des verbundenen Netzwerks bestimmen
ESSID=$(iwconfig $INTERFACE | grep ESSID | cut -d":" -f2 | \
sed 's/^[^"]*"\|"[^"]*$//g')
if [ "$ESSID" == "$ESSID_MY" ] && [ "$INTERFACE" == "wlo1" ]; then
if mount | grep -q "on /media/mount1 type"; then
umount /media/mount1
fi
if mount | grep -q "on /media/mount2 type"; then
umount /media/mount2
fi
fi @Max-Ulrich_Farber schrieb:
Funktioniert nur beim Verbindung trennen im Network Manager, aber nicht beim Herunterfahren. Lässt sich das noch beheben?
Wenn es funktioniert, wäre es die beste Möglichkeit dem Problem aus dem Weg zu gehen. 3. Die Freigaben werden auch jetzt nur manuell gemountet. 4. vom Network Manager möchte ich eig. nicht weg.
5. dann sind diese nicht auf ein Verzeichnis gemounted? - ich brauche leider ein "echtes" Verzeichnis EDIT: Mein nächster Versucht mit Systemd hat auch nicht funktioniert. $ ls -l networkdown.service
-rw-r----- 1 root root 173 Mai 17 20:07 networkdown.service
/etc/systemd/system$ sudo cat networkdown.service
[Unit]
Wants=network-online.target
After=network.target network-online.target
[Service]
Type=oneshot
ExecStart=/bin/true
ExecStop=/etc/umount_skript.sh
RemainAfterExit=yes
$ ls -l /etc/umount_skript.sh
-rwxr-xr-x 1 root root 704 Mai 17 20:20 /etc/umount_skript.sh
$ cat /etc/umount_skript.sh
#!/bin/sh
if mount | grep -q "on /media/mount1 type"; then
/bin/umount /media/mount1
fi
if mount | grep -q "on /media/mount2 type"; then
/bin/umount /media/mount2
fi
Eigentlich sollte es funktionieren nach dem Post hier:
https://askubuntu.com/questions/681109/networkmanager-dispatcher-d-pre-down-d-is-not-executed-on-shutdown-anymore Nur ich verwende ein Skript, da mehrere Shares umounted werden müssen. 🙄 ?? Danke schonmal im Vorraus!
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
if mount | grep -q "on /media/mount2 type"; then
/bin/umount /media/mount2
Mit der Option -q (= quiet) funktioniert es bei mir auch nicht. Wozu soll diese hier dienen? 5. dann sind diese nicht auf ein Verzeichnis gemounted? - ich brauche leider ein "echtes" Verzeichnis
Das geht mit gvfs-mount auch, allerdings ein bisschen umständlich. Hierfür gibt es den "alternativen Zugriff" über /run/user/BENUTZER-UID/gvfs. Wenn der Verzeichnis-Name zu kompliziert ist, hilft ein einfacher Symlink weiter. Gruß – Max-Ulrich
|
ah32
(Themenstarter)
Anmeldungsdatum: 3. September 2011
Beiträge: 311
|
Max-Ulrich_Farber schrieb: Mit der Option -q (= quiet) funktioniert es bei mir auch nicht. Wozu soll diese hier dienen?
Funktioniert natürlich auch ohne if, dachte das ist etwas sauberer.
Die If Bedingung benötigt hier keine Ausgabe auf std out deswegen quiet, sondern nur den exit Status von grep um zu erkennen ob etwas gefunden wurde. Das Skript an sich hat bei mir so funktioniert, nur eben nicht beim Herunterfahren mit der Systemd-Datei. Bis auf den Skriptaufruf ist die Systemd-Datei gleich, mit der Version auf askubuntu:
/etc/systemd/system/networkdown.service
[Unit]
Wants=network-online.target
After=network.target network-online.target
[Service]
Type=oneshot
ExecStart=/bin/true
ExecStop=/etc/umount_skript.sh
RemainAfterExit=yes Max-Ulrich_Farber schrieb: Das geht mit gvfs-mount auch, allerdings ein bisschen umständlich. Hierfür gibt es den "alternativen Zugriff" über /run/user/BENUTZER-UID/gvfs.
Danke, das kannte ich noch nicht.
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
…nur eben nicht beim Herunterfahren mit der Systemd-Datei.
Ich dachte an sich nicht an eine Systemd-Datei, sondern an eine Automount- bzw. Umount-Option im fstab-Eintrag (noauto,x-systemd.automount,x-systemd.idle-timeout=20 ). Das ist einfacher.
|
ah32
(Themenstarter)
Anmeldungsdatum: 3. September 2011
Beiträge: 311
|
Max-Ulrich_Farber schrieb: Umount-Option im fstab-Eintrag (noauto,x-systemd.automount,x-systemd.idle-timeout=20 ).
Das Wäre natürlich auch gut mit einem 20 Sekunden delay. Bei mir sieht ein Eintrag z.B. so aus:
//192.168.***/fritz.nas/Generic-FlashDisk-01 /media/fritz cifs credentials=/home/ah32/.smbcredentials,file_mode=0660,dir_mode=0770,users,noexec,noauto,x-systemd.automount,x-systemd.idle-timeout=20,iocharset=utf8,gid=1000 0 0 Fehler:
mount.cifs kernel mount options: ip=192.168.***,unc=\\192.168.***\fritz.nas,noauto,x-systemd.automount,x-systemd.idle-timeout=60,defaults,uid=1000,gid=1000,user=ftpuser,prefixpath=Generic-FlashDisk-01,pass=********
mount error(22): Invalid argument
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs) Sobald ich users dazu nehme kommt die Fehlermeldung.
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
Anscheinend verträgt sich die Option x-systemd.automount nicht mit user . Das gab's jedenfalls schon 'mal. – Doch wozu brauchst Du denn die Option user überhaupt noch, wenn Du den Automount verwendest?
|
ah32
(Themenstarter)
Anmeldungsdatum: 3. September 2011
Beiträge: 311
|
Max-Ulrich_Farber Ich möchte das die Shares nicht automatisch gemounted werden und user darauf zugreifen können, auch sind die Ordner ja nicht immer verfügbar im Netzwerk (Notebook). Jetzt nach einen Reboot funktioniert es mit x-systemd ganz gut, jedoch hängt alles, falls das Netzwerk mal nicht erreichbar ist. D.h. die Dateimanager öffnen sich nicht, auch wenn aktuell nicht von systemd gemounted.
Anscheinend sorgen die Dateimanager jedes mal bei öffnen für ein mounten und wenn dann das Netzlaufwerk nicht erreichbar ist ... obwohl bei PCManFM beispielsweise das automatische Einhängen nicht aktiv ist.
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
Ich möchte das die Shares nicht automatisch gemounted werden und user darauf zugreifen können
Dafür brauchst Du die Mount-Optiom users nicht. jedoch hängt alles, falls das Netzwerk mal nicht erreichbar ist.
Hier hilft vermutlich die Mount-Option nofail weiter:
nofail
With nofail, this mount will be only wanted, not required, by
local-fs.target or remote-fs.target. This means that the boot will
continue even if this mount point is not mounted successfully.
Ich habe jedoch nicht ausprobiert, ob sich diese mit x-systemd.automount verträgt. D.h. die Dateimanager öffnen sich nicht, auch wenn aktuell nicht von systemd gemounted. Anscheinend sorgen die Dateimanager jedes mal bei öffnen für ein mounten und wenn dann das Netzlaufwerk nicht erreichbar ist ...
Ich verstehe leider nicht, wie Du das meinst.
|
ah32
(Themenstarter)
Anmeldungsdatum: 3. September 2011
Beiträge: 311
|
Max-Ulrich_Farber
ok, Danke. users ist jetzt auch nicht mehr mit drin. Ich meinte eben damit, auch wenn ich nicht explizit auf die Freigabe zugreife wird versucht das Laufwerk mit zu mounten. Beispielsweise wenn ich einen Dateimanager starte. Wenn dabei das Netzlaufwerk nicht erreichbar ist, startet der Dateimanager erst gar nicht. Ich bekomme nur ein graues Fenster und nach einiger Zeit eine Meldung mit reagiert nicht mehr. Die Option nofail hat daran leider nichts geändert.
|
Max-Ulrich_Farber
Anmeldungsdatum: 23. Januar 2007
Beiträge: 7990
|
Ich meinte eben damit, auch wenn ich nicht explizit auf die Freigabe zugreife wird versucht das Laufwerk mit zu mounten.
Eben das wundert mich. Was meinst Du denn mit "wenn ich nicht explizit auf die Freigabe zugreife" bzw. mit "wenn ich einen Dateimanager starte"? Einen Dateimanager für die betreffende Freigabe zu öffnen bedeutet schon "zugreifen". Wenn Du den Dateimanager für einen ganz anderen Ordner (z.B. Heimverzeichnis) öffnest, dann sollte es egal sein, ob das Netzwerk da ist. Etwas verwirrend ist, dass der Dateimanager für alle Freigaben, bei denen browseable = yes gesetzt ist (Default-Einstellung) alternativ immer auch die Möglichkeit anbietet, sie über das GVFS einzubinden. Das ist aber immer nur dann der Fall, wenn das Netzwerk da ist.
|
ah32
(Themenstarter)
Anmeldungsdatum: 3. September 2011
Beiträge: 311
|
Max-Ulrich_Farber schrieb: Eben das wundert mich. Was meinst Du denn mit "wenn ich nicht explizit auf die Freigabe zugreife" bzw. mit "wenn ich einen Dateimanager starte"?
Ja genau, es ist aber anscheinend egal welcher Dateimanager. Wenn ich den Dateimanager starte kommt das Home-Verzeichnis, also sollte eigentlich nicht auf die Freigabe zugegriffen werden. Vorher wurde beim öffnen auch nicht sofort gemountet, erst mit der x-systemd.automount Option.
PCManFM, Thunar oder Nautilus, ich hatte eben bei allen das gleiche Problem. Anscheinend wird zusätzlich beim Hochfahren oder Einloggen ebenfalls einmal gemountet. //192.168.***/fritz.nas/Generic-FlashDisk-01 /media/fritz cifs credentials=/home/ah32/.smbcredentials,noauto,nofail,x-systemd.automount,x-systemd.idle-timeout=20 Wird das "noauto" hier vielleicht ignoriert? EDIT:
Korrektur, nur bei Thunar und PCManFM wird beim Dateimanager starten gemounted. Nicht aber bei Nautilus oder Nemo, trotzdem startet der Dateimanager nicht mehr, wenn die Verbindung zum Netzwerk fehlt. Das ein einfacher Netzwerk Ordner solche Probleme machen kann ... ☹
|