Anpassung mini-Skript zum Mounten

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
TomL
Beiträge: 3087
Registriert: 24.07.2014 10:56:59

Re: Anpassung mini-Skript zum Mounten

Beitrag von TomL » 16.07.2017 10:37:52

Passwort hat geschrieben: ↑ zum Beitrag ↑
16.07.2017 01:45:02
Ja, das denke ich inzwischen auch.
Ja, vor dem Hintergrund, dass das NAS überwiegend ausgeschaltet ist, würde ich das auch so machen... einfach manuell starten.

Ich habe Dir einen Link zugemailt, ein Tarfile, in dem ich Dein "mountnas" ein wenig überarbeitet habe. Mit "test auf Start" funktioniert das so nicht.... und da jetzt im einzelnen Fehlersuche zu betreiben, ist zu mühsam. Schau Dir das Script an, ich denke, man kann das verstehen.

Gestartet und gestoppt wird es mit

Code: Alles auswählen

mountnas start
oder 
mountnas stop
Aber wahrscheinlich wird mountnas stop nicht funktionieren... weil ich bei meinen Remote-Dirs in Zeile 78 auf // prüfe. Da müsste man einfach mal schauen, wie man Deine Laufwerke identifiziert, über

Code: Alles auswählen

cat /proc/mounts
Und ganz wichtig... das Script sollte keinesfalls in /usr/bin liegen, der richtige Speicherort ist /usr/local/bin. Und da es mit root-Rechten ausgeführt wird, sollten die Rechte unbedingt mit "root:root" und 755 gesetzt sein.

Drei kurze Hinweise:
1. Das Script macht keine Ausgaben im Terminal. Starte einfach in einem zweiten Terminal-Fenster als root den folgenden Befehl. Dazu würde ich einfach den Monitor teilen, obere Hälfte in ganzer Breite das Journal, untere Hälfte in ganzer Breite der Command-Prompt, wo Du das Script startest.

Code: Alles auswählen

journalctl -f
2. Die Remote-Laufwerke sind in der gleichen Syntax einzutragen, wie sie ihn der fstab stehen müssten. Also KEIN Mountbefehl, sondern
genau so, wie die fstab das verlangt. Nur in Deinem Fall müsste eben in der fstab statt "rw" dort "rw, noauto" stehen. Hier im Script braucht das aber nicht.

3. Das Script führt die Mounts nicht durch, sondern macht nur einen Echo... bei mir gibts ja dieses NAS nicht. Du kannst es also einfach als Test mit "mountnas start" starten. Zum tatsächlichen Mounten muss die Zeile 61 aktiviert und die Zeile 62 gelöscht werden.
Passwort hat geschrieben: ↑ zum Beitrag ↑
16.07.2017 01:45:02
Was bewirkt das -c in "su -c"?
-c bewirkt, dass der Teil hinter -c als Kommando ausgeführt wird.

Aber auch dafür gibt es eine bessere Lösung, die man ggf. angehen kann, wenn das Script (zunächst) im Root-Terminal fehlerfrei seinen Job tut.
vg, Thomas

Passwort
Beiträge: 11
Registriert: 14.07.2017 01:26:10

Re: Anpassung mini-Skript zum Mounten

Beitrag von Passwort » 16.07.2017 22:20:23

In einem anderen Forum sind wir eigentlich nur zufällig auf dieses Thema gekommen.
Automount funktioniert, wenn die ganzen systemd Attribute entfernt werden. Also nur "noauto", zusätzlich noch "user", damit auch ein nicht-root die Shares mounten und unmounten kann.
Getestet, funktioniert. Lediglich hat nemo ein "Problem mit dem Vorschaubildpuffer" festgestellt und gelegentlich hat sich nemo beim Anklicken der Shares nach dem mounten selbstständig beendet. Nachdem dieses "Problem" automatisch behoben wurde, hat sich nemo nicht mehr beendet.

scientific
Beiträge: 2699
Registriert: 03.11.2009 13:45:23
Lizenz eigener Beiträge: Artistic Lizenz
Kontaktdaten:

Re: Anpassung mini-Skript zum Mounten

Beitrag von scientific » 18.07.2017 12:30:39

Passwort hat geschrieben: ↑ zum Beitrag ↑
15.07.2017 17:08:49
TomL hat geschrieben: ↑ zum Beitrag ↑
15.07.2017 14:59:57
Ändere mal als Versuch den Eintrag "noauto" zu "noauto,nofail".
Ändert nichts. Ausser dass nach dem Speichern der fstab die Netzwerkshares nun dreinmal im root-Nemo angezeigt werden (statt 2x). Nach Reboot mit NAS aus ist das gleiche Verhalten wie ohne nofail.
[...]
Bei dem Eintrag in der fstab sollte mit "noauto" nicht beim booten gemountet werden und nach 1min timeout wieder unmounted werden.
Tatsächlich verhälts sich aber wie ein statischer Eintrag.
Hast du auch schon die Option "_netdev" zusätzlich verwendet?

lg scientific
dann putze ich hier mal nur...

Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie

auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main

Antworten