Guten Morgen, folgendes Problem: Ich habe ein Skript geschrieben welches meine PostgreSQL Datenbank von meinen Raspberry(Raspbian)(soll Server sein) auf einem USB Stick speichern soll, falls angeschlossen, und wenn nicht lokal im Verzeichnis /home/pi/backup. Das Skript sieht wie folgt aus:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | #!/bin/bash #backup-postgresql.sh if [ -d "/dev/sda" ] then sudo apt-get -y install ntfs-3g hfsutils hfsprogs exakt-fuse if [ ! -d "/media/usbstick" ] then sudo mkdir /media/usbstick fi sudo mount -t vfat -o utf8,uid=pi,gid=pi,noatime /dev/sda /media/usbstick BASE_DIR="/media/usbstick" elif [ -d "/dev/sda1" ] then sudo apt-get -y install ntfs-3g hfsutils hfsprogs exakt-fuse if [ ! -d "/media/usbstick" ] then sudo mkdir /media/usbstick fi sudo mount -t vfat -o utf8,uid=pi,gid=pi,noatime /dev/sda1 /media/usbstick BASE_DIR="/media/usbstick" elif [-d "/media/usbstick" ] then BASE_DIR="/media/usbstick" else if [ ! -d "/home/backup" ] then sudo mkdir /home/backup fi BASE_DIR="/home/backup" fi YMD=$(date +"\%Y-\%m-\%d_\%H-\%M") DIR="${BASE_DIR}/labor_${YMD}.sql" sudo pg_dump -U postgres -f ${DIR} labordb |
Bei YMD habe ich darauf geachtet das ich vor jedes Prozent ein Backslash getan habe, damit kein Zeilenumbruch passiert
Ich habe mit dem Befehl
1 | $ sudo crontab -e |
die Crontabelle aufgerufen und
1 | */2 * * * * /home/pi/backup-postgresql.sh |
eingetragen.
Wenn ich
1 | $ tail -f /var/log/syslog |
aufrufe, erscheint auch
1 | ..... /USB/SBIN/CRON[2424]: {root} CMD (/home/pi/backup-postgresql.sh) |
Woraus ich schließe, dass dieser Prozess auch durchgeführt wird.
Ebenso habe ich
1 | sudo nano ~/.pgpass |
aufgerufen und
1 | *:*:labordb:postgres:admin |
eingetragen.
Und danach
1 | sudo chmod 600 ~.pgpass |
ausgeführt, wobei ich zugeben muss das ich nicht wirklich verstehe was das tut.
So das sind alle Sachen die ich gefunden habe,damit das eig klappen sollte, wenn ich das ganze als Skript aufrufe mit
1 | bash /home/pi/backup-postgresql.sh
|
fragt er mich immer noch nach dem Passwort, sollte das sein?
Ich bin langsam echt ratlos und würde mich über Tipps und Ratschläge freuen.