DSM 7.0 Umstieg auf DSM 7 ?

tproko

Benutzer
Sehr erfahren
Mitglied seit
11. Jun 2017
Beiträge
2.117
Punkte für Reaktionen
256
Punkte
129
Darum mach ich das als Skript, welches ich einfach mal bis es alles durchläuft via ssh im der bash ausführe.

Wenn alles passt hänge ich das fertige Skript im Aufgabenplaner ein.

Meine Skripte liegen unter /volume1/skripte und werden auch automatisch ins Backup integriert. Daher wohl geschickter als alles in die Aufgabe zu integrieren. Noch dazu werden diese von HyperBackup ja nicht gesichert.
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Nach der ersten Fehlermeldung in Line 2&4 hab ich die Leerzeilen heraus genommen und das Script angepasst. Es dient lediglich nur zum testen erst einmal und sieht so aus:

Code:
#!/bin/bash
CONTAINER_NAME='postgres'
CID=$(docker ps -q -f status=running -f name=^/${CONTAINER_NAME}$)
if [ ! "${CID}" ]; then
  echo "Container $CONTAINER_NAME is not running, not creating backup"
  exit 0
fi
cd /volume1/docker/backup/
echo starting backup
docker exec postgres bash -c "pg_dumpall -U postgres | gzip > /var/lib/postgresql/data/backup/current-pg_dumpall.dump"

Ich hab lediglich den Containernamen und Output angepasst.

Code:
bash /volume1/docker/backup/backupsql
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json?filters=%7B%22name%22%3A%7B%22%5E%2Fpostgres%5Cr%24%22%3Atrue%7D%2C%22status%22%3A%7B%22running%22%3Atrue%7D%7D": dial unix /var/run/docker.sock: connect: permission denied
/volume1/docker/backup/backupsql: line 11: syntax error: unexpected end of file

getestet in SSH (Log) & Aufgabenplaner - hast du einen Tip? der Fehler line 11 ist bei mir nur noch übrig geblieben - leider gibt es keine line 11.
 
Zuletzt bearbeitet:

tproko

Benutzer
Sehr erfahren
Mitglied seit
11. Jun 2017
Beiträge
2.117
Punkte für Reaktionen
256
Punkte
129
Für es als root aus, nicht als admin.

sudo -i
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
hab ich:
Code:
Synology strongly advises you not to run commands as the root user, who has
the highest privileges on the system. Doing so may cause major damages
to the system. Please note that if you choose to proceed, all consequences are
at your own risk.

Could not chdir to home directory /var/services/homes/Nico: No such file or directory
Nico@DiskStation:/$ sudo -i
Password:
root@DiskStation:~# bash /volume1/docker/backup/backupsql
/volume1/docker/backup/backupsql: line 11: syntax error: unexpected end of file
root@DiskStation:~#

die Datei hat aber keine Line11 und wurde mit Notepad erstellt
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.767
Punkte für Reaktionen
3.740
Punkte
468
Notepad oder Notepad++? Denk dran, dass Linux nur LF als Zeilenende kennt und kein CRLF wie DOS/Windows. Und denke an den Zeilenumbruch nach der letzten Zeile. Direkt per dem allseits beliebten "vi" wär wohl besser ;)
 
  • Like
Reaktionen: Stationary

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.767
Punkte für Reaktionen
3.740
Punkte
468
Das macht es aber nicht automatisch besser :rolleyes:
 

tproko

Benutzer
Sehr erfahren
Mitglied seit
11. Jun 2017
Beiträge
2.117
Punkte für Reaktionen
256
Punkte
129

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Ich hab es jetzt einmal mir den DS-Texteditor probiert
das scheint besser zu laufen, jetzt kommt:
Code:
bash /volume1/docker/backup/backupsql
starting backup
bash: line 1: /var/lib/postgresql/data/backup/current-pg_dumpall.dump: No such f    ile or directory

was ich komisch finde ist Line1, dort steht ja "#!/bin/bash"
 
Zuletzt bearbeitet:

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.767
Punkte für Reaktionen
3.740
Punkte
468
Das ist ein sog. Shebang. Der sagt der Shell, welche Sprache das ist und welcher Shell-Interpreter das letztendlich interpretieren soll.
Du solltest besser nicht irgendwelche exotischen Editoren ausprobieren, sondern wissen, was du da tust :rolleyes:
 
Zuletzt bearbeitet von einem Moderator:
  • Like
Reaktionen: Stationary

Stationary

Benutzer
Sehr erfahren
Mitglied seit
13. Feb 2017
Beiträge
3.941
Punkte für Reaktionen
1.262
Punkte
194
Ich bevorzuge als Editor „nano“, muß man aber auf der DS erst installieren. Damit klappt es aber auch problemlos, die Skripte zu erstellen.
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Ich würde gerne nano nutzen - mit vi werde ich nicht warm, deshalb hab ich den DS-Editor probiert. Notepad2 nutze sich seit über 10+ Jahre für andere Geräte erfolgreich.
 

Stationary

Benutzer
Sehr erfahren
Mitglied seit
13. Feb 2017
Beiträge
3.941
Punkte für Reaktionen
1.262
Punkte
194

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.767
Punkte für Reaktionen
3.740
Punkte
468
"Notepad2" kannte ich bislang nicht, kann auch nicht orten, wie das auf meinen PC kommt. Damit sollte es aber auch gehen. Aber für Unix-Scripte solltest du darauf achten, dass du unter File, "Line Endings" wenigstens "Unix (LF)" einstellst.
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Ich hab mehrere Editoren Probiert - bei den angelegten Files steht definitiv: "Unix (LF)"

ich bekomme natürlich immer noch die gleiche Fehlermeldung:
Code:
root@DiskStation:~# bash /volume1/docker/backup/backupsql
starting backup
bash: line 1: /var/lib/postgresql/data/backup/current-pg_dumpall.dump: No such file or directory
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.767
Punkte für Reaktionen
3.740
Punkte
468
Und wie wär's, wenn du einfach mal prüfst, ob diese Datei überhaupt existiert?
Wo hast du den Code überhaupt her?
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
13.767
Punkte für Reaktionen
3.740
Punkte
468
Ach so. Na dann warte mal auf Rückmeldung von @tproko.
Um was es hier eigentlich geht, hab ich mir noch gar nicht angeschaut :rolleyes:
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.159
Punkte für Reaktionen
912
Punkte
424
Hast auch die config vom Container?
Ist dort auch der volume1 Backup Pfad auf den /var/lib backup Pfad im container gemountet?
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Du meinst ich soll /volume1/docker/postgres/data/backup/ auf /var/lib/postgresql/data/backup/ mounten?

Ich hab jetzt alles belassen bis auf den Containernamen und den Speicherort vom Script und funktioniert natürlich nicht
@tproko kann bestimmt noch sagen was zum Script noch benötigt wird oder gemountet.
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat