next up previous contents
Nästa: 5.5 Processkontroll Upp: 5. Hur gör man? Förra: 5.3 Att använda disketter

  
5.4 Att arkivera filer

Med hjälp av programmet tar kan man slå samman flera filer eller tom katalogstrukturer till en enda fil, en så kallad arkivfil. Poängen med detta är framförallt att det blir lättare att flytta filerna någon annanstans, till exempel via nätet. Ett annat skäl att använda tar kan vara att man vill lagra filerna som en säkerhetskopia. Faktum är att ''tar'' kommer från tape archive, bandarkiv, eftersom det ursprungligen användes för säkerhetskopiering av filer till magnetband.

Genom att ge argumentet -cvf dikter.tar följt av namnen på de filer som ska ingå i arkivet, skapar man ett arkiv med namnet dikter.tar.$ ls
bellman   dikter/   lenngren
$ tar -cvf dikter.tar bellman lenngren
bellman
lenngren
$ ls
bellman     dikter/     dikter.tar  lenngren
$
Flaggan -c står för ''skapa arkiv'' och -v för ''skriv ut information''. Argumentet -f namn talar om att arkivfilen ska heta namn. Vanligtvis brukar man ge arkivfiler namn med ändelsen .tar, men detta är inget krav.

För att titta i en arkivfil använder man flaggan -t i stället för -c.$ tar -tvf dikter.tar
-rw------- göran/göran     372 1998-02-01 16:48 bellman
-rw-rw-r-- göran/göran     649 1998-02-01 15:53 lenngren
$
Så nu kan vi skicka iväg filen dikter.tar och sedan packa upp den för att få en kopia av de båda filerna bellman och lenngren. Man packar upp ett arkiv genom att använda flaggan -x i stället för -c. Låt oss demonstera det hela genom att radera de ursprungliga filerna för att sedan återställa dem från arkivfilen:$ rm bellman lenngren
$ tar -xvf dikter.tar
bellman
lenngren
$ ls -l
total 13
-rw-------   1 göran    göran         372 feb  1 16:48 bellman
drwxrwxr-x   3 göran    göran        1024 feb 20 13:19 dikter/
-rw-rw-r--   1 göran    göran       10240 mar  1 22:47 dikter.tar
-rw-rw-r--   1 göran    göran         649 feb  1 15:53 lenngren
$

Ofta komprimerar man arkivfilerna med gzip för att de inte ska ta så mycket utrymme. Detta steg kan tar göra automatiskt om man anger flaggan -z. Komprimerade arkiv brukar ha namn med ändelsen .tar.gz eller .tgz. Låt oss göra ett komprimerat arkiv av hela katalogen dikter:$ tar -zcvf dikter.tgz dikter
dikter/
dikter/bellman
dikter/lenngren
$
Filen dikter.tgz är nu ett komprimerat arkiv som innehåller katalogen dikter och alla dess filer. Låt oss kontrollera att detta är korrekt:$ tar -ztvf dikter.tgz
drwxrwxr-x göran/göran       0 1998-02-27 19:43 dikter/
-rw------- göran/göran     372 1998-02-01 17:12 dikter/bellman
-rw-rw-r-- göran/göran     649 1998-02-01 17:12 dikter/lenngren
$
Källkoden till stora program består ofta av åtskilliga filer, och distribueras därför vanligtvis i form av komprimerade arkiv.

 Om man vill spara arkivfilen på diskett, så ska man ange tex /dev/fd0 som arkivfil (se avsnitt 5.3). Allt som tidigare var lagrat på disketten försvinner i så fall. Kommandot tar -Mcvf /dev/fd0 ~ gör en säkerhetskopia av hela den egna hemkatalogen. Eventuellt kan det behövas mer än en diskett, men tack vare flaggan -M tillåter tar att arkivet består av flera ''volymer''. De enskilda volymerna kan vara disketter eller magnetband. När en volym är full stannar tar upp och uppmanar användaren att sätta i en ny.$ tar -Mcvf /dev/fd0 /tmp
tar: Tar bort inledande "/" från absoluta sökvägar i arkivet
tmp/
tmp/gnulinux.ps
Gör iordning volym nummer 2 för /dev/fd0 och tryck vagnretur:
$
För att packa upp arkivet ska man sätta första volymen i diskettenheten och därefter ge kommandot tar -Mxvf /dev/fd0. Meddelanden skrivs ut av tar när det är dags att byta volym.


next up previous contents
Nästa: 5.5 Processkontroll Upp: 5. Hur gör man? Förra: 5.3 Att använda disketter
Goran Andersson
1999-03-08