คำถามติดแท็ก tar

รูปแบบไฟล์เก็บถาวร tar และ / หรือยูทิลิตี้บรรทัดคำสั่งสำหรับการทำงานกับไฟล์ tar

5
ดูไฟล์ในไฟล์เก็บถาวร tar โดยไม่แตกไฟล์
ฉันต้องการที่จะดูเนื้อหาของแฟ้ม tarred โดยไม่ต้องแยกมันสถานการณ์: ฉันมี a.tar ./x/y.txtและภายในมีไฟล์ที่เรียกว่า ฉันต้องการที่จะดูเนื้อหาของจริงโดยไม่ต้องสกัดy.txta.tar

9
ปัญหาหน่วยความจำเมื่อบีบอัดและถ่ายโอนไฟล์ขนาดเล็กจำนวนมาก (รวม 1TB)
ฉันมี 5 ล้านไฟล์ซึ่งใช้พื้นที่จัดเก็บประมาณ 1TB ฉันต้องการถ่ายโอนไฟล์เหล่านี้ไปยังบุคคลที่สาม วิธีที่ดีที่สุดในการทำเช่นนี้คืออะไร? ฉันได้ลองลดขนาดโดยใช้. tar.gz แต่ถึงแม้ว่าคอมพิวเตอร์ของฉันมี 8GB RAM ฉันได้รับข้อผิดพลาด "ออกจากระบบหน่วยความจำ" วิธีที่ดีที่สุดในการหอยทากไฟล์ทางไปรษณีย์คืออะไร?

2
ลำดับของ tar ที่ทำงานกับไฟล์ถูกกำหนดอย่างไร
$ touch dir/{{1..8},{a..p}} $ tar cJvf file.tar.xz dir/ dir/ dir/o dir/k dir/b dir/3 dir/1 dir/i dir/7 dir/4 dir/e dir/a dir/g dir/2 dir/d dir/5 dir/8 dir/c dir/n dir/f dir/h dir/6 dir/l dir/m dir/j dir/p ฉันคาดว่าจะเป็นตัวอักษร แต่เห็นได้ชัดว่าไม่ใช่ นี่สูตรอะไร
15 linux  tar  gnu  coreutils 

3
คุณจะตรวจสอบไฟล์เก็บถาวร tar ที่เขียนไปแล้วได้อย่างไร?
ฉันรู้ว่าคุณสามารถทำได้ -W เมื่อสร้างไฟล์เก็บถาวร แต่คุณจะยืนยันและสร้างไฟล์เก็บถาวรได้อย่างไร tvWf บอกว่ามันไม่ใช่ไฟล์เก็บถาวร tar ที่ถูกต้องใช่ไหม $ mkdir tmp $ echo asdkfjh > tmp/a $ echo qweroiu > tmp/b $ ls tmp $ tar cvf archive.tar tmp tmp/ tmp/a tmp/b $ tar tvWf archive.tar tar: This does not look like a tar archive tar: Skipping to next header …
15 tar 

4
ป้องกัน tar จากการใช้ CPU และดิสก์มากเกินไป (แล็ปท็อปเก่าล่มถ้า 100%)
ฉันต้องการสำรองข้อมูล 1 เทราไบต์ไปยังดิสก์ภายนอก ฉันใช้คำสั่งนี้: tar cf /media/MYDISK/backup.tar mydata ปัญหา: ฉันค้างแล็ปท็อปที่ไม่ดีและเกิดปัญหาเมื่อใดก็ตามที่ผมใช้ CPU 100% หรือดิสก์ 100% (ถ้าคุณต้องการที่จะตอบสนองเกี่ยวกับโปรดนี้เขียนที่นี่ ) ดังนั้นฉันต้องการอยู่ที่ประมาณ 50% CPU และสูงสุด 50% ดิสก์ คำถามของฉัน: วิธีการเร่งความเร็ว CPU และดิสก์ด้วยtarคำสั่ง? Rsync มีตัวเลือก --bwlimit แต่ฉันต้องการเก็บถาวรเพราะ 1) มีไฟล์ขนาดเล็กจำนวนมาก 2) ฉันชอบที่จะจัดการไฟล์เดียวมากกว่าต้นไม้ tarนั่นเป็นเหตุผลที่ผมใช้
15 tar  limit 

2
บีบอัดไดเรกทอรีโดยใช้ tar / gz ผ่าน SSH ไปยังเครื่องคอมพิวเตอร์หรือไม่
ฉันต้องการ tar / gz เป็นไดเรกทอรีบนเครื่องระยะไกลและบันทึกไฟล์ลงในเครื่องคอมพิวเตอร์ของฉันโดยไม่ต้องเชื่อมต่อกลับเข้าไปในเครื่องของฉันจากเครื่องระยะไกล มีวิธีการทำเช่นนี้กับ SSH หรือไม่? ไฟล์ tar ไม่จำเป็นต้องเก็บไว้ในเครื่องระยะไกลเฉพาะในเครื่องท้องถิ่น เป็นไปได้ไหม
15 bash  ssh  tar 

5
ทางเลือกที่รวดเร็วกว่าสำหรับ ArchiveMount?
ในขณะนี้ฉันกำลังใช้ArchiveMountเพื่อเมานต์ไฟล์เก็บถาวร 123,000 kb ที่มีมากกว่า 3 ล้านไฟล์ภายใน จนถึงตอนนี้ได้ติดตั้งนานกว่า 5 ชั่วโมงและยังไม่เสร็จสิ้น มีวิธีที่ดีกว่าในการเมานต์.tar.gzไฟล์หรือไม่? ฉันกำลังพยายามเมานต์ไปยังโฟลเดอร์และไม่มีการบีบอัดใช้เวลาสองสามกิ๊ก ฉันไม่จำเป็นต้องใช้โหมดการเขียนเพียงแค่อ่านอย่างเดียวก็เพียงพอแล้ว
15 mount  tar 

2
เป็นไปได้ที่จะรวมไฟล์ zip และ tar.gz เป็นไดเรกทอรีในระบบไฟล์
ฉันสงสัยว่ามีวิธีการรวม (มันแตกต่างจากการติดตั้งฉันคิดว่า) ไฟล์บีบอัดเป็นไดเรกทอรีในระบบไฟล์หรือไม่ เช่นหนึ่งสามารถดาวน์โหลดcompressed-file.tar.gzไปยังฮาร์ดไดรฟ์ในตัวของเขาจากนั้นทำcd compressed-file.tar.gzและเรียกใช้สคริปต์จากภายในโฟลเดอร์ที่บีบอัดหรือทำcp some-file ..เพื่อแยกไฟล์ใดไฟล์หนึ่ง ฉันรู้ว่าBtrfsรองรับการบีบอัด แต่ฉันไม่ต้องการเปลี่ยนระบบไฟล์ที่ฉันมี (ext3) เพื่อรองรับคุณสมบัตินี้
14 files  filesystems  mount  tar  zip 

5
ลบไฟล์อย่างมีประสิทธิภาพจากไฟล์. tgz ขนาดใหญ่
สมมติว่าฉันมีไฟล์ tar-ball ที่ถูกบีบอัด gzip tarArchive.tgz (+100 ไฟล์รวมเป็น + 5gb) อะไรจะเป็นวิธีที่เร็วที่สุดในการลบรายการทั้งหมดที่ตรงกับรูปแบบชื่อไฟล์ที่กำหนดเช่นคำนำหน้า * .jpg จากนั้นเก็บซากไว้ใน gzip: ed tar-ball อีกครั้ง การแทนที่ที่เก็บถาวรเก่าหรือการสร้างที่เก็บใหม่นั้นไม่มีความสำคัญใด ๆ ที่เร็วที่สุด
14 tar  gzip 

4
เปลี่ยนชื่อไดเรกทอรีภายในไฟล์เก็บถาวร tar
เป็นไปได้ไหมที่จะเปลี่ยนชื่อไดเรกทอรีภายในไฟล์เก็บถาวร tar? กรณีการใช้งานของฉันคือฉันมีไฟล์ข้อมูลจำเพาะ RPM ภายนอกที่สมมติว่า tarball ที่มีโครงสร้างไดเรกทอรีที่แน่นอนและฉันมี tarball ที่จัดไว้ภายนอกซึ่งมีชื่อไดเรกทอรีระดับบนสุดไม่ตรงกับสิ่งที่ไฟล์ spec คาดหวัง ฉันไม่ได้ควบคุมสคริปต์ที่สร้าง tarballs หรือไฟล์ spec RPM ดังนั้นฉันจึงไม่สามารถเปลี่ยนแปลงหนึ่งในนั้นเพื่อให้ตรงกับที่อื่น สิ่งที่ฉันได้ทำคือไม่ต้องมีการเปลี่ยนชื่อไดเรกทอรีจากนั้นสร้าง tarball ใหม่ แต่ฉันสงสัยว่ามีทางเลือกอื่นในการทำเช่นนั้นหรือไม่
14 tar 

5
วิธีการยกเลิกการซิป, de-tar -xvf - ยกเลิกการเก็บถาวรในโฟลเดอร์ยุ่ง?
โดยปกติแล้วฉันไม่ได้เก็บสิ่งต่าง ๆ ด้วย$ mkdir newFolder; $ mv *.zip newFolder; $ cd newFolder; $unzip *.zipแต่บางครั้งฉันก็ขี้เกียจและทำในโฟลเดอร์ตามอำเภอใจ$ unzip *.zipดังนั้นเวลาที่ทำกับเนื้อหาอื่น ฉันจะแสดงรายการวิธีการที่นี่ - บางรุ่นเก็บถาวรแน่นอนมีเส็งเคร็งธงในขณะที่คนอื่น ๆ สปาร์ตันมากขึ้นฉันสนใจมากขึ้นเกี่ยวกับหลัง มีวิธีอื่นในการยกเลิกการเก็บถาวรหรือไม่ $ find . -anewer fileThatExistedBeforeUnarchieving -ok rm '{}' \;จุดอ่อนคือมันแสดงรายการ*.zipdirs ดังนั้นคุณจำเป็นต้องใช้ช้า-okช้ากับการ*.zipแข่งขันจำนวนมากและด้วยเหตุผลบางอย่างดูเหมือนจะไม่ตรงกับทุกสิ่งที่สกัด หากไฟล์ที่ได้รับการขยายออกมาจำนวนเล็กน้อยไฟล์แบบหนึ่งต่อหนึ่งช้าช้าและมีข้อผิดพลาดเกิดขึ้นได้ง่าย เมื่อฉันต้องการตรวจสอบให้แน่ใจว่าเนื้อหาของ archieve นั้นเป็นโฟลเดอร์จริงหรือไม่บางครั้งฉันก็ตรวจสอบด้วย$ unzip -l *.bsdทำงานได้อย่างน้อยใน unzip-version ของ obsd หากคุณอ้างถึงเครื่องมือเก็บถาวรบางอย่างโปรดระบุสิ่งเหล่านี้ตามความเหมาะสม ทำให้มันง่ายขึ้น - ฉันสนใจวิธีการของคุณมากกว่าที่จะเป็นเครื่องมือเดียว

1
tar - วิธีรักษา timestamps ให้มีความแม่นยำมากกว่าหนึ่งวินาที
ฉันใช้tarไฟล์หลายชุด แก้ไขการประทับเวลาของไฟล์มีความสำคัญและต้องมีความแม่นยำสูง การใช้การtar -cvfประทับเวลาจะถูกเก็บไว้ แต่ถูกปัดเศษเป็นวินาทีที่ใกล้ที่สุดนั่นคือการเรียกใช้statไฟล์จะแสดงเฉพาะการประทับเวลาที่ลงท้ายด้วย. 0 มีวิธีในการรักษาเวลาประทับให้มีความแม่นยำมากขึ้นหรือมีเครื่องมือเก็บถาวรอื่นที่ฉันสามารถใช้เพื่อจุดประสงค์นี้หรือไม่

5
ฉันจะกรองเนื้อหาของไฟล์ tar สร้างไฟล์ tar อื่นในไพพ์ได้อย่างไร
พิจารณาไฟล์ tar เดียวจากระบบภายนอกซึ่งมีบางไดเรกทอรีที่มีคุณลักษณะต่าง ๆ ที่ฉันต้องการเก็บไว้เช่นการอนุญาต, mtimes เป็นต้นฉันจะนำชุดย่อยของไฟล์เหล่านี้มาเป็นผู้ใช้ปกติได้อย่างไร (ไม่ใช่รูท)? กำลังมองหาสิ่งที่ชอบ: tar -f some.tar.gz --subset subdir/ | ssh remote@system tar xvz นอกจากนี้ยังจำเป็นที่จะต้องรักษาแอตทริบิวต์หลัก (ความเป็นเจ้าของกลุ่มโหมด mtime) ในไฟล์เก็บถาวร tar นี้ สิ่งที่เกี่ยวกับคุณลักษณะอื่น ๆ ในไฟล์ tar เช่นคำหลักส่วนหัวขยาย ? คะแนนโบนัสสำหรับโซลูชันที่หลีกเลี่ยงการใช้ไดเรกทอรีชั่วคราวในกรณีที่ subdir นี้มีไฟล์ขนาดใหญ่
13 pipe  tar 

2
วิธีการโน้มน้าว tar (ฯลฯ ) เพื่อเก็บเนื้อหาของอุปกรณ์บล็อกได้อย่างไร
ฉันมีลอจิคัลวอลุ่มหกที่รวมกันเป็นเครื่องเสมือน VM กำลังปิดตัวลงดังนั้นจึงง่ายต่อการถ่ายภาพที่สอดคล้องกัน ฉันต้องการจัดเก็บทั้งหกภาพไว้ในที่เก็บถาวร ฉันสามารถทำสิ่งนี้ได้: cp /dev/Zia/vm_lvraid_* /tmp/somedir tar c /tmp/somedir | whatever แต่แน่นอนว่าสร้างสำเนาเพิ่มเติม ฉันต้องการหลีกเลี่ยงการคัดลอกพิเศษ วิธีการที่ชัดเจน: tar c /dev/Zia/vm_lvraid_* | whatever ไม่ทำงานเนื่องจาก tar รู้จักไฟล์เป็นพิเศษ (symlink ในกรณีนี้) และโดยทั่วไปจะจัดเก็บln -sในไฟล์เก็บถาวร หรือด้วย--dereferenceหรือชี้ไปที่/dev/dm-Xมันรู้จักเป็นพิเศษ (ไฟล์อุปกรณ์) และโดยทั่วไปเก็บไว้mknodในที่เก็บ ฉันค้นหาตัวเลือกบรรทัดคำสั่งเพื่อ tar เพื่อแทนที่พฤติกรรมนี้และไม่พบสิ่งใด ฉันพยายามcpioด้วยปัญหาเดียวกันและไม่พบตัวเลือกใด ๆ ที่จะแทนที่ที่นั่นเช่นกัน ฉันก็ลอง7z(เหมือนกัน) paxเช่นเดียวกันกับ ฉันพยายามzipแล้วซึ่งทำให้สับสน แก้ไข: ดูซอร์สโค้ดของ GNU tar และ GNU cpio ปรากฏว่าทั้งคู่ไม่สามารถทำสิ่งนี้ได้ อย่างน้อยก็ไม่ใช่อย่างไม่มีเล่ห์เหลี่ยมอย่างรุนแรง (การจัดการไฟล์อุปกรณ์พิเศษไม่สามารถปิดใช้งานได้) …
13 tar  disk-image  cpio 

1
tar -cvzf จะบรรจุ.tar.gz mydir จะพิจารณาไฟล์ที่ซ่อนอยู่หรือไม่
ฉันต้องการสร้าง tarball ของไดเรกทอรีที่กำหนด อย่างไรก็ตามฉันต้องตรวจสอบให้แน่ใจว่ามีไฟล์ที่ซ่อนอยู่ด้วย (เช่นที่ขึ้นต้นด้วย.) คำสั่งต่อไปนี้จะพิจารณาไฟล์ที่ซ่อนอยู่โดยอัตโนมัติหรือไม่ tar -cvzf packed.tar.gz mydir ถ้าไม่ฉันจะแน่ใจได้อย่างไรว่าฉันรวมไฟล์ที่ซ่อนอยู่ด้วย
13 directory  tar  gzip 

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