Pagina 1 di 1
[RISOLTO] Discrepanza tra find e tar
Inviato: sab 8 mar 2008, 1:59
da pedrus
Ciao a tutti, ho un problema, lancio il comando:
Codice: Seleziona tutto
find /media/archivio/* -mtime -1 -exec tar cf /var/backup/incrementale-`date +%F`.tar {} \;
Quindi find genera un elenco che passa al comando tar per generare l'archivio. La generazione dell'archivio procede e infatti lo vedo crescere in dimensioni, alla fine della procedura, però, l'archivio diventa di pochi kbyte e al suo interno di fatto trovo solamente l'ultimo file trovato con il comando find. Teoricamente al suo interno ci dovrebbero essere tutti i file che find trova, ma in realtà c'è solo l'ultimo. In cosa sbaglio?
Re: Discrepanza tra find e tar
Inviato: sab 8 mar 2008, 10:34
da 414N
Usando il flag c di tar crei ogni volta un nuovo archivio, percui è logico che alla fine contenga solo l'ultimo file riportatogli da find.
Dovresti usare il flag r (append) per aggiungere in fondo all'archivio i nuovi files.
Se guardi la man page di tar trovi tutte queste indicazioni.
Re: Discrepanza tra find e tar
Inviato: sab 8 mar 2008, 10:36
da ZeD
pedrus ha scritto:Ciao a tutti, ho un problema, lancio il comando:
Codice: Seleziona tutto
find /media/archivio/* -mtime -1 -exec tar cf /var/backup/incrementale-`date +%F`.tar {} \;
Quindi find genera un elenco che passa al comando tar per generare l'archivio. La generazione dell'archivio procede e infatti lo vedo crescere in dimensioni, alla fine della procedura, però, l'archivio diventa di pochi kbyte e al suo interno di fatto trovo solamente l'ultimo file trovato con il comando find. Teoricamente al suo interno ci dovrebbero essere tutti i file che find trova, ma in realtà c'è solo l'ultimo. In cosa sbaglio?
tar c crea un nuovo file tar da zero
tu vuoi usare l'opzione -A (o -u)
man tar per maggiori informazioni
Re: Discrepanza tra find e tar
Inviato: sab 8 mar 2008, 10:49
da Mario Vanoni
pedrus ha scritto:Ciao a tutti, ho un problema, lancio il comando:
Codice: Seleziona tutto
find /media/archivio/* -mtime -1 -exec tar cf /var/backup/incrementale-`date +%F`.tar {} \;
Quindi find genera un elenco che passa al comando tar per generare l'archivio. La generazione dell'archivio procede e infatti lo vedo crescere in dimensioni, alla fine della procedura, però, l'archivio diventa di pochi kbyte e al suo interno di fatto trovo solamente l'ultimo file trovato con il comando find. Teoricamente al suo interno ci dovrebbero essere tutti i file che find trova, ma in realtà c'è solo l'ultimo. In cosa sbaglio?
-exec tar, find esegue tar su ogni singolo argomento che trova
find /media/archivio/* -mtime -1 -print | tar cf /var/backup/incrementale-`date +%F`.tar
man find, consiglia di mettere -print in ogni caso, anche se sottinteso
Re: Discrepanza tra find e tar
Inviato: sab 8 mar 2008, 10:57
da pedrus
Ieri sera queste prove le avevo fatte tutte, man tar lo avevo anche visto, bah, forse sarà stato l'orario, la stanchezza, o forse più semplicemente il fatto che io sono un incapace. Ma io ricordo che ciò che mi state dicendo voi avevo provato a farlo, nell'ultimo caso non avevo messo il -print. Comunque, ora con il parametro -r sembra andare. Continuo a testarlo e vedo come va. Per il momento metto un bel [RISOLTO].