Arbejde med tarballs på Linux

Ordet "tarball" bruges ofte til at beskrive den filtype, der bruges til at tage backup af en udvalgt gruppe af filer og sammenføje dem i en enkelt fil. Navnet kommer fra .tjære filtypenavnet og tjære kommando, der bruges til at gruppere filerne i en enkelt fil, som derefter undertiden komprimeres for at gøre dem mindre til flytning til et andet system.

Tarballs bruges ofte til at sikkerhedskopiere personlige filer eller systemfiler på plads til at oprette et arkiv, især inden du foretager ændringer, der muligvis skal vendes. Linux-sysadmins vil for eksempel ofte oprette en tarball, der indeholder en række konfigurationsfiler, inden der foretages ændringer i et program, i tilfælde af at de bliver nødt til at vende disse ændringer. Udtrækning af filerne fra en tarball, der sidder på plads, vil generelt være hurtigere end at skulle hente filerne fra sikkerhedskopier.

[To-minutters Linux-tip: Lær hvordan du mestrer en række Linux-kommandoer i disse 2-minutters videotutorials]

Sådan opretter du en tarball på Linux

Du kan oprette en tarball og komprimere den i et enkelt trin, hvis du bruger en kommando som denne:

$ tar -cvzf PDFs.tar.gz * .pdf 

Resultatet i dette tilfælde er en komprimeret (gzippet) fil, der indeholder alle de PDF-filer, der er i det aktuelle bibliotek. Komprimeringen er selvfølgelig valgfri. En lidt enklere kommando ville bare placere alle PDF-filer i en ukomprimeret tarball:

$ tar -cvf PDFs.tar * .pdf 

Bemærk, at det er z i den liste over indstillinger, der får filen til at blive komprimeret eller "zippet". Det c angiver, at du opretter filen og v (verbose) angiver, at du vil have noget feedback, mens kommandoen kører. Undlad v hvis du ikke vil se de anførte filer.

En anden almindelig navnekonvention er at give lynlåse tarballer udvidelsen .tgz i stedet for den dobbelte udvidelse .tar.gz som vist i denne kommando:

$ tar cvzf MyPDFs.tgz * .pdf 

Sådan udpakkes filer fra en tarball

For at udpakke alle filerne fra en gzippet tarball, ville du bruge en kommando som denne:

$ tar -xvzf file.tar.gz 

Hvis du bruger .tgz-navnekonventionen, ser denne kommando sådan ud:

$ tar -xvzf MyPDFs.tgz

For at udtrække en individuel fil fra en gzippet tarball, gør du næsten den samme ting, men tilføjer filnavnet: 

$ tar -xvzf PDFs.tar.gz ShenTix.pdf ShenTix.pdf ls -l ShenTix.pdf -rw-rw-r-- 1 shs shs 122057 14. december 14:43 ShenTix.pdf 

Du kan endda slette filer fra en tarball, hvis tarball ikke er komprimeret. Hvis vi for eksempel ville fjerne flisefilen, som vi ekstraherede ovenfor fra PDFs.tar.gz-filen, ville vi gøre det sådan: 

$ gunzip PDFs.tar.gz $ ls -l PDFs.tar -rw-rw-r-- 1 shs shs 10700800 15. december 11:51 PDFs.tar $ tar -vf PDFs.tar - delete ShenTix.pdf $ ls - l PDFs.tar -rw-rw-r-- 1 shs shs 10577920 15. december 11:45 PDFs.tar 

Bemærk, at vi barberede lidt plads fra tarefilen, mens vi slettede ShenTix.pdf-filen. Vi kan derefter komprimere filen igen, hvis vi vil:

$ gzip -f PDFs.tar ls -l PDFs.tar.gz -rw-rw-r-- 1 shs shs 10134499 15. december 11:51 PDFs.tar.gzFlickr / James St. John 

Alsidigheden af ​​kommandolinjemulighederne gør det nemt og meget praktisk at arbejde med tarballs.

Deltag i Network World-samfundene på Facebook og LinkedIn for at kommentere emner, der er øverste af sindet.