ลีนุกซ์ “น้ำมันดิน” ย่อมาจากเทปเก็บถาวรซึ่งใช้โดยจำนวนมาก ลินุกซ์/ยูนิกซ์ ผู้ดูแลระบบในการจัดการกับเทปไดรฟ์ สำรองข้อมูลใน Linux.
เดอะ คำสั่ง tar ใน Linux ใช้เพื่อริปคอลเลคชันของไฟล์และไดเร็กทอรีเป็นไฟล์เก็บถาวรที่มีการบีบอัดสูง ซึ่งเรียกกันทั่วไปว่า ทาร์บอล หรือ น้ำมันดิน, gzip และ bzip ใน ลีนุกซ์.
เดอะ น้ำมันดิน เป็นคำสั่งที่ใช้กันอย่างแพร่หลายในการสร้างไฟล์เก็บถาวรแบบบีบอัดที่สามารถย้ายจากดิสก์หนึ่งไปยังอีกดิสก์หนึ่งหรือเครื่องหนึ่งไปยังอีกเครื่องหนึ่งได้อย่างง่ายดาย
ในบทความนี้เราจะมาทบทวนและหารือเกี่ยวกับต่างๆ ตัวอย่างคำสั่ง tar รวมถึงวิธีการสร้างไฟล์เก็บถาวรโดยใช้ (น้ำมันดิน, tar.gz, และ tar.bz2) การบีบอัด, วิธีแยกไฟล์เก็บถาวร, แยกไฟล์เดียว, ดูเนื้อหาของไฟล์, ตรวจสอบ ไฟล์, เพิ่มไฟล์หรือไดเร็กทอรีไปยังไฟล์เก็บถาวรที่มีอยู่, ประมาณขนาดของไฟล์เก็บถาวร tar, เป็นต้น
คุณอาจชอบ:
วัตถุประสงค์หลักของคู่มือนี้คือการให้ข้อมูลต่างๆ ตัวอย่างคำสั่ง 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 ไฟล์เก็บถาวรเราใช้ตัวเลือก ซี. ตัวอย่างเช่น คำสั่งด้านล่างจะสร้างไฟล์บีบอัด 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 เพียงใช้คำสั่งต่อไปนี้โดยใช้ตัวเลือก x (สารสกัด). ตัวอย่างเช่น คำสั่งด้านล่างจะเลิกใช้ไฟล์ public_html-14-09-12.tar ในไดเรกทอรีการทำงานปัจจุบัน
หากคุณต้องการ untar ในไดเร็กทอรีอื่นให้ใช้ตัวเลือก -ค (ไดเร็กทอรีที่ระบุ).
## ไฟล์ Untar ในไดเรกทอรีปัจจุบัน ### tar -xvf public_html-14-09-12.tar## ไฟล์ Untar ในไดเรกทอรีที่ระบุ ### 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
เพื่อคลายการบีบอัด 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 วิดีโอ-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 ให้เรียกใช้คำสั่งต่อไปนี้พร้อมตัวเลือก ที (เนื้อหารายการ). คำสั่งด้านล่างจะแสดงรายการเนื้อหาของ อัพโหลดความคืบหน้า tar ไฟล์.
# tar -tvf อัปโหลดความคืบหน้า 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 ความคืบหน้าการอัพโหลด/ตัวอย่าง/ index.php -rw-r--r-- chregu/staff 1685 2011-08-15 18:51:10 ความคืบหน้าการอัพโหลด/ตัวอย่าง/ server.php -rw-r--r-- chregu/staff 1697 2011-08-15 18:51:10 ความคืบหน้าการอัพโหลด/ตัวอย่าง/ info.php -rw-r--r-- chregu/staff 367 2011-08-15 18:51:10 ความคืบหน้าการอัพโหลด/ config.m4 -rw-r--r-- chregu/staff 303 2011-08-15 18:51:10 ความคืบหน้าการอัพโหลด/ config.w32 -rw-r--r-- chregu/staff 3563 2011-08-15 18:51:10 ความคืบหน้าการอัพโหลด/ php_uploadprogress.h -rw-r--r-- chregu/staff 15433 2011-08-15 18:51:10 ความคืบหน้าการอัพโหลด/ อัพโหลดความคืบหน้าค. -rw-r--r-- chregu/staff 1433 2011-08-15 18:51:10 package.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-- รูท/รูท 587 2012-08-29 18:35:12 staging.tecmint.com-access_log.1 -rw-r--r-- รูท/รูท 156 2012-01-21 07:17:56 staging.tecmint.com-access_log.2 -rw-r--r-- รูท/รูท 156 2011/12/21 11:30:56 staging.tecmint.com-access_log.3. -rw-r--r-- รูท/รูท 156 2011-11-20 17:28:24 staging.tecmint.com-access_log.4. -rw-r--r-- ราก/ราก 0 2012-08-30 04:03:57 staging.tecmint.com-error_log -rw-r--r-- root/root 981 2012-08-29 18:35:12 staging.tecmint.com-error_log.1. -rw-r--r-- ราก/ราก 211 2012-01-21 07:17:56 staging.tecmint.com-error_log.2. -rw-r--r-- root/root 211 21/12/2554 11:30:56 staging.tecmint.com-error_log.3. -rw-r--r-- ราก/ราก 211 2011-11-20 17:28:24 staging.tecmint.com-error_log.4
เพื่อแสดงรายการเนื้อหาของ tar.bz2 ไฟล์ออกคำสั่งต่อไปนี้
# tar -tvf Phpfiles-org.tar.bz2drwxr-xr-x รูท/รูท 0 2012-09-15 03:06:08 /home/php/ -rw-r--r-- รูท/รูท 1751 2012-09-15 03:06:08 /home/php/iframe_ew.php -rw-r--r-- รูท/รูท 11220 2012-09-15 03:06:08 /home/php/videos_all.php. -rw-r--r-- รูท/รูท 2152 2012-09-15 03:06:08 /home/php/rss.php. -rw-r--r-- รูท/รูท 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-- รูท/รูท 406 2012-09-15 03:06:08 /home/php/video_title.php. -rw-r--r-- รูท/รูท 4116 2012-09-15 03:06:08 /home/php/report.php -rw-r--r-- รูท/รูท 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 หน้าแรก/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, 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.ini ที่มีอยู่ tecmint-14-09-12.tar ไฟล์เก็บถาวร
# tar -rvf tecmint-14-09-12.tar xyz.txt# tar -rvf tecmint-14-09-12.tar php.inidrwxr-xr-x root/root 0 2012-09-15 02:24:21 หน้าแรก/tecmint/ -rw-r--r-- root/root 15740615 2012-09-15 02:23:42 หน้าแรก/tecmint/ cleanfiles.sh -rw-r--r-- root/root 863726 2012-09-15 02:23:41 หน้าแรก/tecmint/ openvpn-2.1.4.tar.gz. -rw-r--r-- root/root 21063680 2012-09-15 02:24:21 หน้าแรก/tecmint/ tecmint-14-09-12.tar. -rw-r--r-- root/root 4437600 2012-09-15 02:23:41 หน้าแรก/tecmint/ phpmyadmin-2.11.11.3-1.el5.rf.noarch.rpm -rw-r--r-- root/root 12680 2012-09-15 02:23:41 หน้าแรก/tecmint/ rpmforge-release-0.5.2-2.el5.rf.i386.rpm.-rw-r--r-- รูท/รูท 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-- รูท/รูท 2152 2012-09-15 03:06:08 php/rss.php -rw-r--r -- รูท/รูท 3021 2012-09-15 03:06:08 php/index.php -rw-r--r-- รูท/รูท 2554 2012-09-15 03:06:08 php/vendor.php -rw-r--r-- รูท/รูท 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 หรือไฟล์เก็บถาวรที่บีบอัดเราใช้ตัวเลือก ว (ตรวจสอบ). ในการทำเช่นนี้ เพียงใช้ตัวอย่างคำสั่งต่อไปนี้ (บันทึก: คุณไม่สามารถทำการยืนยันในไฟล์บีบอัด ( *.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: คำเตือน: ไม่สามารถ stat: ไม่มีไฟล์หรือไดเร็กทอรีดังกล่าว ตรวจสอบ -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: คำเตือน: ไม่สามารถ stat: ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว ตรวจสอบ -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: คำเตือน: ไม่สามารถ stat: ไม่มีไฟล์หรือไดเร็กทอรีดังกล่าว ตรวจสอบ -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 ไฟล์เก็บถาวร ใช้คำสั่งต่อไปนี้ ตัวอย่างเช่น คำสั่งด้านล่างจะแสดงขนาดของไฟล์เก็บถาวรเป็นกิโลไบต์ (กิโลไบต์).
# tar -czf - tecmint-14-09-12.tar | สุขา - ค 12820480 # tar -czf - MyImages-14-09-12.tar.gz | สุขา - ค 112640 # tar -czf - Phpfiles-org.tar.bz2 | สุขา - ค 20480
หากต้องการแยกไฟล์และไดเร็กทอรีบางไฟล์ในขณะที่สร้างไฟล์ tar.gz ไฟล์ คุณสามารถใช้คำสั่งต่อไปนี้กับไฟล์ --ไม่รวม
ตัวเลือกที่จะไม่รวมไฟล์และไดเร็กทอรีเมื่อสร้างไฟล์เก็บถาวร tar ดังที่แสดง
# tar --exclude='file1.txt' -zcvf backup.tar.gz /home/tecmint # tar --exclude='/home/tecmint/uploads' -zcvf backup.tar.gz /home/tecmint
ในคำสั่งข้างต้น เราไม่รวมไฟล์ 'ไฟล์ 1.txt' และ 'อัปโหลด‘ ไดเรกทอรีจาก /home/tecmint โฟลเดอร์
เพื่อแยกไฟล์ที่มีนามสกุลไฟล์เฉพาะ (.txt)
เมื่อสร้างไฟล์เก็บถาวร tar ให้ใช้:
# tar --exclude='*.txt' -zcvf backup.tar.gz /home/tecmint
คำสั่ง tar ต่อไปนี้จะลบไฟล์หรือไดเร็กทอรีออกจากไฟล์ tar ที่สร้างไว้แล้วโดยใช้ --ลบ
ตัวเลือกตามที่แสดง
# tar --delete -f backup.tar.gz file1.txt # tar --delete -f backup.tar.gz '/home/tecmint/uploads'
คำสั่ง tar ต่อไปนี้จะแตกไฟล์ที่มีนามสกุลเฉพาะเท่านั้น .png
จากไฟล์เก็บถาวร tar โดยใช้ไฟล์ --ไวด์การ์ด
ตัวเลือกตามที่แสดง
# tar -xvf backup.tar.gz --wildcards '*.png'
-ค
– สร้างไฟล์เก็บถาวร-x
- แยกไฟล์เก็บถาวร-v
– แสดงความคืบหน้าของไฟล์เก็บถาวร-ฉ
– ชื่อไฟล์ของไฟล์เก็บถาวร-t
– ดูเนื้อหาของไฟล์เก็บถาวร-ยู
– เก็บและเพิ่มไปยังไฟล์เก็บถาวรที่มีอยู่-เจ
– กรองไฟล์เก็บถาวรผ่าน bzip2-z
– กรองไฟล์เก็บถาวรผ่าน gzip-ร
– ต่อท้ายหรืออัพเดตไฟล์หรือไดเร็กทอรีไปยังไฟล์เก็บถาวรที่มีอยู่-ว
– ตรวจสอบไฟล์เก็บถาวร-ก
– เชื่อมไฟล์เก็บถาวรเข้าด้วยกัน--ไวด์การ์ด
– ระบุรูปแบบในคำสั่ง UNIX tar--ไม่รวม
– ไม่รวมไฟล์และไดเร็กทอรีเมื่อสร้างไฟล์เก็บถาวร--ลบ
– ลบไฟล์และไดเร็กทอรีออกจากไฟล์เก็บถาวรสำหรับตอนนี้หวังว่าข้างต้น ตัวอย่างคำสั่ง tar เพียงพอสำหรับคุณที่จะเรียนรู้และสำหรับข้อมูลเพิ่มเติมโปรดใช้ น้ำมันดิน สั่งการ.
#ผู้ชายทาร์.
หากคุณต้องการแยกไฟล์เก็บถาวร tar ขนาดใหญ่ออกเป็นหลายส่วนหรือหลายบล็อก ให้อ่านบทความนี้:
หากเราพลาดตัวอย่างใด ๆ โปรดแบ่งปันกับเราผ่านช่องแสดงความคิดเห็น และโปรดอย่าลืมแบ่งปันบทความนี้กับเพื่อน ๆ ของคุณ นี่เป็นวิธีที่ดีที่สุดในการกล่าวขอบคุณ…..