Misalan Dokokin Tar na 18 a cikin Linux


Linux "tar" na tsaye ne don ajiyar tef, wanda yawancin masu gudanar da tsarin Linux/Unix ke amfani da shi don magance adana bayanan tef. Umurnin tar ya kasance yana tsar da tarin fayiloli da kundayen adireshi a cikin fayil ɗin ajiya mai matattakala wanda aka fi sani da tarball ko tar, gzip da bzip a cikin Linux. Tar din shine umarnin da akafi amfani dashi don ƙirƙirar fayilolin fayilolin matsawa kuma ana iya motsawa cikin sauƙi daga diski ɗaya zuwa wani faifai ko inji zuwa inji.

A cikin wannan labarin, zamu sake yin nazari kuma mu tattauna misalai daban-daban game da umarnin kwalta da suka hada da yadda ake kirkirar fayilolin adana bayanai ta hanyar amfani da matse (tar, tar.gz, da tar.bz2), yadda za a cire fayil din ajiyar, fitar da fayil guda daya, duba abun ciki na fayil ɗin, tabbatar da fayil, ƙara fayiloli ko kundayen adireshi a cikin fayil ɗin ajiyar, kimanta girman fayil ɗin ajji, da dai sauransu.

Babban mahimmancin wannan jagorar shine samarda misalai daban-daban na umarnin kwalta waɗanda zasu iya taimaka muku don fahimta kuma ku zama ƙwararren masaniyar adana bayanan tar.

Misalin da ke ƙasa zai ƙirƙiri fayil ɗin tarin tar a tecmint-14-09-12.tar don kundin adireshi/gida/tecmint a cikin kundin aiki na yanzu. Duba misalin umarni a aiki.

# tar -cvf tecmint-14-09-12.tar /home/tecmint/

/home/tecmint/
/home/tecmint/cleanfiles.sh
/home/tecmint/openvpn-2.1.4.tar.gz
/home/tecmint/tecmint-14-09-12.tar
/home/tecmint/phpmyadmin-2.11.11.3-1.el5.rf.noarch.rpm
/home/tecmint/rpmforge-release-0.5.2-2.el5.rf.i386.rpm

Bari mu tattauna kowane zaɓi da aka yi amfani da shi a cikin umarnin da ke sama don ƙirƙirar fayil ɗin tarihin tar.

  1. c - Creatirƙiri sabon fayil .tar fayil.
  2. v - A bayyane yake nuna ci gaban fayil ɗin .tar.
  3. f - nau'in sunan fayil na fayil ɗin tarihin.

Don ƙirƙirar fayil ɗin gzip mai matsi muna amfani da zaɓi azaman z. Misali, umarnin dake kasa zai kirkiri matattarar MyImages-14-09-12.tar.gz don kundin adireshi/gida/MyImages. (Lura: tar.gz da tgz duk suna kama).

# tar cvzf MyImages-14-09-12.tar.gz /home/MyImages
OR
# tar cvzf MyImages-14-09-12.tgz /home/MyImages

/home/MyImages/
/home/MyImages/Sara-Khan-and-model-Priyanka-Shah.jpg
/home/MyImages/RobertKristenviolent101201.jpg
/home/MyImages/Justintimerlake101125.jpg
/home/MyImages/Mileyphoto101203.jpg
/home/MyImages/JenniferRobert101130.jpg
/home/MyImages/katrinabarbiedoll231110.jpg
/home/MyImages/the-japanese-wife-press-conference.jpg
/home/MyImages/ReesewitherspoonCIA101202.jpg
/home/MyImages/yanaguptabaresf231110.jpg

Siffar bz2 tana matsewa kuma tana ƙirƙirar fayil ɗin ajiya ƙasa da girman gzip. Matsalar bz2 tana ɗaukar ƙarin lokaci don damfara da ɓata fayiloli fiye da gzip, wanda ke ɗaukar ƙaramin lokaci. Don ƙirƙirar fayil ɗin kwal wanda aka matse shi sosai muna amfani da zaɓi j. Misali na gaba mai zuwa zai ƙirƙiri fayil ɗin Phpfiles-org.tar.bz2 don kundin adireshi/gida/php. (Lura: tar.bz2 da tbz sunyi kama da tb2).

# tar cvfj Phpfiles-org.tar.bz2 /home/php
OR
# tar cvfj Phpfiles-org.tar.tbz /home/php
OR 
# tar cvfj Phpfiles-org.tar.tb2 /home/php

/home/php/
/home/php/iframe_ew.php
/home/php/videos_all.php
/home/php/rss.php
/home/php/index.php
/home/php/vendor.php
/home/php/video_title.php
/home/php/report.php
/home/php/object.html
/home/php/video.php

Don buɗewa ko cire fayil ɗin tar, kawai ba da umarni mai zuwa ta amfani da zaɓi x (cirewa). Misali, umarnin da ke kasa zai bude fayil din jama'a_html-14-09-12.tar a cikin kundin adireshin aiki na yanzu. Idan kanaso ka bita a cikin wani kundin adireshi daban to kayi amfani da zabi kamar -C (takamaiman shugabanci).

## Untar files in Current Directory ##
# tar -xvf public_html-14-09-12.tar

## Untar files in specified Directory ##
# tar -xvf public_html-14-09-12.tar -C /home/public_html/videos/

/home/public_html/videos/
/home/public_html/videos/views.php
/home/public_html/videos/index.php
/home/public_html/videos/logout.php
/home/public_html/videos/all_categories.php
/home/public_html/videos/feeds.xml

Don Rashin bayyana fayil na tar.gz, kawai aiwatar da umarni mai zuwa. Idan za mu so mu warware a cikin kundayen adireshi daban-daban, kawai yi amfani da zaɓi -C da hanyar shugabanci, kamar yadda aka nuna a misalin da ke sama.

# tar -xvf thumbnails-14-09-12.tar.gz

/home/public_html/videos/thumbnails/
/home/public_html/videos/thumbnails/katdeepika231110.jpg
/home/public_html/videos/thumbnails/katrinabarbiedoll231110.jpg
/home/public_html/videos/thumbnails/onceuponatime101125.jpg
/home/public_html/videos/thumbnails/playbutton.png
/home/public_html/videos/thumbnails/ReesewitherspoonCIA101202.jpg
/home/public_html/videos/thumbnails/snagItNarration.jpg
/home/public_html/videos/thumbnails/Minissha-Lamba.jpg
/home/public_html/videos/thumbnails/Lindsaydance101201.jpg
/home/public_html/videos/thumbnails/Mileyphoto101203.jpg

Don Cire fayil ɗin tar.bz2 mai matukar matsewa, kawai amfani da umarni mai zuwa. Misalin da ke ƙasa zai buɗe duk fayilolin .flv daga fayil ɗin ajiya.

# tar -xvf videos-14-09-12.tar.bz2

/home/public_html/videos/flv/katrinabarbiedoll231110.flv
/home/public_html/videos/flv/BrookmuellerCIA101125.flv
/home/public_html/videos/flv/dollybackinbb4101125.flv
/home/public_html/videos/flv/JenniferRobert101130.flv
/home/public_html/videos/flv/JustinAwardmovie101125.flv
/home/public_html/videos/flv/Lakme-Fashion-Week.flv
/home/public_html/videos/flv/Mileyphoto101203.flv
/home/public_html/videos/flv/Minissha-Lamba.flv

Don lissafa abubuwan da ke cikin fayil ɗin tarihin tar, kawai aiwatar da umarni mai zuwa tare da zaɓi t (jerin abubuwan). Umurnin da ke ƙasa zai jera abubuwan cikin fayil na uploadprogress.tar.

# tar -tvf uploadprogress.tar

-rw-r--r-- chregu/staff   2276 2011-08-15 18:51:10 package2.xml
-rw-r--r-- chregu/staff   7877 2011-08-15 18:51:10 uploadprogress/examples/index.php
-rw-r--r-- chregu/staff   1685 2011-08-15 18:51:10 uploadprogress/examples/server.php
-rw-r--r-- chregu/staff   1697 2011-08-15 18:51:10 uploadprogress/examples/info.php
-rw-r--r-- chregu/staff    367 2011-08-15 18:51:10 uploadprogress/config.m4
-rw-r--r-- chregu/staff    303 2011-08-15 18:51:10 uploadprogress/config.w32
-rw-r--r-- chregu/staff   3563 2011-08-15 18:51:10 uploadprogress/php_uploadprogress.h
-rw-r--r-- chregu/staff  15433 2011-08-15 18:51:10 uploadprogress/uploadprogress.c
-rw-r--r-- chregu/staff   1433 2011-08-15 18:51:10 package.xml

Yi amfani da umarni mai zuwa don lissafa abubuwan cikin fayil na tar.gz.

# tar -tvf staging.linux-console.net.tar.gz

-rw-r--r-- root/root         0 2012-08-30 04:03:57 staging.linux-console.net-access_log
-rw-r--r-- root/root       587 2012-08-29 18:35:12 staging.linux-console.net-access_log.1
-rw-r--r-- root/root       156 2012-01-21 07:17:56 staging.linux-console.net-access_log.2
-rw-r--r-- root/root       156 2011-12-21 11:30:56 staging.linux-console.net-access_log.3
-rw-r--r-- root/root       156 2011-11-20 17:28:24 staging.linux-console.net-access_log.4
-rw-r--r-- root/root         0 2012-08-30 04:03:57 staging.linux-console.net-error_log
-rw-r--r-- root/root      3981 2012-08-29 18:35:12 staging.linux-console.net-error_log.1
-rw-r--r-- root/root       211 2012-01-21 07:17:56 staging.linux-console.net-error_log.2
-rw-r--r-- root/root       211 2011-12-21 11:30:56 staging.linux-console.net-error_log.3
-rw-r--r-- root/root       211 2011-11-20 17:28:24 staging.linux-console.net-error_log.4

Don jerin abubuwan fayil na tar.bz2, ba da umarnin mai zuwa.

# tar -tvf Phpfiles-org.tar.bz2

drwxr-xr-x root/root         0 2012-09-15 03:06:08 /home/php/
-rw-r--r-- root/root      1751 2012-09-15 03:06:08 /home/php/iframe_ew.php
-rw-r--r-- root/root     11220 2012-09-15 03:06:08 /home/php/videos_all.php
-rw-r--r-- root/root      2152 2012-09-15 03:06:08 /home/php/rss.php
-rw-r--r-- root/root      3021 2012-09-15 03:06:08 /home/php/index.php
-rw-r--r-- root/root      2554 2012-09-15 03:06:08 /home/php/vendor.php
-rw-r--r-- root/root       406 2012-09-15 03:06:08 /home/php/video_title.php
-rw-r--r-- root/root      4116 2012-09-15 03:06:08 /home/php/report.php
-rw-r--r-- root/root      1273 2012-09-15 03:06:08 /home/php/object.html

Don cire fayil guda daya mai suna cleanfiles.sh daga cleanfiles.sh.tar amfani da wannan umarni.

# tar -xvf cleanfiles.sh.tar cleanfiles.sh
OR
# tar --extract --file=cleanfiles.sh.tar cleanfiles.sh

cleanfiles.sh

Don cire fayil guda tecmintbackup.xml daga fayil din tecmintbackup.tar.gz, yi amfani da umarnin kamar haka.

# tar -zxvf tecmintbackup.tar.gz tecmintbackup.xml
OR
# tar --extract --file=tecmintbackup.tar.gz tecmintbackup.xml

tecmintbackup.xml

Don cire fayil guda da ake kira index.php daga fayil ɗin Phpfiles-org.tar.bz2 yi amfani da zaɓi mai zuwa.

# tar -jxvf Phpfiles-org.tar.bz2 home/php/index.php
OR
# tar --extract --file=Phpfiles-org.tar.bz2 /home/php/index.php

/home/php/index.php

Don cirewa ko buɗe fayiloli masu yawa daga tar, tar.gz, da fayil ɗin tar.bz2. Misali, umarnin da ke kasa zai cire “file 1” “file 2” daga fayilolin ajiya.

# tar -xvf tecmint-14-09-12.tar "file1" "file2" 

# tar -zxvf MyImages-14-09-12.tar.gz "file1" "file2" 

# tar -jxvf Phpfiles-org.tar.bz2 "file1" "file2"

Don cire ƙungiyar fayiloli muna amfani da tushen-tushe cirewa. Misali, don cire rukuni na duk fayilolin da tsarinsu ya fara da .php daga fayil ɗin tar, tar.gz, da tar.bz2.

# tar -xvf Phpfiles-org.tar --wildcards '*.php'

# tar -zxvf Phpfiles-org.tar.gz --wildcards '*.php'

# tar -jxvf Phpfiles-org.tar.bz2 --wildcards '*.php'

/home/php/iframe_ew.php
/home/php/videos_all.php
/home/php/rss.php
/home/php/index.php
/home/php/vendor.php
/home/php/video_title.php
/home/php/report.php
/home/php/video.php

Don ƙara fayiloli ko kundayen adireshi zuwa fayilolin tarihin tar da muke dasu muna amfani da zaɓi r (ƙara). Misali, mun kara fayil xyz.txt da shugabanci php zuwa fayil din tarihin tecmint-14-09-12.tar.

# tar -rvf tecmint-14-09-12.tar xyz.txt

# tar -rvf tecmint-14-09-12.tar php

drwxr-xr-x root/root         0 2012-09-15 02:24:21 home/tecmint/
-rw-r--r-- root/root  15740615 2012-09-15 02:23:42 home/tecmint/cleanfiles.sh
-rw-r--r-- root/root    863726 2012-09-15 02:23:41 home/tecmint/openvpn-2.1.4.tar.gz
-rw-r--r-- root/root  21063680 2012-09-15 02:24:21 home/tecmint/tecmint-14-09-12.tar
-rw-r--r-- root/root   4437600 2012-09-15 02:23:41 home/tecmint/phpmyadmin-2.11.11.3-1.el5.rf.noarch.rpm
-rw-r--r-- root/root     12680 2012-09-15 02:23:41 home/tecmint/rpmforge-release-0.5.2-2.el5.rf.i386.rpm
-rw-r--r-- root/root 0 2012-08-18 19:11:04 xyz.txt
drwxr-xr-x root/root 0 2012-09-15 03:06:08 php/ 
-rw-r--r-- root/root 1751 2012-09-15 03:06:08 php/iframe_ew.php 
-rw-r--r-- root/root 11220 2012-09-15 03:06:08 php/videos_all.php 
-rw-r--r-- root/root 2152 2012-09-15 03:06:08 php/rss.php 
-rw-r--r-- root/root 3021 2012-09-15 03:06:08 php/index.php 
-rw-r--r-- root/root 2554 2012-09-15 03:06:08 php/vendor.php 
-rw-r--r-- root/root 406 2012-09-15 03:06:08 php/video_title.php

Umurnin tar ba shi da wani zaɓi don ƙara fayiloli ko kundayen adireshi zuwa fayil ɗin tar.gz mai matsewa wanda aka riga aka tara shi da fayil din tas.bz2. Idan muka gwada zamu sami kuskure mai zuwa.

# tar -rvf MyImages-14-09-12.tar.gz xyz.txt

# tar -rvf Phpfiles-org.tar.bz2 xyz.txt

tar: This does not look like a tar archive
tar: Skipping to next header
xyz.txt
tar: Error exit delayed from previous errors

Don tabbatar da duk wani kwalta ko matattarar fayil ɗin da muka tara muna amfani da zaɓi W (tabbatar). Don yin wannan, kawai yi amfani da misalai masu zuwa na umarni. (Lura: Ba za ku iya yin tabbaci a kan fayil ɗin ajiya ba (* .tar.gz, * .tar.bz2).

# tar tvfW tecmint-14-09-12.tar

tar: This does not look like a tar archive
tar: Skipping to next header
tar: Archive contains obsolescent base-64 headers
tar: VERIFY FAILURE: 30740 invalid headers detected
Verify -rw-r--r-- root/root    863726 2012-09-15 02:23:41 /home/tecmint/openvpn-2.1.4.tar.gz
Verify -rw-r--r-- root/root  21063680 2012-09-15 02:24:21 /home/tecmint/tecmint-14-09-12.tar
tar: /home/tecmint/tecmint-14-09-12.tar: Warning: Cannot stat: No such file or directory
Verify -rw-r--r-- root/root   4437600 2012-09-15 02:23:41 home/tecmint/phpmyadmin-2.11.11.3-1.el5.rf.noarch.rpm
tar: /home/tecmint/phpmyadmin-2.11.11.3-1.el5.rf.noarch.rpm: Warning: Cannot stat: No such file or directory
Verify -rw-r--r-- root/root     12680 2012-09-15 02:23:41 home/tecmint/rpmforge-release-0.5.2-2.el5.rf.i386.rpm
tar: /home/tecmint/rpmforge-release-0.5.2-2.el5.rf.i386.rpm: Warning: Cannot stat: No such file or directory
Verify -rw-r--r-- root/root         0 2012-08-18 19:11:04 xyz.txt
Verify drwxr-xr-x root/root         0 2012-09-15 03:06:08 php/

Don bincika girman kowane kwalta, tar.gz, da fayil na tar.bz2, yi amfani da umarni mai zuwa. Misali, umarnin da ke ƙasa zai nuna girman fayil ɗin ajiyar a cikin Kilobytes (KB).

# tar -czf - tecmint-14-09-12.tar | wc -c
12820480

# tar -czf - MyImages-14-09-12.tar.gz | wc -c
112640

# tar -czf - Phpfiles-org.tar.bz2 | wc -c
20480

  1. c - ƙirƙiri fayil ɗin ajiya.
  2. x - cire fayil ɗin ajiya.
  3. v - nuna ci gaban fayil ɗin ajiyar bayanai.
  4. f - sunan fayil ɗin fayil ɗin fayil.
  5. t - duba abubuwan cikin fayil ɗin tarihin.
  6. j - ajiyar kayan tarihi ta cikin bzip2.
  7. z - adana taskar cikin gzip.
  8. r - ɗaukaka ko sabunta fayiloli ko kundayen adireshi zuwa fayilolin tarihin da ke ciki.
  9. W - Tabbatar da fayil ɗin ajiyar bayanai.
  10. katako - Saka siffofin cikin umarnin tar na UNIX.

Shi ke nan a yanzu, da fatan misalan umarnin kwalta na sama sun ishe ku koya, kuma don ƙarin bayani sai ku yi amfani da umarnin tar na mutum.

Idan kuna neman raba duk wani babban fayil na tarin tar a cikin bangarori da yawa ko tubalan, kawai shiga cikin wannan labarin:

Idan mun rasa kowane misali don Allah ku raba tare da mu ta akwatin magana kuma don Allah kar a manta da raba wannan labarin ga abokanka. Wannan ita ce hanya mafi kyau don yin godiya… ..