Kann Fehler in Backupsequenz nicht finden

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
vicbrother
Beiträge: 1016
Registriert: 23.12.2001 11:15:07
Wohnort: Hamburg

Kann Fehler in Backupsequenz nicht finden

Beitrag von vicbrother » 11.02.2006 14:02:52

Hallo,

ich habe mir die nachfolgende Befehlssequenz fürs Backupen geschrieben, die allerdings mit der Fehlermeldung

Code: Alles auswählen

/usr/local/bin/backup: line 70: syntax error: unexpected end of file
endet. Kann mir jemand sagen, wo der Fehler liegt?

Hinweis: sudo rufe ich auf, damit auch der User vic das Skript nutzen kann, er darf nämlich mittels sudo alles ohne Passwort.

Code: Alles auswählen

sudo mkdir /home/vic/D810-`date -I` &&
sudo chown root.root /home/vic/D810-`date -I` &&
sudo chmod 600 /home/vic/D810-`date -I` &&
sudo chown -R vic.vic /home/vic ;

# ls wird nicht bei leerem Cache aufgerufen
# ls  /var/cache/apt/archives/*.deb | xargs sudo rm ;

{ sudo dpkg --get-selections "*" > /home/vic/D810-`date -I`/D810-SOFTWARE.`date -I` }&

{ sudo cp /etc/SYSTEMDOKUMENTATION /home/vic/D810-`date -I`/D810-SYSTEMDOKUMENTATION.`date -I` }&

{ sudo grep -UR '/dev/' /etc/ | grep -v '/dev/null' > /home/vic/D810-`date -I`/D810-HARDWAREZUGRIFFE.`date -I` }&

{ sudo debsums -ce > /home/vic/D810-`date -I`/D810-KONFIGURATIONSAENDERUNGEN.`date -I` }&

{
echo 'D810-VIC-HOME';
sudo dar -z -c /home/vic/D810-`date -I`/D810-VIC-HOME.`date -I` -R /home/vic -P Mail -P data -P .kde -X "D810*dar" -X "D810-*" -D -M
}&

{
echo 'D810-VIC-KDE';
sudo dar -z -c /home/vic/D810-`date -I`/D810-VIC-KDE.`date -I` -R /home/vic/.kde -D -M 
}&

{
echo 'D810-VIC-DATA';
sudo dar -z -c /home/vic/D810-`date -I`/D810-VIC-DATA.`date -I` -R /home/vic/data -D -M
}&

{
echo 'D810-VIC-MAIL';
sudo dar -z -c /home/vic/D810-`date -I`/D810-VIC-MAIL.`date -I` -R /home/vic/Mail -D -M
}&

{
echo 'D810';
sudo dar -z -c /home/vic/D810-`date -I`/D810.`date -I` -R / -M -D
}&

{
echo 'D810-WINDOWSXP';
sudo dar -z -c /home/vic/D810-`date -I`/D810-WINDOWSXP.`date -I` -R /WindowsXP -M -D
}&
Debian GNU/Linux "unstable" + KDE4 @ Dell Precision M6400
T9600 - 4GB RAM - 2x160GB RAID0 - nVIDIA Quadro FX 3700M - 17" WUXGA RGB LED - Webcam - Backlit Keyboard - UMTS - 9 Cell Battery -

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 11.02.2006 15:20:37

wenn du eine Liste von Kommandos ausführen möchtest, so muß diese entweder mit einem Strichpunkt abgeschlossen sein:

Code: Alles auswählen

{ echo blabla; }
oder duch eine neue Zeile:

Code: Alles auswählen

{
echo blabla
}
so funktioniert das nicht:

Code: Alles auswählen

{ echo blabla }
Gruß
gms

Benutzeravatar
feldmaus
Beiträge: 1307
Registriert: 14.06.2005 23:13:22
Lizenz eigener Beiträge: GNU General Public License
Wohnort: Deutschland

Beitrag von feldmaus » 11.02.2006 16:09:58

Apropo Backup,

passt hier vielleicht nicht ganz rein, wollte es aber trotzdem mal sagen.

Die Bakups die ich gemacht habe und auch beim rückspielen
funzten habe ich gemacht als
mein root system read-only gemountet war.

Vielleicht kannst du da ja noch was an deinem script hinzufügen.

mfg Markus

Benutzeravatar
vicbrother
Beiträge: 1016
Registriert: 23.12.2001 11:15:07
Wohnort: Hamburg

Beitrag von vicbrother » 11.02.2006 23:25:38

gms hat geschrieben:wenn du eine Liste von Kommandos ausführen möchtest, so muß diese entweder mit einem Strichpunkt abgeschlossen sein:

Code: Alles auswählen

{ echo blabla; }
Ja klar, ich war ja blind. Danke. Jetzt muss ich nur noch date -I durch eine Datumsvariable ersetzen, da ich bemerkt habe, dass das Backup am liebsten kurz vor 0 Uhr beginnt...

Wie kann ich eigentlich den Plattenplatz abchecken? Die Ausgabe von df ist ja nicht gerade Variablentauglich...
Debian GNU/Linux "unstable" + KDE4 @ Dell Precision M6400
T9600 - 4GB RAM - 2x160GB RAID0 - nVIDIA Quadro FX 3700M - 17" WUXGA RGB LED - Webcam - Backlit Keyboard - UMTS - 9 Cell Battery -

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 11.02.2006 23:45:11

vicbrother hat geschrieben:Wie kann ich eigentlich den Plattenplatz abchecken? Die Ausgabe von df ist ja nicht gerade Variablentauglich...

Code: Alles auswählen

root@gms1:~# FREE=`df -k | awk '/hda6/{print $4}'`
root@gms1:~# echo $FREE
29871432
geht doch

gruß
gms

Antworten