Linux
rsync
คำสั่งเป็นเครื่องมือคัดลอกไฟล์และการซิงโครไนซ์โฟลเดอร์ นี่คือสิบกรณีการใช้งานทั่วไปที่คุณจะสามารถใช้งานได้ดีกับระบบของคุณเอง
เครื่องมือ rsync
ที่
rsync
เครื่องมือคัดลอกไฟล์และไดเรกทอรีระหว่างคอมพิวเตอร์สองเครื่อง มันใช้ไฟล์
อัลกอริทึมที่ซับซ้อน
การสแกนต้นไม้ไดเรกทอรีเพื่อค้นหาไฟล์บนคอมพิวเตอร์ต้นทางที่ไม่มีอยู่ในคอมพิวเตอร์ปลายทาง ไฟล์เหล่านี้จะถูกส่งไปยังคอมพิวเตอร์ปลายทาง สิ่งที่ทำให้
Rync
ฉลาดมากมันสามารถเข้าใจได้ว่าชิ้นส่วนของ
ที่มีอยู่เดิม
ไฟล์ได้รับการแก้ไขแล้วและส่งเฉพาะ
เปลี่ยนบางส่วน
.
คุณสามารถใช้ได้
rsync
ในการคัดลอกไฟล์ไปยังตำแหน่งอื่นในฮาร์ดไดรฟ์ของคุณไปยังฮาร์ดไดรฟ์อื่นในคอมพิวเตอร์เครื่องเดียวกันกับไฟล์
ไดรฟ์ USB ที่เชื่อมต่อภายนอก
หรือตำแหน่งอื่น ๆ ที่เข้าถึงได้เครือข่าย
ยิ่งไปกว่านั้น,
rsync
สามารถเลือกลิงค์สัญลักษณ์ลิงค์ยากและไฟล์ได้
ข้อมูลเมตา
เช่นการเป็นเจ้าของไฟล์สิทธิ์และเวลาการเข้าถึง เพื่อสนับสนุนฟังก์ชั่นทั้งหมดนี้
rsync
มีตัวเลือกมากมายและการหาพวกเขาทั้งหมดต้องใช้เวลา เราได้รวบรวมตัวอย่าง 10 ตัวอย่างเหล่านี้เพื่อช่วยให้คุณเริ่มต้น เราได้เขียนเกี่ยวกับการสำรองข้อมูลแล้ว
rsync
ดังนั้นเราจึงมุ่งเน้นไปที่การใช้งานอื่น ๆ ที่นี่
สำหรับตัวเลือกทั้งหมดของมันโครงสร้างของไฟล์
rsync
คำสั่งง่ายๆ เราจำเป็นต้องจัดหาแหล่งที่มาปลายทางและตัวเลือกที่เราต้องการใช้ คุณอาจพบว่า
rsync
ได้รับการติดตั้งไว้แล้วบนคอมพิวเตอร์ Linux ของคุณ - มันอยู่ในเครื่องทดสอบทั้งหมดของเรา - แต่ถ้ามันไม่ได้อยู่ในที่เก็บของการจัดจำหน่ายของคุณอย่างแน่นอน
1. คัดลอกไฟล์ไปยังไดเรกทอรีอื่น
นี่คือตัวอย่างง่ายๆที่จะทำให้เราก้าวต่อไป เราจะคัดลอกไฟล์จากไดเรกทอรี "Project-Files" ไปยังไดเรกทอรี "เอกสาร" เรากำลังใช้สองตัวเลือกคือ
-A
ตัวเลือก (เก็บถาวร) และ
-v
ตัวเลือก (verbose) ตัวเลือก verbose บอก
rsync
เพื่ออธิบายว่ามันทำอะไรได้บ้าง ที่
คลังเก็บเอกสารสำคัญ
ตัวเลือกเก็บรักษาความเป็นเจ้าของไฟล์และรายการอื่น ๆ ที่เราจะดูในไม่ช้า
โดยใช้
LS
ในโฟลเดอร์“ เอกสาร” แสดงไฟล์ถูกคัดลอก
ในขณะที่
rsync
กำลังทำงานไฟล์จะถูกระบุไว้ในขณะที่คัดลอก เราได้รับแจ้งว่า:
- จำนวนไบต์ที่ส่ง
-
จำนวนไบต์ที่ได้รับ ก่อนที่การถ่ายโอนไฟล์จะเกิดขึ้น
rsyncต้องแก้ไขว่าต้องถ่ายโอนไฟล์ใด ในการทำเช่นนั้นข้อมูลบางอย่างเกี่ยวกับไฟล์ในปลายทางจะต้องเรียกคืนโดยrsync. ข้อมูลนี้มีอยู่ในไบต์ที่ได้รับ - ความเร็วของการถ่ายโอน
- ขนาดทั้งหมดของไฟล์ที่คัดลอก
- “ การเร่งความเร็ว” นี่คืออัตราส่วนของขนาดรวมหารด้วยผลรวมของไบต์ที่ส่งและรับ ยิ่งจำนวนนี้สูงขึ้นเท่าใดการถ่ายโอนก็ยิ่งมีประสิทธิภาพมากขึ้นเท่านั้น
เราแก้ไขไฟล์ข้อความในไดเรกทอรีต้นฉบับและทำซ้ำ
rsync
สั่งการ.
เวลานี้ไฟล์เดียวที่ต้องอัปเดตคือไฟล์ข้อความที่เราแก้ไข ตัวเลขการเร่งความเร็วตอนนี้ 30,850 นี่คือประสิทธิภาพที่มีประสิทธิภาพมากขึ้นในการคัดลอกส่วนที่แก้ไขของไฟล์เดียวนั้นมากกว่าการคัดลอกไฟล์ทั้งหมด
ที่
-A
ตัวเลือก (Archive) แสดงถึงการรวบรวมตัวเลือกอื่น ๆ มันเหมือนกับการใช้ตัวเลือกทั้งหมดเหล่านี้:
- R : ทำงานซ้ำ ๆ ผ่านต้นไม้ไดเรกทอรีในไดเรกทอรีต้นฉบับและคัดลอกไปยังไดเรกทอรีปลายทางสร้างพวกเขาหากพวกเขายังไม่มีอยู่ที่นั่น
- l : คัดลอก symlinks เป็น symlinks
- P : รักษาสิทธิ์ไฟล์
- T : รักษาเวลาปรับเปลี่ยนไฟล์
- ก. : อนุรักษ์สิทธิ์กลุ่ม
- โอ : รักษาความเป็นเจ้าของไฟล์
- d : คัดลอกไฟล์พิเศษและไฟล์อุปกรณ์ ไฟล์พิเศษสามารถเป็นรายการการสื่อสารเป็นศูนย์กลางที่ได้รับการปฏิบัติเหมือนไฟล์เช่น ซ็อกเก็ตและท่อแรกออกเป็นครั้งแรก (FIFOS) ไฟล์อุปกรณ์เป็นไฟล์พิเศษที่ให้การเข้าถึงอุปกรณ์และอุปกรณ์หลอก
นี่เป็นชุดค่าผสมที่ใช้บ่อยที่
rsync
จัดเตรียม
-A
ตัวเลือก (เก็บถาวร) เป็นวิธีชวเลขในการเรียกใช้พวกเขาทั้งหมด
2. คัดลอกไดเรกทอรีไปยังไดเรกทอรีอื่น
หากคุณดูก่อนหน้านี้
rsync
คำสั่งคุณจะเห็นสแลชไปข้างหน้า“/” บนเส้นทางไฟล์ของไดเรกทอรีต้นฉบับ สิ่งนี้มีความสำคัญ มันบอก
rsync
เพื่อคัดลอก
สารบัญ
ของไดเรกทอรี หากคุณไม่ได้จัดเตรียม Slash ไปข้างหน้า
rsync
จะคัดลอกไดเรกทอรี
และ
เนื้อหาของมัน
เวลานี้ชื่อไดเรกทอรีจะถูกเพิ่มลงในชื่อไฟล์ตามที่ระบุไว้ หากเรามองเข้าไปในไดเรกทอรีปลายทางเราจะเห็นโฟลเดอร์ต้นทางถูกคัดลอกมาพร้อมกับไฟล์ภายใน
3. คัดลอกไดเรกทอรีไปยังไดรฟ์อื่น
การคัดลอกไฟล์ไปยังตำแหน่งอื่นในฮาร์ดไดรฟ์เดียวกันไม่ได้ให้การป้องกันคุณกับไฟล์ ความล้มเหลวในการขับเคลื่อน . หากไดรฟ์นั้นให้ผีคุณสูญเสียสำเนาต้นทางและปลายทางของไฟล์เหล่านั้น การคัดลอกไปยังฮาร์ดไดรฟ์อื่นเป็นวิธีที่แข็งแกร่งกว่าในการปกป้องข้อมูลของคุณ สิ่งที่เราต้องทำคือจัดเตรียมเส้นทางที่ถูกต้องไปยังไดรฟ์ปลายทาง
การดูฮาร์ดไดรฟ์อื่น ๆ แสดงให้เราเห็นไดเรกทอรีและไฟล์ถูกคัดลอกไป
4. ทำแบบแห้งก่อน
ก่อนที่เราจะดูวิธีการ
rsync
สามารถลบไฟล์ได้อย่างเป็นประโยชน์ให้เราดูว่าเราจะทำอย่างไร
rsync
ดำเนินการแห้ง
ในการวิ่งแห้ง
rsync
ต้องผ่านการเคลื่อนไหวของการกระทำที่เราขอ แต่ไม่ได้ทำจริง มันรายงานเกี่ยวกับสิ่งที่จะเกิดขึ้นหากคำสั่งถูกดำเนินการ ด้วยวิธีนี้เราสามารถตรวจสอบให้แน่ใจว่าคำสั่งทำสิ่งที่เราคาดหวัง
เพื่อบังคับให้มีการวิ่งแห้งเราใช้ไฟล์
-แห้งแล้ง
ตัวเลือก.
ไฟล์ที่จะถูกคัดลอกอยู่นั้นมีการระบุไว้สำหรับเราและเราได้รับสถิติปกติตามด้วยข้อความ
(Dry Run)
เพื่อที่เราจะได้รู้ว่าไม่มีอะไรเกิดขึ้นจริง
5. การลบไฟล์ในไดเรกทอรีปลายทาง
ที่
--ลบ
ตัวเลือกบอก
rsync
ลบ
ไฟล์และไดเรกทอรี
ใน
ปลายทาง
ไดเรกทอรีที่ไม่ได้อยู่ในไดเรกทอรีต้นฉบับ ซึ่งหมายความว่าไดเรกทอรีปลายทางจะเป็นสำเนาที่แน่นอนของไดเรกทอรีต้นฉบับ เราจะระมัดระวังและใช้ไฟล์
-แห้งแล้ง
ตัวเลือกก่อน
เราได้รับแจ้งว่าจะลบไฟล์สองไฟล์ หากเราแน่ใจว่าเราไม่สนใจว่าพวกเขาจะถูกลบเราสามารถลบไฟล์
-แห้งแล้ง
ตัวเลือกและดำเนินการตามคำสั่งของจริง
เวลานี้เนื้อหาของไดเรกทอรีจะถูกซิงโครไนซ์และไฟล์พิเศษสองไฟล์จะถูกลบ
6. การลบไฟล์ต้นฉบับ
คุณสามารถเลือกที่จะลบไฟล์ต้นฉบับหลังจาก
การถ่ายโอนที่ประสบความสำเร็จ
, การทำ
rsync
ทำงานเหมือนการเคลื่อนไหวมากกว่าสำเนา หากการถ่ายโอนไม่สำเร็จไฟล์ต้นฉบับจะไม่ถูกลบ ตัวเลือกที่เราต้องใช้คือ
-REMOVE-Source-Files
.
โปรดทราบว่าสามารถลบไฟล์ได้แม้ว่าจะไม่มีการถ่ายโอนไฟล์ นั่นเป็นเพราะถ้า
rsync
ตรวจสอบและไฟล์ทั้งหมดมีอยู่ในไดเรกทอรีปลายทางแล้วและไม่มีอะไรสำหรับ
rsync
ทำ,
rsync
พิจารณาว่าการถ่ายโอนที่ประสบความสำเร็จ
อีกด้วย,
rsync
ลบไฟล์
ไฟล์
จากไดเรกทอรีต้นฉบับ มันไม่ได้ลบไดเรกทอรีต้นฉบับหรือไดเรกทอรีย่อยใด ๆ เพียงไฟล์ในไฟล์เหล่านั้น เราสามารถดูสิ่งนี้ได้โดยใช้ไฟล์
-r
ตัวเลือก (เรียกซ้ำ) ด้วย
LS
บนไดเรกทอรีต้นฉบับ
7. คัดลอกไฟล์ไปยังคอมพิวเตอร์ระยะไกล
เพื่อซิงโครไนซ์โฟลเดอร์กับคอมพิวเตอร์ระยะไกล
rsync
ต้องติดตั้งบนคอมพิวเตอร์ทั้งสองเครื่อง ตั้งค่าการสื่อสาร SSH ระหว่างคอมพิวเตอร์สองเครื่องก่อนที่คุณจะพยายามใช้
rsync
ไปยังคอมพิวเตอร์ระยะไกล
คุณต้องสามารถเข้าสู่ระบบจากระยะไกลในฐานะผู้ใช้ทั่วไปในคอมพิวเตอร์ระยะไกลสำหรับ
rsync
ไปทำงาน. ไม่สำคัญว่าคุณจะใช้ ID และรหัสผ่านเพื่อเข้าสู่ระบบหรือไม่หรือคุณได้ตั้งค่าคีย์ SSH เพื่อความปลอดภัย
รหัสผ่านน้อย
เข้าถึง แต่ถ้าคุณไม่สามารถเข้าสู่ระบบในฐานะผู้ใช้ได้
rsync
จะไม่ทำงานเช่นกัน
หากคุณเข้าสู่ระบบด้วยรหัสผ่าน
rsync
จะแจ้งรหัสผ่าน หากคุณใช้คีย์ SSH เพื่อเข้าสู่ระบบในกระบวนการนั้นราบรื่น
สิ่งพิเศษที่คุณต้องทำคือการเพิ่มชื่อบัญชีผู้ใช้และที่อยู่ IP ของคอมพิวเตอร์ระยะไกลไปยังจุดเริ่มต้นของเส้นทางไฟล์ปลายทาง ใช้ AT Sign”
@
” เพื่อแยกชื่อผู้ใช้ออกจากชื่อคอมพิวเตอร์หรือที่อยู่ IP และลำไส้ใหญ่”
::
” เพื่อแยกชื่อคอมพิวเตอร์หรือ
ที่อยู่ IP
จากเส้นทางไดเรกทอรี
เราได้รับข้อมูลเดียวกันกับเราเช่นเดียวกับที่เราทำเมื่อเราคัดลอกไฟล์ในเครื่อง
8. รวมหรือยกเว้นไฟล์หรือไดเรกทอรี
คุณอาจมีไฟล์และไดเรกทอรีในไดเรกทอรีต้นทางที่คุณไม่ต้องการคัดลอกไปยังคอมพิวเตอร์ปลายทาง คุณสามารถ
ยกเว้นพวกเขา
ใช้
--ไม่รวม
ตัวเลือก. ในทำนองเดียวกันคุณสามารถเลือกที่จะรวมไฟล์และไดเรกทอรีเฉพาะด้วย
--รวม
ตัวเลือก.
Quirk คือถ้าคุณใช้ไฟล์
--รวม
ตัวเลือกด้วยตัวเองไฟล์ทั้งหมดจะถูกคัดลอกตามปกติรวมถึงไฟล์ที่คุณรวมโดยเฉพาะ เพื่อคัดลอกเฉพาะไฟล์ที่คุณต้องทำ
--ไม่รวม
อย่างอื่น.
คุณสามารถใช้ได้มาก
--รวม
และ
--ไม่รวม
ตัวเลือกในคำสั่งของคุณตามที่คุณต้องการ แต่ให้แน่ใจว่าคุณใส่
--รวม
ตัวเลือกก่อน
--ไม่รวม
ตัวเลือก. นอกจากนี้ตรวจสอบให้แน่ใจว่าคุณมี Slash ไปข้างหน้าบนเส้นทางไฟล์ต้นฉบับของคุณ
คำสั่งนี้คัดลอกเฉพาะไฟล์ซอร์สโค้ด C และ ไฟล์ข้อมูล CSV ไปยังคอมพิวเตอร์ปลายทาง
ไฟล์เดียวที่คัดลอกคือไฟล์ที่เรารวมไว้เป็นพิเศษ
9. บีบอัดไฟล์ในการถ่ายโอน
ที่
-z
ตัวเลือก (ประคบ) เป็นสาเหตุ
rsync
เพื่อบีบอัดไฟล์ที่ถ่ายโอน พวกเขาจะไม่ถูกจัดเก็บเป็นไฟล์ที่ถูกบีบอัดบนคอมพิวเตอร์ปลายทาง แต่พวกเขาจะถูกบีบอัดในระหว่างการถ่ายโอนเท่านั้น สิ่งนี้สามารถเพิ่มความเร็วในการถ่ายโอนที่มีความยาว
10. การติดตามความคืบหน้า
เมื่อพูดถึงการถ่ายโอนที่ยาวนานเราสามารถเพิ่มสถิติบางอย่างเพื่อให้เราสามารถเห็นความคืบหน้าของการถ่ายโอน
ที่
-p
(บางส่วน, ความคืบหน้า) ตัวเลือกเพิ่มสองตัวเลือก
-คู่กรณี
และ
--ความคืบหน้า
. ที่
-คู่กรณี
ตัวเลือกบอก
rsync
เพื่อให้ไฟล์ที่ถ่ายโอนบางส่วนหากการถ่ายโอนล้มเหลว นี่จะช่วยประหยัดเวลาเมื่อการถ่ายโอนเริ่มต้นใหม่
ที่
--ความคืบหน้า
ตัวเลือกพิมพ์สำหรับแต่ละไฟล์ข้อมูลที่ถ่ายโอนในไบต์และเป็นเปอร์เซ็นต์ความเร็วของการถ่ายโอนเวลาที่ใช้จำนวนไฟล์ที่ถูกถ่ายโอนและจำนวนไฟล์ที่เหลือ
ม้วนเอาท์พุทผ่านมาอย่างรวดเร็วและยากที่จะอ่าน คุณสามารถปรับปรุงสิ่งต่าง ๆ ได้เล็กน้อยโดยการลบไฟล์
-v
ตัวเลือก (verbose) จากคำสั่ง ถึงอย่างนั้นก็ยังอ่านได้ยากเหมือน
มันมักจะมีประโยชน์มากกว่าในการตรวจสอบความคืบหน้าของการถ่ายโอนโดยรวม คุณสามารถทำสิ่งนี้ได้ด้วยตัวเลือก –info และส่งผ่าน“ Progress2” เป็นพารามิเตอร์
เช่น CP บนสเตียรอยด์
ที่
rsync
คำสั่งนั้นรวดเร็วยืดหยุ่นและคุ้มค่ากับเวลาที่ใช้ในการทำความคุ้นเคยกับมัน รูปแบบพื้นฐานของไฟล์
rsync
คำสั่งด้วย
-
ตัวเลือกไดเรกทอรีต้นทางและไดเรกทอรีปลายทางไม่ยากที่จะจำได้เลย
สำหรับกรณีการใช้งานจำนวนมากนั่นคือทั้งหมดที่คุณต้องการ รู้สึกสบายใจกับสิ่งนั้นและส่วนที่เหลือจะมาอย่างง่ายดาย
- › VPN ราคาถูกสามารถมีค่าใช้จ่ายได้มากกว่าการต่อรองราคา
- › Wyze ลงมันไม่ใช่แค่คุณ
- › ลืมเดสก์ท็อปเกม: แล็ปท็อปเกมเกือบจะเร็ว
- › อุปกรณ์สมาร์ทโฮมถัดไปของคุณอาจมี 5G
- › หยุดใช้แป้นพิมพ์และเมาส์ที่มาพร้อมกับพีซีของคุณ
- › Bose SuiingComfort Earbuds 2 รีวิว: ก้าวไปข้างหน้าสำหรับการยกเลิกเสียงรบกวนเสียง