การสำรองข้อมูลเป็นหนึ่งในชิ้นส่วนคอมพิวเตอร์สมัยใหม่ที่ถูกมองข้ามมากที่สุด ทั้งที่บ้านและในสภาพแวดล้อมที่ทำงาน และมักจะถูกละเลยหรือโอเวอร์โหลด โดยไม่สามารถกู้คืนได้เพียงเล็กน้อยหรือไม่มีเลย โดยไม่คำนึงถึงวิธีการและเทคโนโลยีที่เลือกสำหรับงาน เหตุผลหลักคือพวกเขาเจ็บปวดในการจัดการ พวกเขาสามารถค่อนข้างช้า
อีกทางเลือกหนึ่งคือการส่งไฟล์ของคุณไปยังระบบคลาวด์และปล่อยให้เป็นเช่นนั้น แต่ก็เสี่ยงอยู่นะ แล้วความเป็นส่วนตัวของคุณล่ะ? สิ่งนี้จะช้าได้อย่างไร อาจมีตัวเลือกที่สาม? แน่นอนมีอยู่อย่างหนึ่ง สำรองข้อมูลของคุณโดยใช้เครือข่าย P2P
บทนำ
ฉันเป็นผู้สนับสนุนโมเดลการสำรองข้อมูลแบบเพียร์ทูเพียร์แบบกระจายศูนย์ที่ยอดเยี่ยมมาโดยตลอด ไม่เคยกังวลเรื่องความปลอดภัยจากการส่งข้อมูลของคุณไปยังระบบคลาวด์และอะไรก็ตาม เหมือนดาบสองคม แต่อาจจะใช้งานได้จริง?
โปรแกรมต่างๆ เช่น BTsync และ Syncthing พยายามทำตามคำสัญญาที่ยอดเยี่ยมนี้ โดยสรุป เครื่องมือทั้งสองนี้ยกย่องไคลเอ็นต์ BitTorrent ด้วย GUI ที่สวยงาม บวกกับการรักษาความปลอดภัยที่เพิ่มขึ้นตามแนวคิดคีย์สาธารณะและไพรเวต ทำให้คุณสามารถรวมไฟล์ของคุณเป็นทอร์เรนต์ส่วนตัวที่ปลอดภัย แล้วแบ่งปันระหว่างไคลเอนต์ของคุณ กระจายข้อมูลของคุณ . การดำเนินการนี้ไม่ต่างจากการดาวน์โหลดหรืออัปโหลดอิมเมจ distro ของ Linux เว้นแต่คุณจะทำเช่นนั้นกับรูปภาพ เอกสาร และอื่นๆ ของคุณเอง มาดูกันว่าเครื่องมือเหล่านี้ทำอะไรได้บ้าง
BTSync
ซอฟต์แวร์พร้อมใช้งานสำหรับทุกแพลตฟอร์ม รวมถึง Windows, Linux, Mac, ระบบปฏิบัติการมือถือต่างๆ และอื่นๆ บน Linux การตั้งค่าเป็นเรื่องเล็กน้อย คุณเพียงแค่คลายไฟล์เก็บถาวรทุกที่ที่คุณต้องการและเปิดโปรแกรมหลัก จากนั้น คุณเชื่อมต่อผ่านเว็บคอนโซล เพียงเปิดเบราว์เซอร์และไปที่ localhost:8888 นั่นคือทั้งหมด
ใน GUI คุณจะต้องผ่านวิซาร์ดด่วน คุณจะต้องตั้งค่าบัญชีในเครื่อง ซึ่งโดยทั่วไปคือชื่อผู้ใช้และรหัสผ่าน .htaccess เพื่อให้บุคคลอื่นไม่สามารถเข้าถึงอินเทอร์เฟซการซิงค์ของคุณได้ จากนั้น คุณตั้งค่าอุปกรณ์ของคุณ
ณ จุดนี้ คุณจะได้รับการแจ้งเตือนที่น่ารำคาญเล็กน้อยว่า BTSync มีเวอร์ชันฟรีและเพย์แวร์ (โปร) ซึ่งคุณสามารถทดลองใช้งาน 30 วัน หากคุณสนใจ
ขั้นตอนต่อไปคือการสร้างตัวตน จากนั้นตั้งค่าอุปกรณ์เครื่องแรกของคุณ ในภายหลัง เราจะเรียนรู้ว่าต้องทำอย่างไรเมื่อเราเพิ่มอุปกรณ์ที่สองลงในกลุ่มของเรา อย่างที่คุณจินตนาการได้ เทคโนโลยีนี้ไม่มีค่าหากคุณมีอุปกรณ์เพียงเครื่องเดียว มันจะมีประโยชน์มากขึ้นเรื่อยๆ เมื่อจำนวนของโหนดที่เชื่อมต่อระหว่างกันเพิ่มมากขึ้น
ตอนนี้ คุณจะต้องเพิ่มโฟลเดอร์ ตั้งชื่อ ตั้งค่าสิทธิ์ ตั้งค่าวันหมดอายุ และตัดสินใจว่าคุณต้องการอนุมัติเพียร์ใหม่อย่างชัดเจนหรือไม่ เพื่อให้พวกเขาสามารถเข้าถึงข้อมูลได้ ค่อนข้างตรงไปตรงมา
เมื่อสร้างโฟลเดอร์แล้ว คุณสามารถแชร์ลิงก์ผ่านอีเมล ด้วยตนเองหรือใช้การสแกนคิวอาร์โค้ด ในทำนองเดียวกัน บนโฮสต์ที่สอง (หรืออื่นๆ สำหรับเรื่องนั้น) คุณจะต้องระบุแฮชตัวระบุก่อนจึงจะสามารถเริ่มซิงค์และแบ่งปันข้อมูลได้
เริ่มแรก ฉันตั้งค่า BTSync ใน Netrunner 15 แล้วจึงเพิ่ม Kubuntu 15.04 beta client ลงในเครือข่ายของฉัน หลังจากเริ่มต้นไคลเอ็นต์ ฉันเริ่มการทำงานของเว็บวิซาร์ด จากนั้นในขั้นตอนการลิงก์อุปกรณ์ แทนที่จะตั้งค่าอุปกรณ์เครื่องแรก ฉันตัดสินใจเชื่อมต่อกับอุปกรณ์ที่ใช้งาน BTSync อยู่แล้ว และนั่นก็เกี่ยวกับการทดสอบของฉัน เพราะอุปกรณ์ทั้งสองของฉันล้มเหลวในการจับคู่ ฉันไม่สามารถดำเนินการใดๆ ได้นอกเหนือจากจุดนี้ และฉันตัดสินใจลองใช้เครื่องมือที่สอง
ขออภัย ฉันลองอย่างอื่นแล้ว นั่นคือการตั้งค่า BTSync บน iPhone โดยหวังว่าสิ่งต่างๆ อาจใช้งานได้จริง Apple Store ขอรายละเอียดบัตรเครดิตของฉัน และไม่ยอมให้ฉันติดตั้งแอป แม้ว่าแอปจะมาพร้อมกับรุ่นฟรีและรุ่นทดลองใช้ก็ตาม แต่เห็นได้ชัดว่ารุ่นมือถือได้รับการออกแบบในลักษณะที่แตกต่างออกไป ไม่. ไม่ต้องการ.
การซิงค์
ลูกค้าคนที่สองในการกำจัดของเรานั้นฟรีทั้งหมด เช่นเดียวกับ BTSync มีให้บริการในหลายแพลตฟอร์ม อีกครั้งที่คุณคว้าเครื่องมือและเรียกใช้จากบรรทัดคำสั่ง จากนั้น คุณเชื่อมต่อกับเว็บอินเทอร์เฟซในเบราว์เซอร์ พอร์ต 8080
การซิงโครไนซ์มี GUI ที่ง่ายกว่าหากค่อนข้างสับสน สิ่งแรกคือการเพิ่มโฟลเดอร์ใหม่สำหรับการแชร์ มีตัวเลือกไม่มากนัก แต่คุณสามารถจัดการหรือเพิกเฉยต่อสิทธิ์ของไฟล์ที่มีอยู่ เปลี่ยนช่วงเวลาตรวจสอบการซิงค์ และยังมีการควบคุมเวอร์ชันที่เหมาะสม คุณยังสามารถตัดสินใจได้ว่าควรซิงค์แบบทิศทางเดียวหรือสองทิศทาง
ระวัง. คุณต้องเพิ่มโฟลเดอร์ และคุณไม่สามารถใช้ลิงก์สัญลักษณ์ได้ หากคุณเลือกตำแหน่งที่ Syncthing ไม่สามารถเขียนถึงได้ มันจะบ่นเกี่ยวกับการอนุญาต แต่คุณอาจไม่เข้าใจทันทีว่าเหตุใดสิ่งนี้จึงอาจก่อให้เกิดปัญหา
การเปลี่ยนแปลงเล็กๆ น้อยๆ ทุกครั้งต้องมีการรีสตาร์ทไคลเอนต์ แต่ก็เป็นเพียงการดำเนินการที่รวดเร็วหากค่อนข้างน่ารำคาญ และภายในไม่กี่วินาที คุณก็จะกลับมาทำงานอีกครั้ง ใช้เวลาสักครู่เพื่อระบุโหนดทั้งหมดและแสดงใน GUI
หากต้องการเพิ่มโหนดใหม่ลงในคลัสเตอร์ ให้คลิกที่ล้อเฟือง จากนั้น คุณจะต้องระบุแฮชแบบยาว (ID) สำหรับแต่ละโหนด ในแต่ละโหนด โชคดีที่หากคุณมีอุปกรณ์หลายเครื่องในเครือข่ายเดียวกัน จะมีองค์ประกอบของการค้นหาอัตโนมัติเข้ามาเกี่ยวข้อง คุณจะต้องอนุมัติอุปกรณ์
หลังจากที่คุณกำหนดค่าตัวเลือกการแชร์โฟลเดอร์สำเร็จแล้ว ตัวเลือกนั้นจะแสดงเป็นสีเขียว สีเหลืองหรือสีแดงหมายความว่าคุณมีปัญหา จากนั้น เมื่อคุณรีสตาร์ท Syncthing ผ่านอินเทอร์เฟซ มันจะเรียกใช้การสแกนเครือข่าย ค้นหาโฮสต์ที่รู้จักที่มีอยู่ คุณอาจได้รับแจ้งให้อนุญาตการแบ่งปันโฟลเดอร์ของคุณกับโหนดระยะไกล
ฉันตัดสินใจแชร์ไฟล์ "สื่อ" ซึ่งมีค่าเป็นศูนย์เพียง 2GB แต่ก็ดีพอที่จะแสดงให้เห็นว่าการซิงค์ทั่วไปอาจมีลักษณะอย่างไรในบางกรณี คุณต้องชื่นชมชื่อไฟล์สักครู่หรือสองครั้ง
การซิงค์ทำงานได้ดี แต่ก็ไม่ได้เร็วนัก มันค่อนข้างช้าจริง ๆ ดังนั้นจึงมีคำถามที่ชัดเจนว่าเครือข่ายของคุณเร็วหรือแออัดแค่ไหน P2P และ BitTorrent ไม่ได้หมายถึงปาฏิหาริย์อย่างที่บางคนอาจต้องการให้คุณเชื่อ จากนั้นไม่มีเปอร์เซ็นต์ความคืบหน้าในโฮสต์ต้นทาง แต่แสดงที่เป้าหมาย
ปัญหาทั่วไป
โดยทั่วไปแล้ว ตามที่ฉันได้อธิบายไปก่อนหน้านี้ พลังที่แท้จริงของ P2P นั้นอยู่ในรูปของตัวเลข หมายเลขกระจายอำนาจ หากคุณมีอุปกรณ์เพียงไม่กี่เครื่อง คุณจะไม่ได้เพลิดเพลินกับความเร็วสำรองข้อมูลที่รวดเร็วเป็นพิเศษตามที่สัญญาไว้ Rsync หรือสำเนาธรรมดาก็ใช้ได้เหมือนกัน นอกจากนี้ ครัวเรือนโดยเฉลี่ยมีอุปกรณ์คอมพิวเตอร์กี่เครื่อง หนึ่ง? ห้า? แต่ไม่มากไปกว่านั้น
จากนั้น อุปกรณ์เหล่านี้อาจไม่มีความสามารถในการจัดเก็บข้อมูลที่คล้ายคลึงกัน สมาร์ทโฟนของคุณอาจเก็บข้อมูลได้ประมาณ 15-30GB เท่านั้น ในขณะที่เดสก์ท็อปสามารถกลืน TB ได้อย่างง่ายดายโดยไม่มีปัญหา ดังนั้นคุณจึงไม่สามารถสำรองข้อมูลอะไรได้ทุกที่ ยิ่งไปกว่านั้น ทอร์เรนต์ยังบ่อนทำลายแนวคิดของฮาร์ดดิสก์หลายตัว เนื่องจากอุปกรณ์จะถือว่าเป็นเอนทิตีเดี่ยวๆ โดยไม่คำนึงว่าอุปกรณ์จัดเก็บข้อมูลภายในจะมีกี่เลเยอร์และความซ้ำซ้อน
ประเด็นที่สามคือแบนด์วิธ หากคุณไม่มีสายที่รวดเร็วพร้อมการอัปโหลดจำนวนมาก คุณจะประสบกับความเร็วที่ช้า ความแออัด และเครือข่ายของคุณจะหยุดทำงานขณะทำการเริ่มต้น พวกคุณบางคนอาจมีโควต้าและสิ่งเหล่านี้สามารถถูกบุกรุกได้อย่างง่ายดายด้วยการอัปเดต torrent บ่อยครั้ง
If you're running a business with a few hundred identical servers and a very fast 10Gb internal network, this sounds like an ideal concept. But for home users, how is this any different than cloud, unless the focus is entirely on the security, and the fact your data is stored in multiple locations. Then again, most cloud providers have a much better uptime and geo-spread than you can achieve with your own tiny swarm.
Firewall! If you block torrent ports, or do not allow uPnP, then torrents won't magically make your network faster. Speed wise, TCP might be a little slower than UDP, but overall, for home users, you won't see a difference between classic HTTP requests and torrents, especially not when the number of seeds is very small, and this is going to be the typical scenario for most people.
Finally, privacy. You don't want cloud providers to see your data, but what about your family? Or friends? Are you going to share your data with their machines? Can you trust that they will know what to do, not to poke, or worse, get their hosts compromised, allowing total strangers access to your files? Because if you're going to let your personal information out of your hands, then the basic premise of the cloud not being suitable for this purpose kind of becomes pointless.
More reading
If you're interested, then perhaps:
An overview of Grsync and what it can do
A comparison and review of several Rsync frontends
สรุป
Well, after half a day of frustration and tinkering, I must say that the concept needs a lot of work. It is ideal for large, fast, low-latency, unrestricted, unlimited networks, but not so when you are trying to sync up a bunch of highly diverse devices across the Internet. In that case, you won't really be enjoying the benefits of decentralized storage, and if you have to, the cloud is a better option. Because if you are concerned about privacy or security, then just go for local backups. Faster, more practical.
Ignoring the harsh obstacles of the reality, BTSync did not impress me at all. Syncthing is a better solution, but it might be a little clunky, and it could take a while to setup the cluster. However, there's a lot of potential here, and using encryption and public sharing might actually be a better option. Rather than worrying who you share with, just send your bits and pieces everywhere. Seems to work for all those other torrents. Anyhow, my thanks go to Floris for this recommendation. ดูแล.
ไชโย