Probleme mit tar und rm

Hallo,

ich bin immer noch Linux Anfaenger…
und komme da mit ein paar kleinen Problemchen nicht mit.
Also ich mache vom Verzeichnis /home/webmaster/

tar cvfz ds.domrep-travel.tgz /home/domrep-travel/www/*

Klappt auch prima. Jetzt war ich der Meinung es muesste auch umgekehrt gehen (entpacken). Aber geht nicht! Denn in dem Archiv hat das liebe tar einfach den ersten / weggelassen. Im Archiv sehen alle Dateien so aus:

home/domrep-travel/www/totop.gif

Also wird beim entpacken ein Verzeichnis home/domrep-travel/www usw. im verzeichnis WEBMASTER gebildet aber nicht vom root aus.

Wie kann man das in den Griff bekommen?

Ausserdem finde ich weder in der man noch in meinen schlauen Buechern einen Hinweis wie ich

rm -r verzeichnisname

ausfuehren kann, ohne dass er fuer jede Datei zurueckfragt ob er sie wirklich loeschen soll.
Weiss einer wie es geht? Oder gehoert das zu den grossen Linux-Geheimnissen die nicht einfach im man oder in Buechern verraten werden?

Herzliche Gruesse
Christian

Hallo,

Hi

rm -r verzeichnisname

Probiers mal mit rm -rf

Gruss

Hallo,

beide Antworten findest Du in den Anleitungen zu den Programmen.

Zu tar: Verzeichnisbäume sind relativ zum aktuellen Verzeichnis. Gehe also entweder ins Wurzelverzeichnis vor dem auspacken, oder gebe das Wurzelverzeichnis mit der Option -C / an. (achtung: grosses C)

Zu rm: Zitat aus der Manpage

-f, --force ignore nonexistent files, never prompt

Gruß

Fritze

Goeie morgen!

Klappt auch prima. Jetzt war ich der Meinung es muesste auch
umgekehrt gehen (entpacken). Aber geht nicht! Denn in dem
Archiv hat das liebe tar einfach den ersten / weggelassen. Im
Archiv sehen alle Dateien so aus:

home/domrep-travel/www/totop.gif

Also wird beim entpacken ein Verzeichnis
home/domrep-travel/www usw. im verzeichnis WEBMASTER gebildet
aber nicht vom root aus.

Wie kann man das in den Griff bekommen?

Wenn tar einen Ball macht (tar-ball = *tar, *tar.gz, *tgz …) schreibt tar immer, wenn du als Pfad /bla/blub/lalala… angibst: removing leading „/“ from absolute path.
Also packt tar alles ohne den ersten Schraegstrich ein. Wenn du den absoluten Pfad angegeben hast und du willst das Archiv wieder auspacken, musst du das vom Wurzelverzeichnis aus tun, anders gehts nicht. Du kennst den Unterschied zw. absoluten und relativen Pfad?

Ausserdem finde ich weder in der man noch in meinen schlauen
Buechern einen Hinweis wie ich

rm -r verzeichnisname

ausfuehren kann, ohne dass er fuer jede Datei zurueckfragt ob
er sie wirklich loeschen soll.

Funktioniert auch. Kann sein, dass rm -r bei dir als alias irgendwo steht. Nachkukken mit Eingabe von ‚alias‘.
Wenn rm nicht loeschen will wegen z.B. fehlenden Zugriffsrechten, dann eben rm -rf verwenden (gefaehrliches Kommando!). Geht natuerlich nur da, wo man darf.

Li

Wenn tar einen Ball macht (tar-ball = *tar, *tar.gz, *tgz …)
schreibt tar immer, wenn du als Pfad /bla/blub/lalala…
angibst: removing leading „/“ from absolute path.

also das wuerde ich so mal nicht unterschreiben…

das strippen eines leading slash ist eine der segnungen von gnutar, und wirklich ne gute sache. wenn ansonsten irgendein idiot nen tarball mit absoluten pfaden gebaut hat (_sehr_ schlechter stil…), hatte man ruckzuck irgendwas wichtiges gebuegelt, oder gar schlimmeres, man bedenke das nette applikationstarball, was inmitten von brav relativ referenzierten applikationsfiles auch eine absolute und geringfuegig erweiterte version von /etc/passwd enthaelt…
wenn root das dann auspackt (eigentlich auch schlechter stil, aber…)…

joachim, der auf kommerziellen unices leider oft genug ohne gtar auskommen muss…

Wenn tar einen Ball macht (tar-ball = *tar, *tar.gz, *tgz …)
schreibt tar immer, wenn du als Pfad /bla/blub/lalala…
angibst: removing leading „/“ from absolute path.

also das wuerde ich so mal nicht unterschreiben…

das strippen eines leading slash ist eine der segnungen von
gnutar, und wirklich ne gute sache. wenn ansonsten irgendein
idiot nen tarball mit absoluten pfaden gebaut hat (_sehr_

Also, mein tar macht das:
camelita:/home# tar cvf /tmp/tarball /lost+found/
tar: Removing leading `/’ from absolute path names in the archive
lost+found/
lost+found/#415747
lost+found/#415786
lost+found/#415787
lost+found/#415790
lost+found/#415791
lost+found/#415792

Fliecht doch raus, das ‚/‘.

Tar-Version:
tar (GNU tar) 1.12

Li

das strippen eines leading slash ist eine der segnungen von
gnutar, und wirklich ne gute sache. wenn ansonsten irgendein
idiot nen tarball mit absoluten pfaden gebaut hat (_sehr_

Also, mein tar macht das:

Tar-Version:
tar (GNU tar) 1.12

schoen dass wir uns einig sind. das war es, was ich schrieb. und nun geh auf ein kommerzielles unix (aix, hpux, tru64, sol, whatever) und nimm das dort vorhandene standard tar. das laesst den slash drin…

joachim