ทำไม rsync ถึงไม่ติดในโลกของ Windows? [ปิด]


97

ดูเหมือนว่าrsyncเป็นมาตรฐานความจริงสำหรับการสำรองข้อมูลไฟล์ที่มีประสิทธิภาพและการซิงค์ใน Unix / Linux

ไม่มีใครคิดบ้างไหมว่าทำไมมันถึงไม่ติดอยู่ในโลกของ Windows?

ทำไมจึงไม่กลายเป็น 'โปรโตคอล' สากลสำหรับการซิงค์ไฟล์


4
เป็นเพราะไม่มีพอร์ตที่เหมาะสมและเป็นเพราะคน Windows คุ้นเคยกับ It Just Works พอร์ตที่ยังไม่ได้ค่อนข้างเป็น PITA ขนาดใหญ่
— RomanSt

1
Windows มีการซิงโครไนซ์ของเดลต้าผ่าน DFS และRDC แล้วซึ่งสามารถจัดการจากส่วนกลางปรับใช้อย่างหนาแน่นตั้งค่าและอื่น ๆ ได้มากมาย
— Panagiotis Kanavos

@ p.campbell มี cwrsync สำหรับ windows อยู่
— Pacerier

คำตอบ:


48

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

นอกจากนี้ rsync จะส่องแสงเมื่อส่วนหนึ่งของแอปพลิเคชันที่มีขนาดใหญ่กว่า (พูดเพื่อรวบรวมและแยกบันทึก) หรือเป็นระบบเก็บถาวรอัตโนมัติ (นำไปใช้อย่างง่ายดายด้วย cronjob) Windows ไม่มีเครื่องมืออื่น ๆ ในระบบนิเวศของมันเพื่อให้ใช้ rsync ได้จริง

ในที่สุดฉันจะบอกว่า rsync นั้นซับซ้อนเกินไป ใครก็ตามที่ฉันรู้ว่าใครใช้มันเป็นประจำจะมีกลุ่มของธงที่ตั้งค่าไว้ล่วงหน้า (mine คือ -avuz) ที่ทำสิ่งที่พวกเขาต้องการ แต่หน้า man / เอกสารแสดงรายการสวิตช์บรรทัดคำสั่งหลายสิบรายการ ตัวอย่างเช่น (จาก [man page] [1]):

-a, --archive : โหมดเก็บถาวร; เท่ากับ -rlptgoD (ไม่ใช่ -H, -A, -X)

มันเป็นวิธีที่รวดเร็วในการบอกว่าคุณต้องการเรียกซ้ำและต้องการรักษาเกือบทุกอย่าง (ด้วย -H ข้อยกเว้นสำหรับความเท่ากันข้างต้นคือเมื่อระบุ --files-from ซึ่งในกรณีที่ -r ไม่ได้บอกเป็นนัย

โดยทั่วไปผู้ใช้ Windows คาดหวังว่าดีหน้าต่างและเมนูและมีแอพเดียวเป็นโซลูชันแบบครบวงจรไม่เพียง แต่เป็นส่วนหนึ่งของห่วงโซ่เครื่องมือ


11
ฉันเห็นด้วยกับคุณโดยสิ้นเชิง! หน้าคนเป็นวิธีที่แย่ที่สุดในการทำความเข้าใจ rsync และแอปพลิเคชั่นอื่น ๆ อีกมากมาย
— Antoine Benkemoun

2
จริงๆแล้วมันกลับกัน คน UNIX / Linux ไม่รู้ว่า Windows ให้ DFS และ RDC มาตั้งแต่ปี 2549 เป็นอย่างน้อย ง่ายต่อการติดตั้งจัดการปรับใช้กับโดเมนทั้งหมด (เช่นเดสก์ท็อปนับร้อยหรือพันกับไคลเอนต์หลายสิบหรือหลายร้อย)
— Panagiotis Kanavos

3
@PanagiotisKanavos ยกเว้น DFS นั้นแตกต่างจาก rsync NFS (หรือโปรโตคอลอื่น ๆ จำนวนมาก) มีอยู่บนระบบปฏิบัติการบน Linux แต่ rsync มักจะใช้สำหรับการสำรองข้อมูลแบบเป็นขั้นเมื่อปิดการถ่ายโอนเป็นต้นแอปเปิ้ลและส้ม
— แอนดรูว์ไวท์

5
@Pacerier: "บรรทัดคำสั่งคือบรรทัดคำสั่ง"? คุณมีความอดทนอย่างยิ่งหรือคุณรู้จักเพียงคนเดียวและไม่ใช่คนอื่น สำหรับคนปกติที่รู้จัก Bash ใน Linux / Mac (หรือ Unix shells อื่น ๆ ), cmd.exe เป็นคนง่อยที่บอกว่า "น่าเบื่อที่สุด" ยังคงเป็นการพูดน้อย
— mivk

2
"และการใช้คำสั่งบนระบบ windows นั้นน่าเบื่อที่สุด" - คุณยังไม่ได้ทำอะไรเลยไม่เคยได้ยิน Powershell มาก่อนเป็นแฟนบอยของ Linux หรือทั้งหมดข้างต้น ทุกวันนี้ก็ไม่ได้แตกต่างจากการทำบน Linux
— Alan B

63

ฉันแปลกใจที่ไม่มีใครพูดถึงDeltaCopyซึ่งเป็น rsync ที่บรรจุใน windows GUI มันยังสามารถติดตั้งตัวเองเป็นบริการที่รองรับ rsyncd


3
+1 ฉันไม่สามารถลงคะแนนได้เพียงพอ DeltaCopy เป็นวิธีที่เราสำรองข้อมูลเซิร์ฟเวอร์ลินุกซ์สองตัวไปยังเซิร์ฟเวอร์สำรองที่ใช้ Windows ของเรา Rsync บน Ubuntu ลงในไคลเอนต์ DeltaCopy บน Windows
— Matt Everson

ดูเหมือนว่าจะไม่เล่นได้ดีกับสิทธิ์การรักษาความปลอดภัยของ ntfs
— JamesRyan

สามารถดึงไฟล์ผ่าน SSH โดยไม่ใช้ rsyncd บนเครื่อง Linux ระยะไกลได้หรือไม่?
— Cees Timmerman

1
เมื่อ rsync ทำงานผ่าน ssh จะเริ่มกระบวนการ rsync ที่อีกด้านหนึ่ง คุณไม่จำเป็นต้องกำหนดค่า rsyncd แบบสแตนด์อโลนที่ทำงานบนรีโมท แต่คุณจำเป็นต้องติดตั้ง
— Sekenre

DeltaCopy เป็นเซิร์ฟเวอร์บน windows สคริปต์ cron ที่รัน rsync ไปยังกล่อง linux และ rsnaphot เพื่อให้ได้การสำรองข้อมูล "Time Machine" ไม่มีค่า
— MGP

11

ในความคิดของฉันเพราะไม่มี GUI ที่เหมาะสม

อีกเหตุผลหนึ่งก็คือว่ามี robocopy Robocopy ไม่มีฟีเจอร์เด็ด ๆ มากมายที่ rsync นำเสนอ แต่ในสถานการณ์ส่วนใหญ่ robocopy นั้นเพียงพอสำหรับงานในมือ


4
robocopy ไม่ได้ทำสิ่งใดเพื่อเพิ่มประสิทธิภาพของสำเนาระยะไกลซึ่งเป็นนวัตกรรมหลักของ rsync ผมบอกว่าไม่ได้มีการคลิกแหลม GUI เป็นข้ออ้างเท่านั้นไม่พยายาม
— ฮาเวียร์

2
ในโลกของ windows ที่ทำงานกับไฟล์ "รีโมต" มักจะเกี่ยวข้องกับการแชร์ดิสก์รีโมตจากนั้นทำการปฏิบัติการไฟล์ "ท้องถิ่น" และสำหรับ robocopy นั้นก็เพียงพอแล้ว

9

ฉันใช้ Cygwin rsync อย่างกว้างขวางและใช้งานได้ดีมาก

แต่ ...

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

นอกจากนี้มันยังทำให้เกิดการอนุญาตถึงจุดที่ฉันตั้งค่า cygwin = nontsec เสมอและมันก็หยุดทำงานเป็นประจำ ฉันเข้าใจว่าการแฮงค์เป็นปัญหาที่รู้จักกับ Cygwin dll มากกว่า rsync ตัวเอง (ซึ่งไม่ใช่คำวิจารณ์ของพวก Cygwin สิ่งที่พวกเขาประสบความสำเร็จนั้นสั้นไปหน่อยปาฏิหาริย์!)

Rsync มีประโยชน์อย่างยิ่งหากคุณทำการจำลองแบบผ่านลิงค์ WAN และอยู่ในรายการสิ่งที่ต้องทำของฉันเพื่อเขียนเวอร์ชัน Win32 ดั้งเดิม น่าเศร้าที่มันอยู่ในรายการสิ่งที่ต้องทำของฉันเป็นเวลาหลายปีและไม่ใกล้เคียงกับอันดับสูงสุด ฉันไม่คิดว่าเพียงแค่เขียน GUI wrapper เป็นขั้นตอนที่ยิ่งใหญ่เพราะไม่สามารถแก้ไขปัญหาพื้นฐานบางอย่างของ Cygwin ได้

หากใครสนใจhttp://www.ratsauce.co.uk/notablog/UsingRsync.asp จะอธิบายถึงผลของความเจ็บปวดหลายชั่วโมงของฉันที่ทำให้ Cygwin rsync ทำงานบน Windows ได้

จูเนียร์


แก้ไขให้ถูกต้องแม้ว่าจะติดตั้งและทำงานได้ดีบนระบบ XP ของฉัน แต่ Vista ก็ไม่ชอบเลย Rsync เป็นธุรกิจหากมีพอร์ตดั้งเดิมของมันไปยัง Windows ฉันมั่นใจว่ามันจะใช้งานได้มากขึ้น
— gbjbaanb

การติดตั้ง Git สำหรับ Windows จะให้ bash และ CygWin ที่กำหนดค่าไว้ออกจากกล่อง คุณสามารถเลือกการรวมคำสั่ง unix เข้ากับ CMD ได้ Voila ฉันลืมใช้ PowerShell หรือ CMD)
— it3xl

8

ฉันจะบอกว่าสำหรับคอมพิวเตอร์ขนาดเล็กลงในการซิงค์คอมพิวเตอร์ผู้คนกำลังใช้Robocopy , SyncToyหรือFoldershare (ตอนนี้ซิงค์สด) สำหรับองค์กรกระจายสถานการณ์ร่วมกันแฟ้ม MULTIMASTER ขนาดใหญ่พวกเขาจะใช้Distributed File System (DFS) เครื่องมือเหล่านั้นจัดการกับสถานการณ์การซิงค์ส่วนใหญ่ได้ดีเหลือประโยชน์เพียงเล็กน้อยในการติดตั้งการเรียนรู้และการใช้แอพ * nix ที่คอมไพล์แล้วบน Windows


7

ผู้ใช้ Windows โดยเฉลี่ยของคุณจะใช้เพื่ออะไร


3
+1 สำหรับความจริง - การสำรองข้อมูลของผู้ใช้ windows ส่วนใหญ่เป็น "ลากและวางลงใน
— ฮาร์ดไดรฟ์ที่

17
ฉันไม่ค่อยทำเครื่องหมายคำตอบลงและฉันจะไม่ทำเครื่องหมายข้อนี้ลง แต่เนื่องจาก ServerFault เป็นฟอรัมสำหรับผู้ใช้ Windows โดยเฉลี่ยเมื่อใด สำหรับดูแลระบบการจำลองแบบนอกสถานที่มีความสำคัญมากขึ้นเรื่อย ๆ บริษัท ขนาดใหญ่อาจเพิ่งซื้อ DPM เพื่อใช้ผ่านการเชื่อมต่อ T3 ของพวกเขา พวกเราผู้ถ่อมตนต้องการสิ่งที่จะทำงานที่ความเร็วการอัปโหลด ADSL และ rsync ทำได้ดีมาก
— John Rennie

3
@ จอห์น: ใช่ แต่คนจะไม่ใช้ rsync จนกว่าพวกเขาจะรู้ว่ามันมีอยู่ มีการใช้ rsync และมีประโยชน์สำหรับผู้ใช้ทั่วไปโดยทั่วไปสำหรับทุกเพศทุกวัยดังนั้นผู้ดูแลระบบของเขาจึงควรทำความเข้าใจกับมัน บน Windows? ไม่มากนัก. Windows คือ (และอาจสำคัญกว่านั้นคือมุ่งเป้าไปที่กลุ่มเป้าหมายที่แตกต่างกันซึ่งไม่มีความสนใจหรือใช้สำหรับเครื่องมือเช่นนี้และเนื่องจาก sysadmins ของ Windows มักจะเริ่มต้นในฐานะผู้ใช้ Windows เครื่องมือที่พวกเขาใช้จะได้รับอิทธิพลจากเครื่องมือใด ของ windows ผู้ใช้ . ใช้คุณกำลังผสมสองความกังวลที่แตกต่างกัน ( ทำไมมันไม่ได้เป็นที่นิยม VS มันจะมีประโยชน์ )
— jalf

ฉันเพียงแค่ตอบอดีตผมไม่ได้ปฏิเสธว่ามันจะมีประโยชน์
— jalf

ใช่ แต่มีเซิร์ฟเวอร์ Windwos อยู่มากมายที่ต้องสำรองข้อมูลด้วย
— kiltek

4

IMO:

rsync นั้นมีโอกาสน้อยที่จะถูกติดตั้งบนเครื่องที่มีอยู่ในโลกของ Windows ในขณะที่ Resource Kit ที่มี robocopy มักติดตั้งอยู่ (หรืออย่างน้อยก็อยู่ในรายชื่อซอฟต์แวร์ที่ได้รับการอนุมัติที่สามารถติดตั้งในระบบการผลิตได้)

ในขณะที่คนอื่น ๆ ชี้ให้เห็น robocopy เป็นมากกว่าเพียงพอที่จะผิวหนังอะไรก็ตามที่อยู่ในมือแมว อาจไม่ดีเท่า rsync แต่เป็นเครื่องมือที่ดี

การขาด GUI อาจเป็นปัจจัย แต่แม้ว่าจะมี front-end สำหรับ robocopy แต่ฉันพบว่าคนส่วนใหญ่เข้าใจสวิตช์ robocopy ที่จำเป็นและติดไว้ในไฟล์. bat


Robocopy มาพร้อมกับ Windows 2008 (และสูงกว่าที่ฉันคิดเอาไว้) ดังนั้นจึงไม่จำเป็นต้องติดตั้งอีกต่อไป
— mrdenny

ฉันไม่ได้ตระหนักถึงสิ่งนี้ ขอบคุณสำหรับข้อมูล ... เราอยู่ห่างจากปี 2008 อย่างน้อยหนึ่งปีในสภาพแวดล้อมของเราและฉันไม่ได้ติดตามตั้งแต่ย้ายจากการบริหารโฆษณา
— damorg

Robocopy ได้รับการติดตั้งตามค่าเริ่มต้นใน Vista และ Windows 7 เช่นกันและอาจเป็นไปได้ที่ PE counter-parts
— Oskar Duveborn

Robocopy จะไม่ถ่ายโอนเฉพาะส่วนที่มีการเปลี่ยนแปลงของไฟล์ดังนั้นไฟล์ขนาดใหญ่ที่มีการเปลี่ยนแปลงเล็กน้อยจะคัดลอกช้ามากเมื่อเทียบกับ rsync
— JustinP

4

ฉันใช้ robocopy ใน windows - ซึ่งติดตั้งล่วงหน้าใน windows vista และ windows 7 และขึ้นอยู่กับสถานการณ์การสำรองข้อมูลใด ๆ ที่ฉันพบจนถึงขณะนี้


2

ฉันเดาว่ามันไม่ได้มี GUI สำหรับงานการซิงค์ที่ง่าย Microsoft ยังมี Sync Toy และ rsync สามารถทำได้มากกว่า ...


โดยทั่วไปมี GUI สำหรับมัน: sepiola.org/en/home ฉันได้พูดคุยกับผู้พัฒนาของ Sepiola หนึ่งครั้งและพวกเขาบอกฉันว่าพวกเขาทำ GUI รอบ rsync

2
ฉัน downvote นี้เพราะมันแสดงให้เห็นว่า Windows sysadmins หายไปโดยไม่ต้องใช้ GUI ซึ่งไม่เป็นความจริง ผู้ดูแลระบบที่ดีส่วนใหญ่ใช้ได้กับอรรถประโยชน์บรรทัดคำสั่ง
— quux

2

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

เนสเตอร์


มันยังคงใช้ Cygwin ซึ่งหมายความว่า dll จะยุ่งกับแอพอื่น ๆ ที่อาจใช้ Cygwin โดยทั่วไปจะดีกว่าที่จะติดตั้ง Cygwin ในกรณีเหล่านี้
— dlamblin

2

โอ้พวกคุณเห็นได้ชัดว่ายูทิลิตี้ "Unison" หายไป ฉันได้สนับสนุนโครงสร้างพื้นฐาน "เรียลไทม์" ที่สำคัญของ US / EUR และฉันต้องบอกว่าทุกคนมีปัญหาที่คล้ายกันมาก ... วิธีการทำซ้ำและสามารถใช้งานได้ตลอดเวลา ... ถ้าคุณไม่สนใจ เกี่ยวกับการคงอยู่ของเซสชั่นแล้วสิ่งนี้คือระเบิด ... สิ่งที่ดีที่สุดที่ฉันพบในโซลาริสแถม :-)


2

ที่ง่ายต่อการใช้ / ติดตั้งโปรแกรม GUI rsync ฉันได้พบสำหรับ Windows ได้รับgrSync

( ภาพหน้าจอ: http://www.opbyte.it/grsync/sc Screenshot.html )

หากเป็นที่นิยมมากขึ้นอาจจะใช้ rsync มากกว่า


0

ฉันเชื่อว่า rsync สามารถใช้ได้ภายใต้ cygwin ใน windows world :) cygwin นั้นติดตั้งและใช้งานได้ง่าย แต่สำหรับผู้ใช้ทั่วไปที่รัก GUI มันไม่ได้เป็นเรื่องธรรมดามาก ดังนั้นเราจึงได้รับสองอุปสรรค:

1) การขาดส่วนหน้า GUI

2) แม้ว่าจะมีส่วนหน้า GUI ใน tcl / tk เช่น - ความจำเป็นในการติดตั้ง cygwin เป็นอุปสรรค

และ rsync ไม่ใช่ซอฟต์แวร์ลิขสิทธิ์ที่ต้องการขายตัวเองดังนั้นจึงต้องดิ้นรนเพื่อกำจัดอุปสรรคก่อนลูกค้า ในฐานะที่เป็น Joel sais: การกำจัดสิ่งกีดขวางหนึ่งจะเพิ่มฐานผู้ใช้ของคุณเป็นสองเท่า ดังนั้นที่นี่เรามีอุปสรรคสำหรับผู้ใช้ windows - เนื่องจากฐานผู้ใช้ขนาดเล็กบนแพลตฟอร์ม Windows


0

ฉันใช้ robocopy สำหรับพฤติกรรมคล้าย rsync ใน windows

โดยทั่วไปฉันเขียนไฟล์ backup.bat ที่ฉันมีในไดรฟ์ภายนอก ฉันเรียกใช้ไฟล์อย่างสม่ำเสมอเพื่อสำรองเดสก์ท็อปของฉันไว้ที่ไดรฟ์ภายนอก จากนั้นฉันก็เก็บไดรฟ์ภายนอกไว้ในตู้นิรภัยที่กันไฟได้



0

ด้วยเหตุผลเดียวกันtarและbzip2ไม่เคยได้ยินมาก่อน มันเข้ากันไม่ได้กับ Windows การบีบอัดไดเรกทอรีและปิดการทำงานของ SMB นั้นเข้ากับ Windows ได้ดีขึ้นและดูเหมือนจะเร็วในหลายกรณี นี่ไม่ใช่ความฝันของฉันสำหรับโลกที่ดีกว่า แต่มันเป็นความจริงที่จะต่อสู้กับ เครื่อง windows ส่วนใหญ่ไม่มีการติดตั้งเลเยอร์ unix ไม่เหมือน Mac OS X


0

มี rsync guis ที่ใหม่กว่าในการพัฒนา หนึ่งผมมาในเร็ว ๆ นี้ผ่านวิกิพีเดียเป็นyintersync มันดูค่อนข้างครอบคลุมในฐานะ gui สำหรับ rsync บน windows และค่อนข้างเรียบร้อยนอกจากนี้ยังรองรับ shadow copy สำหรับจำลองไฟล์สด

ฉันเพิ่งทดสอบสิ่งนี้กับระบบ dr ที่ทำงานด้วยผลลัพธ์ที่ดี มีรายงานกำหนดการและอีเมลในตัว สิ่งนี้อาจช่วย rsync ให้ทันกับหน้าต่างในที่สุด


0

การขาด GUI ไม่ได้เป็นปัญหาจริงๆ xacls, robocopy, net, sc เป็นประโยชน์อย่างมากและไม่มี GUI ใด ๆ ฉันเชื่อว่าถ้า rsync ไม่ได้ใช้มันเป็นเพราะความจริงที่ว่า:

  1. Windows ไม่มีเชลล์จริงและภาษาสคริปต์จริง และคนที่ใช้แบทช์ก็ใช้ robocopy เช่นกัน
  2. ตั้งแต่ 95 Windows มาพร้อมกับเครื่องมือกราฟิกที่ใช้งานง่าย (ชื่อ "เอกสาร Porte" ในเวอร์ชันภาษาฝรั่งเศส) ตั้งแต่ Windows 2000 (หรือ XP?) มีเมนู "ซิงโครไนซ์" ใน explorer

คำจำกัดความของ "ของจริง" คืออะไร? ^^
— Oskar Duveborn

เชลล์จริงอนุญาตให้ปรับแต่งได้มากกว่าขนาดหน้าต่างหรือไทล์ ความสามารถในการทำงานทุกอย่างที่คุณต้องการ (การจัดการบัญชีผู้ใช้การปรับแต่งการกำหนดค่าระบบ ... ) ภาษาสคริปต์จริงอนุญาตให้กำหนด environnement (คุณเคยลองใช้คำสั่ง "date" ใน environnement หลายประเทศหรือไม่) และสามารถใช้งานได้ในพร้อมท์การแทรกสอด (เหมือน vbs / js)
— เบอนัวต์

PowerShell ตอบสนองทุกความต้องการของคุณและเป็นส่วนหนึ่งของ Windows มาตั้งแต่ปี 2549 มันทำงานร่วมกับ. NET ดังนั้นฉันจึงชอบ Bash ในบางกรณี
— James
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.