แนะนำการซิงก์ไฟล์ด้วย Rclone
- Rclone เป็นโปรแกรมบรรทัดคำสั่งสำหรับจัดการไฟล์บนคลาวด์สตอเรจ
- รองรับผลิตภัณฑ์คลาวด์สตอเรจมากกว่า 70 รายการ รวมถึง S3 object store, บริการจัดเก็บไฟล์สำหรับธุรกิจและผู้ใช้ทั่วไป และโปรโตคอลรับส่งข้อมูลมาตรฐาน
- มอบเวอร์ชันคลาวด์อันทรงพลังของคำสั่ง Unix อย่าง rsync, cp, mv, mount, ls, ncdu, tree, rm, cat เป็นต้น โดยใช้ไวยากรณ์ที่คุ้นเคย พร้อมรองรับ shell pipeline และฟีเจอร์ป้องกัน
--dry-run
ความสามารถของ Rclone
- เก็บรักษา timestamp ของไฟล์ และตรวจสอบ checksum ตลอดเวลาเพื่อจัดการข้อมูลอย่างปลอดภัย
- สามารถกลับมาทำการโอนต่อจากไฟล์ที่ส่งสำเร็จล่าสุดได้ เมื่อการโอนถูกจำกัดด้วยแบนด์วิดท์ การเชื่อมต่อที่ไม่เสถียร หรือโควตา
- ใช้การโอนย้ายฝั่งเซิร์ฟเวอร์เพื่อลดการใช้แบนด์วิดท์ฝั่งโลคัลให้เหลือน้อยที่สุด และถ่ายโอนข้ามผู้ให้บริการโดยไม่ใช้ดิสก์โลคัล
- มี virtual backend สำหรับครอบไฟล์ซิสเต็มทั้งแบบโลคัลและคลาวด์ เพื่อใช้การเข้ารหัส การบีบอัด การแบ่งชิ้น การแฮช และการรวมไฟล์
- สามารถเมานต์ไฟล์ซิสเต็มแบบโลคัล คลาวด์ หรือเสมือนเป็นดิสก์บน Windows, macOS, Linux และ FreeBSD และเปิดให้บริการผ่าน SFTP, HTTP, WebDAV, FTP, DLNA
ผู้ให้บริการที่ Rclone รองรับ
- รองรับผู้ให้บริการคลาวด์สตอเรจหลากหลาย เช่น 1Fichier, Amazon S3, Google Drive, Microsoft OneDrive เป็นต้น
- ผู้ให้บริการอื่นอีกมากที่ใช้โปรโตคอลมาตรฐานอย่าง WebDAV หรือ S3 ก็สามารถใช้งานได้ทันทีเช่นกัน
กรณีการใช้งานของ Rclone
- ช่วยสำรองข้อมูลไฟล์ไปยังคลาวด์สตอเรจ (รวมถึงเข้ารหัส) และกู้คืนกลับมา (รวมถึงถอดรหัส)
- ใช้ทำมิเรอร์ข้อมูลคลาวด์ไปยังบริการคลาวด์อื่นหรือมายังเครื่องโลคัล, ย้ายข้อมูลขึ้นคลาวด์ หรือย้ายข้ามผู้ให้บริการคลาวด์สตอเรจ
- ใช้เมานต์คลาวด์สตอเรจหลายประเภทเป็นดิสก์ และวิเคราะห์รวมถึงตรวจสอบการใช้งานข้อมูลที่เก็บอยู่บนคลาวด์สตอเรจ
ความเห็นของ GN⁺
- Rclone มีประโยชน์มากจนถูกเรียกว่าเป็น "มีดพกสวิสของคลาวด์สตอเรจ" เพราะรองรับบริการคลาวด์สตอเรจหลากหลายและมีความสามารถด้านการจัดการไฟล์ที่ทรงพลัง
- จุดสำคัญเป็นพิเศษคือช่วยให้ผู้ใช้ทำงานซับซ้อนอย่างการสำรองข้อมูล ซิงก์ข้อมูล และย้ายข้อมูลคลาวด์ ได้ด้วยคำสั่งบรรทัดคำสั่งที่เรียบง่าย
- ในฐานะซอฟต์แวร์โอเพนซอร์ส Rclone ได้รับการสนับสนุนจากชุมชนนักพัฒนา และมีชุมชนช่วยเหลือที่มีประสบการณ์กับกรณีใช้งานหลากหลาย ซึ่งเป็นประโยชน์ต่อทั้งผู้ใช้และนักพัฒนา
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
มีการแสดงความชื่นชอบต่อ rclone และบอกว่าประทับใจกับข้อความในหน้าบริจาคที่ขอรับเงินบริจาคเพื่อนำไปซื้อดอกไม้ให้ภรรยา พร้อมเสริมว่าดีใจที่ตอนนี้สามารถทำ rclone เป็นงานเต็มเวลาได้แล้ว
มีการกล่าวถึงว่า rclone สามารถเมานต์ cloud storage เป็นดิสก์ในเครื่องได้ และมีประโยชน์มากโดยเฉพาะใน Kubernetes แม้ความเร็วอาจช้าลงเมื่อมีไฟล์จำนวนมากในโฟลเดอร์ แต่ก็เป็นวิธีที่ง่ายและรวดเร็วในการนำ cloud storage มาใช้กับโปรเจ็กต์ นอกจากนี้ rclone ยังรองรับการเข้ารหัสแบบ end-to-end ทำให้ทุกอย่างที่ใส่ลงในไดรฟ์ที่เมานต์ไว้จะถูกเข้ารหัสแล้วเก็บลงในโฟลเดอร์อย่าง Dropbox ฟีเจอร์นี้จึงมีประโยชน์เพราะบริการอย่าง Dropbox ยังไม่รองรับ e2e แบบเนทีฟ
มีการบอกว่าคำสั่ง
ncduของ rclone เป็นฟีเจอร์ที่ชอบที่สุด เพราะผู้ให้บริการพื้นที่ cloud ส่วนใหญ่มักไม่แสดงว่าจริง ๆ แล้วโฟลเดอร์และโฟลเดอร์ย่อยใช้พื้นที่ไปเท่าไร ซึ่ง rclonencduช่วยแก้ปัญหานี้ได้มีการอธิบายว่าใช้ rclone ทุกวัน ทั้งใช้แทน sshfs, ใช้ push archive share จากโฮมเซิร์ฟเวอร์ไปที่ rsync.net หรือดึงรูปภาพจากบัญชี Google ของครอบครัวมาเก็บเป็น archive แสดงให้เห็นว่ามันใช้งานได้หลากหลายมาก
มีการแนะนำให้ลองดู Restic สำหรับงานสำรองข้อมูล พร้อมบอกว่า Rclone กับ Restic ทำงานร่วมกันได้ดี
มีการชื่นชมที่หน้าเว็บของ rclone ระบุอย่างภาคภูมิใจว่ามีการตรวจสอบ checksum อยู่เสมอ และเน้นย้ำถึงความสำคัญของการตรวจสอบ checksum เมื่อต้องซิงก์ระหว่างตัวเลือก cloud storage ต่าง ๆ
มีการอธิบายว่า rclone รองรับ storage backend ที่หลากหลาย และสามารถเข้ารหัส backend เก็บข้อมูลใด ๆ ก็ได้ผ่าน backend แบบ
cryptมีการยกตัวอย่างข้อเท็จจริงที่น่าสนใจว่าเคยมีคน reverse engineer Proton Drive API แล้วสร้างปลั๊กอินสำหรับ Rclone ขึ้นมา ซึ่งปัจจุบันเป็นวิธีเดียวที่จะใช้ Proton Drive บนลินุกซ์ได้
มีการบอกว่า rclone มีประโยชน์กับกรณีใช้งานที่หลากหลายมาก แต่ก็ชี้ให้เห็นข้อจำกัดว่าเพราะไม่ได้ใช้ AWS SDK จึงทำให้ไม่สามารถใช้การตั้งค่าบางอย่างใน
.aws/configได้ อีกทั้งในเอกสารยังมีคำเตือนเกี่ยวกับฟีเจอร์ที่ไม่ได้รับการดูแลต่อแล้ว เช่น caching และฟีเจอร์แบบ experimental แต่ไม่ได้ระบุข้อจำกัดแบบชัดเจนมีการพูดถึงการค้นพบเว็บ GUI ในตัวแบบ experimental และโปรเจ็กต์ RcloneBrowser ซึ่งมีประโยชน์เมื่อจำเป็นต้องใช้ GUI