(Gelöst) Raspi mit entferntem NAS verbinden

Begonnen von is2late, 11 November 2021, 11:59:38

Vorheriges Thema - Nächstes Thema

Wernieman

Dein Ausgabe stimmt so nicht ... Gebe mal die Blöcke ohne das "if"-Konstruckt ein
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

is2late

#46
Hallo Otto,

kann die erforderliche Reihenfolge so nicht erkennen.
Habe eingegeben
1.sudo mount -o username=Ingo,password=xxx//192.168.178.145/Backups /media/backups
In fstab:
2. //192.168.178.145/Backups /media/backups cifs  username=Ingo,password=xxx,noauto,users,rw 0 0
3. In crontab:
00 19 * * 6 python /home/pi/pibackup.py      (aktuelle Zeit plus fünf Minuten)
4. ls -lha /media/backups             
mount |grep media
   ->Ergebnis s.u.
5. Test: systemctl zeigt (Ausschnitt)
-.mount                                                             loaded active mounted   /
  media-backups.mount                                                 loaded active mounted   /media/backups


Ergebnis:
ls -lha /media/backups zeigt KEINE aktuelle Sicherung, nur die per Hand ausgelösten, zB
rwxr-xr-x 1 root root  29G Nov 12 16:22 raspiR4_image.img

Auf mount |grep media   kommt
//192.168.178.145/Backups on /media/backups type cifs (rw,relatime,vers=3.1.1,cache=strict,username=Ingo,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.178.145,file_mode=0755,dir_mode=0755,soft,nounix,serverino,mapposix,rsize=4194304,wsize=4194304,bsize=1048576,echo_interval=60,actimeo=1)

Mir fällt auf, dass das PW nicht erwähnt wird. Ansonsten..... Siehst Du einen Ansatzpunkt?

Vielen Dank,
Ingo


Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

is2late

#47
Vielleicht ergibt sich ja eine zusätzliche Problematik dadurch, dass die FP/das NAS nicht an DIESEM Raspi angeschlossen ist.
Hab daher die Sache mit dem Raspi B (Betriebssystem auf USB-Stick), an welchen die FP/das NAS direkt angeschlossen ist, genauso wie mit dem Raspi A (vorheriger Beitrag, s.o.) durchgenommen. Der Mountpoint heisst ebenfalls /media/backups.

Ergebnis (funktioniert auch nicht; die Sicherungen sind alle alt, obwohl heute bereits zwei neue über Crontab ausgelöst):
pi@NAS:~ $ ls -lha /media/backups
total 60G
drwxr-xr-x  7 root  root  4.0K Nov 10 19:24 .
drwxr-xr-x  4 root  root  4.0K Nov 14 07:12 ..
drwxrwsr-x+ 2 admin users 4.0K Nov 12 18:24 GemeinsamerOrdner
drwxrwsr-x  2 root  users 4.0K Nov  8 21:15 Ingo
drwx--x---+ 3 root  root  4.0K Nov 10 19:24 NAS
drwxrwsr-x  5 root  users 4.0K Nov 10 11:45 Yannik
-rw-------  1 root  root  6.0K Nov  9 15:24 aquota.group
-rw-------  1 root  root  7.0K Nov  9 15:24 aquota.user
drwx------  2 root  root   16K Nov  8 17:52 lost+found
-rw-r--r--  1 root  root   30G Nov 10 15:41 pibackup-10112021-152730.img
-rw-r--r--  1 root  root   30G Nov  9 22:53 raspi_image.img


pi@NAS:~ $ mount |grep media
/dev/sda1 on /media/backups type ext4 (rw,nosuid,nodev,noexec,relatime,sync)
/dev/mmcblk0p2 on /var/folder2ram/var/lib/openmediavault/rrd type ext4 (rw,noatime,nodiratime)
folder2ram on /var/lib/openmediavault/rrd type tmpfs (rw,relatime)


Zusätzlich gibt es aber eine interessante Fehlermeldung (m.E.) des Skripts:
Traceback (most recent call last):
  File "/home/pi/pibackup.py", line 42, in <module>
    before_sdcard = shutil.disk_usage("/")
AttributeError: 'module' object has no attribute 'disk_usage'


Hilft das weiter?

Aktuell hängen ja beide Raspis an dem NAS. Kann das stören? Sollte so umgestellt werden, dass nur bei Bedarf gemountet wird? Über fstab?

Vielen Dank,
Ingo




Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

Wernieman

00 19 * * 6 python /home/pi/pibackup.py
In der 6. Zeile steht der User. Nochmals: Giebs es wirklich den User python in Deinem System?

https://wiki.ubuntuusers.de/Cron/
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

MadMax-FHEM

Zitat von: Wernieman am 14 November 2021, 10:03:36
00 19 * * 6 python /home/pi/pibackup.py
In der 6. Zeile steht der User. Nochmals: Giebs es wirklich den User python in Deinem System?

https://wiki.ubuntuusers.de/Cron/

Ich denke eher, dass das python hier zum Aufruf gehört/gehören soll...

Also: bitte Script mit python interpteter ausführen

So wie: bash diesesScript

Eigentlich kann man das aber ja wie bei Shell-Scripten auch "im Script" angeben...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

is2late

Nein, einen User phyton gibt es nicht in meinem System. MadMax hat vermutlich Recht, s. mein Hinweis oben:
ZitatDer "python" stammt von hier: https://blog.andreas-schmidt-arts.de/2020/12/29/raspberry-pi-automatisches-backup-mit-python-erstellen/  Text dazu:
Zitat
Um den Befehl mit Python einfach ausführen zu können, nutzen wir die Bibliothek "OS". Als Text-Editor wählen wir "Nano" aus, danach können wir einen neuen "Cronjob" am Ende der Datei hinzufügen mit:
30 3 * * 7 python /home/pi/pibackup.py

Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

MadMax-FHEM

#51
Solte aber ja unnötig sein, weil eben genau das

#!/usr/bin/python

im Script steht, also eh schon python genommen wird/werden soll...

Es müsste also auch auf der Console reichen einfach das Script aufzurufen...

Für mich aber immer noch ein Rätsel warum ein Script genommen wird, was extra (noch mal) eine Laufzeitumgebung braucht, statt das mit einem Bash-Script zu machen ;)

Und ergänzend:

ein automatisches Backup ist schon gut ABER: nur besser wie manuelles, wenn es zuverlässig und "vertrauenswürdig" funktionert!

Weil selbst ein seltenes (weil vergessen) manuelles Backup, das dann ja hoffentlich klappt, ist besser als ein (vermeintlich) automatisiertes was am Ende eben KEIN Backup ist/erstellt, mit dem man auch einen Restore machen kann oder es gar nicht (zuverlässig) läuft.

Weil man sich in Sicherheit wähnt, die nicht da ist...

Daher würde ich 1. einen Backup-Mechanismus erstellen/nutzen, den ich kenne und 2. immer wieder den Restore üben...

Und nochmal (ich denke ich hatte das auch hier schon mal): mir reicht fhem backup automatisiert per at und dann per Script auf ein "NAS" kopiert völlig aus

Ein Komplett-Image (gut eh nur per tar) ziehe ich manuell und nur zu bestimmten "Anlässen"... ;)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

is2late

#52
Hi Joachim,

würde es ja gern mit einem Bash-Skript versuchen, wenn ich denn ein funktionierendes hätte...
Liegt aber eben nur in obiger Form vor.

LG

PS: Neue Fehlermeldungen:
Host:        \NAS
Date:        Sun, 14 Nov 2021 11:18:51
Service:     mountpoint_srv_dev-disk-by-uuid-7610d8f3-fb60-4998-a1f1-742511cf973a
Event:       Status failed
Description: status failed (1) -- /srv/dev-disk-by-uuid-7610d8f3-fb60-4998-a1f1-742511cf973a is not a mountpoint


Host:        \NAS
Date:        Sun, 14 Nov 2021 11:18:21
Service:     filesystem_srv_dev-disk-by-uuid-7610d8f3-fb60-4998-a1f1-742511cf973a
Event:       Does not exist
Description: unable to read filesystem '/srv/dev-disk-by-uuid-7610d8f3-fb60-4998-a1f1-742511cf973a' state


Hm..also die UUID stimmt definitiv (copy & paste). Was kann denn hier gemeint sein?
Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

MadMax-FHEM

#53
Ich muss leider zugeben, dass du/ihr mich mit den ganzen verschiedenen Mount-Varianten etc. "abgehängt" habt :-\ 8)

Ich dachte du hättest einen mount-Befehl der funktioniert hat?

Warum also nicht Stück für Stück ein eigenes Script erstellen, das du auch verstehst?

Es mag ja (zu Beginn) noch nicht das sein, was du jetzt erreichen willst (und aber ja [so] nicht schaffst) aber man kann ja immer weiter optimieren :)

D.h. zu Beginn vielleicht nur mal ein Script was den funktionierenden mount-Befehl ausführt und prüft, ob das geklappt hat. Dann einen cp/rsync/... Befehl der eine Datei auf das NAS kopiert. Wenn das geht, dann halt ein at, welches fhem Bakup ruft. Ein notify was auf Backup-Done "hört" und eben das Script aufruft. Das Script mountet und kopiert das Backup auf das NAS.

Damit hast du zwar keinen System-Abzug aber immerhin etwas das funktioniert (funktionieren sollte).
Und: besser das automatisiert und zuverlässig als ein Komplettabzug der nicht funktioniert...

Dabei lernst du und kannst ja sehen, ob das schon reicht/reichen würde (mir reicht das völlig) und wenn nicht, dann eben weiter tüfteln...
...aber bis zu einer besseren Lösung hast du zumindest schon mal eine die funktioniert :)

Und v.a. eine die du (besser) verstehst und im Fall der Fälle auch viel besser "maintainen" kannst (also wenn mal was nicht klappt: warum nicht).

Aber das ist nur meine Meinung...
...und da ich das ganze Mounten bzw. was du da alles so rumprobierst/probiert hast nicht wirklich nachverfolgt habe kann ich da leider auch nicht weiterhelfen... :-\

Viel Erfolg, Joachim

[private opinion]
Und OMV habe ich mir auch angeschaut, hatte zuvor jahrelang freeNAS. Aber bei beiden hat mich gestört, dass man zwar schön auf der Oberfläche rumtun kann aber nicht so wirklich nachvollziehen kann (zumindest ich nicht) was denn nun auf OS-Ebene tatsächlich gemacht wird und welcher "Knopf" was genau wie beeinflusst.

Weil eben: OS-User, smb-User und Filesystem-Berechtigungen "zusammenpassen" müssen, sonst geht es nicht wie gedacht...
EDIT: und einfach das System "aufreißen", also anonymous darf alles ist (für mich) keine Option... Auch wenn dann nat. so ziemlich alles einfach geht...

Bei freeNAS hatte ich dazu parallel einige Scripte laufen, die gemacht haben was ich wollte. Da war das freeNAS-Zeugs nur für mal schön kucken etc. ;)

Letztendlich habe ich dann selbst ein smb aufgesetzt, ist auch nicht so schwer...
...und man lernt und weiß eben was wie geht usw.

Aber vielleicht bin ich auch nur zu sehr "Kontroll-Freak" ;)
[/private opinion]
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Otto123

Zitat von: is2late am 13 November 2021, 19:11:14
Hallo Otto,

kann die erforderliche Reihenfolge so nicht erkennen.
Habe eingegeben
1.sudo mount -o username=Ingo,password=xxx//192.168.178.145/Backups /media/backups
In fstab:
2. //192.168.178.145/Backups /media/backups cifs  username=Ingo,password=xxx,noauto,users,rw 0 0
3. In crontab:
00 19 * * 6 python /home/pi/pibackup.py      (aktuelle Zeit plus fünf Minuten)
4. ls -lha /media/backups             
mount |grep media
   ->Ergebnis s.u.
5. Test: systemctl zeigt (Ausschnitt)
-.mount                                                             loaded active mounted   /
  media-backups.mount                                                 loaded active mounted   /media/backups


Ergebnis:
ls -lha /media/backups zeigt KEINE aktuelle Sicherung, nur die per Hand ausgelösten, zB
rwxr-xr-x 1 root root  29G Nov 12 16:22 raspiR4_image.img

Auf mount |grep media   kommt
//192.168.178.145/Backups on /media/backups type cifs (rw,relatime,vers=3.1.1,cache=strict,username=Ingo,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.178.145,file_mode=0755,dir_mode=0755,soft,nounix,serverino,mapposix,rsize=4194304,wsize=4194304,bsize=1048576,echo_interval=60,actimeo=1)

Mir fällt auf, dass das PW nicht erwähnt wird. Ansonsten..... Siehst Du einen Ansatzpunkt?

Vielen Dank,
Ingo
1. ist als Schnelltest tauglich - sonst mMn zu nichts. Hat nix mit den weiteren Schritten zu tun, sollte auch mit einem sudo umount /media/backups wieder "beendet" werden.

Du hast gesagt: der mount Befhl mit fstab Eintrag funktioniert nicht. Solange der nicht funktioniert sind alle weiteren Schritte witzlos.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

is2late

Habs geschafft; die Sicherung des Raspi, an dem die FP/das NAS angeschlossen ist, läuft automatisch.
U.a. musste in die Cron "python3" eingetragen werden, weil nur damit das Skript funktioniert.

Jetzt würde ich gern über das Skript oder die fstab unmoumten und entsprechend erst bei Anfrage einer Verbindung zum NAS mounten.
Recherche hat nichts Hilfreiches ergeben - kann mir jemand sagen, wie man das macht?

Vielen Dank,
Ingo
Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

Otto123

Du meinst automount?

Ansonsten hast Du doch aber alle Hinweise auf mounten per mount Befehl (und damit im Script) ignoriert?

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Wernieman

In welchem Cronfile steht das Script überhaubt?
I der Master Crontab muß an der stelle, wo phyton steht, der User hin .... siehe mein Link. In den User Crontabs natürlich nicht.

Das mit phyton3 und phyton hätte ich auch drauf kommen können. Moderne Systeme haben kein phyton2 mehr (und damit auch kein "phyton"). Der Symlink wurde weggelassen, das sich die 3 deutlich von der 2 Unterscheidet, d.h. mit großer Wahrscheinlichkeit phyton2 (und 1) Programme nicht unter der 3 Laufen
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

is2late

So,
nach einigem Probieren hab ich auch eine Lösung für das Mounten im Skript. Vielleicht kann es ja ein anderer Unbedarfter brauchen:
# Festplatte einbinden
mount -t cifs -o user=´USER´password=XXX,rw,file_mode=0777,dir_mode=0777 //IP-Adresse/BACKUP /sda/nas

# Festplatte auswerfen
umount /sda/nas


In welchem Cronfile steht das Script überhaubt?
I der Master Crontab muß an der stelle, wo phyton steht, der User hin .... siehe mein Link. In den User Crontabs natürlich nicht.

Guter Hinweis, Werniemann, vielen Dank!


ZitatAnsonsten hast Du doch aber alle Hinweise auf mounten per mount Befehl (und damit im Script) ignoriert?
Nö. Ich bin für jeden Tipp dankbar und nehme alles auf. Was funktioniert und für die Gegebenheiten passt, wird sofort übernommen - wie Dein Hinweis auf die Rechte zB.

Manche Hinweise aber überfordern mich schlicht. Stell Dir vor, Du kommst zu mir mit einem juristischen Problem und ich gebe Dir einen Link auf diverse Gesetzestexte sowie Entscheidungen, benenne Fundstellen z.B. im Palandt oder Schönfelder und sage dazu: "Lies, lies, lies... und lerne!" Bin mal gespannt, wie Du damit klarkommst...

Und schließlich nochmals mein Hinweis, dass Raspi, FHEM usw mich zwar interessieren, aber nur dann aktuell werden, wenn es ein neues Problem an der Hausautomation oä zu lösen gilt. Also können Monate vergehen, in denen ich nichts mit o.g. zu tun habe (und währenddessen ich vieles vergesse, Skripte hin oder her). Ich bitte es also zu entschuldigen, wenn ich weiterhin Anfänger mit begrenztem Verständnishorizont bleibe.

LG Ingo
Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

Otto123

#59
Hallo Ingo,

Zitat... und sage dazu: "Lies, lies, lies... und lerne!" Bin mal gespannt, ...
sorry, ich habe Thema mount in Linux nicht entworfen, ich kann nix dafür das es sehr umfangreich und komplex ist.
Ich dachte mein Link in #30 liefert eine kurze Schritt für Schritt Anleitung wie man ein SMB share in Linux verwendet. Besser und ausführlicher konnte ich es nicht aufschreiben, ich verstehe es nach wochenlangen Pausen immer wieder. ;)
Du hast Dich an "alles in einer Zeile" festgebissen. :)
Dazu noch zwei Hinweise:
Dein Weg funktioniert nur mit root Rechten (bei Dir über die system crontab)
Ich befürchte, er liefert für alle User im System die Anbindung der NAS im "Zerstörermodus" -> 0777

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz