1

У меня есть несколько огромных файлов на моем Mac, и диск почти заполнен. Я хотел бы перенести данные с помощью флешки на другой компьютер, на котором есть терабайты свободного места. Как мне это сделать с помощью флэш-накопителя USB, который слишком мал, чтобы вместить весь файл?

3 ответа3

4

В качестве альтернативы вы можете использовать инструмент архивации rar, такой как Winrar. Откройте winrar, выберите все файлы, которые вы хотите передать, и разделите их на целевое устройство с типом RAR и размером разделения 32 ГБ.

Winrar

На целевом устройстве скопируйте все файлы и разархивируйте их.

Этот метод прост и работает на любой ОС.

2

Это не будет пошаговая инструкция. Я не знаю, нужно ли устанавливать dd на mac, в linux он в основном доступен ootb, так как он очень мощный.

Вы должны вставить ваш флэш-накопитель, предположим, он смонтирован в /media /thumbdrive, а ваш большой файл находится в /home/user/bigfile.img

Создайте файл номер один:

dd if=/home/user/bigfile.img of=/media/thumbdrive/bigfile.img.001 bs=1024 count=30G

Следующие файлы:

dd if=/home/user/bigfile.img of=/media/thumbdrive/bigfile.img.001 bs=1024 count=30G skip=30G
dd if=/home/user/bigfile.img of=/media/thumbdrive/bigfile.img.002 bs=1024 count=30G skip=60G

Сложите все это в одну папку на целевом компьютере и запустите

cat bigfile.img.* > bigfile.img

Может потребоваться небольшие изменения, но должно сработать. Если вы хотите проверить файл, вы можете использовать, например, md5sum.

0

Если это Mac с Mac, AirDrop может быть опцией, недоступной вообще. Или вы можете загрузить Mac с большим файлом в режиме целевого диска, но для этого требуется кабель, которого у вас может не быть, а на целевой машине требуется совместимый порт, что необычно для не-Mac.

В зависимости от того, какая версия OS X установлена на Mac, вы, возможно, уже используете файловый или веб-сервер, а если нет, запускать его может быть проще. Таким образом, это может быть так же просто, как временно переместить файл в нужный каталог и использовать веб-браузер на другом компьютере, чтобы получить его.

Для любых Unix-подобных систем вы можете использовать dd с skip и count чтобы скопировать части файла на USB-накопитель, а затем использовать dd с seek на целевом блоке, чтобы соединить их вместе. Большой размер блока используется, чтобы упростить математику и, возможно, сделать копию немного быстрее. Это не потребует дополнительного места.

Если целью является Mac, то что-то вроде:

source$ dd bs=1g if=bigfile.ext of=/Volumes/usb_stick/section count=30 skip=0
target$ dd bs=1g if=/Volumes/usb_stick/section of=newcopy.ext seek=0

source$ dd bs=1g if=bigfile.ext of=/Volumes/usb_stick/section count=30 skip=30
target$ dd bs=1g if=/Volumes/usb_stick/section of=newcopy.ext seek=30

source$ dd bs=1g if=bigfile.ext of=/Volumes/usb_stick/section count=30 skip=60
target$ dd bs=1g if=/Volumes/usb_stick/section of=newcopy.ext seek=60

# up to

source$ dd bs=1g if=bigfile.ext of=/Volumes/usb_stick/section count=30 skip=180
target$ dd bs=1g if=/Volumes/usb_stick/section of=newcopy.ext seek=180

Поскольку каждый раздел имеет размер 30 ГБ, USB-накопитель необходимо отформатировать, чтобы разрешить файлы такого размера: либо HFS (Mac OS Extended), либо ExFAT, но не FAT16.

Если целью является Linux вместо Mac, его версия dd использует верхний регистр для множителя размера блока: bs=1G . Кроме того, Linux не поддерживает ExFAT, поэтому в худшем случае вам придется копировать 4 ГБ одновременно с USB-накопителя, отформатированного в FAT16.

Если целью является Windows, вы можете загрузить Linux live CD. Windows поддерживает ExFAT, поэтому может также копировать каждый раздел с USB-накопителя в отдельные файлы, а затем использовать copy /b чтобы соединить их вместе. Это потребовало бы двойного пространства на цели.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .