Me gustaría cerrar mi tarea del año pasado. ¿Cómo tar y comprimir toda la carpeta desde la línea de comandos Ubuntu (no tengo GUI).
Me gustaría cerrar mi tarea del año pasado. ¿Cómo tar y comprimir toda la carpeta desde la línea de comandos Ubuntu (no tengo GUI).
Respuestas:
Leer man tar
. Ofrece:
-a, --auto-compress
use archive suffix to determine the compression program
-j, --bzip2
--lzip
--lzma
--lzop
-z, --gzip, --gunzip --ungzip
-Z, --compress, --uncompress
O, si ninguno de esos es el adecuado para usted, y tiene un programa de compresión que lee stdin
, podría:
tar cf- $HOME | my_compression_program >/tmp/compressed.output
Tenga en cuenta que estoy escribiendo la salida en otro lugar que no sea $HOME
(hacer una copia de seguridad en un directorio del que está haciendo una copia de seguridad conduce a un crecimiento de archivo sin restricciones).
O podrías leer man 7z
, parece que podrías hacer
dir="directory to save"
7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on /tmp/archive.7z $dir
Es no es una buena idea comprimir directamente con 7z Spcially En sistemas UNIX / Linux: 7z no conserva permisos y o información de usuario / grupo . Entonces: primero alquitrán, y luego comprimir.
Como se informó en la página wiki de 7zip en http://en.wikipedia.org/wiki/7z#Limitations :
Limitaciones
El formato 7z no almacena los permisos del sistema de archivos (como los permisos de grupo / propietario de UNIX o las ACL de NTFS) y, por lo tanto, puede ser inapropiado para fines de copia de seguridad / archivo. Una solución alternativa en sistemas similares a UNIX para esto es convertir los datos a un flujo de bits de alquitrán antes de comprimir con 7z.
Te sugiero que uses:
tar cf - foldername | 7z a -si -m0=lzma2 -mx=3 foldername.tar.7z
para un aumento dramático de la velocidad.
Tiene la ventaja de usar lzma2 ( -m0=lzma2
) (que utiliza los núcleos máximos disponibles en su sistema y el valor predeterminado "Compresión rápida" -mx=3
), que es básicamente lo suficientemente rápido y bueno. Tenga en cuenta que LZMA2 no solo utiliza todos los núcleos en la compresión, sino también en descompresión.
man 7z
.