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
Ja ich habe data raus gemounted und im Ordner data den Unterordner backup angelegt.

Die Fehlermeldung sagt in dem Fall, dass das File/Ordner nicht vorhanden sind.
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
/data hab ich ja schon gemountet im Container: /docker/postgres > /var/lib/postgresql/data oder soll der Backup-Ordner zusätzlich?
 

tproko

Benutzer
Sehr erfahren
Mitglied seit
11. Jun 2017
Beiträge
2.117
Punkte für Reaktionen
256
Punkte
129
Ja lege dir im docker container mit mkdir einen Unterordner an (damit die Rechte passen)
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
nope, funktioniert nicht, gleicher Fehler

Ich habe in /docker/postgres die ganzen verzeichnisse und Daten. Dazu habe ich einen data-Ordner incl backup-Ordner inside via ssh angelegt.
Mein Postgres Docker hat einen mount von /var/lib/postgresql/data nach /docker/postgres

Edit:
Ich hab es aber trotzdem geschafft: nicht der Ordner /data fehlte in /docker/postgres, sondern der ordern backup
Also anstatt /docker/postgres/data/backup/ nur noch /docker/postgres/backup/.

Das Scipt läuft durch und erstellt einen dump.

letzte Fragen:
Ein anderer Ordner außerhalb von /docker/postgres/backup/ funktioniert nicht?
Warum muss der Pfad im Script /volume1/docker/postgres/data/backup/ sein wenn dieser so nicht stimmt? Ein ändern dessen ergibt wieder ein Fehler.
 
Zuletzt bearbeitet:

tproko

Benutzer
Sehr erfahren
Mitglied seit
11. Jun 2017
Beiträge
2.117
Punkte für Reaktionen
256
Punkte
129
Jeder Ordner funktioniert. Er muss halt im Container und außen verfügbar sein.

Ich denke du musst dir evt. nochmal bash basics geben. Mein Skript ist ja länger und macht noch „hebe die akruellesten 3 Dumps auf“. Das macht er am nas via volume1.

Das Backup selber macht er via docker im Container. Dort ist der Ordner via /var/lib/postgres… im Skript festgelegt. Aber wie gesagt, du kannst Ordner mäßig machen wie du willst, so lange die Ordner da sind ö, nach außen gemounted werden und das Skript die richtig anspricht 🤷
 

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
In deinem Script ist wir fast alles klar und auch verständlich.
Du hast aber weder gesagt aber nicht gesagt das ein externer mount aus dem Docker kommen muss.
Ich dachte was stellst man im Script ein, dazu ist ja extra noch deine Beschreibung:

Code:
cd /volume1/docker/postgres/data/backup/   # hier ist das mount nach außen, dh. /var/lib/.../backup legt den Dump dann auch am NAS Volume ab, wo er dann weiter wegkopiert oder was auch immer notwendig ist, passieren kann.

Damit wird ja nur in den Ordner: /volume1/docker/postgres/data/backup/ gewechslt. ABER das funktioniert bei mir nicht! Bei mir ist /data (postres Docker) in /volume1/docker/postgres/ gemountet. Also liegt der Inhalt von Data schon Komplett vor. Du hast geschribenich sollte im mount (postgres) den Ordner /data und den Unterordner /backup erstellen. Dies habe ich natürlich gemacht über die DS und über SSH.

Wenn ich jetzt meinen Pfad anpasse funktioniert das Script mit der oben genannten Fehlermeldung nicht.
Wozu muss ich überhaupt diese Zeile haben? Der dump wird ja eh unter /var/lib/postgresql/data/backup/ im Container erzeugt. /data ist ja unter /docker/postgres gemountet. Das erklärt auch warum nur der Ordner /backup richtig ist.

Ich verstehe es nur nicht.

Edit:
ich habe den Pfad oben einfach einmal entfernt und es funktioniert natürlich immer noch. Ein ändern des Pfades hat keine Bedeutungen. Was soll die Zeile also bewirken?
 
Zuletzt bearbeitet:

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Ich denke du musst dir evt. nochmal bash basics geben. Mein Skript ist ja länger und macht noch „hebe die akruellesten 3 Dumps auf“. Das macht er am nas via volume1.
Auch das sehe ich nicht wo soll das in deinen Script sein? Das einzige was ich sehe ist das es nachschaut ob der Postgres Container läuft. Bei mir wird der Dump jedes mal überschrieben. Die Frage geisterte aber auch schon in den Kopf ob man das nicht versionieren kann. Schau bitte selbst noch mal unter #53.
 

tproko

Benutzer
Sehr erfahren
Mitglied seit
11. Jun 2017
Beiträge
2.117
Punkte für Reaktionen
256
Punkte
129
Hab es mal aufs wesentliche reduziert, bei mir wird vor dem Dump noch die alte Version wegkopiert.

@EDvonSchleck ja lies dir evt. Post #53 nochmal durch. Da steht ja: habe es mal aufs Wesentliche reduziert.

Und beim „cd …“ steht im Kommentar hinter dem #
# hier ist das mount nach außen, dh. /var/lib/.../backup legt den Dump dann auch am NAS Volume ab, wo er dann weiter wegkopiert oder was auch immer notwendig ist, passieren kann

Den Rest wirst du dir selber basteln müssen. Ich habe dafür noch keine perfekte allgemeine Lösung für dich. Ich wollte dir nur mal einen Anstoß geben , wie man mit docker exec den Dump startet 👍🏻

Natürlich können die Pfade bei dir anders sein und das ist ja grundsätzlich kein Problem. Du musst sie einfach anpassen.

Bei mir passiert nach dem cd dann einfach der Befehl, der die alte Version vorher wegkopiert und im Fehlerfall wieder zurückschreibt.
 
Zuletzt bearbeitet:

EDvonSchleck

Gesperrt
Mitglied seit
06. Mrz 2018
Beiträge
4.703
Punkte für Reaktionen
1.120
Punkte
214
Naja, du hast ein Script gepostet, soweit so gut

Die Zeile mit cd+Pfad hat soweit keine Bedeutung, auch deine Beschreibung hinter der # ergibt keinen Sinn, denn der Pfad ist einfach egal ist!
Du beschreibst daran das es der Mount-Pfad nach außen ist, jeder würde jetzt denken wenn der Pfad geändert wird sollte der Dump dort gespeichert sein.

In # 85 behauptest du weiterhin
Ich denke du musst dir evt. nochmal bash basics geben. Mein Skript ist ja länger und macht noch „hebe die akruellesten 3 Dumps auf“. Das macht er am nas via volume1.
was natürlich auch nicht der Fall ist. Ich sehe das nicht in den Code.

Ihr müsst euch echt einmal abgewöhnen von oben herab zu reden - erst wurde mir eingeredet falscher Editor, danach falsches Verzeichnis, denn nicht vorhandener Mount sowie nicht vorhandene Funktionen oder das ich den Rest selber basteln soll.

Alles das hast du soweit nicht beschrieben. Wie bitte soll einer der wirklich neu ist damit was anfangen?

Trotzdem noch einmal die Frage:
1. Was soll deiner Meinung nach die Zeile mit cd bewirken? Das Script sorgt doch nur das in das Verzeichnis gewechselt wird - eine Anpassung ist doch Banane
2. Wie hast du das mit 3 letzten Dumps umgesetzt? Wenn das geheim sein sollte denn aber bitte so etwas nicht äußern. Im Script ist das aber nicht.

Trotzdem danke für das teilen aber den Rest hättest du kommunizieren können.
 

tproko

Benutzer
Sehr erfahren
Mitglied seit
11. Jun 2017
Beiträge
2.117
Punkte für Reaktionen
256
Punkte
129
Nochmal. Es ist aufs Wesentliche reduziert, um einem Dump zu machen via docker exec. Den Rest inkl. Versionen hab ich mal bewusst rausgenommen.

Nachdem cd kommen bei mir andere bash Befehle. Ich bin kein bash Profi, daher will ich nicht mein ganzes Skript hier ablegen.

Von Anfänger (ich sicher) zu Anfänger (?) kann ich dir nur raten beschäftige dich mit der Materie, mit copy und paste ohne Verständnis machst dir sonst unabsichtlich was kaputt.

Für 3 Versionen könntest du zB. den Dump täglich erzeugen, mit Datum im Dateiname und dann mit find alles älter als x Tage (mtime) suchen und löschen

Ich sehe das nicht in den Code.

Jup, aufs wesentliche reduziert (docker exec und backup machen). Stand aber auch so im Post mit dem Skript.

jeder würde jetzt denken wenn der Pfad geändert wird sollte der Dump dort gespeichert

Redest du vom Pfad im docker oder außen? Du kannst den Pfad von Docker nach außen mounten wie du willst. Dort wird dann das Backup liegen.

Wie bitte soll einer der wirklich neu ist damit was anfangen?

Mit Bash Tutorials hab ich da damals angefangen. Du kannst dir doch hier nicht vollständige Lösungen für sowas erwarten. Ich bin kein Profi und dann lässt mich vielleicht wer dumm von der Seite an, wenn das Skript einen Fehler hat. Daher lasse ich das mal so rudimentär.
Trotzdem danke für das teilen aber den Rest hättest du kommunizieren können.

Keine Ahnung was du von mir erwartest, dass ich mehr kommunizieren soll.


Wenn jemand irgend ein Skript einfach ausführt ohne zu verstehen, was es tut… naja muss jeder selber beurteilen. Stell dir vor irgendeiner ist Lustig und schreibt mitten drin rm -rf / rein.

Du kannst ja bei weiteren bash Fragen ein neues Topic im offtopic öffnen. Mit dsm7 hat das ja auch von mir schon lange nichts mehr zu tun.
 


 

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