danijel
Goto Top

Tar mit gzip befehl in einem script funktioniert nicht

Hallo zusammen,

hab da ein kleines Problem.
Ich habe einen script geschrieben.

TAR=/bin/tar
PATH=/opt/backups
PATH1=/opt/agema
cd $PATH1

$TAR -vcpf $PATH/test-$date.tar test1

Dieser Script läuft aber es wird nichts ja nichts komprimiert.

schreibe ich dazu -vcpfz, läuft der script nicht.
Bekomme sowas als Meldung:

/bin/tar: Removing leading `/' from member names
/bin/tar: /opt/backups/test.tar: Cannot stat: No such file or directory

Hier der comman im script
$TAR -vcpfz $PATH/test.tar test1

gzip ist auf RHED 5 installiert. Auf Shell wenn ich gzip backupfile.tar mache, dann tut er auch brav.

Gerade bin ich einwenig verwirrt. Wo ist der fehler ??

mfg
Danijel

Content-ID: 263049

Url: https://administrator.de/contentid/263049

Ausgedruckt am: 22.11.2024 um 07:11 Uhr

r00kie87
r00kie87 11.02.2015 um 11:51:16 Uhr
Goto Top
ich glaube dein Option benötigt ein großes "P", damit der führende Slash nicht entfernt wird.
tar -vczPf ....
danijel
danijel 11.02.2015 um 11:57:38 Uhr
Goto Top
Habe ich gemacht. Die meldung mit "/bin/tar: Removing leading `/' from member names" bringt er nicht mehr.

Aber:

/bin/tar: gzip: Cannot exec: No such file or directory
/bin/tar: Error is not recoverable: exiting now
da fehlt bestimmt noch ein Paramter oder sowas ???
broecker
broecker 11.02.2015 um 12:37:43 Uhr
Goto Top
ein Fehler ist, das f (=file statt Band) nicht als letzten Parameter vor dem Dateinamen zu wählen (also nach z)
HG
Mark
Arano
Arano 11.02.2015 um 12:39:34 Uhr
Goto Top
Hi,

der Parameter "f" erwartet folgend einen Dateinamen !
Wenn du also das "z" hinter dem "f" notierst kommt tar scheinbar durcheinander und mecker dann, das es keinen Zieldateinamen bekommen hat.
Verwende "f" also einfach als letzten Parameter und lass darauf nur den Zieldateinamen folgen.

$TAR -vczpf $PATH/test.tar test1

Tipp:
TAR=`which tar`
Dann wird der Pfad zu tar zuerst gesucht und das Script funktionier auch weiterhin falls sich das mal ändert oder es auf einem anderem System verwendet wird.


~Arano
danijel
danijel 11.02.2015 aktualisiert um 13:11:07 Uhr
Goto Top
Hallo zusammen,

das leuchtet ein. Habe die Parametern geändert

$TAR -vcpzf $PATH/test.tar test1 -P

-P habe ich am ende gemacht, sollte eingentlich egal sein wo der steht ..

Und er mekert jetzt wieder
/bin/tar: gzip: Cannot exec: No such file or directory
/bin/tar: Error is not recoverable: exiting now

Es wird eine test.tar erzeugt aber keine Daten.
Das ist einwenig komisch ....
broecker
Lösung broecker 11.02.2015 aktualisiert um 14:24:18 Uhr
Goto Top
immer noch, falls -P, dann vcpzPf - Bindestrich darf auch weggelassen werden...
alles
man tar

jetzt lese ich aber erst -P - bist Du Dir bewußt, warum es die Option gibt?:
beim Restore wird damit an exakt die Stelle ausgepackt, von wo die Dateien kommen,
meist will man das nicht, da nur manche Dateien in altem Stand gerettet werden sollen, hingegen neue nicht überschrieben werden sollen.

HG
Mark
Cthluhu
Lösung Cthluhu 11.02.2015 aktualisiert um 14:16:14 Uhr
Goto Top
Hi,

Zitat von @danijel:
$TAR -vcpzf $PATH/test.tar test1 -P

Und er mekert jetzt wieder
/bin/tar: gzip: Cannot exec: No such file or directory

Du überschreibts die Variable PATH
Das ist eine systemvariable die angibt wo deine ausführbaren Dateien (tar, gzip,...) zu finden sind. Sehr gefährlich sie zu überschreiben.

Mit freundlichen Grüßen

Cthluhu
danijel
danijel 11.02.2015 um 14:20:12 Uhr
Goto Top
Hallo leute,

ich bedanke mich sehr bei euch face-smile
Ihr alle habt dazu beigetragen, das meine lösung jetzt geht face-smile

Also
@Cthluhu ich habe es geändert und aus englishe eben deutsch drauß gemacht path=pfad
@broecker und arano eure tipps habe ich auch umgesetzt

Am ende war der PATH-Teil und auch die Parameter falsch

grüße an euch
Danijel