คำถามติดแท็ก rsync

Rsync เป็นเครื่องมือคัดลอกไฟล์ที่รวดเร็วและหลากหลายเป็นพิเศษ มันสามารถคัดลอกโลคัลไปยัง / จากโฮสต์อื่นผ่านเปลือกระยะไกลใด ๆ หรือไป / จากระยะไกล rsync daemon

3
rsync จะไม่ลบไฟล์ที่ปลายทาง
ฉันพยายามทำมิเรอร์ไดเรกทอรีที่เปลี่ยนแปลงตลอดเวลาไปยังไดเรกทอรีอื่น ปัญหาของฉันคือ rsync จะไม่ลบไฟล์ที่ปลายทางหากไม่มีอยู่ในไดเรกทอรีต้นทางอีกต่อไป นี่คือสคริปต์สาธิต: #!/bin/sh set -x DIR1=/tmp/1 DIR2=/tmp/2 rm -rf $DIR1 rm -rf $DIR2 mkdir $DIR1 mkdir $DIR2 echo "foo" > $DIR1/a echo "bar" > $DIR1/b rsync -a $DIR1/* $DIR2 rm -f $DIR1/a rsync -a --delete $DIR1/* $DIR2 ls -1 $DIR2 นี่คือผลลัพธ์: + DIR1=/tmp/1 + DIR2=/tmp/2 + rm …
22 linux  rsync 

9
rsync ไปยังหลายปลายทางโดยใช้ filelist เดียวกันหรือไม่
ฉันสงสัยว่าเป็นไปได้หรือไม่ที่ rsync จะสามารถคัดลอกไดเรกทอรีหนึ่งไปยังปลายทางระยะไกลหลายแห่งได้ในครั้งเดียวหรือแม้แต่ในแบบคู่ขนาน (ไม่จำเป็น แต่จะมีประโยชน์) โดยปกติแล้วสิ่งต่อไปนี้จะใช้ได้ดี: $ rsync -Pav /junk user@host1:/backup $ rsync -Pav /junk user@host2:/backup $ rsync -Pav /junk user@host3:/backup และถ้านั่นเป็นตัวเลือกเดียวฉันจะใช้มัน อย่างไรก็ตาม / ขยะตั้งอยู่บนไดรฟ์ช้าที่มีไฟล์ค่อนข้างน้อยและการสร้างไฟล์ใหม่ของไฟล์บางไฟล์ประมาณ 12,000 ไฟล์ในแต่ละครั้งจะช้าลงอย่างช้า ๆ (~ 5 นาที) เมื่อเทียบกับการถ่ายโอน / การอัพเดตจริง เป็นไปได้ไหมที่จะทำสิ่งนี้เพื่อทำสิ่งเดียวกัน: $ rsync -Pav /junk user@host1:/backup user@host2:/backup user@host3:/backup ขอบคุณที่มอง!
22 backup  rsync 

5
การใช้ rsync จาก msysgit สำหรับไฟล์ไบนารี
ฉันมีกล่อง windows สามกล่องที่เชื่อมต่อกับกล่อง linux บนเครือข่ายของฉันในรูปแบบต่าง ๆ (ภายในเครื่องหนึ่งไปยังเครือข่ายหนึ่งคือแล็ปท็อปและอาจใช่หรือไม่ใช่ท้องถิ่นและอีกอันคือเดสก์ทอปทำงานของฉัน) ขณะนี้ฉันใช้ git เพื่อทำข้อมูลส่วนใหญ่ให้ตรงกันระหว่างกล่อง (ใช้กล่อง Linux เป็นเซิร์ฟเวอร์) และใช้งานได้เหมือนแชมป์ อย่างไรก็ตามตอนนี้ฉันยังต้องการเพิ่มคอลเล็กชัน MP3 ของฉัน (12 กิ๊ก) เพื่อซิงโครไนซ์ระหว่างกล่องอย่างมีประสิทธิภาพ ตอนแรกฉันคิดว่าฉันสามารถใช้คอมไพล์ได้ แต่ดูเหมือนว่า rsync จะเป็นตัวเลือกที่ดีกว่าเพราะฉันไม่ต้องการสิ่งประวัติศาสตร์ทั้งหมด เนื่องจากสคริปต์การจัดการที่มีอยู่ทั้งหมดของฉันทำงานภายใต้ git bash (แทนที่จะเป็น cygwin) ฉันจึงอยากจะใช้มันจาก git bash (MINGW32 เป็นสิ่งที่มันบอกไว้ในแถบชื่อเรื่องของหน้าต่าง) ฉันสามารถดาวน์โหลดมันใน Cygwin และคัดลอกมันไปหรือมีวิธีที่ดีกว่าในการเข้าถึงมันได้หรือไม่? กล่อง Linux ใช้งาน Ubuntu Server version ล่าสุด - ฉันต้องทำอะไรเพื่อเปิดใช้งาน rsync เพื่อให้ทำงานได้อย่างถูกต้องหรือไม่? ฉันรู้ว่าฉันอาจจะทำสิ่งนี้ด้วยวิธีที่ยากกว่าที่ต้องการเล็กน้อย แต่ฉันก็ใช้สิ่งนี้เป็นแบบฝึกหัดในการพัฒนาทักษะบรรทัดคำสั่งของฉัน …
22 windows  ubuntu  rsync  git  cygwin 

9
คุณจะซิงโครไนซ์ไฟล์ขนาดใหญ่ (ภาพดิสก์ VM) ระหว่างเครื่องได้อย่างไร
มีคำสั่งเช่น rsync ซึ่งสามารถซิงโครไนซ์ไฟล์ขนาดใหญ่กระจัดกระจายจากเซิร์ฟเวอร์ linux หนึ่งไปยังเซิร์ฟเวอร์อื่นได้หรือไม่ มันเป็นสิ่งสำคัญมากที่ไฟล์ปลายทางยังคงกระจัดกระจาย อาจยาวกว่า (แต่ไม่ใหญ่กว่า) กว่าไดรฟ์ที่บรรจุอยู่ ควรส่งเฉพาะบล็อกที่มีการเปลี่ยนแปลงข้ามสาย ฉันได้ลอง rsync แล้ว แต่ก็ไม่มีความสุข https://groups.google.com/forum/#!topic/mailing.unix.rsync/lPOScZgFE9M ถ้าฉันเขียนโปรแกรมเพื่อทำสิ่งนี้ฉันจะประดิษฐ์ล้อใหม่อีกครั้งหรือไม่? http://www.finalcog.com/synchronise-block-devices ขอบคุณ คริส

11
ซิงค์ภาพรวม LVM กับเซิร์ฟเวอร์สำรอง
ฉันมีจำนวนเครื่องเสมือน Xen ที่ทำงานบนเซิร์ฟเวอร์ Linux จำนวนหนึ่ง VM เหล่านี้จัดเก็บอิมเมจของดิสก์ในไดรฟ์ข้อมูล Linux LVM พร้อมชื่ออุปกรณ์ตามบรรทัดของ / dev / xenVG / SERVER001OS เป็นต้น ฉันต้องการสำรองข้อมูลปกติของดิสก์อิมเมจเหล่านั้นเพื่อให้ฉันสามารถกู้คืน VM ได้ในกรณีที่เราต้องการ (อุปกรณ์ LVM ได้รับการมิร์เรอร์ด้วย DRBD ระหว่างเครื่องฟิสิคัลสองเครื่องแต่ละเครื่องฉันแค่หวาดระแวงเป็นพิเศษที่นี่) ฉันจะไปเกี่ยวกับเรื่องนี้ได้อย่างไร เห็นได้ชัดว่าขั้นตอนแรกคือการถ่ายภาพอุปกรณ์ LVM แต่ฉันจะถ่ายโอนข้อมูลไปยังเซิร์ฟเวอร์สำรองได้อย่างมีประสิทธิภาพมากที่สุดได้อย่างไร ฉันสามารถคัดลอกอุปกรณ์ทั้งหมดบางอย่างตามแนวของ: dd if=/dev/xenVG/SERVER001OS | ssh administrator@backupserver "dd of=/mnt/largeDisk/SERVER001OS.img" ... แต่นั่นต้องใช้แบนด์วิดท์จำนวนมาก มีเครื่องมือคล้าย rsync สำหรับการซิงก์เนื้อหาของบล็อกดิสก์ทั้งหมดระหว่างเซิร์ฟเวอร์ระยะไกลหรือไม่ สิ่งที่ต้องการ: rsync /dev/xenVG/SERVER001OS backupServer:/mnt/largeDisk/SERVER001OS.img หากฉันเข้าใจ man page ของ …

4
Rsync แสดงความคืบหน้าสำหรับแต่ละไฟล์
ฉันใช้ rsync เพื่ออัปโหลด / ดาวน์โหลดไฟล์ขนาดใหญ่พอสมควร (20Gb) ฉันตระหนักถึงตัวเลือก - ความคืบหน้า แต่สิ่งที่มันทำในกรณีของฉันคือการแสดงผลในตอนท้าย ปัญหาของฉันคือระหว่างการเชื่อมต่อที่ไม่เสถียร - ฉันไม่รู้ว่ามันยังคงดาวน์โหลด / อัพโหลดหรือมีบางอย่างผิดปกติ มีวิธีแสดงแถบความคืบหน้าสำหรับแต่ละไฟล์หรือไม่? สิ่งที่คล้ายกับสิ่งที่ wget ทำโดยค่าเริ่มต้น ขอบคุณ!

2
rsync: การถ่ายโอนไฟล์ในทิศทางเดียวเท่านั้น
เป็นไปได้หรือไม่ที่จะใช้ rsync เพื่อคัดลอกไฟล์ในทิศทางเดียวเท่านั้น? ตัวอย่างเช่นสมมติว่าเรามี: left/a.txt right/a.txt ตำแหน่งที่ไฟล์เหมือนกันเริ่มแรก หากมีใครปรับเปลี่ยนright/a.txtแล้ว: rsync -avv left/ right/ จะคัดลอกลงบนright/a.txtleft/a.txt เป็นไปได้ไหมที่จะ จำกัด rsync เฉพาะการคัดลอกจากleft/ไปยังright/(เช่นป้องกันไม่ให้คัดลอกจากright/ไปยังleft/)

1
ทำไม rsync ถึงเกิดกระบวนการหลายอย่างสำหรับฉัน
ฉันใช้คำสั่ง cron ต่อไปนี้เพื่อสำรองข้อมูลจากโฟลเดอร์หนึ่งไปยังโฟลเดอร์อื่นในเครื่องเดียวกัน: 19 21 * * * root rsync -ac --delete /source/folder /dest/folder เมื่อฉันใช้pstreeฉันเห็น cron แยกสามกระบวนการ ├─cron───cron───rsync───rsync───rsync และ ps 9972 ? Ds 1:00 rsync -ac --delete /source/folder /dest/folder 9973 ? S 0:29 rsync -ac --delete /source/folder /dest/folder 9974 ? S 0:09 rsync -ac --delete /source/folder /dest/folder เหตุใดจึงมีสามกระบวนการ ฉันสามารถ จำกัด …
21 linux  rsync 

5
rsync เป็นเพียงการแขวนสร้างรายชื่อไฟล์
[root@centos /]# rsync -av --exclude thumbs /storage root@xx.27.1.xx:/storage root@xx.27.1.xx's password: building file list ... ฉันนั่งประมาณหนึ่งชั่วโมง ... มันมีรูปภาพและโฟลเดอร์ 135GB /storage เป็นไดรฟ์ ext3 scsi ที่เมาท์ เป็นเรื่องปกติหรือไม่ที่ rsync จะต้องใช้เวลานานในการคำนวณไฟล์ / ไดเรกทอรี?
20 rsync 

10
คัดลอกไฟล์ขนาดใหญ่จากเซิร์ฟเวอร์ Linux หนึ่งไปยังอีกเซิร์ฟเวอร์หนึ่ง
ฉันพยายามที่จะคัดลอก 75 กิกะไบต์ tgz (mysql lvm snapshot) จากเซิร์ฟเวอร์ Linux ในศูนย์ข้อมูล LA ของเราไปยังเซิร์ฟเวอร์ Linux อีกแห่งในศูนย์ข้อมูล NY ของเราผ่านลิงก์ขนาด 10MB ฉันได้รับประมาณ 20-30Kb / s ด้วย rsync หรือ scp ซึ่งมีความผันผวนระหว่าง 200-300 ชั่วโมง ในขณะนี้มันเป็นลิงค์ที่ค่อนข้างเงียบเนื่องจากศูนย์ข้อมูลที่สองยังไม่เปิดใช้งานและฉันได้รับความเร็วที่ยอดเยี่ยมจากการถ่ายโอนไฟล์ขนาดเล็ก ฉันได้ทำตามคำแนะนำการปรับแต่ง tcp ต่าง ๆ ที่ฉันพบผ่านทาง google เพื่อประโยชน์ (บางทีฉันกำลังอ่านคำแนะนำที่ไม่ถูกต้องได้รับที่ดี?) ฉันเห็นเคล็ดลับช่องสัญญาณ tar + netcat แต่ความเข้าใจของฉันคือมันดีสำหรับไฟล์ขนาดเล็กจำนวนมากและไม่อัปเดตคุณเมื่อไฟล์ถ่ายโอนเสร็จสิ้นอย่างมีประสิทธิภาพ ก่อนที่ฉันจะจัดส่งฮาร์ดไดรฟ์ใครบ้างมีอินพุตที่ดีบ้าง? อัปเดต: อืม ... มันอาจจะเป็นลิงค์หลังจากนั้น :( ดูการทดสอบของฉันด้านล่าง ... …
20 linux  rsync  scp  files 

13
คืนค่าระบบ linux ให้สมบูรณ์
ฉันคุ้นเคยกับการใช้ rsync เพื่อสำรองไฟล์ต่าง ๆ จากระบบของฉัน แต่อะไรคือวิธีที่ดีที่สุดในการกู้คืนเครื่องโดยสมบูรณ์ สิ่งที่ฉันได้ลองในอดีตคือ: ทำการฟอร์แมตพื้นฐาน / ติดตั้งใหม่จากดิสก์การติดตั้งของ Fedora ตรวจสอบให้แน่ใจว่าเปิดใช้งานเครือข่ายแล้ว คัดลอกทุกอย่างจากการสำรองข้อมูล rsync ที่ด้านบนของระบบที่ติดตั้งใหม่ วิธีนี้ใช้ได้ แต่ฉันไม่คิดว่าทุกแพ็คเกจที่ติดตั้งจะใช้งานได้ 100% หลังจากนั้น ฉันต้องการที่จะกู้คืนระบบของฉันด้วยความพยายามขั้นต่ำและทุกอย่างก็ทำงานเช่นเดียวกับในขณะที่ทำการสำรองข้อมูล นอกจากนี้ถ้าเป็นไปได้ติดตั้งกับเครื่องอื่น ๆ และ essentailly มีสองเครื่องที่มีแพ็คเกจและข้อมูลเดียวกัน

7
รับ rsync เพื่อสร้างไฟล์ปะแก้แทนที่จะคัดลอกข้ามไฟล์?
ฉันกำลังคัดลอกไฟล์จำนวนมากที่มีการเปลี่ยนแปลงจากเซิร์ฟเวอร์หนึ่งไปยังเซิร์ฟเวอร์อื่นโดยใช้ rsync ฉันรู้ว่าฉันสามารถใช้-nตัวเลือกเพื่อดำเนินการแบบแห้งดังนั้นฉันจึงสามารถดูไฟล์ที่เปลี่ยนแปลงได้ อย่างไรก็ตามเป็นไปได้ไหมที่ rsync จะพิมพ์ส่วนต่างของเนื้อหาไฟล์ที่เปลี่ยนแปลง? ฉันต้องการที่จะเห็นสิ่งที่เกิดขึ้นก่อนที่จะทำสำเนา? มีบางอย่างที่ฉันสามารถบันทึกลงในไฟล์และใช้กับ diff (1) ในภายหลังได้หรือไม่
19 rsync  patch  diff 

3
วิธีดำเนินการ rsync แบบปลอดภัยระหว่างเซิร์ฟเวอร์ในเครือข่ายที่ไม่ปลอดภัย
โดยทั่วไปสิ่งที่ฉันถามคือมีใครเจอวิธีที่จะห่อ rsync ภายใน ssh ด้วย OpenSSH v4.9 + sftp มีตัวเลือกที่ดีที่อนุญาตให้คุณ chroot การเชื่อมต่อที่เข้ามาและนั่นคือทางออกที่ฉันจะดู แต่ฉันติดอยู่กับ RHEL และ RHEL4 หรือ RHEL5 ไม่เกินรุ่นนั้น SSH โซลูชันปัจจุบันของฉันคือการเพิ่มสิ่งนี้ในฝั่งเซิร์ฟเวอร์โดยใช้รหัสผู้ใช้ของลูกค้า ... เซิร์ฟเวอร์% cat ~ / .ssh / authorized_keys คำสั่ง = "cd / srv / rsync / etl && tar --exclude './lost+found' -pcf - ./" ssh-rsa ... ... และดังนั้นลูกค้าจะถูก จำกัด …
19 rsync  ssh  copy  tar  security 

1
การเพิ่มประสิทธิภาพ rsync สำหรับการถ่ายโอนไฟล์ขนาดใหญ่ได้อย่างรวดเร็ว
นี่คือสิ่งที่ฉันต้องการ: Rsync daemon ทำงานบนเซิร์ฟเวอร์ต้นทาง เซิร์ฟเวอร์ปลายทางดึง rsync ดังต่อไปนี้: rsync -ptv rsync: // source_ip: document / source_path / *. abc destination_path / ไฟล์ไบนารีขนาดใหญ่ (3 GB ถึง 5 GB) จะถูกคัดลอกจากเครื่องต้นทางไปยังปลายทางผ่าน LAN ดังนั้นไม่จำเป็นต้องเข้ารหัส / ถอดรหัส ดังนั้นอย่าใช้ SSH เครื่องปลายทางเชื่อมต่อโดยตรงกับ rsync daemon โฟลเดอร์ปลายทางจะว่างเปล่าเสมอก่อนที่จะดึง rsync ดังนั้นฉันจึงไม่ต้องกังวลกับการอัพเดตไฟล์บางไฟล์แบบมีเงื่อนไข Rsync pull จะสร้างไฟล์ใหม่ที่ปลายทางเสมอ (ไม่อัปเดต) ดังนั้นฉันไม่ต้องการ rsync ในการคำนวณผลรวมตรวจสอบ ฉันไม่พอใจกับปริมาณของ CPU ที่ rsync …
19 rsync  files 

5
เรียกใช้งานคำสั่ง rsync ผ่าน ssh ด้วยเอเจนต์ ssh ผ่าน crontab
ฉันมี cronjob: 0 9 * * * rsync -a mydir remote_machine: ฉันติดตั้งสิ่งนี้ด้วย 'crontab -e' ฉันมี ssh-agent กำลังทำงานอยู่และเมื่อฉันรันคำสั่ง rsync มันทำงานโดยไม่มีการโต้ตอบกับผู้ใช้หรือการป้อนรหัสผ่านใด ๆ แต่ cronjob ล้มเหลวด้วยข้อความต่อไปนี้: Date: Wed, 9 Dec 2009 11:11:00 -0600 (CST) From: Cron Daemon <me@my_machine.my_domain> To: me@my_machine.my_domain Subject: Cron <me@my_machine> rsync -a /home/me/mydir remote_machine: Permission denied, please try again. Permission …
18 rsync  cron 

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