ถ่ายโอนไฟล์ผ่านการเชื่อมต่อ SSH ที่ไม่เสถียร


23

ฉันพยายามอัปโหลดไฟล์ขนาดใหญ่ (ประมาณ 10GB) ด้วยความเร็วในการอัพโหลดช้า (200kb / s) ในการเชื่อมต่อ SSH ที่ไม่ได้เชื่อมต่อบ่อยครั้ง (เนื่องจากสภาพเครือข่ายไม่ดี)

ฉันกำลังพยายามใช้scpแต่ถ้ามีวิธีที่ดีที่สุดสำหรับ SSH ฉันก็ใช้ได้

วิธีที่ดีที่สุดที่จะทำคืออะไร?

ฉันพยายามแยกมันออกเป็นหลายส่วนโดยใช้splitแต่มันก็ไม่ได้มีประสิทธิภาพมากนักเพราะมันต้องใช้งานมาก ๆ ทั้งก่อนและหลังถ่ายโอน


2
rsync จะดีกว่า. มันเริ่มต้นใหม่ - หมายถึงคุณสามารถดำเนินการต่อที่คุณค้างไว้หากการเชื่อมต่อของคุณตัดการเชื่อมต่อ คุณอาจต้องการใช้--partialธง และโดยค่าเริ่มต้นมันทำงานผ่าน ssh คุณสามารถรวมเข้ากับโปรแกรมบีบอัดที่มีความก้าวร้าวเช่น 7z แต่คุณต้องมีหน่วยความจำมากมายและจะใช้เวลาสักครู่
Faheem Mitha

ฉันได้ลองกับ - บางส่วนแล้ว แต่มันก็เป็นเพียงแค่ดวงดาวเหนือ ...
blue112

"ติดดาว"? คุณหมายถึงเริ่มต้นใหม่เหรอ? นี่คือธงที่ฉันใช้: rsync -abvz --partial. คุณสามารถแสดงตัวอย่างเซสชันได้หรือไม่
Faheem Mitha

@FaheemMitha ฉันพยายามทำซ้ำ แต่ดูเหมือนว่าจะทำงานตอนนี้ ...
blue112

ไม่สามารถทำการอัปโหลดscpต่อได้ เป็นไปได้ที่จะทำการอัปโหลดrsync --partialต่อ ไม่สามารถทำการอัปโหลดsftpต่อได้ สำหรับทิศทางอื่น ๆ เช่นการดาวน์โหลดกลับมาทำงานคุณสามารถใช้rsync --partial, หรือsftp reget sftp get -a
pts

คำตอบ:


32

ใช้rsyncกับตัวเลือก - บางส่วน

rsync -av --partial sourcedir user@desthost:/destinationdir

- บางส่วนจะเก็บไฟล์ที่ถ่ายโอนบางส่วน เมื่อคุณกลับสู่การถ่ายโอน rsync หลังจากการเชื่อมต่อที่ขาดหายไป ssh ไฟล์ที่ถ่ายโอนบางส่วนจะเริ่มทำงานต่อจากจุดที่การเชื่อมต่อ ssh สูญหายและการถ่ายโอนไฟล์ที่สำเร็จจะไม่ถูกถ่ายโอนอีกครั้ง

ลองพิจารณาผ่านในตัวเลือก-zหากคุณเชื่อว่าไฟล์ที่คุณกำลังถ่ายโอนสามารถบีบอัดได้อย่างมีนัยสำคัญ ตัวอย่างเช่นไฟล์บันทึกประกอบด้วยข้อความซ้ำ

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