Skip to main content

วิธีการใช้ rsync เพื่อคัดลอกโฟลเดอร์และแฟ้ม Linux

คลิปที่-0053-การใช้งาน rsync บน ubuntu server (เมษายน 2025)

คลิปที่-0053-การใช้งาน rsync บน ubuntu server (เมษายน 2025)
Anonim

rsync เป็นโปรแกรมถ่ายโอนไฟล์สำหรับ Linux ที่ช่วยให้คุณสามารถคัดลอกไดเร็กทอรีและไฟล์ด้วยคำสั่งง่ายๆซึ่งเป็นหนึ่งในตัวเลือกที่มีฟังก์ชั่นการคัดลอกแบบดั้งเดิม

หนึ่งในคุณสมบัติที่มีประโยชน์ของ rsync ก็คือเมื่อคุณใช้มันเพื่อคัดลอกไดเรกทอรีจากบรรทัดคำสั่งคุณสามารถแยกไฟล์ออกได้อย่างเป็นระบบ ด้วยวิธีนี้หากคุณใช้ rsync เพื่อทำการสำรองข้อมูลไฟล์คุณสามารถสำรองข้อมูลไฟล์ที่ต้องการเก็บถาวรได้ในขณะที่หลีกเลี่ยงทุกสิ่งทุกอย่าง

ไวยากรณ์ rsync

การใช้คำสั่ง rsync อย่างถูกต้องกำหนดให้คุณทำตามไวยากรณ์ที่ถูกต้อง:

rsync OPTION … SRC … DESTrsync OPTION … SRC … USER @ HOST: DESTrsync OPTION … SRC … USER @ HOST :: DESTrsync OPTION … SRC … rsync: // USER @ HOST : PORT / DESTrsync OPTION … USER @ HOST: SRC DESTrsync OPTION … USER @ HOST :: SRC DESTrsync OPTION … rsync: // USER @ HOST : PORT / SRC DEST

ตัวเลือก พื้นที่ที่ให้ไว้ข้างต้นสามารถเต็มไปด้วยหลายสิ่ง ดู ข้อมูลสรุปของ OPCIONS ส่วนของเอกสาร rsync สำหรับรายการทั้งหมด แต่นี่เป็นตัวอย่างบางส่วน:

  • -v, --verbose: เพิ่มคำฟุ่มเฟื่อย
    • --info = ธง : คำกริยาให้ข้อมูลที่ละเอียดละเอียด
    • --debug = ธง : verbosity การดีบักละเอียดละเอียด
    • --msgs2stderr: การจัดการเอาต์พุตพิเศษสำหรับการดีบัก
  • -q, --เงียบ: ปราบปรามข้อความที่ไม่ได้เกิดข้อผิดพลาด
    • --no-motd: ยกเลิก MOTD โหมดโหมด
  • -c, --checksum: ข้ามไปตาม checksum ไม่ใช่ mod-time และ size
  • -r, --recursive: Recurse ลงในไดเร็กทอรี
  • -b, --backup: ทำการสำรองข้อมูล
    • --backup-dir = DIR : สำรองข้อมูลลงในลำดับชั้นที่มีพื้นฐานมาจาก DIR
    • คำต่อท้าย = SUFFIX : ส่วนต่อท้ายสำรอง
  • -d, --dirs: โอนไดเรกทอรีโดยไม่ต้องทำใหม่

rsync ตัวอย่าง

นี่เป็นเพียงตัวอย่างบางส่วนของวิธีการใช้ rsync กับบางตัวเลือกเหล่านี้:

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

rsync /home/jon/Desktop/data/*.jpg / home / jon / เดสก์ท็อป / ข้อมูลสำรอง /

ในตัวอย่างข้างต้นไฟล์ JPG ทั้งหมดจากไฟล์ /ข้อมูล/ โฟลเดอร์จะถูกคัดลอกไปที่ /สำรองข้อมูล/ โฟลเดอร์ผู้ใช้ Jon's Desktop folder

rsync --max-size =2k / home / jon / เดสก์ท็อป / ข้อมูล / home / jon / เดสก์ท็อป / สำรองข้อมูล /

ตัวอย่าง rsync นี้มีความซับซ้อนมากขึ้นเนื่องจากมีการตั้งค่าไว้ ไม่ คัดลอกไฟล์หากขนาดใหญ่กว่า 2,048 KB นั่นคือเพื่อคัดลอกไฟล์ที่มีขนาดเล็กกว่าขนาดที่ระบุเท่านั้น คุณสามารถใช้ได้ k, m, หรือ ก. เพื่อแสดงจำนวนไบต์กิโลไบต์เมกะไบต์และกิกะไบต์ในตัวคูณ 1,024 หรือ กิโล , MB , หรือ GB ใช้ 1,000

rsync --min-size =30 mb / home / jon / เดสก์ท็อป / ข้อมูล / home / jon / เดสก์ท็อป / สำรองข้อมูล /

เช่นเดียวกันนี้สามารถทำได้สำหรับ --min ขนาด ตามที่เห็นข้างต้น ในตัวอย่างนี้ rsync จะคัดลอกไฟล์ที่มีขนาด 30 MB หรือใหญ่เท่านั้น

rsync --min-size =30MB --progress / home / jon / เดสก์ท็อป / ข้อมูล / home / jon / เดสก์ท็อป / backupdata /

เมื่อคุณใช้ rsync เพื่อคัดลอกไฟล์ที่มีขนาดใหญ่มากเช่น 30 เมกะไบต์หรือใหญ่กว่าและโดยเฉพาะอย่างยิ่งเมื่อมีจำนวนเหล่านี้คุณอาจต้องการดูความคืบหน้าของฟังก์ชันคัดลอกแทนการสมมติว่าคำสั่งนี้กลายเป็นน้ำแข็ง ในกรณีดังกล่าวใช้ --progress ตัวเลือกในการดูกระบวนการถึง 100%

rsync --recursive / home / jon / เดสก์ท็อป / ข้อมูล / home / jon / เดสก์ท็อป / ข้อมูล 2

--recursive ให้วิธีง่ายๆในการคัดลอกโฟลเดอร์ทั้งหมดไปยังตำแหน่งอื่นเช่นไปที่ / data2 / ในตัวอย่างของเรา

rsync -r --exclude = "*.deb' / home / jon / เดสก์ท็อป / ข้อมูล / home / jon / เดสก์ท็อป / ข้อมูลสำรอง

นอกจากนี้คุณยังสามารถคัดลอกทั้งโฟลเดอร์ยกเว้นไฟล์ที่มีนามสกุลไฟล์บางอย่างเช่นไฟล์ DEB ในตัวอย่างข้างต้น คราวนี้ทั้งนั้น /ข้อมูล/ โฟลเดอร์จะถูกคัดลอกไปที่ /สำรองข้อมูล/ เช่นเดียวกับในตัวอย่างก่อนหน้านี้ แต่ไฟล์ DEB ทั้งหมดจะถูกแยกออกจากสำเนา