Chuyển tệp tar 30 GB từ máy chủ từ xa sang máy chủ khác - bị hạn chế bởi không gian đĩa


8

Tôi có tệp tar "Moodle" 38GB mà tôi cần chuyển từ máy chủ cũ (Lưu trữ chia sẻ), chúng tôi có thể gọi "Máy chủ A" đến máy chủ mới (Máy ảo chuyên dụng) hoặc "Máy chủ B". Tôi với MediHRple nếu điều đó có ích.

Tuy nhiên, tôi đã tarball thư mục và đã sử dụng wget để chuyển nó đến máy chủ B thông qua SSH, tuy nhiên - đó là gói 100GB đầy trừng phạt và tôi có dung lượng đĩa 96% - có nghĩa là tôi không thể gỡ tệp trên máy chủ B! Có cách nào để tôi có thể chuyển tệp khổng lồ này từ Máy chủ A sang Máy chủ B không, giữ quyền và ít có khả năng bị hỏng tệp, điều này sẽ không khiến tôi đạt giới hạn đĩa?

Mặc dù tôi đã dành khá nhiều thời gian để làm điều này cho đến nay, tôi sẽ sẵn sàng từ bỏ kế hoạch ban đầu của mình nếu ai đó có thể đưa ra một ý tưởng tốt hơn - và tôi sẽ rất biết ơn!

Câu trả lời:


21

Đừng tar. Sử dụng rsync -avđể bảo vệ quyền trong khi chuyển các tập tin. Mặc dù giống như tar, nhưng điều này không bảo tồn bối cảnh selinux. Không phải là tôi sẽ xem xét rằng quan trọng mặc dù.


1
Xin chào Dennis, cảm ơn bạn đã trả lời. Tôi không cho rằng bạn có thể giải thích một chút về cách sử dụng lệnh rsync? Hoặc cung cấp một bài viết hữu ích? Cảm ơn một lần nữa
alexbass

1
Một bài viết hữu ích sẽ là trang chủ rsync :) Nhưng tóm lại: nếu bạn có quyền truy cập ssh từ serverb đến servera, hãy chạy nó trên serverb:rsync -av servera:/path/to/files/to/copy/ /path/to/copy/to
Dennis Kaarsemaker 25/07/13

1
Nếu bạn không chắc chắn cách sử dụng các lệnh cơ bản trên HĐH mà bạn đang sử dụng, hãy bắt đầu với cơ sở trợ giúp. Trên các máy Unix, đó thường là một cái gì đó giống như man rsynchoặcrsync --help
mfinni

1
-angụ ý -r(và nhiều cờ nữa mọi người cứ quên cho đến khi -ađược thêm vào vì "đây là những lá cờ hữu ích để tạo bản sao lưu")
Dennis Kaarsemaker

1
Nếu bảo mật không phải là vấn đề (ý tôi là bạn tin tưởng mạng giữa hai máy) thì nc cũng là một lựa chọn. Trên máy chủ: nguồn tar -zc | nc -l 1313 Trên máy khách: nc SERVER_IP 1313 | tar -zx
Tsvetomir Dimitrov

12

Bạn có thể muốn mua thêm dung lượng đĩa, nhưng giả sử bạn không, bạn có thể ...

dẫn tarball xung quanh chứ không phải tải về nó.

newserver#  ssh olduser@oldserver "cat /path/to/tarball" | tar xf -

hoặc nếu bạn không có quyền truy cập SSH vào máy chủ cũ của bạn

newserver# wget -O - http://oldserver/path/to/tarball | tar xf -

hoặc sử dụng rsync như Dennis nói .

Sáng tạo. Có những giải pháp khác tôi không đề cập.


Bạn có thể phải sử dụng --numeric-ownertùy chọn trước khi tạo tarball để đảm bảo chủ sở hữu và các nhóm sẽ không thay đổi. ssh ouser@oserver tar -zcplC /src_path --numeric-owner . | tar -zxpC /dst_path
F. Hauri

@ F.Hauri --numeric-ownercó thể có những hậu quả không lường trước được (có khả năng nghiêm trọng) nếu sơ đồ UID / GID khác nhau giữa hai máy. Đây thường không phải là một vấn đề trong môi trường nội bộ, nhưng việc chuyển từ "lưu trữ chia sẻ" sang "ảo chuyên dụng" điều này có thể gây ra vấn đề. Bạn sẽ phải sở hữu sửa chữa trên máy chủ mới nếu sử dụng tar, cpiovà thậm chí có thể rsync.
voretaq7

Vâng, bạn đúng nhưng, không biết về loại tùy chọn này cũng có thể có (cùng) hiệu ứng viền. Tốt nhất trong tất cả: biết những gì bạn đang làm và ... rtfm ;-)
F. Hauri

... một số cách thú vị (bộ lọc) để sử dụng (hoặc không) để được sáng tạo : nchoặc openssl, sed, gpg, uuencodemail(cẩn thận;), enscript+ lpr+ [gia cầm vận chuyển] ( fr.wikipedia.org/wiki/IP_over_Avian_Carriers ) + scan+ ocr. .. Nhưng thậm chí còn nhiều hơn ...
F. Hauri
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.