บีบอัดโฟลเดอร์ด้วย tar หรือไม่?


268

ฉันพยายามที่จะบีบอัดโฟลเดอร์ ( /var/www/) เพื่อ~/www_backups/$time.tarที่$timeจะเป็นวันที่ปัจจุบัน

นี่คือสิ่งที่ฉันมี:

cd /var/www && sudo tar -czf ~/www_backups $time"

ฉันหลงทางไปแล้วและฉันก็อยู่ที่นี่มาหลายชั่วโมงแล้ว ไม่แน่ใจว่า-czfถูกต้องหรือไม่ ฉันเพียงต้องการคัดลอกเนื้อหาทั้งหมด/var/wwwลงใน$time.tarไฟล์และฉันต้องการรักษาสิทธิ์ของไฟล์สำหรับไฟล์ทั้งหมด ใครสามารถช่วยฉันออก


คุณต้องมี "ในด้านอื่น ๆ ของ$timeเช่นกัน
gauteh

คำตอบ:


373

ถึงtarและgzipโฟลเดอร์ไวยากรณ์คือ:

tar czf name_of_archive_file.tar.gz name_of_directory_to_tar

-เป็นตัวเลือก หากคุณต้องการtarไดเรกทอรีปัจจุบันใช้.เพื่อกำหนดว่า

เพื่อสร้างชื่อไฟล์ของคุณให้ใช้dateยูทิลิตี้ (ดูที่หน้า man สำหรับตัวเลือกรูปแบบที่มีอยู่) ตัวอย่างเช่น:

cd /var/www && sudo tar czf ~/www_backups/$(date +%Y%m%d-%H%M%S).tar.gz .

20120902-185558.tar.gzนี้จะได้สร้างไฟล์ชื่อสิ่งที่ต้องการ

บน Linux โอกาสของคุณtarยังรองรับการบีบอัด BZip2 ด้วยตัวเลือกjมากกว่า zและอาจอื่น ๆ ตรวจสอบ man page บนระบบโลคัลของคุณ


1
มันสมบูรณ์แบบแล้วขอบคุณ ฉันมีหนึ่งปัญหาเล็ก ๆ ว่า หลังจากสร้างไฟล์ tar ของ / var / www แล้วมันจะอยู่ในไดเรกทอรี / var / www ในไฟล์ tar นี่คือรหัสที่ฉันใช้อยู่ตอนนี้ sudo tar -czf ~/www_backups/$time.tar /var/www/"ลองนึกภาพฉันมีไฟล์ชื่อ test.txt อยู่ภายใน / var / www หลังจากทำสำเนา tar ของไฟล์เมื่อฉันแตกมันจะถูกวางไว้ในไดเรกทอรี / var / www มันสมเหตุสมผลไหม ฉันหวังว่ามันจะอธิบายได้ยาก ฉันจะตรวจสอบการสนับสนุน BZip2 ขอบคุณสำหรับคำแนะนำ!
qwerty

1
นั่นเป็นเหตุผลว่าทำไมคุณcdถึงไดเรกทอรีที่คุณต้องการทำแพ็กเกจก่อนtar cf file.tar .- .แทนการระบุพา ธ เต็มจะทำให้พา ธ ภายในไฟล์เก็บถาวรสัมพันธ์กับไดเรกทอรีปัจจุบัน คุณยังสามารถใช้ -Cตัวเลือกสำหรับ tar (ดูหน้าคน)
เสื่อ

1
ใช่แล้วมันทำงานได้ดีกว่ามาก ขอบคุณมัดขอบคุณมัน!
qwerty

3
@Qwertylicious -f(จากหน้าคน)Read the archive from or write the archive to the specified file.The filename can be - for standard input or standard output.
Kolob Canyon

1
sudoอยู่ในคำถามที่ไม่เปลี่ยนหรือคำถามที่ การมีไดเรกทอรีเป้าหมายข้อมูลสำรอง จำกัด ไว้ที่รูทไม่ใช่ความคิดที่ดี
Mat
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.