วิธีสร้างการสำรองข้อมูลจากลิงก์สัญลักษณ์?


63

ฉันมีไดเรกทอรีที่มีลิงก์สัญลักษณ์ไปยังไดเรกทอรีอื่น ฉันต้องการเก็บถาวรลิงก์สัญลักษณ์ไม่ใช่ลิงก์ แต่เป็นไฟล์เก็บถาวรที่มีไฟล์ของไดเร็กทอรีที่อ้างถึงโดยใช้คำสั่ง tar ฉันจะทำสิ่งนี้ได้อย่างไร

คำตอบ:


91

ใช้-hตัวเลือก tar จากหน้าคน:

-h, --dereference
    don't archive symlinks; archive the files they point to

3
หากฉันมี / sym1 คะแนนไปที่ / backups และ / sym2 ชี้ไปที่ / backups ฉันtar -hcf file.tar /sym1 /sym2จะรันฉันจะได้รับ / backups สองครั้งหรือไม่
เฟลิเป้อัลวาเรซ

@FelipeAlvarez -Lนับจำนวนไฟล์หนึ่งครั้ง-lหลายครั้ง ดูที่นี่
Suuuehgi

3

หากลิงก์อยู่ในไดเร็กทอรีรูทคุณสามารถให้เชลล์อ้างอิงถึงพวกเขาและส่งผ่านไปยัง tar เป็นอาร์กิวเมนต์ ตัวอย่างเช่นหากคุณมี / backup / source / a และ / backup / source / b ซึ่งทั้งคู่เป็น symlink ที่ชี้ไปยังไดเรกทอรีจริงสิ่งต่อไปนี้จะได้ผล

tar -cf /path/to/backup.tar /backup/source/*/

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