Pfad wärend Lauf eines Skriptes ändern
Verfasst: Sonntag 25. Mai 2008, 20:37
Hallo Pythonfreunde,
ich habe gerade ein kleines Problem mit meinem Script. "tar" unter Linux gibt ienen fehler aus wenn man absolute Pfade verwendet (tar: Entferne führende „/“ von Elementnamen).
daher wechsle ich in meinem Script mit "cd /" auf root. So würde es auch funktionieren, aber das scheint wärend des Scriptlaufs nciht möglich zu sein und ich bekomme immer noch die Fehlermeldung :
"tar: etc: Kann stat nicht ausführen: No such file or directory"
hier das Script:
Das scheint nicht zu funktionieren. Hat jemand eine Lösung für das Problem?
Gruß
alpha
ich habe gerade ein kleines Problem mit meinem Script. "tar" unter Linux gibt ienen fehler aus wenn man absolute Pfade verwendet (tar: Entferne führende „/“ von Elementnamen).
daher wechsle ich in meinem Script mit "cd /" auf root. So würde es auch funktionieren, aber das scheint wärend des Scriptlaufs nciht möglich zu sein und ich bekomme immer noch die Fehlermeldung :
"tar: etc: Kann stat nicht ausführen: No such file or directory"
hier das Script:
Code: Alles auswählen
#!/usr/bin/python
# -*- coding: iso-8859-1 -*-
import os
backupdirs = [ #die führenden "/" wurden bewußt weggelassen um die Fehlermeldung
# "tar: Entferne führende „/“ von Elementnamen" zu vermeiden
#'home/alpha/EigeneDateien',
'home/alpha/.mozilla',
#'home/alpha/.evolution',
'etc'
]
backupsafe = "/home/alpha/backup"
# ins Rootverzeichnis wechseln
expression = "cd /"
ret = os.system(expression)
print ret
# Tar-Datei erstellen
for backupdir in backupdirs:
expression = "tar rfv " + "/home/alpha/backup/backup.tar " + backupdir + " > /dev/null"
print expression
ret = os.system(expression)
if ret == 0:
print (backupdir + ": Erfolgreich zur Backupdatei hinzugefügt")
else:
print (backupdir + ": konnte nicht zur Backupdatei hinzugefügt werden")
# Tar-Dateie komprimieren
print "tar Datei erzeugt... beginne mit Komprimierung:"
expression = "bzip2 -9v " + backupsafe + "/backup.tar"
ret = os.system(expression)
if ret == 0:
print ("Datei erfolgreich komprimiert")
else:
print ("Fehler beim komprimieren")
Code: Alles auswählen
expression = "cd /"
ret = os.system(expression)
print ret
Gruß
alpha