และ Xen ในการทำงานกับไฟล์เก็บถาวรนั้นต้องการเพียงส่วนประกอบพื้นฐานของระบบเท่านั้น กล่าวคือ ทาร์, จีซิปและ บีซิป2ซึ่งเมื่อสร้างไฟล์เก็บถาวรที่บีบอัดให้ทำงานโดยรวมเพราะ ผู้จัดเก็บในตัวเอง ทาร์ไม่ได้ให้ความเป็นไปได้ในการบีบอัดข้อมูล มันถูกใช้เพื่อจุดประสงค์นี้ จีซิปหรือ บีซิป2- คลังเก็บที่สร้างขึ้นโดยใช้ จีซิปมักจะมีนามสกุล .tar.gzและเมื่อใช้ บีซิป2 — .tar.bz2.
การสร้างไฟล์เก็บถาวร tar โดยไม่มีการบีบอัด
หากต้องการสร้างไฟล์เก็บถาวรให้ใช้คำสั่ง:
Tar -cf filename.tar ไฟล์1 ไฟล์2 ไฟล์N
พารามิเตอร์ - อ้างอิงรับผิดชอบในการสร้างไฟล์เก็บถาวร ชื่อไฟล์.tarซึ่งจะรวมถึงไฟล์ที่ระบุ ไดเร็กทอรีสามารถระบุแทนไฟล์ได้
การสร้างไฟล์เก็บถาวรโดยใช้การบีบอัด
เนื่องจากมีอย่างน้อยสองวิธีสำหรับการบีบอัด จึงมีการใช้ชุดพารามิเตอร์แยกกันเพื่อใช้แต่ละวิธี
ตัวอย่างการบีบอัด จีซิป:
Tar -cvzf ชื่อไฟล์.tar.gz dir_name
ในกรณีนี้ เราพยายามแพ็คโฟลเดอร์ dir_nameไปยังที่เก็บถาวร ชื่อไฟล์.tar.gz- จากพารามิเตอร์ที่กำหนด -zบ่งบอกถึงการใช้วิธี จีซิป, ก -vแสดงผลลัพธ์ของกระบวนการสร้างไฟล์เก็บถาวรโดยระบุไฟล์หรือโฟลเดอร์ที่แพ็ก
ตัวอย่างการบีบอัด บีซิป2:
Tar -cvjf ชื่อไฟล์.tar.bz2 dir_name
คำสั่งนี้คล้ายกับคำสั่งก่อนหน้าและมีความแตกต่างในพารามิเตอร์ –เจ, เพราะ เป็นผู้รับผิดชอบในการใช้วิธีการบีบอัด บีซิป2.
กำลังคลายไฟล์เก็บถาวร
หากต้องการแตกไฟล์เก็บถาวรให้ใช้คำสั่ง:
ทาร์ -xvf ชื่อไฟล์.tar.bz2
ในกรณีนี้คือไฟล์เก็บถาวร ชื่อไฟล์.tar.bz2จะถูกแตกไฟล์ลงในโฟลเดอร์ที่คุณอยู่เมื่อคุณรันคำสั่ง หากต้องการแตกไฟล์เก็บถาวรไปยังไดเร็กทอรีอื่น คุณสามารถใช้คำสั่ง:
Tar -xvf filename.tar.bz2 -C /path/to/folder
ในกรณีนี้ ไฟล์เก็บถาวรจะถูกคลายแพ็กในไดเร็กทอรีที่ระบุ
ดูเนื้อหาที่เก็บถาวรโดยไม่ต้องแกะกล่อง
เพื่อวัตถุประสงค์เหล่านี้ จะใช้คำสั่งต่อไปนี้:
Tar -tf ชื่อไฟล์.tar.gz
อันเป็นผลมาจากการดำเนินการคำสั่งรายการไฟล์และโฟลเดอร์ที่เก็บไว้ในไฟล์เก็บถาวรจะปรากฏขึ้น หากคุณเพิ่มลงในรายการพารามิเตอร์ -vคุณจะได้รับข้อมูลเพิ่มเติมเกี่ยวกับเนื้อหา ระบุขนาดไฟล์ สิทธิ์การเข้าถึง ชื่อเจ้าของและกลุ่ม ฯลฯ
ทาร์คุณสามารถใช้คำสั่ง:
Tar --help #call ความช่วยเหลือเกี่ยวกับคำสั่งและพารามิเตอร์ man tar #call เอกสารเพิ่มเติม
การสร้างและแตกไฟล์ ZIP
การสร้างไฟล์ zip ทำได้โดยใช้คำสั่ง:
ชื่อไฟล์ ZIP archive.zip
แทน ไฟล์เก็บถาวร.zipระบุชื่อของไฟล์เก็บถาวรที่จะสร้าง แทน ชื่อไฟล์ระบุชื่อไฟล์ที่ต้องการเก็บถาวร หากต้องการเก็บถาวรทั้งโฟลเดอร์ คุณต้องใช้ตัวเลือกนี้ –รซึ่งเริ่มต้นการเก็บถาวรแบบเรียกซ้ำ หากไม่มีพารามิเตอร์นี้ ระบบจะเก็บถาวรเฉพาะโฟลเดอร์ที่ไม่มีไฟล์แนบเท่านั้น คำสั่งตัวอย่าง:
Zip –r archive.zip dirname
ไฟล์เก็บถาวรถูกแตกไฟล์โดยใช้คำสั่ง เปิดเครื่องรูด:
แตกไฟล์ archivename.zip
หากคุณต้องการแตกไฟล์ไปยังโฟลเดอร์ใดโฟลเดอร์หนึ่ง ให้ใช้พารามิเตอร์ –ง- ตัวอย่างเช่น:
คลายซิป –d dirname archivename.zip
แทน นามสกุลระบุโฟลเดอร์ที่คุณต้องการแยกข้อมูลจากไฟล์เก็บถาวร
ดูรายการคุณสมบัติ Archiver ทั้งหมด ซิปและ เปิดเครื่องรูดคุณสามารถใช้คำสั่ง:
Zip --help หรือ unzip --help #call ความช่วยเหลือเกี่ยวกับคำสั่งและพารามิเตอร์ man zip หรือ man unzip #call เอกสารเพิ่มเติม
กำลังคลายไฟล์เก็บถาวร RAR
หากต้องการแยกเนื้อหาของไฟล์เก็บถาวรให้ใช้คำสั่ง unrar:
แตกไฟล์ชื่อ.rar
คุณสามารถดูรายการไฟล์ในไฟล์เก็บถาวรโดยไม่ต้องแตกไฟล์ด้วยคำสั่ง:
Unrar –t ชื่อไฟล์.rar
บันทึก:เป็นที่น่าสังเกตว่า เลิกราร์อาจไม่สามารถใช้ได้ตามค่าเริ่มต้นในลีนุกซ์บางรุ่น คุณสามารถติดตั้งซอฟต์แวร์นี้โดยใช้คำสั่งต่อไปนี้:
CentOS/Fedora:
ยำติดตั้ง unrar
เดเบียน/อูบุนตู:
Apt-get ติดตั้ง unrar ฟรี
ดูรายการคุณสมบัติ Archiver ทั้งหมด unrarคุณสามารถใช้คำสั่ง:
Rar --help #call ความช่วยเหลือเกี่ยวกับคำสั่งและพารามิเตอร์ man unrar #call เอกสารเพิ่มเติม
ตัวอย่างการสร้างสำเนาสำรองข้อมูลบน VPS
สมมติว่าบน VPS คุณต้องสร้างสำเนาสำรองของไฟล์ไซต์ที่อยู่ในไดเร็กทอรี /var/www/html/mysite- หากต้องการสร้างไฟล์บีบอัดข้อมูลที่อยู่ในไดเร็กทอรีที่ระบุ คุณต้องรันคำสั่งต่อไปนี้:
ทาร์ -cvzf mysite.tar.gz /var/www/html/mysite
ส่งผลให้เนื้อหาของไดเร็กทอรี /var/www/html/mysiteจะถูกเก็บถาวร mysite.tar.gz.
หัวเรื่องTar เป็นหนึ่งในผู้จัดเก็บเอกสารที่พบบ่อยที่สุดบนระบบ Linux แต่ tar ไม่บีบอัดไฟล์ในไฟล์เก็บถาวร Tar เพียงแพ็คไฟล์ลงในไฟล์เก็บถาวรโดยไม่มีการบีบอัด สำหรับการบีบอัด tar สามารถทำงานควบคู่กับ bzip2 หรือ gzip ได้ บทความนี้จะอธิบายวิธีการใช้น้ำมันดิน
สร้างไฟล์เก็บถาวรจากโฟลเดอร์
หากต้องการสร้างไฟล์ tar ที่บีบอัดของ gzip ให้ป้อนคำสั่งต่อไปนี้:
tar -zcf /root/files.tar.gz /home/folder/
ลองดูตัวอย่างในส่วนต่างๆ คำสั่ง tar รันด้วยตัวเลือกต่อไปนี้:
z - ไฟล์เก็บถาวรที่มีการบีบอัด gzip หากต้องการใช้ bzip2 คุณต้องแทนที่คีย์ "z" ด้วย "j"
c - สร้างไฟล์เก็บถาวร หากไม่มีคีย์นี้ ไฟล์เก็บถาวรจะไม่ถูกสร้างขึ้น
f - หากไม่มีคีย์นี้ ไฟล์เก็บถาวรจะไม่ถูกสร้างขึ้น ตามที่เอกสารระบุไว้: "หากไม่มีสวิตช์ f tar จะส่งผลลัพธ์ไปที่ stdout เมื่อทำการบรรจุและจะพยายามอ่านไฟล์เก็บถาวรจาก stdin เมื่อทำการแกะกล่อง"
หลังจากคีย์ เส้นทางไปยังไฟล์ของไฟล์เก็บถาวรที่สร้างขึ้นพร้อมชื่อจะถูกระบุ: /root/files.tar.gz หากคุณระบุเส้นทางสัมพัทธ์ ไฟล์จะถูกสร้างขึ้นในโฟลเดอร์ที่เทอร์มินัลเปิดอยู่
ที่ส่วนท้ายสุดของคำสั่ง ไดเร็กทอรีที่ต้องเก็บถาวร /home/folder/ จะถูกส่งผ่าน ในตัวอย่าง มีเส้นทางที่แน่นอนไปยังโฟลเดอร์นี้ ในกรณีนี้ ไฟล์เก็บถาวร tar จะมีโฟลเดอร์หลักทั้งหมด เช่น เมื่อคุณเปิดไฟล์เก็บถาวร จะมีโฟลเดอร์ /home/ และภายในนั้นจะมีโฟลเดอร์ /folder/ แต่ถ้าเส้นทางสัมบูรณ์ถูกแทนที่ด้วยเส้นทางสัมพัทธ์ จะมีเพียง /folder/ เท่านั้นที่จะปรากฏขึ้น
แตกไฟล์
หากต้องการแตกไฟล์เก็บถาวรให้ไปที่โฟลเดอร์ที่มีไฟล์นั้นแล้วป้อน:
tar -xf ไฟล์ tar.gz
ไฟล์ต่างๆ จะถูกคลายลงในโฟลเดอร์เดียวกับที่ไฟล์เก็บถาวรอยู่
ปุ่ม x บ่งชี้ว่ากำลังคลายไฟล์เก็บถาวร จำเป็นต้องใช้ปุ่ม f เช่นเดียวกับเมื่อสร้างไฟล์เก็บถาวร
หากคุณต้องการแตกไฟล์เก็บถาวรลงในโฟลเดอร์เฉพาะคุณสามารถระบุเส้นทางไปยังไฟล์นั้นได้หลังคีย์ C:
tar -xf files.tar.gz -C /home/โฟลเดอร์/
แยกโฟลเดอร์ออกจากไฟล์เก็บถาวร
บางครั้งงานเกิดจากการแยกโฟลเดอร์ย่อยบางส่วนออกจากไฟล์เก็บถาวร ตัวอย่างเช่น หากคุณต้องการสร้างไฟล์เก็บถาวรจากโฟลเดอร์ /home/ แต่ไม่ควรรวมเนื้อหาของโฟลเดอร์ /cache/ และ /trash/ ไว้ด้วย จากนั้นคุณต้องใช้คีย์ยกเว้น:
tar -zcf /root/files.tar.gz /home/ --exclude=("*/cache/ *","*/trash/ *")
ไม่มีเครื่องหมายทับ "/" ต่อท้ายค่าที่แยกออกสำหรับโฟลเดอร์ หากไม่มีเครื่องหมายทับ เนื้อหาของโฟลเดอร์จะไม่ถูกลบ แต่จะลบทั้งโฟลเดอร์
ชื่อโฟลเดอร์มีเครื่องหมายดอกจันเพื่อไม่ให้ระบุเส้นทางแบบเต็มไปยังโฟลเดอร์ เมื่อดำเนินการคำสั่งดังกล่าว ไฟล์จากโฟลเดอร์จะไม่ถูกเพิ่มลงในไฟล์เก็บถาวร
ทาร์เป็นผู้จัดเก็บจาก GNU tar รับไฟล์และ/หรือไดเร็กทอรีหลายไฟล์แล้วรวมเป็นไฟล์ขนาดใหญ่ไฟล์เดียว ซึ่งจะทำให้คุณสามารถบีบอัดแผนผังไดเร็กทอรีทั้งหมดได้ ซึ่งไม่สามารถทำได้ด้วย bzip หรือ bzip2 tar มีตัวเลือกมากมาย ซึ่งมีการอธิบายโดยละเอียดในหน้าคู่มือ
$ man tar tar -xvvf foo.tar extract foo.tar tar -xvvzf foo.tar.gz extract gzipped foo.tar.gz tar -cvvf foo.tar foo/ tar เนื้อหาของโฟลเดอร์ foo ใน foo.tarตัวเลือกคำสั่ง tar ที่ใช้กันทั่วไป
C – สร้างไฟล์เก็บถาวรใหม่
X – แยกไฟล์ออกจากไฟล์เก็บถาวร
–delete – ลบ (ลบ) ไฟล์จากไฟล์เก็บถาวร
R – ผนวกไฟล์เข้ากับไฟล์เก็บถาวรที่มีอยู่
เอ – ผนวกไฟล์ tar เข้ากับไฟล์เก็บถาวรที่มีอยู่
T – รายการไฟล์ในไฟล์เก็บถาวร (เนื้อหาที่เก็บถาวร)
U – อัปเดตไฟล์เก็บถาวร
D – การดำเนินการเปรียบเทียบไฟล์เก็บถาวรกับระบบไฟล์ที่กำหนด
Z – การประมวลผลไฟล์เก็บถาวรโดยใช้ตัวอย่างการใช้ gzip และ gunzip การบีบอัดหรือการบีบอัด ขึ้นอยู่กับการรวมกันของสวิตช์ที่มาพร้อมกัน -c หรือ -x
J – การประมวลผลไฟล์เก็บถาวรโดยใช้ bzip2 การบีบอัดหรือการบีบอัด ขึ้นอยู่กับการรวมกันของสวิตช์ที่มาพร้อมกัน -c หรือ -x
tar เปิดตัวพร้อมกับข้อบ่งชี้ที่จำเป็นของหนึ่งในการกระทำหลักซึ่งที่พบบ่อยที่สุดคือการสร้างและคลายไฟล์เก็บถาวรจากนั้นพารามิเตอร์อื่น ๆ จะถูกตั้งค่าขึ้นอยู่กับการดำเนินการเฉพาะ
การใช้ tar ที่พบบ่อยที่สุดคือการแตกและแตกไฟล์แพ็คเกจที่ดาวน์โหลดจากเว็บไซต์หรือไซต์ ftp ไฟล์ส่วนใหญ่มีนามสกุล .tar.gz บ่อยครั้งที่พวกมันถูกเรียกว่า "tarball" ซึ่งหมายความว่าไฟล์หลายไฟล์จะถูกบีบอัดด้วย tar แล้วบีบอัดด้วย gzip คุณยังสามารถค้นหาไฟล์ .tar.Z โดยพื้นฐานแล้วสิ่งเหล่านี้เป็นสิ่งเดียวกัน แต่ส่วนใหญ่จะพบในระบบ Unix รุ่นเก่า
นอกจากนี้ คุณอาจเจอไฟล์ .tar.bz2 ซอร์สโค้ดเคอร์เนลถูกแจกจ่ายในรูปแบบนี้เนื่องจากใช้พื้นที่ดาวน์โหลดน้อยกว่า ดังที่คุณคงเดาได้แล้วว่าไฟล์เหล่านี้เป็นไฟล์ที่เก็บถาวรด้วย tar และบีบอัดด้วย bzip
คุณสามารถแยกไฟล์ทั้งหมดจากไฟล์เก็บถาวรดังกล่าวได้โดยใช้ตัวเลือกบรรทัดคำสั่ง tar การแตกไฟล์ tarball ทำได้โดยใช้ตัวเลือก -z ซึ่งหมายความว่าไฟล์จะต้องถูกเรียกใช้ผ่าน gunzip ก่อนแล้วจึงแตกไฟล์ กำลังแกะ tarballs :
% tar -xvzf ไฟล์ tar.gz
มีตัวเลือกค่อนข้างมากที่นี่ พวกเขาหมายถึงอะไร? ตัวเลือก -x หมายถึงการแยก นี่เป็นสิ่งสำคัญเพราะมันจะบอก tar ว่าต้องทำอะไรกับไฟล์อินพุต ในกรณีนี้ มันจะถูกแยกกลับเป็นไฟล์ที่ถูกรวมเข้าด้วยกัน ตัวเลือก -v หมายถึงการเปิดใช้งานโหมด verbose ชื่อของไฟล์ทั้งหมดที่ถูกแยกออกจากไฟล์เก็บถาวร เป็นความคิดที่ดีที่จะใช้ตัวเลือกนี้เพื่อไม่ให้การแตกไฟล์ดูน่าเบื่อเกินไป คุณยังสามารถใช้ -vv เพื่อทำให้เอาต์พุตละเอียดยิ่งขึ้นและให้คุณมากยิ่งขึ้น ข้อมูลเกี่ยวกับไฟล์ที่กำลังแตกออกมา ตัวเลือก -z จะบอก tar" เกี่ยวกับความจริงที่ว่าไฟล์ .tar.gz จะต้องถูกเรียกใช้ผ่าน gunzip ก่อน สุดท้ายนี้ ตัวเลือก -f จะบอก tar ว่าบรรทัดถัดไปในบรรทัดคำสั่งคือไฟล์ที่จะใช้งาน
มีหลายวิธีในการเขียนคำสั่งเดียวกัน บนระบบเก่าที่ไม่มีสำเนา GNU tar ที่เหมาะสม คุณอาจเห็นรายการต่อไปนี้สำหรับคำสั่งเดียวกัน:
% ไฟล์ gunzip.tar.gz | ทาร์ -xvf -
ในคำสั่งนี้ ไฟล์จะถูกคลายแพ็กก่อน และผลลัพธ์จะถูกส่งไปยัง tar เพราะ gzip โดยค่าเริ่มต้นจะเขียนเอาต์พุตไปที่ stdout คำสั่งนี้จะเขียนไฟล์ที่คลายการบีบอัดไปที่ stdout ไปป์ไลน์จะส่งต่อสตรีมนี้ไปยัง tar เพื่อคลายการบีบอัด เครื่องหมาย "-" หมายความว่าข้อมูลถูกนำมาจากอินพุตมาตรฐาน คำสั่งนี้จะคลายซิปสตรีมข้อมูลที่ได้รับจาก gzip และเขียนลงดิสก์
อีกวิธีหนึ่งในการเขียนคำสั่งดั้งเดิมคือการลบเครื่องหมาย “-” หน้าตัวเลือก:
% tar xvzf ไฟล์.tar.gz
คุณอาจเจอไฟล์เก็บถาวร bzipped เวอร์ชัน tar ที่ให้ไว้ใน Slackware Linux สามารถทำงานร่วมกับไฟล์เหล่านี้ได้ในลักษณะเดียวกับไฟล์เก็บถาวร gzipped แทนที่จะใช้ตัวเลือก -z คุณต้องใช้ -j:
% tar -xvjf ไฟล์ tar.bz2
โปรดทราบว่า tar จะบันทึกไฟล์ที่แยกจากไฟล์เก็บถาวรไปยังไดเร็กทอรีปัจจุบัน ดังนั้น หากคุณมีไฟล์เก็บถาวรใน /tmp ที่คุณต้องการแยกไปยังโฮมไดเร็กตอรี่ของคุณ คุณมีทางเลือกสองสามทาง ประการแรกคือสามารถย้ายไฟล์เก็บถาวรไปยังโฮมไดเร็กตอรี่ของคุณแล้วขยายโดยใช้ tar ประการที่สอง คุณสามารถระบุเส้นทางไปยังไฟล์เก็บถาวรบนบรรทัดคำสั่งได้ ประการที่สาม คุณสามารถใช้ตัวเลือก -C เพื่อคลายซิป tarball ลงในไดเร็กทอรีที่ระบุหลังจากตัวเลือกนี้
% ซีดี $HOME % cp /tmp/file.tar.gz % tar -xvzf file.tar.gz % ซีดี $HOME % tar -xvzf /tmp/file.tar.gz % ซีดี / % tar -xvzf /tmp/file.tar.gz -C $HOME
รายการข้างต้นทั้งหมดเทียบเท่ากัน ในแต่ละไฟล์ ไฟล์เก็บถาวรจะถูกขยายไปยังโฮมไดเร็กตอรี่ของคุณ และไฟล์เก็บถาวรที่บีบอัดดั้งเดิมจะยังคงอยู่
แล้วจะมีประโยชน์อะไรที่คุณสามารถแตกไฟล์เก็บถาวรได้หากคุณไม่สามารถสร้างมันขึ้นมาได้? tar ก็ทำสิ่งนี้ได้เช่นกัน ในกรณีส่วนใหญ่ คุณสามารถแทนที่ตัวเลือก “-x” ด้วย “-c” ได้
% tar -cvzf file.tar.gz .
ในคำสั่งนี้ ตัวเลือก -c บอกให้ tar สร้างไฟล์เก็บถาวร และตัวเลือก -z จะ gzip ไฟล์เก็บถาวรผลลัพธ์เพื่อบีบอัดไฟล์ file.tar.gz คือชื่อของไฟล์ที่จะสร้าง
การระบุตัวเลือก "-f" ไม่จำเป็นเสมอไป แต่ในกรณีใด ๆ จะดีกว่าถ้าใช้ หากไม่มีมัน tar จะเขียนข้อมูลไปยังเอาต์พุตมาตรฐาน ซึ่งโดยทั่วไปจะใช้เพื่อส่งกระแสข้อมูลไปยังโปรแกรมอื่น เช่นนี้
% tar -cv file.tar - gpg --เข้ารหัส
คำสั่งนี้จะสร้าง tarball ที่ไม่บีบอัดพร้อมกับเนื้อหาของไดเร็กทอรีปัจจุบัน จากนั้นรัน tarball ผ่านโปรแกรม gpg ซึ่งจะเข้ารหัสและบีบอัดไฟล์เก็บถาวร ทำให้ใครก็ตามที่ไม่มีคีย์ส่วนตัวของคุณอ่านไม่ได้
tar ผ่าน ssh
หากคอมพิวเตอร์ต้นทางและคอมพิวเตอร์เป้าหมายเชื่อมต่อผ่าน LAN หรือ WAN เพื่อประหยัดเวลา คุณสามารถรวมการใช้ SSH (Secure Shell) และ tar เพื่อเก็บถาวร คัดลอก และแยกไฟล์ได้ในคราวเดียว ต่อไปนี้เป็นวิธีดำเนินการ:
$ (cd ~/stuff; tar --create --gzip --file - *) | \ ssh ปลายทาง tar --extract --gunzip --file --verbose -C สิ่ง
คำสั่งนี้ดำเนินการหลายอย่างพร้อมกัน มาทำลายมันกัน:
ลำดับของคำสั่งที่อยู่ในวงเล็บเรียกว่าเชลล์ย่อย การเปลี่ยนแปลงที่ทำในเชลล์ย่อย เช่น การเปลี่ยนไดเร็กทอรี จะไม่ส่งผลกระทบต่อคำสั่งโดยรวม แต่จะส่งผลต่อสภาพแวดล้อมเชลล์ย่อยเท่านั้น ดังนั้นลำดับการหลีกเลี่ยงลำดับแรก - (cd ~/stuff; tar –create –gzip –file - *) เปลี่ยนไดเร็กทอรีการทำงานปัจจุบันเป็น ~/stuff จากนั้นรัน tar เนื่องจากเชลล์ย่อยตามมาด้วยการเปลี่ยนเส้นทางไปยังไพพ์ ผลลัพธ์ทั้งหมดของเชลล์ย่อยจะถูกส่งไปยังคำสั่งถัดไปในบรรทัด
เช่นเดียวกับยูทิลิตี้ UNIX อื่นๆ tar สามารถเขียนไปยังเอาต์พุตมาตรฐาน (stdout) และอ่านจากอินพุตมาตรฐาน (stdin) ทั้ง stdout และ stdin มักจะแสดงด้วยยัติภังค์ (-) ดังนั้นคำสั่ง –create –file จะสร้างไฟล์เก็บถาวรบน stdout
ช่อง (|) ถ่ายโอนผลลัพธ์ทั้งหมดของเชลล์ย่อยไปยังยูทิลิตี้ ssh ซึ่งในทางกลับกันจะถ่ายโอนข้อมูลที่จำเป็นทั้งหมดจากคอมพิวเตอร์ต้นทางไปยังคอมพิวเตอร์ระยะไกล
ในที่สุด คอมพิวเตอร์ระยะไกลจะเรียกใช้ยูทิลิตี้ tar ของตัวเองเพื่อดึงข้อมูลจากไฟล์เก็บถาวร ตอนนี้ –แยก –file อ่านไฟล์เก็บถาวรจากอินพุตมาตรฐาน ตัวเลือก -C บังคับให้ tar บนเครื่องเป้าหมายเปลี่ยนไดเร็กทอรีการทำงานปัจจุบันเป็นไฟล์ต่างๆ ก่อนที่จะเริ่มดำเนินการคลายซิป ผลลัพธ์สุดท้ายของคำสั่งนี้โดยทั่วไปคือการถ่ายโอนไฟล์เก็บถาวรผ่าน ssh และแตกไฟล์ลงใน ~/stuff
ดังนั้นด้วยความช่วยเหลือของคำสั่งเดียว ไฟล์เก็บถาวรจึงถูกสร้าง ถ่ายโอน และแตกไฟล์ โดยการเปลี่ยนคำสั่งนี้เล็กน้อยคุณสามารถคัดลอกไฟล์เก็บถาวรจากคอมพิวเตอร์ระยะไกลไปยังไฟล์ในเครื่องแล้วแตกไฟล์ได้ นี่คือคำสั่งที่ต้องดำเนินการบนเครื่องคอมพิวเตอร์:
$ ssh ปลายทาง cat archive.tgz | \ (cd ~/stuff; tar --extract --gunzip --file -)
ไฟล์เก็บถาวรบนเครื่องระยะไกลจะถูกเปิด จากนั้นสตรีมไบต์จาก cat จะถูกส่งไปยังเชลล์ที่ซ้อนกัน ซึ่งจะเปลี่ยนไดเร็กทอรีการทำงาน จากนั้นแตกไฟล์เก็บถาวร (การเพิ่ม -C ~/stuff ให้กับคำสั่ง tar จะให้ผลลัพธ์เดียวกัน ตัวอย่างนี้แสดงให้เห็นเพียงว่าเชลล์ย่อยสามารถจัดการอินพุตได้เช่นกัน)
น้ำมันดินไม่รวม
–ไม่รวมรูปแบบ (-Wไม่รวม=รูปแบบ) อย่าประมวลผลไฟล์หรือไดเร็กทอรีที่ตรงกับรูปแบบที่ระบุ โปรดทราบว่าข้อยกเว้นจะมีความสำคัญเหนือรูปแบบหรือชื่อไฟล์ที่ระบุในบรรทัดคำสั่ง
ตัวอย่าง: เมื่อเก็บถาวร tar ให้แยกไดเรกทอรีย่อย .svn ออกจากไดเรกทอรีทดสอบ tar -czf test1.tar.gz --exclude=".svn" test/
ตัวอย่าง: เมื่อเก็บถาวรไดเร็กทอรีปัจจุบันและบีบอัด ตัวอย่างการใช้ gzip และ gunzip ให้ยกเว้นไฟล์ที่มีนามสกุล .tar.gz .iso .deb .py $ tar -czf test.tar.gz *.* --exclude="*. tar.gz " --exclude="*.iso" --exclude="*.deb" --exclude="*.zip" --exclude="*.py"
tar พร้อมรักษาสิทธิ์การเข้าถึง
สร้างไฟล์เก็บถาวรโดยยังคงรักษาสิทธิ์การเข้าถึง Switch -p, –preserve-permissions, –same-permissions ดึงข้อมูลเกี่ยวกับสิทธิ์การเข้าถึงไฟล์ (ค่าเริ่มต้นสำหรับ superuser)
Tar -cvpf archive.tar.gz dir1
แตกไฟล์เก็บถาวรโดยยังคงรักษาสิทธิ์การเข้าถึง
ทาร์ -xvpf archive.tar.gz
tar แยกไปยังไดเร็กทอรีที่ต้องการ
หากต้องการแตกไฟล์เก็บถาวรลงในไดเร็กทอรีที่ต้องการ ให้ใช้ปุ่ม -C
# man tar ... -C directory ในโหมด c และ r สิ่งนี้จะเปลี่ยนไดเร็กทอรีก่อนที่จะเพิ่มไฟล์ต่อไปนี้ ในโหมด x ให้เปลี่ยนไดเร็กทอรีหลังจากเปิดไฟล์เก็บถาวร แต่ก่อนที่จะแยกรายการออกจากไฟล์เก็บถาวร -
ตัวอย่างเช่น ตัวอย่างได้รับการทดสอบสำหรับ FreeBSD:
# tar -xvf /usr/home/darkfire/backup.ns.server.254/usr/ports/distfiles.tar -C /usr/ports/
tar split แบ่งไฟล์เก็บถาวรออกเป็นหลายส่วน
แยก -b 1,000m distfiles.tar distfiles.split.tar
ส่งผลให้คุณจะได้ไฟล์จำนวนมากเช่น
Distfiles.split.taraa distfiles.split.tarab distfiles.split.tarai
100m หมายถึง 100 เมกะไบต์ คุณสามารถเขียนได้ 100k - มันจะเป็น 100 กิโลไบต์ คุณสามารถนำพวกมันกลับมารวมกันได้ดังนี้:
แมว distfiles.split.tar* | ทาร์ zxvf -
ทาร์- โปรแกรมเก็บถาวรที่ใช้กันมากที่สุดบนระบบ Linux tar นั้นไม่ใช่ผู้จัดเก็บตามความหมายปกติของคำนี้ เพราะว่า มันไม่ได้ใช้การบีบอัดเอง ในเวลาเดียวกันผู้จัดเก็บจำนวนมาก (เช่น Gzip หรือ bzip2) ไม่ทราบวิธีบีบอัดไฟล์หลายไฟล์ แต่ใช้งานได้กับไฟล์เดียวหรือสตรีมอินพุตเท่านั้น ดังนั้นโปรแกรมเหล่านี้ส่วนใหญ่มักจะใช้ร่วมกัน tar สร้างไฟล์เก็บถาวรที่ไม่มีการบีบอัดซึ่งประกอบด้วยไฟล์และไดเร็กทอรีที่เลือก ในขณะที่ยังคงรักษาคุณลักษณะบางอย่างไว้ (เช่น การอนุญาต) หลังจากนี้ ไฟล์ *.tar ที่ได้จะถูกบีบอัดด้วยโปรแกรมเก็บถาวร เช่น gzip นี่คือเหตุผลว่าทำไมไฟล์เก็บถาวรจึงมีนามสกุล .tar.gz หรือ .tar.bz2 (สำหรับผู้จัดเก็บ gzip และ bzip2 ตามลำดับ)
การใช้งาน
tar เปิดตัวพร้อมกับข้อบ่งชี้ที่จำเป็นของหนึ่งในการกระทำหลักซึ่งที่พบบ่อยที่สุดคือการสร้างและคลายไฟล์เก็บถาวรจากนั้นพารามิเตอร์อื่น ๆ จะถูกตั้งค่าขึ้นอยู่กับการดำเนินการเฉพาะ
การสร้างที่เก็บถาวร
หากต้องการสร้างไฟล์เก็บถาวร คุณต้องบอก tar ถึงการดำเนินการที่เหมาะสม ซึ่งทำได้โดยใช้สวิตช์ -c นอกจากนี้ จำเป็นต้องใช้สวิตช์ -f เพื่อบรรจุเนื้อหาลงในไฟล์ ต่อไปเราจะระบุชื่อของไฟล์เก็บถาวรในอนาคตก่อนแล้วจึงระบุไฟล์ที่เราต้องการแพ็ค
ทาร์ -cf txt.tar *.txt
คำสั่งนี้จะแพ็คไฟล์ทั้งหมดที่มีนามสกุล txt ลงในไฟล์เก็บถาวร txt.tar นี่คือวิธีการสร้างไฟล์เก็บถาวรแบบธรรมดาที่ไม่มีการบีบอัด หากต้องการใช้การบีบอัด คุณไม่จำเป็นต้องเรียกใช้สิ่งใดอีก คุณเพียงแค่ต้องบอก tar ว่าจะใช้ Archiver ใดในการบีบอัดข้อมูล สำหรับผู้จัดเก็บเอกสารยอดนิยมสองราย ได้แก่ gzip และ bzip2 คีย์จะเป็น -z และ -j ตามลำดับ
ทาร์ -cvzf files.tar.gz ~/files
จะแพ็คโฟลเดอร์ ~/files พร้อมเนื้อหาทั้งหมดลงในไฟล์เก็บถาวรที่บีบอัด gzip
Tar -cvjf files.tar.bz2 ~/files
จะสร้างไฟล์เก็บถาวรที่คล้ายกันโดยใช้ bzip2 สำหรับการบีบอัด
สวิตช์ -v ช่วยให้สามารถแสดงรายการไฟล์ที่แพ็กระหว่างการดำเนินการได้ น่าเสียดายที่การบ่งชี้ขั้นสูงเพิ่มเติมเกี่ยวกับความคืบหน้าของกระบวนการ (เช่น การระบุระดับความสำเร็จเป็นเปอร์เซ็นต์) ไม่ได้ระบุไว้ใน tar เมื่อต้องการทำเช่นนี้ ให้ใช้ตัวจัดเก็บแบบกราฟิก (เช่น Xarchiver) หรือใช้เครื่องมือจัดการไฟล์
นอกจาก gzip และ bzip2 แล้ว คุณสามารถใช้เช่น lzma (switch –lzma) หรือ xz (switch -J) และต้องติดตั้ง archiver ที่เกี่ยวข้องบนระบบ
กำลังคลายไฟล์เก็บถาวร
การดำเนินการ "แกะกล่อง" ถูกกำหนดโดยใช้สวิตช์ -x และที่นี่อีกครั้งคุณจะต้องใช้สวิตช์ -f เพื่อระบุชื่อของไฟล์เก็บถาวร นอกจากนี้เรายังจะเพิ่มสวิตช์ -v เพื่อแสดงความคืบหน้าของกระบวนการด้วยสายตา
ทาร์ -xvf /path/to/archive.tar.bz2
จะคลายเนื้อหาของไฟล์เก็บถาวรลงในโฟลเดอร์ปัจจุบัน ตำแหน่งอื่นสำหรับการแกะกล่องสามารถระบุได้โดยใช้สวิตช์ -C:
Tar -xvf archive.tar.bz2 -C /path/to/folder
การดูเนื้อหาที่เก็บถาวร
หากต้องการดูเนื้อหาของไฟล์เก็บถาวรให้ใช้คำสั่งต่อไปนี้:
ทาร์ -tf archive.tar.gz
มันจะแสดงรายการไฟล์และไดเร็กทอรีอย่างง่ายในไฟล์เก็บถาวร หากคุณเพิ่มสวิตช์ -v รายการโดยละเอียดจะแสดงขนาด สิทธิ์การเข้าถึง และพารามิเตอร์อื่นๆ (เช่นเดียวกับ ls -l)
คุณสมบัติอื่นๆ
tar มีคุณสมบัติที่มีประโยชน์มากมาย ตัวอย่างเช่น คุณสามารถระบุไฟล์และไดเร็กทอรีที่จะไม่รวมไว้ในไฟล์เก็บถาวร เพิ่มไฟล์ไปยังไฟล์เก็บถาวรที่มีอยู่ รับรายการออบเจ็กต์ที่จะแพ็กจากไฟล์ข้อความ และอื่นๆ อีกมากมาย และเช่นเคย มันจะช่วยให้คุณเข้าใจตัวเลือกที่หลากหลายทั้งหมด
แมน ทาร์ ทาร์ --ช่วยด้วยในเนื้อหานี้ เราจะดูว่าคุณสามารถแตกไฟล์เก็บถาวร TAR ได้อย่างไร ไฟล์ที่คล้ายกันถูกสร้างขึ้นโดยใช้แพ็คเกจซอฟต์แวร์ที่พัฒนาขึ้นสำหรับแพลตฟอร์ม Unix
คำอธิบาย
ก่อนที่จะพิจารณาว่าจะแกะ TAR อย่างไร คุณควรทำความเข้าใจว่ารูปแบบนี้ได้รับการพัฒนาเพื่อวัตถุประสงค์ใด ไฟล์ประเภทนี้มีไฟล์เก็บถาวรทั่วไปที่ประกอบด้วยสื่อหลายประเภท TAR เป็นส่วนขยายทั่วไปในสภาพแวดล้อม Unix รูปแบบนี้ใช้สำหรับถ่ายโอนซอฟต์แวร์ต่างๆ บ่อยครั้งที่ TAR ใช้เพื่อสร้างไฟล์เก็บถาวรในระบบไฟล์ ไฟล์นี้เก็บข้อมูลทั้งหมดเกี่ยวกับวัสดุ รวมถึงโครงสร้างไดเร็กทอรีและการประทับเวลา ไฟล์ประเภทนี้หนึ่งไฟล์สามารถมีสื่อได้หลายรายการ แล้วจะแกะ TAR ได้อย่างไร? Windows เป็นระบบปฏิบัติการที่ผู้ใช้พีซีใช้บ่อยที่สุด เริ่มจากเธอกันก่อน
จะแตกไฟล์เก็บถาวรบน Windows ได้อย่างไร?
ตอนนี้เราจะดูที่แอปพลิเคชัน WinZip เครื่องมือนี้จะช่วยให้คุณสามารถแกะ TAR ได้ เรากำลังพูดถึงโปรแกรมเก็บไฟล์แชร์แวร์และคอมเพรสเซอร์ที่สร้างโดย Corel เครื่องมือนี้มีความสามารถมากมาย ช่วยให้คุณสามารถสร้าง ขยาย และแตกไฟล์เก็บถาวรได้ มีการนำการรวมแบบกำหนดเองเข้ากับสภาพแวดล้อม Microsoft Windows แล้ว รองรับคีย์ 128 และ 256 บิต คุณสามารถเบิร์นไฟล์เก็บถาวรลงดีวีดีหรือซีดีได้โดยตรง ดำเนินการสำรองข้อมูลอัตโนมัติ รองรับโปรโตคอล FTP สามารถส่งเอกสารสำคัญทางอีเมลได้ รองรับยูนิโค้ด
คุณยังสามารถโต้ตอบกับรูปแบบที่เราสนใจโดยใช้โปรแกรม 7-Zip เรากำลังพูดถึงโปรแกรมเก็บไฟล์ฟรีที่มีการบีบอัดข้อมูลในระดับสูง แอปพลิเคชั่นนี้ได้รับการพัฒนามาตั้งแต่ปี 1999 เครื่องมือนี้แจกฟรี แอปพลิเคชันนี้เป็นโอเพ่นซอร์ส โปรแกรมมีสองเวอร์ชัน อันแรกมีส่วนต่อประสานกราฟิก อันที่สองทำงานบนบรรทัดคำสั่ง แอปพลิเคชันมีเครื่องมือทดสอบประสิทธิภาพในตัว มีการนำอินเทอร์เฟซแบบกราฟิกหลายภาษามาใช้ซึ่งมีฟังก์ชันของตัวจัดการไฟล์แบบสองหน้าต่าง Unicode ได้รับการสนับสนุนสำหรับชื่อไฟล์ 7-Zip ใช้มัลติเธรด เมื่อทำการบีบอัดจะใช้ตัวกรองการปรับมาตรฐานแบบพิเศษ
แอพ Smith Micro StuffIt Deluxe ก็จะช่วยเราเช่นกัน เรากำลังพูดถึงเครื่องมือสำหรับการทำงานกับไฟล์เก็บถาวรต่างๆ โปรแกรมนี้ช่วยให้คุณสามารถเข้ารหัสข้อมูลและทำสำเนาสำรองได้ ไฟล์ที่เก็บถาวรสามารถป้องกันได้ด้วยรหัสผ่าน ในกรณีนี้ จะใช้การเข้ารหัสด้วยคีย์ 256- และ 512- บิต โปรแกรมสามารถเพิ่มข้อมูลที่ช่วยให้คุณสามารถกู้คืนไฟล์เก็บถาวรได้โดยอัตโนมัติ เพิ่มความสามารถในการดูไฟล์และโฟลเดอร์ที่บีบอัด มีตัวกำหนดเวลาในตัวรวมถึงการแชร์ไฟล์ผ่านอินเทอร์เน็ต
ระบบปฏิบัติการอื่นๆ
ตอนนี้เราจะดูวิธีการแยก TAR บน Mac OS แอพ Apple Archive Utility เหมาะสำหรับสิ่งนี้ คุณยังสามารถใช้โปรแกรม Incredible Bee Archiver ได้อีกด้วย บน Android คุณสามารถทำงานกับรูปแบบนี้ได้ แอปพลิเคชัน File Viewer สำหรับ Android เหมาะสำหรับสิ่งนี้ เรากำลังพูดถึงตัวจัดการไฟล์สากลที่รองรับมากกว่าร้อยรูปแบบ เนื้อหาสามารถจัดการหรือดูได้ สามารถแตกไฟล์เก็บถาวรในรูปแบบที่เราสนใจได้ คุณยังสามารถใช้โปรแกรม RarLab ได้ เครื่องมือ GNU Tar จะช่วยคุณคลายแพ็ก TAR บน Linux