Bash Wiki
Posts (Latest 30 updated) :
Read all
Contents:
  1. [Linux] Bash rsync การใช้งาน: คัดลอกและซิงค์ไฟล์
    1. Overview
    2. Usage
    3. Common Options
    4. Common Examples
    5. Tips

[Linux] Bash rsync การใช้งาน: คัดลอกและซิงค์ไฟล์

Overview

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

Usage

รูปแบบพื้นฐานของคำสั่ง rsync มีดังนี้:

rsync [options] [source] [destination]

Common Options

  • -a: โหมดการคัดลอกแบบ archive ซึ่งรวมถึงการรักษาสิทธิ์และการคัดลอกโฟลเดอร์
  • -v: แสดงรายละเอียดการทำงาน (verbose)
  • -z: บีบอัดข้อมูลระหว่างการส่งข้อมูล
  • -r: คัดลอกโฟลเดอร์และไฟล์ในโฟลเดอร์ย่อย
  • --delete: ลบไฟล์ในโฟลเดอร์ปลายทางที่ไม่มีในโฟลเดอร์ต้นทาง

Common Examples

  1. คัดลอกไฟล์จากโฟลเดอร์ต้นทางไปยังโฟลเดอร์ปลายทาง:
    rsync -av /path/to/source/ /path/to/destination/
    
  2. คัดลอกไฟล์ไปยังเซิร์ฟเวอร์ระยะไกล:
    rsync -avz /path/to/local/file user@remote:/path/to/remote/directory/
    
  3. ซิงค์โฟลเดอร์และลบไฟล์ที่ไม่มีในต้นทาง:
    rsync -av --delete /path/to/source/ /path/to/destination/
    
  4. คัดลอกไฟล์พร้อมการบีบอัด:
    rsync -avz /path/to/source/ /path/to/destination/
    

Tips

  • ใช้ -n หรือ --dry-run เพื่อตรวจสอบว่าคำสั่งจะทำงานอย่างไรโดยไม่ทำการคัดลอกจริง
  • ควรใช้ -h เพื่อแสดงขนาดไฟล์ในรูปแบบที่อ่านง่าย
  • ตรวจสอบการเชื่อมต่อเครือข่ายก่อนทำการซิงค์ข้อมูลกับเซิร์ฟเวอร์ระยะไกลเพื่อป้องกันการสูญหายของข้อมูล