ผมทำ: และผมต้องฆ่ามันด้วยtar -cvf
ctrl-C
ฉันรู้ว่าฉันควรจะทำCtrl-Z
แล้วนำกลับมาทำงานเบื้องหน้า ... แต่มันไม่ใช่เรื่อง
ฉันสามารถดำเนินการต่อจากจุดที่ฉันหยุดงานได้หรือไม่
ผมทำ: และผมต้องฆ่ามันด้วยtar -cvf
ctrl-C
ฉันรู้ว่าฉันควรจะทำCtrl-Z
แล้วนำกลับมาทำงานเบื้องหน้า ... แต่มันไม่ใช่เรื่อง
ฉันสามารถดำเนินการต่อจากจุดที่ฉันหยุดงานได้หรือไม่
คำตอบ:
วิธีนี้จะสร้างไฟล์เก็บถาวร tar ของคุณใหม่และผนวกส่วนที่เสร็จแล้วไปยังไฟล์ที่มีอยู่ สิ่งนี้มีประโยชน์หากสำรองข้อมูลผ่านการเชื่อมต่อเครือข่าย คุณอาจจะส่งผลให้เกิดการเก็บถาวรที่เสียหายหากข้อมูลใด ๆ ใน INFILES ของคุณมีการเปลี่ยนแปลง อย่าลืมทดสอบที่เก็บถาวรของคุณหลังจากเสร็จสิ้น
เปลี่ยน INFILES และ OUTFILE เป็นชื่อที่ถูกต้องในบรรทัดต่อไปนี้
INFILES="my folder"; OUTFILE="archive.tgz"; SIZE="$(wc -c < $OUTFILE)"; tar -cz --to-stdout "$INFILES" | tail -c +$(($SIZE+1)) >> "$OUTFILE"
คำอธิบาย:
SIZE="$(wc -c < $OUTFILE)"
# รับขนาดปัจจุบันของไฟล์เก็บถาวร
tar -cz --to-stdout "$INFILES" |
# เริ่มสร้างการเก็บถาวรและส่งออกไปยังtail
คำสั่ง
tail -c +$(($SIZE+1)) >>
# ไม่ต้องสนใจข้อมูลก่อน $ SIZE + 1 และกลับสู่การเก็บถาวร $ OUTFILE ที่เหลือ
วิธีการแก้ปัญหาที่ดีที่สุดจะลบไฟล์ tar และเริ่มต้นกระบวนการใช้ได้กับและต่อท้ายด้วยnohup
&
หรือคุณสามารถเรียกใช้และการใช้งานที่เป็นยกเว้นสำหรับใหม่tar -tfv
tar -cvf
tar -cvf
จะเขียนทับไฟล์ที่มีอยู่ คุณหมายถึงtar -rvf
อะไร นอกจากนี้ไฟล์สุดท้ายที่ถูกเขียนไปยังไฟล์เก็บถาวรนั้นอาจไม่สมบูรณ์
tar -rvf
?
คุณทำไม่ได้ คุณเพียงแค่ต้องเริ่มต้นใหม่
สิ่งที่ฉันทำในกรณีที่ฉันมีtar
ไฟล์เก็บถาวรไม่สมบูรณ์ฉันสร้างรายการไฟล์ในไฟล์เก็บถาวร:
tar tf archive.tar | sed -e '/\/$/d' -e x -e '/^$/d' >files-done
sed
คำสั่งลบทุกบรรทัดเหล่านั้นที่มีต่อท้ายเฉือน: เหล่านี้เป็นไดเรกทอรีไม่ไฟล์และเราต้องการที่จะถ่ายโอนข้อมูลไดเรกทอรีอีกครั้งและเพียงข้ามไฟล์ที่อยู่ในไดเรกทอรีเหล่านั้นที่เรามีอยู่แล้วในที่เก็บ tar แรก นอกจากนี้เราให้sed
ลบชื่อไฟล์ล่าสุดเนื่องจากมีแนวโน้มที่จะถูกทิ้งเพียงบางส่วนเท่านั้นดังนั้นเราจะเก็บถาวรอีกครั้ง
จากนั้นเพียงส่งfiles-done
รายการผ่านตัวเลือก -X ไปยังtar
คำสั่งใหม่:
tar cfvX archive2.tar files-done SOURCEDIR
ตรวจสอบให้แน่ใจว่าใช้ชื่อไฟล์เอาต์พุตอื่นในคำสั่ง tar ใหม่หรือคุณจะเขียนทับไฟล์เก็บถาวรบางส่วนของคุณ อย่าพยายามผนวกผนวกกับไฟล์เก็บถาวร tar ที่เสียหายโดยตรง