![Linux-dash: Παρακολουθεί την "Απόδοση διακομιστή Linux" από απόσταση χρησιμοποιώντας το πρόγραμμα περιήγησης στο Web](/f/945cb63c81a7945a0063260d2c0598f7.png?width=100&height=100)
Το Linux "πίσσα”Αντιπροσωπεύει το αρχείο αρχείων, το οποίο χρησιμοποιείται από μεγάλο αριθμό Linux/Unix διαχειριστές συστήματος για την αντιμετώπιση αντιγράφων ασφαλείας μονάδων δίσκου. Η εντολή tar χρησιμοποιείται για την αντιγραφή μιας συλλογής αρχείων και καταλόγων σε ένα πολύ συμπιεσμένο αρχείο αρχειοθέτησης που συνήθως ονομάζεται tarball ή πίσσα, gzip και bzip σε Linux. Η tar είναι η πιο διαδεδομένη εντολή για τη δημιουργία συμπιεσμένων αρχείων αρχειοθέτησης και η οποία μπορεί εύκολα να μετακινηθεί από έναν δίσκο σε άλλο δίσκο ή μηχάνημα σε μηχάνημα.
Σε αυτό το άρθρο, θα εξετάσουμε και θα συζητήσουμε διάφορα παραδείγματα εντολών tar συμπεριλαμβανομένου του τρόπου δημιουργίας αρχείων αρχειοθέτησης χρησιμοποιώντας (πίσσα, tar.gz, και tar.bz2) συμπίεση, πώς να εξαγάγετε αρχείο αρχειοθέτησης, να εξαγάγετε ένα μόνο αρχείο, να δείτε το περιεχόμενο του αρχείου, να επαληθεύσετε ένα αρχείο, να προσθέσετε αρχεία ή καταλόγους στο αρχείο αρχειοθέτησης, να εκτιμήσετε το μέγεθος του αρχείου αρχειοθέτησης tar κ.λπ.
Ο κύριος σκοπός αυτού του οδηγού είναι να παρέχει διάφορα παραδείγματα εντολών tar Αυτό μπορεί να είναι χρήσιμο για να κατανοήσετε και να γίνετε ειδικός στον χειρισμό αρχείων πίσσας.
Το παρακάτω παράδειγμα εντολής θα δημιουργήσει ένα πίσσα αρχείο αρχειοθέτησης tecmint-14-09-12.tar για έναν κατάλογο /home/tecmint στον τρέχοντα κατάλογο εργασίας. Δείτε την ενδεικτική εντολή εν ενεργεία.
# 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
Ας συζητήσουμε για κάθε επιλογή που χρησιμοποιείται στην παραπάνω εντολή για τη δημιουργία ενός αρχείου αρχειοθέτησης tar.
Για να δημιουργήσετε ένα συμπιεσμένο gzip αρχείο αρχειοθέτησης χρησιμοποιούμε την επιλογή ως z. Για παράδειγμα, η παρακάτω εντολή θα δημιουργήσει μια συμπιεσμένη MyImages-14-09-12.tar.gz αρχείο για τον κατάλογο /home/MyImages. (Σημείωση: Τα tar.gz και tgz είναι και τα δύο παρόμοια).
# tar cvzf MyImages-14-09-12.tar.gz /home /MyImages Ή. # 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
ο bz2 συμπιέζει και δημιουργεί ένα αρχείο αρχειοθέτησης μικρότερο από το μέγεθος του gzip. ο bz2 Η συμπίεση απαιτεί περισσότερο χρόνο για τη συμπίεση και την αποσυμπίεση των αρχείων από ό, τι gzip, που απαιτεί λιγότερο χρόνο. Για να δημιουργήσουμε ένα εξαιρετικά συμπιεσμένο αρχείο tar χρησιμοποιούμε την επιλογή ι. Το ακόλουθο παράδειγμα εντολής θα δημιουργήσει ένα Phpfiles-org.tar.bz2 αρχείο για έναν κατάλογο /home/php. (Σημείωση: Τα tar.bz2 και tbz είναι παρόμοια με τα tb2).
# tar cvfj Phpfiles-org.tar.bz2 /home /php Ή. # tar cvfj Phpfiles-org.tar.tbz /home /php Ή # 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
Για να αφαιρέσετε ή να εξαγάγετε ένα αρχείο tar, απλώς εκδώστε την ακόλουθη εντολή χρησιμοποιώντας την επιλογή Χ (εκχύλισμα). Για παράδειγμα, η παρακάτω εντολή θα αφαιρέσει το αρχείο public_html-14-09-12.tar στον τρέχοντα κατάλογο εργασίας. Εάν θέλετε να ξεκλειδώσετε σε διαφορετικό κατάλογο, χρησιμοποιήστε την επιλογή ως -ΝΤΟ (καθορισμένο κατάλογο).
## Untar αρχεία στον τρέχοντα κατάλογο ### tar -xvf public_html-14-09-12.tar## Untar αρχεία στον καθορισμένο κατάλογο ### tar -xvf public_html-14-09-12.tar -C/home/public_html/βίντεο//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
Για αποσυμπίεση tar.gz αρχείο αρχειοθέτησης, απλώς εκτελέστε την ακόλουθη εντολή. Εάν θέλουμε να ξεκλειδώσουμε σε διαφορετικούς καταλόγους, απλώς χρησιμοποιήστε την επιλογή -ΝΤΟ και τη διαδρομή καταλόγου, όπως φαίνεται στο παραπάνω παράδειγμα.
# tar -xvf μικρογραφίες-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
Για να αποσυμπιέσετε το εξαιρετικά συμπιεσμένο tar.bz2 αρχείο, απλώς χρησιμοποιήστε την ακόλουθη εντολή. Το παρακάτω παράδειγμα εντολής θα καταργήσει όλες τις .flv αρχεία από το αρχείο αρχειοθέτησης.
# 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
Για να καταχωρίσετε τα περιεχόμενα του αρχείου tar tarch, απλώς εκτελέστε την ακόλουθη εντολή με επιλογή τ (περιεχόμενο λίστας). Η παρακάτω εντολή θα εμφανίσει το περιεχόμενο του uploadprogress.tar αρχείο.
# tar -tvf uploadprogress.tar -rw-r-r-- chregu/staff 2276 2011-08-15 18:51:10 πακέτο2.xml. -rw-r-r-- chregu/staff 7877 2011-08-15 18:51:10 uploadprogress/samples/index.php. -rw-r-r-- chregu/staff 1685 2011-08-15 18:51:10 uploadprogress/samples/server.php. -rw-r-r-- chregu/staff 1697 2011-08-15 18:51:10 uploadprogress/samples/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/προσωπικό 15433 2011-08-15 18:51:10 uploadprogress/uploadprogress.c. -rw-r-r-- chregu/προσωπικό 1433 2011-08-15 18:51:10 pack.xml
Χρησιμοποιήστε την ακόλουθη εντολή για να παραθέσετε το περιεχόμενο του tar.gz αρχείο.
# tar -tvf staging.tecmint.com.tar.gz -rw-r-r-- root/root 0 2012-08-30 04:03:57 staging.tecmint.com-access_log. -rw-r-r-- root/root 587 2012-08-29 18:35:12 staging.tecmint.com-access_log.1. -rw-r-r-- root/root 156 2012-01-21 07:17:56 staging.tecmint.com-access_log.2. -rw-r-r-- root/root 156 2011-12-21 11:30:56 staging.tecmint.com-access_log.3. -rw-r-r-- root/root 156 2011-11-20 17:28:24 staging.tecmint.com-access_log.4. -rw-r-r-- root/root 0 2012-08-30 04:03:57 staging.tecmint.com-error_log. -rw-r-r-- root/root 3981 2012-08-29 18:35:12 staging.tecmint.com-error_log.1. -rw-r-r-- root/root 211 2012-01-21 07:17:56 staging.tecmint.com-error_log.2. -rw-r-r-- root/root 211 2011-12-21 11:30:56 staging.tecmint.com-error_log.3. -rw-r-r-- root/root 211 2011-11-20 17:28:24 staging.tecmint.com-error_log.4
Για να παραθέσετε το περιεχόμενο του tar.bz2 αρχείο, εκδώστε την ακόλουθη εντολή.
# tar -tvf Phpfiles -org.tar.bz2drwxr-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
Για εξαγωγή ενός αρχείου που ονομάζεται cleanfiles.sh από cleanfiles.sh.tar χρησιμοποιήστε την ακόλουθη εντολή.
# tar -xvf cleanfiles.sh.tar cleanfiles.sh Ή. # tar --extract --file = cleanfiles.sh.tar cleanfiles.sh cleanfiles.sh
Για εξαγωγή ενός μόνο αρχείου tecmintbackup.xml από το tecmintbackup.tar.gz αρχείο αρχειοθέτησης, χρησιμοποιήστε την εντολή ως εξής.
# tar -zxvf tecmintbackup.tar.gz tecmintbackup.xml Ή. # tar --extract --file = tecmintbackup.tar.gz tecmintbackup.xml tecmintbackup.xml
Για εξαγωγή ενός αρχείου που ονομάζεται index.php από το αρχείο Phpfiles-org.tar.bz2 χρησιμοποιήστε την ακόλουθη επιλογή.
# tar -jxvf Phpfiles -org.tar.bz2 home/php/index.php Ή. # tar --extract --file = Phpfiles-org.tar.bz2 /home/php/index.php /home/php/index.php
Για εξαγωγή ή αφαίρεση πολλών αρχείων από το πίσσα, tar.gz, και tar.bz2 αρχείο αρχειοθέτησης. Για παράδειγμα, η παρακάτω εντολή θα εξαγάγει "αρχείο 1” “αρχείο 2”Από τα αρχεία αρχειοθέτησης.
# tar -xvf tecmint-14-09-12.tar "αρχείο 1" "αρχείο 2"# tar -zxvf MyImages-14-09-12.tar.gz "αρχείο 1" "αρχείο 2"# tar -jxvf Phpfiles -org.tar.bz2 "αρχείο 1" "αρχείο 2"
Για την εξαγωγή μιας ομάδας αρχείων που χρησιμοποιούμε με βάση μπαλαντέρ εξαγωγή Για παράδειγμα, για εξαγωγή μιας ομάδας όλων των αρχείων των οποίων το μοτίβο ξεκινά με .php από ένα πίσσα, tar.gz και 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
Για να προσθέσουμε αρχεία ή καταλόγους στα υπάρχοντα αρχεία αρχειοθέτησης tar χρησιμοποιούμε την επιλογή ρ (προσαρτώ). Για παράδειγμα, προσθέτουμε αρχείο xyz.txt και κατάλογο php στο υπάρχον tecmint-14-09-12.tar αρχείο αρχειοθέτησης.
# tar -rvf tecmint-14-09-12.tar xyz.txt# tar -rvf tecmint-14-09-12.tar phpdrwxr-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.txtdrwxr-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-- ρίζα/ρίζα 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
Η εντολή tar δεν έχει επιλογή προσθήκης αρχείων ή καταλόγων σε υπάρχοντα συμπιεσμένα tar.gz και tar.bz2 αρχείο αρχειοθέτησης. Αν προσπαθήσουμε θα έχουμε το ακόλουθο σφάλμα.
# tar -rvf MyImages-14-09-12.tar.gz xyz.txt# tar -rvf Phpfiles -org.tar.bz2 xyz.txt tar: Αυτό δεν μοιάζει με αρχείο tar. tar: Μετάβαση στην επόμενη κεφαλίδα. xyz.txt. tar: Το σφάλμα καθυστέρησε την έξοδο από προηγούμενα σφάλματα
Για να επαληθεύσουμε οποιοδήποτε tar ή συμπιεσμένο αρχειοθετημένο αρχείο χρησιμοποιούμε την επιλογή W (επαληθεύω). Για να το κάνετε αυτό, απλώς χρησιμοποιήστε τα ακόλουθα παραδείγματα εντολών. (Σημείωση: Δεν μπορείτε να κάνετε επαλήθευση σε συμπιεσμένο ( *.tar.gz, *.tar.bz2 ) αρχείο αρχειοθέτησης).
# tar tvfW tecmint-14-09-12.tar tar: Αυτό δεν μοιάζει με αρχείο tar. tar: Μετάβαση στην επόμενη κεφαλίδα. tar: Το αρχείο περιέχει παρωχημένες κεφαλίδες βάσης-64. tar: ΕΠΙΒΕΒΑΙΩΣΗ ΑΠΟΤΥΧΙΑ: Εντοπίστηκαν 30740 μη έγκυρες κεφαλίδες. Επαλήθευση -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. tar: /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. tar: /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. tar: /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/
Για να ελέγξετε το μέγεθος οποιασδήποτε πίσσα, tar.gz, και tar.bz2 αρχείο αρχειοθέτησης, χρησιμοποιήστε την ακόλουθη εντολή. Για παράδειγμα, η παρακάτω εντολή θα εμφανίσει το μέγεθος του αρχείου αρχειοθέτησης σε 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
Αυτό είναι προς το παρόν, ελπίζω τα παραπάνω παραδείγματα εντολών tar είναι αρκετά για να μάθετε και για περισσότερες πληροφορίες, χρησιμοποιήστε το άνθρωπος πίσσα εντολή.
Αν θέλετε να χωρίσετε οποιοδήποτε μεγάλο αρχείο αρχειοθέτησης tar σε πολλά μέρη ή μπλοκ, απλώς περάστε από αυτό το άρθρο:
Μην χάσετε:Διαχωρίστε το μεγάλο αρχείο «tar» σε πολλαπλά αρχεία συγκεκριμένου μεγέθους
Εάν χάσαμε κάποιο παράδειγμα, μοιραστείτε το μαζί μας μέσω του πεδίου σχολίων και μην ξεχάσετε να μοιραστείτε αυτό το άρθρο με τους φίλους σας. Αυτός είναι ο καλύτερος τρόπος για να πεις ευχαριστώ… ..