У меня есть tar-файл «Moodle» размером 38 ГБ, который мне нужно передать со старого сервера (общий хостинг), который мы можем назвать «Сервер A» на новый сервер (выделенный виртуальный) или «Сервер B». Я работаю с Mediatemple, если это поможет.
Я уже заархивировал каталог и использовал wget для передачи его на сервер B через SSH, однако - это ничтожный пакет на 100 ГБ, и у меня 96% дискового пространства - это означает, что я не могу распаковать файл на сервере B! Есть ли способ передать этот огромный файл с сервера A на сервер B, сохранив разрешения и с наименьшей вероятностью повреждения файла, что не заставит меня превысить лимит диска?
Хотя я потратил довольно много времени на это до сих пор, я был бы готов отказаться от своего первоначального плана, если бы кто-то мог предложить лучшую идею - и я был бы очень благодарен!
Не смолить. Использовать rsync -av
чтобы сохранить разрешения при передаче файлов. Хотя, как и tar, он не сохраняет контекст selinux. Не то чтобы я считал это важным.
Возможно, вы захотите купить больше дискового пространства, но если вы этого не сделаете, вы могли бы ...
распределите тарбол по кругу, а не загружайте его.
newserver# ssh olduser@oldserver "cat /path/to/tarball" | tar xf -
или если у вас нет доступа SSH к вашему старому серверу
newserver# wget -O - http://oldserver/path/to/tarball | tar xf -
или используйте rsync, как сказал Деннис.
Будь креативным. Есть и другие решения, о которых я не упоминаю.